zaoqi: 1 testing/racket: upgrade from 6.12 to 7.4 5 files changed, 53 insertions(+), 129 deletions(-)
Copy & paste the following snippet into your terminal to import this patchset into git:
curl -s https://lists.alpinelinux.org/~alpine/aports/patches/2901/mbox | git am -3Learn more about email & git
--- testing/racket/APKBUILD | 18 +++---- testing/racket/libressl.patch | 55 +++------------------ testing/racket/makefile-fix-bashism.patch | 38 -------------- testing/racket/musl-fixes.patch | 11 +++-- testing/racket/paxmark.patch | 60 ++++++++++++----------- 5 files changed, 53 insertions(+), 129 deletions(-) delete mode 100644 testing/racket/makefile-fix-bashism.patch diff --git a/testing/racket/APKBUILD b/testing/racket/APKBUILD index 343019ed..04bb7590 100644 --- a/testing/racket/APKBUILD +++ b/testing/racket/APKBUILD @@ -2,11 +2,11 @@ # Maintainer: Jakub Jirutka <jakub@jirutka.cz> # # TODO: Separate packages into subpackages? -# TODO: Install even packages from the full tarball? +# TODO: Add racket-full? Install even packages from the full tarball? # TODO: Figure out how to run tests. pkgname=racket -pkgver=6.12 -pkgrel=3 +pkgver=7.4 +pkgrel=1 pkgdesc="A general purpose programming language in the Lisp-Scheme family" url="https://racket-lang.org/" arch="all" @@ -14,10 +14,9 @@ license="LGPL-3.0-or-later MIT" depends="ca-certificates libressl2.7-libcrypto libressl2.7-libssl" makedepends="chrpath libffi-dev libucontext-dev paxmark" subpackages="$pkgname-dev $pkgname-doc" -source="https://download.racket-lang.org/releases/$pkgver/installers/$pkgname-minimal-$pkgver-src.tgz +source="https://mirror.racket-lang.org/installers/$pkgver/$pkgname-minimal-$pkgver-src-builtpkgs.tgz paxmark.patch musl-fixes.patch - makefile-fix-bashism.patch libressl.patch" builddir="$srcdir/$pkgname-$pkgver" @@ -65,8 +64,7 @@ package() { rm -Rf usr/share/applications } -sha512sums="f342f0e475abb8ceb692cc66cde8d0741f0b106721210d427b569453ead642bbb951dd182378bcb468c53e170c2691cf05a64ccd49fc5a701ff24047874eb82a racket-minimal-6.12-src.tgz -ff7804e37cbab237921f7d4c334f6cbb2909e9284b7b2cec1dfd3e73ec189b8ecf0cb0cabd1abedb09020f2a57ad4c32088ea73e5cb71afdafce39a7a718b10c paxmark.patch -6af0ae984ac54f167f0513795905e9dc845e1c1554935f73958d4e21c5fad35eca791866cfdf94dfcee586ec28335d90520d769010c63cd6ab528e6be3f2c21c musl-fixes.patch -1a96718e6a065bd08f0ff046e799fd4d7657d99789b2cdda8cf7cdd8c2d91742dd34fb43f4c6fabde89a764e073bdecdd96e2caeee49feaac242d30b17d6422b makefile-fix-bashism.patch -780f9d0336acfe887a30ed044df93adbc4a09a5154b5edf034b225a7de350788077820d9f8cc633d2527015e30348bd7b083991e77caa88871ddc5cf899d07f3 libressl.patch" +sha512sums="47730d7c33f213d4882f1a34089d23e4d3bdfac2e72f12f9ffe1e9ebef041576b2fd03b164fa5172c626735ba935da608ffc4c0cafbb8b02ce7538020d911e01 racket-minimal-7.4-src-builtpkgs.tgz +9812acad82084d884b9944d5ed2e61b34b645d822c476c160b42b0d09f84c6292410457c13ae12cb44114ef26dab974f877573d6fef050449d97738b08aa411a libressl.patch +c0fc64b99b4fb97ecfb7ad6f2192af76c4473450a06cba2e12174d820d10c3a39b5734daa8b7212d36399df884bec8b3691557990068b02f440dd9c298e3db37 musl-fixes.patch +e76287591274b01d8038f4c0425dbf804d6d1710bf91abf6dbbbcd6951fcf3df21476b6f28565b81878f479ff7018a362af3a7161496fd94690b5a0bede082cc paxmark.patch" diff --git a/testing/racket/libressl.patch b/testing/racket/libressl.patch index 0b2e83b6..4456b430 100644 --- a/testing/racket/libressl.patch +++ b/testing/racket/libressl.patch @@ -1,53 +1,14 @@ -diff -ru racket-6.12.orig/collects/openssl/libcrypto.rkt racket-6.12/collects/openssl/libcrypto.rkt ---- racket-6.12.orig/collects/openssl/libcrypto.rkt 2017-01-07 15:34:14.000000000 +0200 -+++ racket-6.12/collects/openssl/libcrypto.rkt 2018-04-09 09:42:53.241968324 +0300 -@@ -37,7 +37,13 @@ - ;; Other specific known versions - "1.0.1k" "1.0.1j" "1.0.1g" "1.0.1e" +diff -ru racket-7.4.orig/collects/openssl/libcrypto.rkt racket-7.4/collects/openssl/libcrypto.rkt +--- racket-7.4.orig/collects/openssl/libcrypto.rkt 2019-08-10 22:33:51.000000000 +0800 ++++ racket-7.4/collects/openssl/libcrypto.rkt 2019-08-10 22:37:46.000000000 +0800 +@@ -48,6 +48,11 @@ "1.0" "1.0.0" "1.0.0e" "1.0.0d" "1.0.0c" "1.0.0b" "1.0.0a" -- "0.9.8e" "0.9.8b" "0.9.8" "0.9.7")) -+ "0.9.8e" "0.9.8b" "0.9.8" "0.9.7" -+ + "0.9.8e" "0.9.8b" "0.9.8" "0.9.7" + + ;; LibreSSL + "43" ;; 2.7.2+ + "42" ;; 2.6.3+ + "41" ;; 2.5.5+ -+)) - - (define libcrypto-load-fail-reason #f) - -diff -ru racket-6.12.orig/collects/openssl/libssl.rkt racket-6.12/collects/openssl/libssl.rkt ---- racket-6.12.orig/collects/openssl/libssl.rkt 2016-04-15 23:33:56.000000000 +0300 -+++ racket-6.12/collects/openssl/libssl.rkt 2018-04-09 09:43:20.028984576 +0300 -@@ -9,6 +9,25 @@ - (provide libssl - libssl-load-fail-reason) - -+(define libssl-versions -+ '(;; Versionless (eg from devel pkg) -+ "" -+ -+ ;; Compatibility-based version / SONAME -+ "10" ;; Fedora -+ "1.0.0" ;; Debian, Ubuntu -+ -+ ;; Other specific known versions -+ "1.0.1k" "1.0.1j" "1.0.1g" "1.0.1e" -+ "1.0" "1.0.0" "1.0.0e" "1.0.0d" "1.0.0c" "1.0.0b" "1.0.0a" -+ "0.9.8e" "0.9.8b" "0.9.8" "0.9.7" -+ -+ ;; LibreSSL -+ "45" ;; 2.7.2+ -+ "44" ;; 2.6.3+ -+ "43" ;; 2.5.3+ -+)) + - (define libssl-load-fail-reason #f) - - ;; We need to declare because they might be distributed with PLT Scheme -@@ -28,4 +47,4 @@ - (lambda (x) - (set! libssl-load-fail-reason (exn-message x)) - #f)]) -- (ffi-lib libssl-so openssl-lib-versions)))) -+ (ffi-lib libssl-so libssl-versions)))) + ;; Known versions for *BSD variants + "111")) diff --git a/testing/racket/makefile-fix-bashism.patch b/testing/racket/makefile-fix-bashism.patch deleted file mode 100644 index 4f3ebbcf..00000000 --- a/testing/racket/makefile-fix-bashism.patch @@ -1,38 +0,0 @@ -From 2ad51be9ccb1f0717732875edbb1bb0b33caa2a2 Mon Sep 17 00:00:00 2001 -From: Jakub Jirutka <jakub@jirutka.cz> -Date: Thu, 15 Mar 2018 01:24:49 +0100 -Subject: [PATCH] Fix bashism in Makefile for better portability - -Syntax `[[ "foo" != /* ]]` is not defined by POSIX Shell Command -Language. It's supported only by ksh, Bash and ZSH. Other POSIX -shells, such as ash or dash, does not support it. - -This patch replaces this problematic syntax with simple case statement -that is supported by all POSIX-sh compatible shells, including (but not -limited to) ash, bash, dash, ZSH. - -Upstream-Issue: https://github.com/racket/racket/pull/1990 ---- - racket/src/Makefile.in | 9 ++++----- - 1 file changed, 4 insertions(+), 5 deletions(-) - -diff --git a/racket/src/Makefile.in b/racket/src/Makefile.in -index 76483c1793..24c2e5aeba 100644 ---- a/src/Makefile.in -+++ b/src/Makefile.in -@@ -109,11 +109,10 @@ plain-install: - $(MAKE) plain-install-@MAIN_VARIANT@ - - install-common-first: -- if [ "$(DESTDIR)" != "" ]; then \ -- if [[ "$(DESTDIR)" != /* ]]; then \ -- echo "expected an absolute path for DESTDIR; given: $(DESTDIR)"; exit 1; \ -- fi; \ -- fi -+ case "$(DESTDIR)" in \ -+ "" | /*) ;; \ -+ *) echo "expected an absolute path for DESTDIR; given: $(DESTDIR)"; exit 1;; \ -+ esac - mkdir -p $(ALLDIRINFO) - - install-common-middle: diff --git a/testing/racket/musl-fixes.patch b/testing/racket/musl-fixes.patch index 32eaad0c..30902317 100644 --- a/testing/racket/musl-fixes.patch +++ b/testing/racket/musl-fixes.patch @@ -14,13 +14,14 @@ Resources: * https://github.com/NixOS/nixpkgs/pull/31017 * https://github.com/racket/racket/pull/1886 ---- a/collects/compiler/private/xform.rkt ---- a/collects/compiler/private/xform.rkt -@@ -924,6 +924,7 @@ +diff -ru racket-7.4.orig/collects/compiler/private/xform.rkt racket-7.4/collects/compiler/private/xform.rkt +--- racket-7.4.orig/collects/compiler/private/xform.rkt 2019-08-10 22:33:51.000000000 +0800 ++++ racket-7.4/collects/compiler/private/xform.rkt 2019-08-10 22:40:24.000000000 +0800 +@@ -930,6 +930,7 @@ |GetStdHandle| |__CFStringMakeConstantString| _vswprintf_c malloc strdup -+ __FLOAT_BITS __DOUBLE_BITS ; musl - ++ __FLOAT_BITS __DOUBLE_BITS ; musl + scheme_make_small_bignum scheme_make_small_rational scheme_make_small_complex)) (define non-functions-table diff --git a/testing/racket/paxmark.patch b/testing/racket/paxmark.patch index 6f70d086..f6ecf5cc 100644 --- a/testing/racket/paxmark.patch +++ b/testing/racket/paxmark.patch @@ -1,9 +1,10 @@ This is nasty and quite desperate hack to make Racket built on system with Grsecurity/PaX. Downstream patch only. +diff --git a/src/Makefile.in b/src/Makefile.in --- a/src/Makefile.in +++ b/src/Makefile.in -@@ -28,9 +28,9 @@ +@@ -28,9 +28,9 @@ ICP = @ICP@ # but it can also redirect to an existing Racket executable # that is the same as the version being built (which is # useful for cross-compilation, for example). @@ -13,39 +14,51 @@ with Grsecurity/PaX. Downstream patch only. +RUN_THIS_RACKET_CGC = paxmark m racket/racket@CGC@ && racket/racket@CGC@ +RUN_THIS_RACKET_MMM = paxmark m racket/racket@MMM@ && racket/racket@MMM@ +RUN_THIS_RACKET_MAIN_VARIANT = paxmark m racket/racket@MAIN_VARIANT@ && racket/racket@MAIN_VARIANT@ - + ALLDIRINFO = "$(DESTDIR)$(bindir)" \ "$(DESTDIR)$(collectsdir)" \ +diff --git a/src/lt/ltmain.sh b/src/lt/ltmain.sh +--- a/src/lt/ltmain.sh ++++ b/src/lt/ltmain.sh +@@ -5453,6 +5453,7 @@ else + + *) + $echo >> $output "\ ++ paxmark m \"\$progdir/\$program\" + exec \"\$progdir/\$program\" \${1+\"\$@\"} + " + ;; +diff --git a/src/racket/Makefile.in b/src/racket/Makefile.in --- a/src/racket/Makefile.in +++ b/src/racket/Makefile.in -@@ -46,8 +46,8 @@ - - # See ../../Makefile about RUN_RACKET_<X>, which +@@ -45,8 +45,8 @@ RACKET = racket + + # See ../../Makefile about RUN_RACKET_<X>, which # typically redirects to RUN_THIS_RACKET_<X>: -RUN_THIS_RACKET_CGC = ./racket@CGC@ -RUN_THIS_RACKET_MMM = ./racket@MMM@ +RUN_THIS_RACKET_CGC = paxmark m ./racket@CGC@; ./racket@CGC@ +RUN_THIS_RACKET_MMM = paxmark m ./racket@MMM@; ./racket@MMM@ - - MZSRC = $(srcdir)/src - -@@ -199,6 +199,7 @@ - + + SETUP_BOOT = -O "info@compiler/cm" -l- setup @BOOT_MODE@ $(srcdir)/../setup-go.rkt ../compiled + +@@ -204,6 +204,7 @@ sproc.@LTO@: @GCDIR@/sproc.@LTO@ racket@CGC@@NOT_OSX@@NOT_MINGW@: libracket.@LIBSFX@ libmzgc.@LIBSFX@ main.@LTO@ $(LIBRKTIO_FOR_LIB) $(SPECIALIZINGOBJECTS) @MZLINKER@ -o racket@CGC@ main.@LTO@ $(SPECIALIZINGOBJECTS) libracket.@LIBSFX@ libmzgc.@LIBSFX@ $(LIBRKTIO_FOR_LIB) @LDFLAGS@ @LIBS@ + @POST_LINKER@ racket@CGC@ + paxmark m racket@CGC@ - + mzcom@CGC@@NOT_MINGW@: $(NOOP) -@@ -402,6 +403,7 @@ +@@ -415,6 +416,7 @@ unix-install-cgc: $(MAKE) unix-@INSTALL_LIBS_ENABLE@-libs-cgc cd ..; $(ICP) racket/racket@CGC@ "$(DESTDIR)$(bindir)/racket@CGC_INSTALLED@" cd ..; $(STRIP_DEBUG) "$(DESTDIR)$(bindir)/racket@CGC_INSTALLED@" + cd ..; paxmark m "$(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@" $(DESTDIR)@COLLECTS_PATH@ $(DESTDIR)@CONFIG_PATH@ - -@@ -420,6 +422,7 @@ + +@@ -433,6 +435,7 @@ unix-install-cgc-final: unix-install-3m: cd ..; $(ICP) racket/racket@MMM@ "$(DESTDIR)$(bindir)/racket@MMM_INSTALLED@" cd ..; $(STRIP_DEBUG) "$(DESTDIR)$(bindir)/racket@MMM_INSTALLED@" @@ -53,25 +66,14 @@ with Grsecurity/PaX. Downstream patch only. $(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@" $(DESTDIR)@COLLECTS_PATH@ $(DESTDIR)@CONFIG_PATH@ +diff --git a/src/racket/gc2/Makefile.in b/src/racket/gc2/Makefile.in --- a/src/racket/gc2/Makefile.in +++ b/src/racket/gc2/Makefile.in -@@ -522,6 +522,7 @@ - +@@ -588,6 +588,7 @@ EXTRA_OBJS_L = $(EXTRA_GMP) ../src/unwind.@LTO@ $(@FOREIGN_IF_USED@_OBJSLIB) $(L ../racket@MMM@@NOT_OSX@@NOT_MINGW@: main.@LTO@ ../libracket3m.@LIBSFX@ $(LIBRKTIO_FOR_LIB) cd ..; @MZLINKER@ -o racket@MMM@ @PROFFLAGS@ gc2/main.@LTO@ libracket3m.@LIBSFX@ $(LIBRKTIO_UP_FOR_LIB) @LDFLAGS@ $(LIBS) + @POST_LINKER@ ../racket@MMM@ + paxmark m ../racket@MMM@ - + # The above "cd .." prevents a problem with libtool's generated script in --enable-shared mode, # at least for Mac OS X. Beware of changing LIBS or LDFLAGS to inclucde something with a relative - ---- a/src/lt/ltmain.sh -+++ b/src/lt/ltmain.sh -@@ -5453,6 +5453,7 @@ - - *) - $echo >> $output "\ -+ paxmark m \"\$progdir/\$program\" - exec \"\$progdir/\$program\" \${1+\"\$@\"} - " - ;; - ;; -- 2.22.0