X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rules%2Fshell-wrapper.mk;h=1315ea35a4a3e7112afa412aa2ffe24a873a528b;hb=5289f5d85610f71625a439747a09384876655eb5;hp=312504e27873940ee5b4879af887f96ee209fa07;hpb=4a5569ff37ae771560e56b564f3b15477b828a79;p=ghc-hetmet.git diff --git a/rules/shell-wrapper.mk b/rules/shell-wrapper.mk index 312504e..1315ea3 100644 --- a/rules/shell-wrapper.mk +++ b/rules/shell-wrapper.mk @@ -11,6 +11,7 @@ # ----------------------------------------------------------------------------- define shell-wrapper +$(call trace, shell-wrapper($1,$2)) # $1 = dir # $2 = distdir @@ -32,12 +33,17 @@ endif ifneq "$$($1_$2_INSTALL_INPLACE)" "NO" all_$1_$2 : $$(INPLACE_BIN)/$$($1_$2_PROG) -$$(INPLACE_BIN)/$$($1_$2_PROG): $$($1_$2_INPLACE) +$$(INPLACE_BIN)/$$($1_$2_PROG): WRAPPER=$$@ +$$(INPLACE_BIN)/$$($1_$2_PROG): $$($1_$2_INPLACE) $$($1_$2_SHELL_WRAPPER_NAME) "$$(RM)" $$(RM_OPTS) $$@ echo '#!$$(SHELL)' >> $$@ - echo 'executablename=$$(TOP)/$$<' >> $$@ - echo 'datadir=$$(TOP)/$$(INPLACE_LIB)' >> $$@ - echo 'bindir=$$(TOP)/$$(INPLACE_BIN)' >> $$@ + echo 'executablename="$$(TOP)/$$<"' >> $$@ + echo 'datadir="$$(TOP)/$$(INPLACE_LIB)"' >> $$@ + echo 'bindir="$$(TOP)/$$(INPLACE_BIN)"' >> $$@ + echo 'topdir="$$(TOP)/$$(INPLACE_TOPDIR)"' >> $$@ + echo 'pgmgcc="$$(WhatGccIsCalled)"' >> $$@ + $$($1_$2_SHELL_WRAPPER_EXTRA) + $$($1_$2_INPLACE_SHELL_WRAPPER_EXTRA) cat $$($1_$2_SHELL_WRAPPER_NAME) >> $$@ $$(EXECUTABLE_FILE) $$@ endif @@ -57,15 +63,21 @@ install: install_$1_$2_wrapper .PHONY: install_$1_$2_wrapper install_$1_$2_wrapper: WRAPPER=$$(DESTDIR)$$(bindir)/$$($1_$2_INSTALL_SHELL_WRAPPER_NAME) install_$1_$2_wrapper: - $$(INSTALL_DIR) $$(DESTDIR)$$(bindir) - "$$(RM)" $$(RM_OPTS) $$(WRAPPER) - $$(CREATE_SCRIPT) $$(WRAPPER) - echo '#!$$(SHELL)' >> $$(WRAPPER) - echo 'executablename=$$(libexecdir)/$$($1_$2_PROG)' >> $$(WRAPPER) - echo 'datadir=$$(datadir)' >> $$(WRAPPER) - echo 'bindir=$$(bindir)' >> $$(WRAPPER) - cat $$($1_$2_SHELL_WRAPPER_NAME) >> $$(WRAPPER) - $$(EXECUTABLE_FILE) $$(WRAPPER) + $$(INSTALL_DIR) "$$(DESTDIR)$$(bindir)" + "$$(RM)" $$(RM_OPTS) "$$(WRAPPER)" + $$(CREATE_SCRIPT) "$$(WRAPPER)" + echo '#!$$(SHELL)' >> "$$(WRAPPER)" + echo 'exedir="$$(ghclibexecdir)"' >> "$$(WRAPPER)" + echo 'exeprog="$$($1_$2_PROG)"' >> "$$(WRAPPER)" + echo 'executablename="$$$$exedir/$$$$exeprog"' >> "$$(WRAPPER)" + echo 'datadir="$$(datadir)"' >> "$$(WRAPPER)" + echo 'bindir="$$(bindir)"' >> "$$(WRAPPER)" + echo 'topdir="$$(topdir)"' >> "$$(WRAPPER)" + echo 'pgmgcc="$$(WhatGccIsCalled)"' >> "$$(WRAPPER)" + $$($1_$2_SHELL_WRAPPER_EXTRA) + $$($1_$2_INSTALL_SHELL_WRAPPER_EXTRA) + cat $$($1_$2_SHELL_WRAPPER_NAME) >> "$$(WRAPPER)" + $$(EXECUTABLE_FILE) "$$(WRAPPER)" endif # $1_$2_INSTALL_SHELL_WRAPPER