Makefile: improve DESTDIR support
This commit is contained in:
parent
4f96f6fe62
commit
6778604bd2
|
@ -82,9 +82,9 @@ On Windows, Unix-style install is not supported.
|
|||
A Unix-style install leaves no reference to this source directory.
|
||||
|
||||
To split the build and install steps of a Unix-style installation,
|
||||
supply `DESTDIR=<dest-dir>` with `make unix-style PREFIX=<dir>", which
|
||||
assembles the installation in <dest-dir>. Then, copy the content of
|
||||
`<dest-dir>` to `<dir>`.
|
||||
supply `DESTDIR=<dest-dir>` with `make unix-style PREFIX=<dir>`, which
|
||||
assembles the installation in "<dest-dir>". Then, copy the content of
|
||||
"<dest-dir>" to the target root.
|
||||
|
||||
See "More Instructions: Building Racket" below for more information.
|
||||
|
||||
|
|
8
Makefile
8
Makefile
|
@ -76,6 +76,7 @@ PREFIX =
|
|||
|
||||
CONFIG_PREFIX_ARGS = --prefix="$(PREFIX)" --enable-macprefix
|
||||
UNIX_RACO_ARGS = $(JOB_OPTIONS) --catalog build/local/catalog --auto -i
|
||||
UNIX_BASE_ARGS = SELF_FLAGS_qq="" SKIP_DESTDIR_FIX="skip"
|
||||
|
||||
unix-style:
|
||||
if [ "$(CPUS)" = "" ] ; \
|
||||
|
@ -87,9 +88,10 @@ cpus-unix-style:
|
|||
|
||||
plain-unix-style:
|
||||
if [ "$(PREFIX)" = "" ] ; then $(MAKE) error-need-prefix ; fi
|
||||
$(MAKE) base CONFIGURE_ARGS_qq='$(CONFIGURE_ARGS_qq) $(CONFIG_PREFIX_ARGS)' SELF_FLAGS_qq=""
|
||||
$(MAKE) local-catalog-maybe-native RACKET="$(PREFIX)/bin/racket"
|
||||
"$(PREFIX)/bin/raco" pkg install $(UNIX_RACO_ARGS) $(REQUIRED_PKGS) $(PKGS)
|
||||
$(MAKE) base CONFIGURE_ARGS_qq='$(CONFIGURE_ARGS_qq) $(CONFIG_PREFIX_ARGS)' $(UNIX_BASE_ARGS)
|
||||
$(MAKE) local-catalog-maybe-native RACKET="$(DESTDIR)$(PREFIX)/bin/racket"
|
||||
"$(DESTDIR)$(PREFIX)/bin/raco" pkg install $(UNIX_RACO_ARGS) $(REQUIRED_PKGS) $(PKGS)
|
||||
cd racket/src/build; $(MAKE) fix-paths
|
||||
|
||||
error-need-prefix:
|
||||
: ================================================================
|
||||
|
|
|
@ -135,10 +135,12 @@ install-no-post-collects:
|
|||
|
||||
fix-paths:
|
||||
if [ "$(DESTDIR)" != "" ]; then \
|
||||
@RUN_RACKET_CGC@ $(SELF_RACKET_FLAGS) -u \
|
||||
"$(srcdir)/../collects/setup/unixstyle-install.rkt" \
|
||||
make-install-destdir-fix "$(srcdir)/.." \
|
||||
$(ALLDIRINFO) "@INSTALL_ORIG_TREE@"; \
|
||||
if [ "$(SKIP_DESTDIR_FIX)" = "" ]; then \
|
||||
@RUN_RACKET_CGC@ $(SELF_RACKET_FLAGS) -u \
|
||||
"$(srcdir)/../collects/setup/unixstyle-install.rkt" \
|
||||
make-install-destdir-fix "$(srcdir)/.." \
|
||||
$(ALLDIRINFO) "@INSTALL_ORIG_TREE@"; \
|
||||
fi \
|
||||
fi
|
||||
|
||||
# 3m install ----------------------------------------
|
||||
|
|
|
@ -235,32 +235,32 @@ FRAMEWORK_REL_PREFIX="@executable_path/../../../"
|
|||
|
||||
install-wx_mac:
|
||||
$(MAKE) install-common
|
||||
cd ..; rm -rf "$(prefix)/lib/GRacket@CGC_CAP_INSTALLED@.app"
|
||||
cd ..; rm -rf "$(prefix)/lib/GRacket@MMM_CAP_INSTALLED@.app"
|
||||
cd ..; rm -rf $(DESTDIR)"$(prefix)/lib/GRacket@CGC_CAP_INSTALLED@.app"
|
||||
cd ..; rm -rf $(DESTDIR)"$(prefix)/lib/GRacket@MMM_CAP_INSTALLED@.app"
|
||||
|
||||
install-wx_mac-cgc:
|
||||
cd ..; $(ICP) -r gracket/GRacket@CGC@.app "$(prefix)/lib/GRacket@CGC_CAP_INSTALLED@.app"
|
||||
@RUN_RACKET_CGC@ $(SELF_RACKET_FLAGS) -cqu "$(srcdir)/../mac/rename-app.rkt" "$(prefix)/lib/GRacket@CGC_CAP_INSTALLED@.app" "GRacket@CGC@" "GRacket@CGC_CAP_INSTALLED@"
|
||||
/usr/bin/install_name_tool -change "@executable_path/../../../../racket/Racket.framework/Versions/$(FWVERSION)/Racket" "@FRAMEWORK_PREFIX@Racket.framework/Versions/$(FWVERSION)/Racket" "$(prefix)/lib/GRacket@CGC_CAP_INSTALLED@.app/Contents/MacOS/GRacket@CGC_CAP_INSTALLED@"
|
||||
@RUN_RACKET_CGC@ $(SELF_RACKET_FLAGS) -cu "$(srcdir)/../racket/collects-path.rkt" "$(prefix)/lib/GRacket@CGC_CAP_INSTALLED@.app/Contents/MacOS/GRacket@CGC_CAP_INSTALLED@" ../../../../collects ../../../../etc
|
||||
@STRIP_DEBUG@ "$(prefix)/lib/GRacket@CGC_CAP_INSTALLED@.app/Contents/MacOS/GRacket@CGC_CAP_INSTALLED@"
|
||||
cd ..; $(ICP) -r gracket/GRacket@CGC@.app $(DESTDIR)"$(prefix)/lib/GRacket@CGC_CAP_INSTALLED@.app"
|
||||
@RUN_RACKET_CGC@ $(SELF_RACKET_FLAGS) -cqu "$(srcdir)/../mac/rename-app.rkt" $(DESTDIR)"$(prefix)/lib/GRacket@CGC_CAP_INSTALLED@.app" "GRacket@CGC@" "GRacket@CGC_CAP_INSTALLED@"
|
||||
/usr/bin/install_name_tool -change "@executable_path/../../../../racket/Racket.framework/Versions/$(FWVERSION)/Racket" "@FRAMEWORK_PREFIX@Racket.framework/Versions/$(FWVERSION)/Racket" $(DESTDIR)"$(prefix)/lib/GRacket@CGC_CAP_INSTALLED@.app/Contents/MacOS/GRacket@CGC_CAP_INSTALLED@"
|
||||
@RUN_RACKET_CGC@ $(SELF_RACKET_FLAGS) -cu "$(srcdir)/../racket/collects-path.rkt" $(DESTDIR)"$(prefix)/lib/GRacket@CGC_CAP_INSTALLED@.app/Contents/MacOS/GRacket@CGC_CAP_INSTALLED@" ../../../../collects ../../../../etc
|
||||
@STRIP_DEBUG@ $(DESTDIR)"$(prefix)/lib/GRacket@CGC_CAP_INSTALLED@.app/Contents/MacOS/GRacket@CGC_CAP_INSTALLED@"
|
||||
|
||||
install-wx_mac-cgc-final:
|
||||
$(NOOP)
|
||||
|
||||
install-wx_mac-3m:
|
||||
cd ..; $(ICP) -r "gracket/GRacket@MMM@.app" "$(prefix)/lib/GRacket@MMM_CAP_INSTALLED@.app"
|
||||
@RUN_RACKET_MMM@ $(SELF_RACKET_FLAGS) -cqu "$(srcdir)/../mac/rename-app.rkt" "$(prefix)/lib/GRacket@MMM_CAP_INSTALLED@.app" "GRacket@MMM@" "GRacket@MMM_CAP_INSTALLED@"
|
||||
/usr/bin/install_name_tool -change "@executable_path/../../../../racket/Racket.framework/Versions/$(FWVERSION)_3m/Racket" "@FRAMEWORK_PREFIX@Racket.framework/Versions/$(FWVERSION)_3m/Racket" "$(prefix)/lib/GRacket@MMM_CAP_INSTALLED@.app/Contents/MacOS/GRacket@MMM_CAP_INSTALLED@"
|
||||
@RUN_RACKET_MMM@ $(SELF_RACKET_FLAGS) -cu "$(srcdir)/../racket/collects-path.rkt" "$(prefix)/lib/GRacket@MMM_CAP_INSTALLED@.app/Contents/MacOS/GRacket@MMM_CAP_INSTALLED@" "../../../../collects" ../../../../etc
|
||||
@STRIP_DEBUG@ "$(prefix)/lib/GRacket@MMM_CAP_INSTALLED@.app/Contents/MacOS/GRacket@MMM_CAP_INSTALLED@"
|
||||
cd ..; $(ICP) -r "gracket/GRacket@MMM@.app" $(DESTDIR)"$(prefix)/lib/GRacket@MMM_CAP_INSTALLED@.app"
|
||||
@RUN_RACKET_MMM@ $(SELF_RACKET_FLAGS) -cqu "$(srcdir)/../mac/rename-app.rkt" $(DESTDIR)"$(prefix)/lib/GRacket@MMM_CAP_INSTALLED@.app" "GRacket@MMM@" "GRacket@MMM_CAP_INSTALLED@"
|
||||
/usr/bin/install_name_tool -change "@executable_path/../../../../racket/Racket.framework/Versions/$(FWVERSION)_3m/Racket" "@FRAMEWORK_PREFIX@Racket.framework/Versions/$(FWVERSION)_3m/Racket" $(DESTDIR)"$(prefix)/lib/GRacket@MMM_CAP_INSTALLED@.app/Contents/MacOS/GRacket@MMM_CAP_INSTALLED@"
|
||||
@RUN_RACKET_MMM@ $(SELF_RACKET_FLAGS) -cu "$(srcdir)/../racket/collects-path.rkt" $(DESTDIR)"$(prefix)/lib/GRacket@MMM_CAP_INSTALLED@.app/Contents/MacOS/GRacket@MMM_CAP_INSTALLED@" "../../../../collects" ../../../../etc
|
||||
@STRIP_DEBUG@ $(DESTDIR)"$(prefix)/lib/GRacket@MMM_CAP_INSTALLED@.app/Contents/MacOS/GRacket@MMM_CAP_INSTALLED@"
|
||||
|
||||
install-wx_mac-3m-final:
|
||||
$(NOOP)
|
||||
|
||||
install-wx_mac-post-collects:
|
||||
cd ..; rm -rf $(prefix)/lib/Starter.app
|
||||
cd ..; $(ICP) -r gracket/Starter.app $(prefix)/lib/.
|
||||
cd ..; rm -rf $(DESTDIR)$(prefix)/lib/Starter.app
|
||||
cd ..; $(ICP) -r gracket/Starter.app $(DESTDIR)$(prefix)/lib/.
|
||||
|
||||
|
||||
@INCLUDEDEP@ grmain.d
|
||||
|
|
|
@ -350,7 +350,7 @@ unix-install:
|
|||
cp $(srcdir)/dynsrc/starter-sh .
|
||||
cd ..; cp racket/starter-sh "$(DESTDIR)$(libpltdir)/starter-sh"
|
||||
cd ..; $(STRIP_DEBUG) "$(DESTDIR)$(libpltdir)/starter@EXE_SUFFIX@"
|
||||
@RUN_RACKET_CGC@ -cu "$(srcdir)/collects-path.rkt" "$(DESTDIR)$(libpltdir)/starter@EXE_SUFFIX@" @COLLECTS_PATH@ @CONFIG_PATH@
|
||||
@RUN_RACKET_CGC@ -cu "$(srcdir)/collects-path.rkt" "$(DESTDIR)$(libpltdir)/starter@EXE_SUFFIX@" $(DESTDIR)@COLLECTS_PATH@ $(DESTDIR)@CONFIG_PATH@
|
||||
cd ..; echo 'CC=@CC@' > "$(BUILDINFO)"
|
||||
cd ..; echo 'CFLAGS=$(CFLAGS) $(CPPFLAGS)' >> "$(BUILDINFO)"
|
||||
cd ..; echo 'OPTIONS=@OPTIONS@' >> "$(BUILDINFO)"
|
||||
|
@ -363,7 +363,7 @@ unix-install-cgc:
|
|||
cd ..; $(ICP) racket/racket@CGC@ "$(DESTDIR)$(bindir)/racket@CGC_INSTALLED@"
|
||||
cd ..; $(STRIP_DEBUG) "$(DESTDIR)$(bindir)/racket@CGC_INSTALLED@"
|
||||
cd ..; cp racket/mzdyn.o "$(DESTDIR)$(libpltdir)/mzdyn.o"
|
||||
@RUN_RACKET_CGC@ -cu "$(srcdir)/collects-path.rkt" "$(DESTDIR)$(bindir)/racket@CGC_INSTALLED@@EXE_SUFFIX@" @COLLECTS_PATH@ @CONFIG_PATH@
|
||||
@RUN_RACKET_CGC@ -cu "$(srcdir)/collects-path.rkt" "$(DESTDIR)$(bindir)/racket@CGC_INSTALLED@@EXE_SUFFIX@" $(DESTDIR)@COLLECTS_PATH@ $(DESTDIR)@CONFIG_PATH@
|
||||
|
||||
unix-install-libs-cgc:
|
||||
cd ..; $(ICP) racket/libmzgc.@LIBSFX@ "$(DESTDIR)$(libdir)/libmzgc.@LIBSFX@"
|
||||
|
@ -380,7 +380,7 @@ unix-install-3m:
|
|||
cd ..; $(STRIP_DEBUG) "$(DESTDIR)$(bindir)/racket@MMM_INSTALLED@"
|
||||
$(MAKE) unix-@INSTALL_LIBS_ENABLE@-libs-3m
|
||||
cd ..; $(ICP) racket/mzdyn3m.o "$(DESTDIR)$(libpltdir)/mzdyn3m.o"
|
||||
@RUN_RACKET_MMM@ -cu "$(srcdir)/collects-path.rkt" "$(DESTDIR)$(bindir)/racket@MMM_INSTALLED@@EXE_SUFFIX@" @COLLECTS_PATH@ @CONFIG_PATH@
|
||||
@RUN_RACKET_MMM@ -cu "$(srcdir)/collects-path.rkt" "$(DESTDIR)$(bindir)/racket@MMM_INSTALLED@@EXE_SUFFIX@" $(DESTDIR)@COLLECTS_PATH@ $(DESTDIR)@CONFIG_PATH@
|
||||
|
||||
unix-install-libs-3m:
|
||||
cd ..; $(ICP) racket/libracket3m.@LIBSFX@ "$(DESTDIR)$(libdir)/libracket3m.@LIBSFX@"
|
||||
|
@ -403,7 +403,7 @@ mingw-install-cgc:
|
|||
cd ..; $(ICP) racket/lib/libmzgcxxxxxxx.dll "$(DESTDIR)$(libdir)/libmzgcxxxxxxx.dll"
|
||||
cd ..; $(ICP) racket/lib/libracketxxxxxxx.dll "$(DESTDIR)$(libdir)/libracketxxxxxxx.dll"
|
||||
cd ..; $(ICP) racket/racket@CGC@ "$(DESTDIR)@MZINSTALLBINDIR@/Racket@CGC_INSTALLED@"
|
||||
@RUN_RACKET_CGC@ -cu "$(srcdir)/collects-path.rkt" @DIRCVTPRE@"$(DESTDIR)@MZINSTALLBINDIR@/Racket@CGC_INSTALLED@@EXE_SUFFIX@"@DIRCVTPOST@ @COLLECTS_PATH@ @CONFIG_PATH@
|
||||
@RUN_RACKET_CGC@ -cu "$(srcdir)/collects-path.rkt" @DIRCVTPRE@"$(DESTDIR)@MZINSTALLBINDIR@/Racket@CGC_INSTALLED@@EXE_SUFFIX@"@DIRCVTPOST@ $(DESTDIR)@COLLECTS_PATH@ $(DESTDIR)@CONFIG_PATH@
|
||||
|
||||
mingw-install-cgc-final:
|
||||
$(NOOP)
|
||||
|
@ -411,7 +411,7 @@ mingw-install-cgc-final:
|
|||
mingw-install-3m:
|
||||
cd ..; $(ICP) racket/racket@MMM@ "$(DESTDIR)@MZINSTALLBINDIR@/Racket@MMM_INSTALLED@"
|
||||
cd ..; $(ICP) racket/lib/libracket3mxxxxxxx.dll "$(DESTDIR)$(libdir)/libracket3mxxxxxxx.dll"
|
||||
@RUN_RACKET_MMM@ -cu "$(srcdir)/collects-path.rkt" @DIRCVTPRE@"$(DESTDIR)@MZINSTALLBINDIR@/Racket@MMM_INSTALLED@@EXE_SUFFIX@"@DIRCVTPOST@ @COLLECTS_PATH@ @CONFIG_PATH@
|
||||
@RUN_RACKET_MMM@ -cu "$(srcdir)/collects-path.rkt" @DIRCVTPRE@"$(DESTDIR)@MZINSTALLBINDIR@/Racket@MMM_INSTALLED@@EXE_SUFFIX@"@DIRCVTPOST@ $(DESTDIR)@COLLECTS_PATH@ $(DESTDIR)@CONFIG_PATH@
|
||||
|
||||
mingw-install-3m-final:
|
||||
$(NOOP)
|
||||
|
@ -424,33 +424,33 @@ FRAMEWORK_REL_PREFIX = "@executable_path/../lib/"
|
|||
|
||||
osx-install:
|
||||
$(MAKE) unix-install
|
||||
rm -f $(MZFWDIR)/Racket
|
||||
rm -rf $(MZFWDIR)/Versions/$(FWVERSION)
|
||||
rm -rf $(MZFWDIR)/Versions/$(FWVERSION)_3m
|
||||
if [ @FRAMEWORK_REL_INSTALL@ = yes ] ; then rm -rf $(MZFWDIR) ; fi
|
||||
mkdir -p @FRAMEWORK_INSTALL_DIR@
|
||||
rm -f $(DESTDIR)$(MZFWDIR)/Racket
|
||||
rm -rf $(DESTDIR)$(MZFWDIR)/Versions/$(FWVERSION)
|
||||
rm -rf $(DESTDIR)$(MZFWDIR)/Versions/$(FWVERSION)_3m
|
||||
if [ @FRAMEWORK_REL_INSTALL@ = yes ] ; then rm -rf $(DESTDIR)$(MZFWDIR) ; fi
|
||||
mkdir -p $(DESTDIR)@FRAMEWORK_INSTALL_DIR@
|
||||
|
||||
osx-install-cgc:
|
||||
$(MAKE) unix-install-cgc
|
||||
mkdir -p "$(MZFWDIR)/Versions/$(FWVERSION)"
|
||||
cp $(MZFW) $(MZFWDIR)/Versions/$(FWVERSION)/
|
||||
/usr/bin/install_name_tool -change "@executable_path/Racket.framework/Versions/$(FWVERSION)/Racket" "@FRAMEWORK_PREFIX@Racket.framework/Versions/$(FWVERSION)/Racket" "$(bindir)/racket@CGC_INSTALLED@"
|
||||
$(STRIP_DEBUG) "$(bindir)/racket@CGC_INSTALLED@"
|
||||
mkdir -p $(DESTDIR)$(MZFWDIR)/Versions/$(FWVERSION)
|
||||
cp $(MZFW) $(DESTDIR)$(MZFWDIR)/Versions/$(FWVERSION)/
|
||||
/usr/bin/install_name_tool -change "@executable_path/Racket.framework/Versions/$(FWVERSION)/Racket" "@FRAMEWORK_PREFIX@Racket.framework/Versions/$(FWVERSION)/Racket" $(DESTDIR)"$(bindir)/racket@CGC_INSTALLED@"
|
||||
$(STRIP_DEBUG) $(DESTDIR)"$(bindir)/racket@CGC_INSTALLED@"
|
||||
|
||||
osx-install-cgc-final:
|
||||
$(MAKE) unix-install-cgc-final
|
||||
ln -s Versions/$(FWVERSION)/Racket $(MZFWDIR)/
|
||||
ln -s Versions/$(FWVERSION)/Racket $(DESTDIR)$(MZFWDIR)/
|
||||
|
||||
osx-install-3m:
|
||||
$(MAKE) unix-install-3m
|
||||
mkdir -p "$(MZFWDIR)/Versions/$(FWVERSION)_3m"
|
||||
cp $(MZFWMMM) $(MZFWDIR)/Versions/$(FWVERSION)_3m/
|
||||
/usr/bin/install_name_tool -change "@executable_path/Racket.framework/Versions/$(FWVERSION)_3m/Racket" "@FRAMEWORK_PREFIX@Racket.framework/Versions/$(FWVERSION)_3m/Racket" "$(bindir)/racket@MMM_INSTALLED@"
|
||||
$(STRIP_DEBUG) "$(bindir)/racket@MMM_INSTALLED@"
|
||||
mkdir -p $(DESTDIR)"$(MZFWDIR)/Versions/$(FWVERSION)_3m"
|
||||
cp $(MZFWMMM) $(DESTDIR)$(MZFWDIR)/Versions/$(FWVERSION)_3m/
|
||||
/usr/bin/install_name_tool -change "@executable_path/Racket.framework/Versions/$(FWVERSION)_3m/Racket" "@FRAMEWORK_PREFIX@Racket.framework/Versions/$(FWVERSION)_3m/Racket" $(DESTDIR)"$(bindir)/racket@MMM_INSTALLED@"
|
||||
$(STRIP_DEBUG) $(DESTDIR)"$(bindir)/racket@MMM_INSTALLED@"
|
||||
|
||||
osx-install-3m-final:
|
||||
$(MAKE) unix-install-3m-final
|
||||
ln -s Versions/$(FWVERSION)_3m/Racket $(MZFWDIR)/
|
||||
ln -s Versions/$(FWVERSION)_3m/Racket $(DESTDIR)$(MZFWDIR)/
|
||||
|
||||
|
||||
# Cygwin install ----------------------------------------
|
||||
|
|
Loading…
Reference in New Issue
Block a user