diff options
Diffstat (limited to 'gnu/packages/patches/chez-scheme-backport-configure.patch')
-rw-r--r-- | gnu/packages/patches/chez-scheme-backport-configure.patch | 463 |
1 files changed, 0 insertions, 463 deletions
diff --git a/gnu/packages/patches/chez-scheme-backport-configure.patch b/gnu/packages/patches/chez-scheme-backport-configure.patch deleted file mode 100644 index 584dcb3f0b..0000000000 --- a/gnu/packages/patches/chez-scheme-backport-configure.patch +++ /dev/null @@ -1,463 +0,0 @@ -From 24ab36374f2e366b6c939fffe8c129c8b0ae3b9c Mon Sep 17 00:00:00 2001 -From: Philip McGrath <philip@philipmcgrath.com> -Date: Wed, 28 Feb 2024 19:41:22 -0500 -Subject: [PATCH 1/2] Repairs and improvements for building with external - dependencies (#807) - -* configure: fix zlib and lz4 submodule checks - -Conditionals to skip the submodule checks were using the wrong -variable names, so the checks were always skipped. The correct -behavior is to perform the check unless given `ZLIB=<zlib>` or -`LZ4=<lz4>`, as applicable. - -* configure: support `ZUO=<zuo>` - -Supplying `ZUO=<zuo>` skips the submodule check in `configure` -and configures the generated makefile not to build or remove Zuo. - -* configure: support `STEXLIB=<stex>` - -For compatibility with older scripts, when not explicitly configured, -continue to honor the `STEXLIB` environment variable at build time. - -(cherry picked from commit b8838c3280ef10e115236d2f7ac9ae857f83e268) ---- - BUILDING | 5 +++-- - build.zuo | 13 +++++++++---- - configure | 40 +++++++++++++++++++++++++++++++++------- - makefiles/Makefile.in | 6 ++---- - 4 files changed, 47 insertions(+), 17 deletions(-) - -diff --git a/BUILDING b/BUILDING -index 7b3dc9c8..9e9a268b 100644 ---- a/BUILDING -+++ b/BUILDING -@@ -149,7 +149,8 @@ information on the supported options. - The generated makefile mostly just ensures that a `zuo` executable is - built in a `bin` directory, and then it defers the actual build work - to `zuo`, which uses the "main.zuo" file. If you have `zuo` installed, --you can use `zuo` directly instead of `make`. In general, instead of -+you can use `zuo` directly instead of `make`: in that case, you may -+wish to use `./configure ZUO=<zuo>`. In general, instead of - the command `make X` to build target `X` as described below, you can - use `zuo . X` (or `bin/zuo . X` after `bin/zuo` is built). - -@@ -333,7 +334,7 @@ The makefile supports several targets: - * `make clean` - - Removes all built elements from the workarea, and then removes -- `bin/zuo`. -+ `bin/zuo` (unless configured with `ZUO=<zuo>`). - - - WINDOWS VIA COMMAND PROMPT -diff --git a/build.zuo b/build.zuo -index c21d2caa..c5896396 100644 ---- a/build.zuo -+++ b/build.zuo -@@ -224,10 +224,15 @@ - token)) - - (define stexlib -- (let ((found (assoc "STEXLIB" (hash-ref (runtime-env) 'env)))) -- (if found -- (cdr found) -- (at-source "stex")))) -+ (let ([configured (hash-ref config 'STEXLIB "")] -+ [env (assoc "STEXLIB" (hash-ref (runtime-env) 'env))]) -+ (cond -+ [(not (equal? "" configured)) -+ configured] -+ [env -+ (cdr env)] -+ [else -+ (at-source "stex")]))) - (define stex-sources - (source-tree stexlib)) - -diff --git a/configure b/configure -index 2b4b594e..782dd09b 100755 ---- a/configure -+++ b/configure -@@ -93,6 +93,7 @@ default_warning_flags="-Wpointer-arith -Wall -Wextra -Wno-implicit-fallthrough" - CFLAGS_ADD= - zlibLib= - LZ4Lib= -+STEXLIB= - Kernel=KernelLib - buildKernelOnly=no - enableFrompb=yes -@@ -103,6 +104,7 @@ moreBootFiles= - preloadBootFiles= - alwaysUseBootFile= - skipSubmoduleUpdate= -+zuoExternal= - - CONFIG_UNAME=`uname` - -@@ -446,6 +448,12 @@ while [ $# != 0 ] ; do - LZ4=*) - LZ4Lib=`echo $1 | sed -e 's/^LZ4=//'` - ;; -+ STEXLIB=*) -+ STEXLIB=`echo $1 | sed -e 's/^STEXLIB=//'` -+ ;; -+ ZUO=*) -+ zuoExternal=`echo $1 | sed -e 's/^ZUO=//'` -+ ;; - *) - echo "option '$1' unrecognized or missing an argument; try $0 --help" - exit 1 -@@ -672,6 +680,8 @@ if [ "$help" = "yes" ]; then - echo " STRIP=<strip> executable stripper" - echo " ZLIB=<lib> link to <lib> instead of own zlib" - echo " LZ4=<lib> link to <lib> instead of own LZ4" -+ echo " STEXLIB=<stex> build docs with <stex> instead of own stex" -+ echo " ZUO=<zuo> build with <zuo> instead of own Zuo" - echo "" - echo "Available machine types: $machs" - echo "" -@@ -889,28 +899,39 @@ submod_instructions () { - exit 1 - } - --if [ ! -f "$srcdir"/zuo/configure ] ; then -- submod_instructions 'Source in "zuo" is missing' -+if [ "${zuoExternal}" = "" ] ; then -+ if [ ! -f "$srcdir"/zuo/configure ] ; then -+ submod_instructions 'Source in "zuo" is missing' -+ fi -+ ZUO="bin/zuo" -+ RM_ZUO="rm -f bin/zuo" -+ ZUO_TARGET="bin/zuo" -+else -+ ZUO="${zuoExternal}" -+ RM_ZUO="@echo 'Not cleaning external ${zuoExternal}'" -+ ZUO_TARGET="DoNotBuildZuo" - fi - - if [ ! -f "$srcdir"/nanopass/nanopass.ss ] ; then - submod_instructions 'Source in "nanopass" is missing' - fi - --if [ "${zlibDep}" != "" ] ; then -+if [ "${zlibLib}" = "" ] ; then - if [ ! -f "$srcdir"/zlib/configure ] ; then - submod_instructions 'Source in "zlib" is missing' - fi - fi - --if [ "${LZ4Dep}" != "" ] ; then -+if [ "${LZ4Lib}" = "" ] ; then - if [ ! -f "$srcdir"/lz4/lib/Makefile ] ; then - submod_instructions 'Source in "lz4" is missing' - fi - fi - --if [ ! -f "$srcdir"/stex/Mf-stex ] ; then -- submod_instructions 'Source in "stex" is missing' -+if [ "${STEXLIB}" = "" ] ; then -+ if [ ! -f "$srcdir"/stex/Mf-stex ] ; then -+ submod_instructions 'Source in "stex" is missing' -+ fi - fi - - # more compile and link flags for c/Mf-unix and mats/Mf-unix -@@ -1083,7 +1104,7 @@ cp "$srcdir"/makefiles/buildmain.zuo main.zuo - # Some idea, but in the workarea, so it refers to "workarea.zuo" here: - cp "$srcdir"/makefiles/workmain.zuo $w/main.zuo - --# The content of "$w/Makefile" records configuration decisions, -+# The content of "$w/Mf-config" records configuration decisions, - # and the Zuo build script takes it from there - cat > $w/Mf-config << END - srcdir=$srcdir -@@ -1119,6 +1140,7 @@ cursesLib=$cursesLib - ncursesLib=$ncursesLib - zlibLib=$zlibLib - LZ4Lib=$LZ4Lib -+STEXLIB=$STEXLIB - warningFlags=$warningFlags - Kernel=$Kernel - installscriptname=$installscriptname -@@ -1130,6 +1152,10 @@ preloadBootFiles=$preloadBootFiles - alwaysUseBootFile=$alwaysUseBootFile - relativeBootFiles=$relativeBootFiles - -+ZUO=$ZUO -+RM_ZUO=$RM_ZUO -+ZUO_TARGET=$ZUO_TARGET -+ - InstallBin=$installbin - InstallLib=$installlib - InstallMan=$installman/man1 -diff --git a/makefiles/Makefile.in b/makefiles/Makefile.in -index 3b95f065..0e3d307d 100644 ---- a/makefiles/Makefile.in -+++ b/makefiles/Makefile.in -@@ -3,8 +3,6 @@ workarea=$(w) - - include $(workarea)/Mf-config - --ZUO=bin/zuo -- - .PHONY: build - build: $(ZUO) - + $(ZUO) $(workarea) MAKE="$(MAKE)" -@@ -144,9 +142,9 @@ pkg: $(ZUO) - .PHONY: clean - clean: $(ZUO) - + $(ZUO) $(workarea) clean MAKE="$(MAKE)" -- rm -f bin/zuo -+ $(RM_ZUO) - - # Using `+` here means that $(ZUO) gets built even if `-n`/`--dry-run` is provided to `make` --$(ZUO): $(srcdir)/zuo/zuo.c -+$(ZUO_TARGET): $(srcdir)/zuo/zuo.c - + mkdir -p bin - + $(CC_FOR_BUILD) -DZUO_LIB_PATH='"'"../zuo/lib"'"' -o $(ZUO) $(srcdir)/zuo/zuo.c - -base-commit: 253230f7dfbb4fe777277d6bbf93f39f9567f086 --- -2.41.0 - - -From 665bccc1c074131e790879adc1436f8059801171 Mon Sep 17 00:00:00 2001 -From: Matthew Flatt <mflatt@racket-lang.org> -Date: Sun, 17 Mar 2024 09:06:30 -0600 -Subject: [PATCH 2/2] adjust `configure ZUO=<command>` support (#816) - -Continuing from b8838c3280, adjust the generated makefile so the -supplied `<command>` is not a makefile dependency. That way, `ZUO=zuo` -works if `zuo` is installed and the current build directory is not the -source directory. (The `zuo` executable is a dependency in a real and -relevant sense, but not in the sense of dependencies that we normally -track in makefiles.) - -Also adapt the makefile for the case that `ZUO=...` is not supplied -and the build directory is not the source directory, in which case -`ZUO_LIB_PATH` needs to be relative to the source directory. - -Using `make ZUO=zuo` can also work, but in that case, `bin/zuo` is -still built as a dependency. It's possible that some portable makefile -magic could overcome that limitation, but it doesn't seem important. - -(cherry picked from commit d327968f37cdf669d15a9ad6d356bbf92c502bb9) ---- - configure | 3 ++ - makefiles/Makefile.in | 66 +++++++++++++++++++++---------------------- - 2 files changed, 36 insertions(+), 33 deletions(-) - -diff --git a/configure b/configure -index 782dd09b..9adae37a 100755 ---- a/configure -+++ b/configure -@@ -904,10 +904,12 @@ if [ "${zuoExternal}" = "" ] ; then - submod_instructions 'Source in "zuo" is missing' - fi - ZUO="bin/zuo" -+ ZUO_DEP="${ZUO}" - RM_ZUO="rm -f bin/zuo" - ZUO_TARGET="bin/zuo" - else - ZUO="${zuoExternal}" -+ ZUO_DEP="" - RM_ZUO="@echo 'Not cleaning external ${zuoExternal}'" - ZUO_TARGET="DoNotBuildZuo" - fi -@@ -1153,6 +1155,7 @@ alwaysUseBootFile=$alwaysUseBootFile - relativeBootFiles=$relativeBootFiles - - ZUO=$ZUO -+ZUO_DEP=$ZUO_DEP - RM_ZUO=$RM_ZUO - ZUO_TARGET=$ZUO_TARGET - -diff --git a/makefiles/Makefile.in b/makefiles/Makefile.in -index 0e3d307d..fc8605a0 100644 ---- a/makefiles/Makefile.in -+++ b/makefiles/Makefile.in -@@ -4,55 +4,55 @@ workarea=$(w) - include $(workarea)/Mf-config - - .PHONY: build --build: $(ZUO) -+build: $(ZUO_DEP) - + $(ZUO) $(workarea) MAKE="$(MAKE)" - - .PHONY: run --run: $(ZUO) -+run: $(ZUO_DEP) - + $(ZUO) $(workarea) run - - .PHONY: kernel --kernel: $(ZUO) -+kernel: $(ZUO_DEP) - + $(ZUO) $(workarea) kernel MAKE="$(MAKE)" - - .PHONY: install --install: $(ZUO) -+install: $(ZUO_DEP) - $(ZUO) $(workarea) install MAKE="$(MAKE)" - - .PHONY: uninstall --uninstall: $(ZUO) -+uninstall: $(ZUO_DEP) - + $(ZUO) $(workarea) uninstall MAKE="$(MAKE)" - - .PHONY: test-one --test-one: $(ZUO) -+test-one: $(ZUO_DEP) - + $(ZUO) $(workarea) test-one MAKE="$(MAKE)" - - .PHONY: test-some-fast --test-some-fast: $(ZUO) -+test-some-fast: $(ZUO_DEP) - + $(ZUO) $(workarea) test-some-fast MAKE="$(MAKE)" - - .PHONY: test-some --test-some: $(ZUO) -+test-some: $(ZUO_DEP) - + $(ZUO) $(workarea) test-some MAKE="$(MAKE)" - - .PHONY: test --test: $(ZUO) -+test: $(ZUO_DEP) - + $(ZUO) $(workarea) test MAKE="$(MAKE)" - - .PHONY: test-more --test-more: $(ZUO) -+test-more: $(ZUO_DEP) - + $(ZUO) $(workarea) test-more MAKE="$(MAKE)" - - .PHONY: coverage --coverage: $(ZUO) -+coverage: $(ZUO_DEP) - + $(ZUO) $(workarea) coverage MAKE="$(MAKE)" - - .PHONY: bootfiles --bootfiles: $(ZUO) -+bootfiles: $(ZUO_DEP) - + $(ZUO) $(workarea) bootfiles MAKE="$(MAKE)" - - .PHONY: reset --reset: $(ZUO) -+reset: $(ZUO_DEP) - + $(ZUO) $(workarea) reset MAKE="$(MAKE)" - - # Supply XM=<machine> to build boot files for <machine> -@@ -61,90 +61,90 @@ boot: - + $(ZUO) $(workarea) boot "$(XM)" MAKE="$(MAKE)" - - # `<machine>.boot` as alias for `boot XM=<machine>` --%.boot: $(ZUO) -+%.boot: $(ZUO_DEP) - + $(ZUO) $(workarea) boot $* MAKE="$(MAKE)" - - .PHONY: auto.boot --auto.boot: $(ZUO) -+auto.boot: $(ZUO_DEP) - + $(ZUO) $(workarea) boot MAKE="$(MAKE)" - - SCHEME=scheme - - .PHONY: cross.boot --cross.boot: $(ZUO) -+cross.boot: $(ZUO_DEP) - + $(ZUO) $(workarea) boot SCHEME="$(SCHEME)" MAKE="$(MAKE)" - - .PHONY: re.boot --re.boot: $(ZUO) -+re.boot: $(ZUO_DEP) - + $(ZUO) $(workarea) reboot SCHEME="$(SCHEME)" - - # Supply XM=<machine> to build boot files for <machine> - # with o=3 d=0 for the cross compiler, and only after - # building the kernel for the configured machine - .PHONY: bootquick --bootquick: $(ZUO) -+bootquick: $(ZUO_DEP) - + $(ZUO) $(workarea) bootquick "$(XM)" MAKE="$(MAKE)" - - # `<machine>.bootquick` as alias for `boot XM=<machine>` --%.bootquick: $(ZUO) -+%.bootquick: $(ZUO_DEP) - + $(ZUO) $(workarea) bootquick $* MAKE="$(MAKE)" - --auto.bootquick: $(ZUO) -+auto.bootquick: $(ZUO_DEP) - + $(ZUO) $(workarea) bootquick MAKE="$(MAKE)" - - # Supply XM=<machine>-<tag>.bootpbchunk to repackage boot files for - # <machine> with pbchunk sources, including additional - # boot files - .PHONY: bootpbchunk --bootpbchunk: $(ZUO) -+bootpbchunk: $(ZUO_DEP) - + $(ZUO) $(workarea) bootpbchunk "$(XM)" $(ARGS) MAKE="$(MAKE)" - - # `<machine>.bootpbchunk` as alias for `pbchunk XM=<machine>` --%.bootpbchunk: $(ZUO) -+%.bootpbchunk: $(ZUO_DEP) - + $(ZUO) $(workarea) bootpbchunk $* $(ARGS) MAKE="$(MAKE)" - - .PHONY: docs --docs: build $(ZUO) -+docs: build $(ZUO_DEP) - + $(ZUO) $(workarea) docs MAKE="$(MAKE)" - - .PHONY: csug --csug: build $(ZUO) -+csug: build $(ZUO_DEP) - + $(ZUO) $(workarea) csug MAKE="$(MAKE)" - - .PHONY: release_notes --release_notes: build $(ZUO) -+release_notes: build $(ZUO_DEP) - + $(ZUO) $(workarea) release_notes MAKE="$(MAKE)" - - .PHONY: install-docs --install-docs: build $(ZUO) -+install-docs: build $(ZUO_DEP) - + $(ZUO) $(workarea) install-docs MAKE="$(MAKE)" - - .PHONY: install-csug --install-csug: build $(ZUO) -+install-csug: build $(ZUO_DEP) - + $(ZUO) $(workarea) install-csug MAKE="$(MAKE)" - - .PHONY: install-release_notes --install-release_notes: build $(ZUO) -+install-release_notes: build $(ZUO_DEP) - + $(ZUO) $(workarea) install-release_notes MAKE="$(MAKE)" - - .PHONY: bintar --bintar: $(ZUO) -+bintar: $(ZUO_DEP) - + $(ZUO) $(workarea) bintar MAKE="$(MAKE)" - - .PHONY: rpm --rpm: $(ZUO) -+rpm: $(ZUO_DEP) - + $(ZUO) $(workarea) rpm MAKE="$(MAKE)" - - .PHONY: pkg --pkg: $(ZUO) -+pkg: $(ZUO_DEP) - + $(ZUO) $(workarea) pkg MAKE="$(MAKE)" - - .PHONY: clean --clean: $(ZUO) -+clean: $(ZUO_DEP) - + $(ZUO) $(workarea) clean MAKE="$(MAKE)" - $(RM_ZUO) - - # Using `+` here means that $(ZUO) gets built even if `-n`/`--dry-run` is provided to `make` - $(ZUO_TARGET): $(srcdir)/zuo/zuo.c - + mkdir -p bin -- + $(CC_FOR_BUILD) -DZUO_LIB_PATH='"'"../zuo/lib"'"' -o $(ZUO) $(srcdir)/zuo/zuo.c -+ + $(CC_FOR_BUILD) -DZUO_LIB_PATH='"'"$(upsrcdir)/zuo/lib"'"' -o $(ZUO) $(srcdir)/zuo/zuo.c --- -2.41.0 - |