From patchwork Fri Feb 21 21:43:18 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Arun Isaac X-Patchwork-Id: 20346 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 2B79427BBEA; Fri, 21 Feb 2020 21:44:12 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, MAILING_LIST_MULTI,T_DKIM_INVALID,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 82B8A27BBE4 for ; Fri, 21 Feb 2020 21:44:11 +0000 (GMT) Received: from localhost ([::1]:36524 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j5G5i-000458-T5 for patchwork@mira.cbaines.net; Fri, 21 Feb 2020 16:44:10 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36111) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j5G5c-000451-So for guix-patches@gnu.org; Fri, 21 Feb 2020 16:44:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j5G5a-0007HH-9J for guix-patches@gnu.org; Fri, 21 Feb 2020 16:44:04 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:42301) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j5G5a-0007H9-5o for guix-patches@gnu.org; Fri, 21 Feb 2020 16:44:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1j5G5a-0006Lc-2h for guix-patches@gnu.org; Fri, 21 Feb 2020 16:44:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#39723] [PATCH] gnu: swig: Update to 4.0.1. Resent-From: Arun Isaac Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 21 Feb 2020 21:44:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 39723 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 39723@debbugs.gnu.org Cc: Arun Isaac X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.158232141924352 (code B ref -1); Fri, 21 Feb 2020 21:44:01 +0000 Received: (at submit) by debbugs.gnu.org; 21 Feb 2020 21:43:39 +0000 Received: from localhost ([127.0.0.1]:48274 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1j5G59-0006Ke-AW for submit@debbugs.gnu.org; Fri, 21 Feb 2020 16:43:39 -0500 Received: from lists.gnu.org ([209.51.188.17]:56070) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1j5G56-0006KW-57 for submit@debbugs.gnu.org; Fri, 21 Feb 2020 16:43:34 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36019) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j5G54-0003rG-Dj for guix-patches@gnu.org; Fri, 21 Feb 2020 16:43:31 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j5G50-0006kT-OA for guix-patches@gnu.org; Fri, 21 Feb 2020 16:43:30 -0500 Received: from mugam.systemreboot.net ([139.59.75.54]:43620) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1j5G50-0006iP-CF for guix-patches@gnu.org; Fri, 21 Feb 2020 16:43:26 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=systemreboot.net; s=default; h=Content-Transfer-Encoding:Content-Type: MIME-Version:Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=aUvhSc8/bPIcvVQOD95vooWeLmz0XyfL2rGTridOGbo=; b=p/mzV9BAZBAX5arZ2Xco2ERFPP v73LbBwh5S1jlZQKRFURh9yoHpjNzLhLEzVugCwj6XTs108yUkDl5pBJmG2Too0tzU5QHdqoACahQ WzeveFPAxkPH+/YrkRRgH6TA0DQNIYumgWGAWuk8j4V/L0O9axAmHvDJk+lNx1B/Cj44=; Received: from [192.168.2.1] (helo=steel.lan) by systemreboot.net with esmtpsa (TLS1.3) tls TLS_AES_256_GCM_SHA384 (Exim 4.93) (envelope-from ) id 1j5G4v-000yLJ-GB; Sat, 22 Feb 2020 03:13:21 +0530 From: Arun Isaac Date: Sat, 22 Feb 2020 03:13:18 +0530 Message-Id: <20200221214319.14837-1-arunisaac@systemreboot.net> X-Mailer: git-send-email 2.23.0 MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/swig.scm (swig): Update to 4.0.1. [source]: Remove swig-guile-gc.patch. [arguments]: Remove set-env phase. [inputs]: Replace guile-2.0 with guile-3.0. * gnu/packages/patches/swig-guile-gc.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Unregister it. --- gnu/local.mk | 1 - gnu/packages/patches/swig-guile-gc.patch | 76 ------------------------ gnu/packages/swig.scm | 13 ++-- 3 files changed, 4 insertions(+), 86 deletions(-) delete mode 100644 gnu/packages/patches/swig-guile-gc.patch diff --git a/gnu/local.mk b/gnu/local.mk index f2289518e5..552861a515 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1411,7 +1411,6 @@ dist_patch_DATA = \ %D%/packages/patches/superlu-dist-awpm-grid.patch \ %D%/packages/patches/superlu-dist-scotchmetis.patch \ %D%/packages/patches/supertux-unbundle-squirrel.patch \ - %D%/packages/patches/swig-guile-gc.patch \ %D%/packages/patches/swish-e-search.patch \ %D%/packages/patches/swish-e-format-security.patch \ %D%/packages/patches/symmetrica-bruch.patch \ diff --git a/gnu/packages/patches/swig-guile-gc.patch b/gnu/packages/patches/swig-guile-gc.patch deleted file mode 100644 index 0e745a6247..0000000000 --- a/gnu/packages/patches/swig-guile-gc.patch +++ /dev/null @@ -1,76 +0,0 @@ -Fix garbage collection for Guile versions >= 2.0.12. This issue showed -up when running the tests on i686-linux. - -Taken from this upstream commit: -https://github.com/swig/swig/commit/38f2ab0c30e369e63bbd0a6152108488d0de68e1 - -diff --git a/Lib/guile/guile_scm_run.swg b/Lib/guile/guile_scm_run.swg -index 274f197158..0d04cb7c62 100644 ---- a/Lib/guile/guile_scm_run.swg -+++ b/Lib/guile/guile_scm_run.swg -@@ -99,6 +99,7 @@ SWIG_Guile_scm2newstr(SCM str, size_t *len) { - static int swig_initialized = 0; - static scm_t_bits swig_tag = 0; - static scm_t_bits swig_collectable_tag = 0; -+static scm_t_bits swig_finalized_tag = 0; - static scm_t_bits swig_destroyed_tag = 0; - static scm_t_bits swig_member_function_tag = 0; - static SCM swig_make_func = SCM_EOL; -@@ -163,7 +164,19 @@ SWIG_Guile_PointerType(SCM object) - } - else scm_wrong_type_arg("SWIG-Guile-PointerType", 1, object); - } -- -+ -+SWIGINTERN int -+SWIG_Guile_IsValidSmob(SCM smob) -+{ -+ /* We do not accept smobs representing destroyed pointers, but we have to -+ allow finalized smobs because Guile >= 2.0.12 sets all smob instances -+ to the 'finalized' type before calling their 'free' function. This change -+ was introduced to Guile in commit 8dff3af087c6eaa83ae0d72aa8b22aef5c65d65d */ -+ return SCM_SMOB_PREDICATE(swig_tag, smob) -+ || SCM_SMOB_PREDICATE(swig_collectable_tag, smob) -+ || SCM_SMOB_PREDICATE(swig_finalized_tag, smob); -+} -+ - SWIGINTERN int - SWIG_Guile_ConvertPtr(SCM s, void **result, swig_type_info *type, int flags) - { -@@ -179,8 +192,7 @@ SWIG_Guile_ConvertPtr(SCM s, void **result, swig_type_info *type, int flags) - *result = SCM_POINTER_VALUE(s); - return SWIG_OK; - #endif /* if SCM_MAJOR_VERSION >= 2 */ -- } else if (SCM_SMOB_PREDICATE(swig_tag, smob) || SCM_SMOB_PREDICATE(swig_collectable_tag, smob)) { -- /* we do not accept smobs representing destroyed pointers */ -+ } else if (SWIG_Guile_IsValidSmob(smob)) { - from = (swig_type_info *) SCM_CELL_WORD_2(smob); - if (!from) return SWIG_ERROR; - if (type) { -@@ -239,7 +251,7 @@ SWIG_Guile_MarkPointerNoncollectable(SCM s) - { - SCM smob = SWIG_Guile_GetSmob(s); - if (!SCM_NULLP(smob)) { -- if (SCM_SMOB_PREDICATE(swig_tag, smob) || SCM_SMOB_PREDICATE(swig_collectable_tag, smob)) { -+ if (SWIG_Guile_IsValidSmob(smob)) { - SCM_SET_CELL_TYPE(smob, swig_tag); - } - else scm_wrong_type_arg(NULL, 0, s); -@@ -252,7 +264,7 @@ SWIG_Guile_MarkPointerDestroyed(SCM s) - { - SCM smob = SWIG_Guile_GetSmob(s); - if (!SCM_NULLP(smob)) { -- if (SCM_SMOB_PREDICATE(swig_tag, smob) || SCM_SMOB_PREDICATE(swig_collectable_tag, smob)) { -+ if (SWIG_Guile_IsValidSmob(smob)) { - SCM_SET_CELL_TYPE(smob, swig_destroyed_tag); - } - else scm_wrong_type_arg(NULL, 0, s); -@@ -419,6 +431,8 @@ SWIG_Guile_Init () - scm_set_smob_print(swig_collectable_tag, print_collectable_swig); - scm_set_smob_equalp(swig_collectable_tag, equalp_swig); - scm_set_smob_free(swig_collectable_tag, free_swig); -+ /* For Guile >= 2.0.12. See libguile/smob.c:clear_smobnum */ -+ swig_finalized_tag = swig_collectable_tag & ~0xff00; - } - if (ensure_smob_tag(swig_module, &swig_destroyed_tag, - "destroyed-swig-pointer", "destroyed-swig-pointer-tag")) { diff --git a/gnu/packages/swig.scm b/gnu/packages/swig.scm index b1b17fc68d..5506a3bd2e 100644 --- a/gnu/packages/swig.scm +++ b/gnu/packages/swig.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2013, 2015, 2016 Ludovic Courtès ;;; Copyright © 2015 Mark H Weaver ;;; Copyright © 2018 Marius Bakke +;;; Copyright © 2020 Arun Isaac ;;; ;;; This file is part of GNU Guix. ;;; @@ -33,25 +34,19 @@ (define-public swig (package (name "swig") - (version "3.0.12") + (version "4.0.1") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/" name "/" name "/" name "-" version "/" name "-" version ".tar.gz")) - (patches (search-patches "swig-guile-gc.patch")) (sha256 (base32 - "0kf99ygrjs5616gsqhz1l7bib3a12izmxi7g48bwblbymr3z9ybw")))) + "1ac7g0gd8ndwv3ybqn5vjgqxa7090bby4db164a7mn9ssp8b803s")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases - (add-after 'unpack 'set-env - ;; Required since Perl 5.26.0's removal of the current - ;; working directory from @INC. - ;; TODO Try removing this for later versions of SWIG. - (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1") #t)) (add-before 'configure 'workaround-gcc-bug (lambda _ ;; XXX: Don't add the -isystem flag, or GCCs #include_next @@ -62,7 +57,7 @@ (native-inputs `(("boost" ,boost) ("pcre" ,pcre "bin"))) ;for 'pcre-config' (inputs `(;; Provide these to run the corresponding tests. - ("guile" ,guile-2.0) + ("guile" ,guile-3.0) ("perl" ,perl))) ;; FIXME: reactivate input python as soon as the test failures ;; fatal error: Python.h: No such file or directory