From 9ededbc805d53f9a7a41ffe872cd2b0f81687a8a Mon Sep 17 00:00:00 2001 From: sof <unknown> Date: Wed, 15 Apr 1998 17:39:23 +0000 Subject: [PATCH] [project @ 1998-04-15 17:39:23 by sof] - Moved `dist' rule that sets up SRC_DIST_FILES symlinks past the recursive `dist' rule that creates the shadow dist tree. - Experimental support for aliases in SRC_DIST_FILES lists, i.e., foo~bar will create a symlink from `bar' in the dist tree to `foo' in the build tree (useful for the cases where you're shipping Makefiles that differ from the fptools/ ones.) - New target `dist-manifest': create MANIFEST files for a (source) distribution. --- mk/target.mk | 50 +++++++++++++++++++++++++++++--------------------- 1 file changed, 29 insertions(+), 21 deletions(-) diff --git a/mk/target.mk b/mk/target.mk index d4303c711301..a89f1b06ccbc 100644 --- a/mk/target.mk +++ b/mk/target.mk @@ -703,31 +703,15 @@ dist-post:: ( cd $(SRC_DIST_DIR) ; cd .. ; find $(SRC_DIST_NAME) -type d -exec sh -c 'test x`ls $$0 | wc -l | sed -e "s/ //g"` = x0' {} \; -print -exec rm -rf {} \; -prune ) ( cd $(SRC_DIST_DIR) ; cd .. ; chmod -R a+rw $(SRC_DIST_NAME) ) +# Automatic generation of a MANIFEST file for a source distribution +# tree that is ready to go. +dist-manifest :: + cd $(SRC_DIST_DIR); find . \( -type l -o -type f \) -exec ls -lLG {} \; | sed -e 's/\.\///' > /tmp/MANIFEST ; mv /tmp/MANIFEST MANIFEST + dist-package:: cd $(SRC_DIST_DIR); cd ..; $(TAR) chzf $(SRC_DIST_NAME).tar.gz $(SRC_DIST_NAME) # - - -# The default dist rule: -# -# copy/link the contents of $(SRC_DIST_FILES) into the -# shadow distribution tree. SRC_DIST_FILES contain the -# build-generated files that you want to include in -# a source distribution. -# -# -ifneq "$(SRC_DIST_FILES)" "" -dist:: - @for i in $(SRC_DIST_FILES); do \ - if (test -f "$$i"); then \ - echo $(LN_S) `pwd`/$$i $(SRC_DIST_DIR)/$$i ; \ - $(LN_S) `pwd`/$$i $(SRC_DIST_DIR)/$$i ; \ - fi; \ - done; -endif - -# # binary-dist creates a binary bundle, set BIN_DIST_NAME # to package name and do `make binary-dist' (normally this # just a thing you would do from the toplevel of fptools or) @@ -1054,6 +1038,30 @@ dist :: endif endif +# The default dist rule: +# +# copy/link the contents of $(SRC_DIST_FILES) into the +# shadow distribution tree. SRC_DIST_FILES contain the +# build-generated files that you want to include in +# a source distribution. +# +# +ifneq "$(SRC_DIST_FILES)" "" +dist:: + @for i in $(SRC_DIST_FILES); do \ + if ( echo "$$i" | grep "~" >/dev/null 2>&1 ); then \ + echo $(LN_S) `pwd`/`echo $$i | sed -e "s/^\([^~]*\)~.*/\1/g"` $(SRC_DIST_DIR)/`echo $$i | sed -e "s/.*~\(.*\)/\1/g"` ; \ + $(LN_S) `pwd`/`echo $$i | sed -e "s/^\([^~]*\)~.*/\1/g"` $(SRC_DIST_DIR)/`echo $$i | sed -e "s/.*~\(.*\)/\1/g"` ; \ + else \ + if (test -f "$$i"); then \ + echo $(LN_S) `pwd`/$$i $(SRC_DIST_DIR)/$$i ; \ + $(LN_S) `pwd`/$$i $(SRC_DIST_DIR)/$$i ; \ + fi; \ + fi; \ + done; +endif + + # # Selectively building subdirectories. # -- GitLab