From 2a053caa1a1588d18567d561c855e9bc3a57620c Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Thu, 13 Sep 2018 09:23:00 -0600 Subject: [PATCH] makefile: always make automatic checkout of Chez Scheme If `make cs` is run without specifying a SCHEME_SRC, then make sure that `configure` and `make` are re-run in the Chez Scheme checkout, in case it was updated. --- Makefile | 5 +++-- racket/src/cs/c/Makefile.in | 6 ++++-- racket/src/cs/c/configure | 4 ++++ racket/src/cs/c/configure.ac | 3 +++ 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index ed72237c2d..f0dfc4851b 100644 --- a/Makefile +++ b/Makefile @@ -234,6 +234,7 @@ RACKET = # Chez Scheme from `CHEZ_SCHEME_REPO` SCHEME_SRC = DEFAULT_SCHEME_SRC = racket/src/build/ChezScheme +MAKE_BUILD_SCHEME = y CHEZ_SCHEME_REPO = https://github.com/mflatt/ChezScheme @@ -289,14 +290,14 @@ ABS_SCHEME_SRC = "`$(RACKET) racket/src/cs/absify.rkt $(SCHEME_SRC)`" cs-after-racket-with-racket: if [ "$(SCHEME_SRC)" = "" ] ; \ then $(MAKE) cs-after-racket-with-racket-and-scheme-src RACKET="$(RACKET)" SCHEME_SRC="$(DEFAULT_SCHEME_SRC)" ; \ - else $(MAKE) cs-after-racket-with-racket-and-scheme-src RACKET="$(RACKET)" SCHEME_SRC="$(SCHEME_SRC)" ; fi + else $(MAKE) cs-after-racket-with-racket-and-scheme-src RACKET="$(RACKET)" SCHEME_SRC="$(SCHEME_SRC)" MAKE_BUILD_SCHEME=n ; fi cs-after-racket-with-racket-and-scheme-src: $(MAKE) cs-after-racket-with-abs-paths RACKET="$(ABS_RACKET)" SCHEME_SRC="$(ABS_SCHEME_SRC)" SELF_UP=../ cs-after-racket-with-abs-paths: $(MAKE) racket/src/build/cs/Makefile - cd racket/src/build/cs; $(MAKE) RACKET="$(RACKET)" SCHEME_SRC="$(SCHEME_SRC)" + cd racket/src/build/cs; $(MAKE) RACKET="$(RACKET)" SCHEME_SRC="$(SCHEME_SRC)" MAKE_BUILD_SCHEME="$(MAKE_BUILD_SCHEME)" $(MAKE) base-config cd racket/src/build/cs; $(MAKE) install RACKET="$(RACKET)" $(INSTALL_SETUP_ARGS) $(MAKE) $(CS_SETUP_TARGET) PLAIN_RACKET=racket/bin/racketcs diff --git a/racket/src/cs/c/Makefile.in b/racket/src/cs/c/Makefile.in index e7407f4021..4049bc4f6f 100644 --- a/racket/src/cs/c/Makefile.in +++ b/racket/src/cs/c/Makefile.in @@ -2,6 +2,7 @@ srcdir = @srcdir@ builddir = @builddir@ SCHEME_SRC = @SCHEME_SRC@ +MAKE_BUILD_SCHEME = @MAKE_BUILD_SCHEME@ MACH = @MACH@ SCHEME_BIN = $(SCHEME_SRC)/$(MACH)/bin/$(MACH)/scheme SCHEME_INC = $(SCHEME_SRC)/$(MACH)/boot/$(MACH) @@ -104,9 +105,10 @@ known: cd $(srcdir)/../../schemify && $(MAKE) known-src-generate RACKET="$(BOOTSTRAP_RACKET)" BUILDDIR="$(builddir)/" scheme: - $(MAKE) $(SCHEME_BIN) + if [ "$(MAKE_BUILD_SCHEME)" = "y" ] ; \ + then $(MAKE) scheme-make ; fi -$(SCHEME_BIN): +scheme-make: cd @SCHEME_SRC@ && ./configure @SCHEME_CONFIG_ARGS@ cd @SCHEME_SRC@ && make diff --git a/racket/src/cs/c/configure b/racket/src/cs/c/configure index d56a401b07..20af483b11 100755 --- a/racket/src/cs/c/configure +++ b/racket/src/cs/c/configure @@ -624,6 +624,7 @@ LIBOBJS FRAMEWORK_PREFIX FRAMEWORK_INSTALL_DIR SCHEME_CONFIG_ARGS +MAKE_BUILD_SCHEME SCHEME_SRC COMPRESS_COMP CONFIGURE_RACKET_SO_COMPILE @@ -3296,9 +3297,11 @@ case "$host_cpu" in esac SCHEME_SRC=../ChezScheme +MAKE_BUILD_SCHEME=y if test "${enable_scheme}" != "" ; then SCHEME_SRC="${enable_scheme}" + MAKE_BUILD_SCHEME=n fi if test "${enable_racket}" != "" ; then @@ -3932,6 +3935,7 @@ CPPFLAGS="$CPPFLAGS $PREFLAGS" + makefiles="Makefile" diff --git a/racket/src/cs/c/configure.ac b/racket/src/cs/c/configure.ac index 5ab064dc43..569cff2b4f 100644 --- a/racket/src/cs/c/configure.ac +++ b/racket/src/cs/c/configure.ac @@ -184,9 +184,11 @@ case "$host_cpu" in esac SCHEME_SRC=../ChezScheme +MAKE_BUILD_SCHEME=y if test "${enable_scheme}" != "" ; then SCHEME_SRC="${enable_scheme}" + MAKE_BUILD_SCHEME=n fi if test "${enable_racket}" != "" ; then @@ -357,6 +359,7 @@ AC_SUBST(NOT_OSX) AC_SUBST(CONFIGURE_RACKET_SO_COMPILE) AC_SUBST(COMPRESS_COMP) AC_SUBST(SCHEME_SRC) +AC_SUBST(MAKE_BUILD_SCHEME) AC_SUBST(SCHEME_CONFIG_ARGS) AC_SUBST(FRAMEWORK_INSTALL_DIR) AC_SUBST(FRAMEWORK_PREFIX)