# HG changeset patch # User John D # Date 1479766281 18000 # Node ID 32a7bea19bb1a5fa982791be2165900c428398ce # Parent 2f00a1d250d7002664caa2d2a3b772fc62817bdd msys-gzip: add .bat wrappers to shellscripts * tools/gen-bat-wrapper: new file * dist-files.mk: add gen-bat-wrapper * src/msys-gzip.mk: add find of shell script and create .bat file diff -r 2f00a1d250d7 -r 32a7bea19bb1 dist-files.mk --- a/dist-files.mk Mon Nov 21 15:53:08 2016 -0500 +++ b/dist-files.mk Mon Nov 21 17:11:21 2016 -0500 @@ -842,7 +842,8 @@ patch-tool-mxe \ pkg-install.py \ s3-fetch-and-sync \ - set-mxe-env.sh.in + set-mxe-env.sh.in \ + gen-bat-wrapper TOOLS_FILES := $(addprefix tools/, $(TOOLS_FILES_1)) diff -r 2f00a1d250d7 -r 32a7bea19bb1 src/msys-gzip.mk --- a/src/msys-gzip.mk Mon Nov 21 15:53:08 2016 -0500 +++ b/src/msys-gzip.mk Mon Nov 21 17:11:21 2016 -0500 @@ -19,6 +19,12 @@ define $(PKG)_BUILD mkdir -p '$(MSYS_BASE_DIR)' + if test $(MXE_WINDOWS_BUILD) = "yes"; then \ + for f in `find $(1)/bin -type f -exec grep -l '\/bin/sh$$' {} \;` ; do \ + echo "file $$f"; \ + $(TOP_DIR)/tools/gen-bat-wrapper `basename $$f` > $$f.bat; \ + done; \ + fi cd '$(1)' && tar cf - . | ( cd '$(MSYS_BASE_DIR)'; tar xpf - ) mkdir -p '$(MSYS_INFO_DIR)' cd '$(1)' && find . > '$(MSYS_INFO_DIR)'/$(PKG).list diff -r 2f00a1d250d7 -r 32a7bea19bb1 tools/gen-bat-wrapper --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/gen-bat-wrapper Mon Nov 21 17:11:21 2016 -0500 @@ -0,0 +1,14 @@ +#!/usr/bin/env bash + +prog=$1 + +if [ -z $prog ]; then + echo "Missing program name" >&2 + exit 1 +fi + +cat << EOF +@echo off +set BINPATH=%~dp0 +%BINPATH%bash -c '$prog %*' +EOF