From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0.migadu.com ([2001:41d0:403:58f0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms13.migadu.com with LMTPS id oNHjNkNgOmeEOQAAqHPOHw:P1 (envelope-from ) for ; Sun, 17 Nov 2024 21:29:40 +0000 Received: from aspmx1.migadu.com ([2001:41d0:403:58f0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0.migadu.com with LMTPS id oNHjNkNgOmeEOQAAqHPOHw (envelope-from ) for ; Sun, 17 Nov 2024 22:29:40 +0100 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=debbugs.gnu.org header.s=debbugs-gnu-org header.b=TPoz0gR0; dkim=fail ("headers rsa verify failed") header.d=lostca.se header.s=anamika header.b=aGFlGa+q; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=gnu.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1731878979; h=from:from:sender:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=mhDe027/zImsCBYwi/yCYrosv0kODwrU+uexThPMsgQ=; b=JNoUPVLTNTvQCeUTDwEOcEYLfYQ0jsndGTyx7rCc3V72yRkx1nodn0C3lLUyKQBdDgXRu5 88PvzYhg8Lf3hzIYt/KQzjLnUFHQXPGR+qHr2rogSU8+6p/k56Vn7i7H0AlPmWOICkLZzj c7PmJz7deyQs1WmVXz59iwR4hueIell00jNclsfQfVpMjEHTjY6ol7Rx6uLDRp6QqLGYoA QMsiZse4fGfkmC6LE6blXOpEgB1ZoJCpIZm8qv/3gfR0Mt9ZlOlNfYG+4WA6/akqWTZu36 SiWpwLKZDcUM/TVY5NTJF401ahUXjaqdFQgvBu0r/mWC7X1JF9SJiT8MAvczsQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=debbugs.gnu.org header.s=debbugs-gnu-org header.b=TPoz0gR0; dkim=fail ("headers rsa verify failed") header.d=lostca.se header.s=anamika header.b=aGFlGa+q; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=gnu.org ARC-Seal: i=1; s=key1; d=yhetil.org; t=1731878979; a=rsa-sha256; cv=none; b=VXmRAVPHgjpTTGRmeI89j8Zr/jq6xnyc4uC+hOctrfrpNYTet5tHv6RnZYO5C3UuUy7err d8bbFkGC5QiS374CR3zltpPU4sUtV8pZs/5iLc+W4rkEgpRrvqlgxZIvYriAFghvHio967 Y+WMsSZt1dhyVDenF2Eakepj4CsoelN7Z0Vrx7wjWifsHHtCWZRbfH+VUiZJid2BkBHoCU Aq9pfWLQhY86Y0rx/CflJ7MvXK1wkncUyze/EYB4F512jHqagY33OUtQfefhfsYCdD26sB fGv3+62c2nmkg94RbZ8adtQJlNubbdtfegYQBBf/Nr3E3QEl2SWM8BlhawIosQ== Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id BF7FE4047A for ; Sun, 17 Nov 2024 22:29:38 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tCmpP-0005EH-3i; Sun, 17 Nov 2024 16:29:07 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tCmpL-0005E9-FK for guix-patches@gnu.org; Sun, 17 Nov 2024 16:29:03 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tCmpK-0005Vj-Vg for guix-patches@gnu.org; Sun, 17 Nov 2024 16:29:03 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:References:In-Reply-To:Date:From:To:Subject; bh=mhDe027/zImsCBYwi/yCYrosv0kODwrU+uexThPMsgQ=; b=TPoz0gR0SB/3N42Q40hYniWw1r0urZEzT3CNy9heyDFXJebMALif58ljRCrB5cJtJ2caF5Zq9THULpVqRxMFPbK7fqtzP+z/9Ms8cF/Ubx+bYXVhNKuFVdKosBdFV9qXhf/ZDj/C8v5SPaQRtzZzSKIH/qEBmn8bg9fnotaNq8XT3ZgNdWmxnycz90lyG57qEksjkQep2g5N9K6UToko9JNGNlqlOoPrb6m1okAGjjgP2yntxs47gDw5/eA/Wi0WjxA7JvyEof/msJ49nweloBNqOSW8ELQgbh2ALbknIcxnf7S3PM0Xt0fbREWeHI1VTGeOp+JoLjWGhY0G9RrN0g==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tCmpK-0007pk-DC; Sun, 17 Nov 2024 16:29:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#74360] [PATCH v2] gnu: chez-scheme: Update to 10.1.0. Resent-From: Ashish SHUKLA Original-Sender: "Debbugs-submit" Resent-CC: philip@philipmcgrath.com, guix-patches@gnu.org Resent-Date: Sun, 17 Nov 2024 21:29:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 74360 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 74360@debbugs.gnu.org Cc: Ashish SHUKLA , Philip McGrath X-Debbugs-Original-Xcc: Philip McGrath Received: via spool by 74360-submit@debbugs.gnu.org id=B74360.173187893930097 (code B ref 74360); Sun, 17 Nov 2024 21:29:02 +0000 Received: (at 74360) by debbugs.gnu.org; 17 Nov 2024 21:28:59 +0000 Received: from localhost ([127.0.0.1]:58841 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tCmpG-0007pL-9F for submit@debbugs.gnu.org; Sun, 17 Nov 2024 16:28:59 -0500 Received: from anamika.lostca.se ([65.21.75.227]:40254) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tCmpD-0007p6-8u for 74360@debbugs.gnu.org; Sun, 17 Nov 2024 16:28:57 -0500 Received: from localhost.localdomain (unknown [IPv6:2a02:9140:3880:af00:1fe0:c00:ce16:a1a1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: abbe) by anamika.lostca.se (Postfix) with ESMTPSA id 9B6CA3B734; Sun, 17 Nov 2024 21:28:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lostca.se; s=anamika; t=1731878926; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=mhDe027/zImsCBYwi/yCYrosv0kODwrU+uexThPMsgQ=; b=aGFlGa+q1AeQaGDBIeGl3lgWrFX4Xz/Y+oufRMPaFc+suRgXVpVcnH8YtqAprkv/XvfUwM f6XFFpDfxLs7StuQiqNcd13tPWkVQNE3Qu/3E9gw3R8mNQAEGkpSgTK46WxPhq35yd1kyo 0TMZgzrdQUwGo8ncs4ovNskyqy9iJNo= Date: Sun, 17 Nov 2024 22:26:52 +0100 Message-ID: X-Mailer: git-send-email 2.47.0 In-Reply-To: <87bjyditkr.fsf@ngraves.fr> References: <87bjyditkr.fsf@ngraves.fr> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-to: Ashish SHUKLA X-ACL-Warn: , Ashish SHUKLA via Guix-patches From: Ashish SHUKLA via Guix-patches via Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: guix-patches-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-Migadu-Scanner: mx11.migadu.com X-Migadu-Spam-Score: 1.59 X-Spam-Score: 1.59 X-Migadu-Queue-Id: BF7FE4047A X-TUID: pMy/6qlzoscb * gnu/packages/chez.scm (chez-scheme): Update to 10.1.0. [source](origin): Remove upstreamed patches. [description]: Fix lint warning. * gnu/packages/patches/chez-scheme-backport-configure.patch: Delete file. * gnu/packages/patches/chez-scheme-backport-signal.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Deregister patches. Change-Id: I00ea93290b1d386fb4641a57de1035b6e8c63c6e --- Hi, Patch is revised according to the comment. Thanks! gnu/local.mk | 2 - gnu/packages/chez.scm | 11 +- .../chez-scheme-backport-configure.patch | 463 ------------------ .../patches/chez-scheme-backport-signal.patch | 87 ---- 4 files changed, 5 insertions(+), 558 deletions(-) delete mode 100644 gnu/packages/patches/chez-scheme-backport-configure.patch delete mode 100644 gnu/packages/patches/chez-scheme-backport-signal.patch diff --git a/gnu/local.mk b/gnu/local.mk index 60fc8c9d94..9b2b2ac51d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1048,8 +1048,6 @@ dist_patch_DATA = \ %D%/packages/patches/ccextractor-add-missing-header.patch \ %D%/packages/patches/ccextractor-autoconf-tesseract.patch \ %D%/packages/patches/ccextractor-fix-ocr.patch \ - %D%/packages/patches/chez-scheme-backport-configure.patch \ - %D%/packages/patches/chez-scheme-backport-signal.patch \ %D%/packages/patches/chez-scheme-bin-sh.patch \ %D%/packages/patches/circos-remove-findbin.patch \ %D%/packages/patches/cdparanoia-fpic.patch \ diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm index a24e8aaf79..8a3185cfc0 100644 --- a/gnu/packages/chez.scm +++ b/gnu/packages/chez.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2019 Brett Gilio ;;; Copyright © 2020 Brendan Tildesley ;;; Copyright © 2021-2024 Philip McGrath +;;; Copyright © 2024 Ashish SHUKLA ;;; ;;; This file is part of GNU Guix. ;;; @@ -500,7 +501,7 @@ (define-public chez-scheme (name "chez-scheme") ;; The version should match `(scheme-version-number #t)`. ;; See s/cmacros.ss c. line 360. - (version "10.0.0") + (version "10.1.0") (source (origin (method git-fetch) (uri (git-reference @@ -508,11 +509,9 @@ (define-public chez-scheme (commit (string-append "v" version)))) (sha256 (base32 - "1q66vafhiwk617z51qkm1v64r3bxqhhf5lzrmsa4l9d5yhvlyk09")) + "0y07n2has2592g41zgl275as2wbw1fqd2y7a34llpbqnfpc7923s")) (file-name (git-file-name name version)) - (patches (search-patches "chez-scheme-backport-configure.patch" - "chez-scheme-backport-signal.patch" - "chez-scheme-bin-sh.patch")) + (patches (search-patches "chez-scheme-bin-sh.patch")) (snippet #~(begin (use-modules (guix build utils)) ;; TODO: consider putting this in a (guix ...) or @@ -540,7 +539,7 @@ (define-public chez-scheme (synopsis "R6RS Scheme compiler and run-time") (description "Chez Scheme is both a programming language and a high-performance -implementation of that language. The language is a superset of R6RS Scheme +implementation of that language. The language is a superset of R6RS Scheme with numerous extensions, including native threads, non-blocking I/O, local modules, and much more. Chez Scheme compiles source expressions incrementally to machine code, providing the speed of compiled code in an interactive 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 -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=` or -`LZ4=`, as applicable. - -* configure: support `ZUO=` - -Supplying `ZUO=` skips the submodule check in `configure` -and configures the generated makefile not to build or remove Zuo. - -* configure: support `STEXLIB=` - -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=`. 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=`). - - - 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= executable stripper" - echo " ZLIB= link to instead of own zlib" - echo " LZ4= link to instead of own LZ4" -+ echo " STEXLIB= build docs with instead of own stex" -+ echo " ZUO= build with 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 -Date: Sun, 17 Mar 2024 09:06:30 -0600 -Subject: [PATCH 2/2] adjust `configure ZUO=` support (#816) - -Continuing from b8838c3280, adjust the generated makefile so the -supplied `` 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= to build boot files for -@@ -61,90 +61,90 @@ boot: - + $(ZUO) $(workarea) boot "$(XM)" MAKE="$(MAKE)" - - # `.boot` as alias for `boot XM=` --%.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= to build boot files for - # 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)" - - # `.bootquick` as alias for `boot XM=` --%.bootquick: $(ZUO) -+%.bootquick: $(ZUO_DEP) - + $(ZUO) $(workarea) bootquick $* MAKE="$(MAKE)" - --auto.bootquick: $(ZUO) -+auto.bootquick: $(ZUO_DEP) - + $(ZUO) $(workarea) bootquick MAKE="$(MAKE)" - - # Supply XM=-.bootpbchunk to repackage boot files for - # with pbchunk sources, including additional - # boot files - .PHONY: bootpbchunk --bootpbchunk: $(ZUO) -+bootpbchunk: $(ZUO_DEP) - + $(ZUO) $(workarea) bootpbchunk "$(XM)" $(ARGS) MAKE="$(MAKE)" - - # `.bootpbchunk` as alias for `pbchunk XM=` --%.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 - diff --git a/gnu/packages/patches/chez-scheme-backport-signal.patch b/gnu/packages/patches/chez-scheme-backport-signal.patch deleted file mode 100644 index 1fee32b167..0000000000 --- a/gnu/packages/patches/chez-scheme-backport-signal.patch +++ /dev/null @@ -1,87 +0,0 @@ -From e416651d8b53fa2eca6edde764a9131d128cd166 Mon Sep 17 00:00:00 2001 -From: Matthew Flatt -Date: Sat, 2 Mar 2024 07:18:41 -0700 -Subject: [PATCH] constrain signal delivery to Scheme to the main thread (#813) - -The intent is to avoid crashes when a signal gets delimited to a -thread that might not even be a Scheme thread. Also, we don't try to -queue the event directly in the main thread's context, because then -we'd need more of a lock (while signal handling is otherwise an -implicit lock). - -(cherry picked from commit fc081fc447a786dd53286e5d7314b7217631cb68) ---- - -Notes: - This should fix intermittent test failures experienced by Guix: - see . - - c/globals.h | 1 + - c/schsig.c | 10 ++++++++++ - c/thread.c | 1 + - csug/system.stex | 2 ++ - 4 files changed, 14 insertions(+) - -diff --git a/c/globals.h b/c/globals.h -index d2a08299..eb2965c5 100644 ---- a/c/globals.h -+++ b/c/globals.h -@@ -49,6 +49,7 @@ EXTERN int S_num_preserve_ownership_threads; - # ifdef IMPLICIT_ATOMIC_AS_EXPLICIT - EXTERN s_thread_mutex_t S_implicit_mutex; - # endif -+EXTERN s_thread_t S_main_thread_id; - #endif - - /* segment.c */ -diff --git a/c/schsig.c b/c/schsig.c -index a89ab62a..04677730 100644 ---- a/c/schsig.c -+++ b/c/schsig.c -@@ -666,6 +666,16 @@ ptr S_dequeue_scheme_signals(ptr tc) { - static void forward_signal_to_scheme(INT sig) { - ptr tc = get_thread_context(); - -+#ifdef PTHREADS -+ /* deliver signals to the main thread, only; depending -+ on the threads that are running, `tc` might even be NULL */ -+ if (tc != TO_PTR(&S_G.thread_context)) { -+ pthread_kill(S_main_thread_id, sig); -+ RESET_SIGNAL -+ return; -+ } -+#endif -+ - if (enqueue_scheme_signal(tc, sig)) { - SIGNALINTERRUPTPENDING(tc) = Strue; - SOMETHINGPENDING(tc) = Strue; -diff --git a/c/thread.c b/c/thread.c -index 9a341b22..f130f44d 100644 ---- a/c/thread.c -+++ b/c/thread.c -@@ -40,6 +40,7 @@ void S_thread_init(void) { - s_thread_cond_init(&S_terminated_cond); - S_alloc_mutex.owner = 0; - S_alloc_mutex.count = 0; -+ S_main_thread_id = s_thread_self(); - - # ifdef IMPLICIT_ATOMIC_AS_EXPLICIT - s_thread_mutex_init(&S_implicit_mutex); -diff --git a/csug/system.stex b/csug/system.stex -index d4f2bcbb..bb89f419 100644 ---- a/csug/system.stex -+++ b/csug/system.stex -@@ -547,6 +547,8 @@ After a signal handler for a given signal has been registered, receipt - of the specified signal results in a call to the handler. - The handler is passed the signal number, allowing the same handler to - be used for different signals while differentiating among them. -+In a threaded version of the system, signals are always delivered to -+the main thread. - - Signals handled in this fashion are treated like keyboard interrupts in - that the handler is not called immediately when the signal is delivered - -base-commit: 253230f7dfbb4fe777277d6bbf93f39f9567f086 --- -2.41.0 - base-commit: d108a7aac2c51f21c55cb8ea8801629a97f5242a -- 2.47.0