From 5152732385375b303c13d526673a2a1afd0fc3f2 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jan=20R=C4=99korajski?= Date: Fri, 11 Mar 2022 10:41:35 +0100 Subject: [PATCH] - up to 3.0.8 --- ...able-unresolved-mixed-type-division-.patch | 58 +++++++++++++++++++ ...n-revealed-port-is-closed-ports.test.patch | 32 ++++++++++ guile-as-needed.patch | 22 ------- guile.spec | 18 ++++-- 4 files changed, 102 insertions(+), 28 deletions(-) create mode 100644 0006-numbers.test-disable-unresolved-mixed-type-division-.patch create mode 100644 0007-Fix-non-revealed-port-is-closed-ports.test.patch delete mode 100644 guile-as-needed.patch diff --git a/0006-numbers.test-disable-unresolved-mixed-type-division-.patch b/0006-numbers.test-disable-unresolved-mixed-type-division-.patch new file mode 100644 index 0000000..6b6f343 --- /dev/null +++ b/0006-numbers.test-disable-unresolved-mixed-type-division-.patch @@ -0,0 +1,58 @@ +From 2817d7958d450854daa974a0016e5c4ef3691765 Mon Sep 17 00:00:00 2001 +From: Rob Browning +Date: Sat, 12 Sep 2020 19:26:31 -0500 +Subject: numbers.test: disable unresolved "mixed type" division tests on i686 + +Bug: https://debbugs.gnu.org/43262 +Bug-Debian: https://bugs.debian.org/968403 +--- + test-suite/tests/numbers.test | 19 ++++++++++++++++--- + 1 file changed, 16 insertions(+), 3 deletions(-) + +diff --git a/test-suite/tests/numbers.test b/test-suite/tests/numbers.test +index 0b80c0356..67e61afda 100644 +--- a/test-suite/tests/numbers.test ++++ b/test-suite/tests/numbers.test +@@ -5230,14 +5230,21 @@ + + (define big (expt 10 (1+ (inexact->exact (ceiling (log10 fixnum-max)))))) + ++ (define tests-unresolved? #f) ++ + (define (run-division-tests quo+rem quo rem valid-answer?) + (define (test n d) + (run-test (list n d) #t + (lambda () + (let-values (((q r) (quo+rem n d))) +- (and (test-eqv? q (quo n d)) +- (test-eqv? r (rem n d)) +- (valid-answer? n d q r)))))) ++ (let ((result (and (test-eqv? q (quo n d)) ++ (test-eqv? r (rem n d)) ++ (valid-answer? n d q r)))) ++ (if result ++ result ++ (if tests-unresolved? ++ (throw 'unresolved) ++ result))))))) + (define (test+/- n d) + (test n d ) + (test n (- d)) +@@ -5345,6 +5352,8 @@ + (test-for-exception + n d exception:numerical-overflow))))))) + ++ (set! tests-unresolved? #t) ++ + (with-test-prefix "euclidean/" + (run-division-tests euclidean/ + euclidean-quotient +@@ -5369,6 +5379,8 @@ + truncate-remainder + valid-truncate-answer?)) + ++ (set! tests-unresolved? #f) ++ + (with-test-prefix "centered/" + (run-division-tests centered/ + centered-quotient diff --git a/0007-Fix-non-revealed-port-is-closed-ports.test.patch b/0007-Fix-non-revealed-port-is-closed-ports.test.patch new file mode 100644 index 0000000..03c8454 --- /dev/null +++ b/0007-Fix-non-revealed-port-is-closed-ports.test.patch @@ -0,0 +1,32 @@ +From bc7facd025cb84e021cf1ec93ad85423e7034dec Mon Sep 17 00:00:00 2001 +From: Rob Browning +Date: Sat, 19 Sep 2020 14:09:04 -0500 +Subject: Fix "non-revealed port is closed" ports.test + +Don't close the test port's file descriptor because the port still has a +reference to it, and could still close it at any time when finally +garbage collected. This did soemetimes break subsequent tests. + +Bug: https://debbugs.gnu.org/43521 +--- + test-suite/tests/ports.test | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/test-suite/tests/ports.test b/test-suite/tests/ports.test +index cd87640ab..66e10e3dd 100644 +--- a/test-suite/tests/ports.test ++++ b/test-suite/tests/ports.test +@@ -623,9 +623,10 @@ + (seek fdes 0 SEEK_CUR) + + ;; If we get here, it might be because PORT was not GC'd, we +- ;; don't know (and we can't use a guardian because it would keep +- ;; PORT alive.) +- (close-fdes fdes) ++ ;; don't know, and we can't use a guardian because it would keep ++ ;; PORT alive, and we can't close the descriptor because ++ ;; subseuqent opens may re-use it, and then if this port is ++ ;; garbage collected, it'll close the descriptor unexpectedly. + (throw 'unresolved)) + (lambda args + (system-error-errno args))))) diff --git a/guile-as-needed.patch b/guile-as-needed.patch deleted file mode 100644 index 3e60e19..0000000 --- a/guile-as-needed.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- guile-1.8.1/libguile/Makefile.am.orig 2006-10-20 00:03:10.000000000 +0000 -+++ guile-1.8.1/libguile/Makefile.am 2006-10-20 00:03:29.000000000 +0000 -@@ -174,7 +174,7 @@ - private-gc.h - - libguile_la_DEPENDENCIES = @LIBLOBJS@ --libguile_la_LIBADD = @LIBLOBJS@ -+libguile_la_LIBADD = @LIBLOBJS@ -lpthread - libguile_la_LDFLAGS = @LTLIBINTL@ -version-info @LIBGUILE_INTERFACE_CURRENT@:@LIBGUILE_INTERFACE_REVISION@:@LIBGUILE_INTERFACE_AGE@ -export-dynamic -no-undefined - - # These are headers visible as ---- guile-2.0.0/configure.ac.orig 2008-02-17 00:15:18.000000000 +0100 -+++ guile-2.0.0/configure.ac 2008-02-22 20:54:38.414020961 +0100 -@@ -1405,7 +1405,7 @@ - ####################################################################### - - dnl Tell guile-config what flags guile users should compile and link with. --GUILE_LIBS="$LDFLAGS $LIBS" -+GUILE_LIBS="$LIBS" - GUILE_CFLAGS="$CPPFLAGS $PTHREAD_CFLAGS" - AC_SUBST(GUILE_LIBS) - AC_SUBST(GUILE_CFLAGS) diff --git a/guile.spec b/guile.spec index b77bee8..bfa5122 100644 --- a/guile.spec +++ b/guile.spec @@ -7,7 +7,7 @@ %undefine with_tests %endif -%define mver 2.2 +%define mver 3.0 Summary: GNU Extension language Summary(es.UTF-8): Lenguaje de extensión de la GNU Summary(ja.UTF-8): アプリケーションの拡張のための GNU による Scheme の実装 @@ -16,16 +16,17 @@ Summary(pt_BR.UTF-8): Linguagem de extensão da GNU Summary(ru.UTF-8): Язык расширений GNU Summary(uk.UTF-8): Мова розширень GNU Name: guile -Version: 2.2.7 -Release: 5 +Version: 3.0.8 +Release: 1 Epoch: 5 License: LGPL v3+ Group: Development/Languages Source0: https://ftp.gnu.org/gnu/guile/%{name}-%{version}.tar.xz -# Source0-md5: 7a7e8def41678c567148c26a8a0a0873 +# Source0-md5: 260ebdd35110a1ce79852ebf0270d309 Patch0: %{name}-info.patch Patch1: %{name}-fix_awk_patch.patch -Patch2: %{name}-as-needed.patch +Patch2: 0006-numbers.test-disable-unresolved-mixed-type-division-.patch +Patch3: 0007-Fix-non-revealed-port-is-closed-ports.test.patch URL: http://www.gnu.org/software/guile/guile.html BuildRequires: autoconf >= 2.61 BuildRequires: automake >= 1:1.12 @@ -182,6 +183,10 @@ Tryb edycji guile dla emacsa. %setup -q %patch0 -p1 %patch1 -p1 +%ifarch %{ix86} +%patch2 -p1 +%endif +%patch3 -p1 # popen test currently fails %{__rm} test-suite/tests/popen.test @@ -205,7 +210,7 @@ Tryb edycji guile dla emacsa. rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT{%{_datadir}/guile/site/%{mver},%{_libdir}/guile/%{mver}/site-ccache} -%{__make} -j1 install \ +%{__make} install \ DESTDIR=$RPM_BUILD_ROOT \ aclocaldir=%{_aclocaldir} @@ -253,6 +258,7 @@ rm -rf $RPM_BUILD_ROOT %{_datadir}/guile/%{mver}/language %{_datadir}/guile/%{mver}/oop %{_datadir}/guile/%{mver}/rnrs +%{_datadir}/guile/%{mver}/scheme %{_datadir}/guile/%{mver}/scripts %{_datadir}/guile/%{mver}/srfi %{_datadir}/guile/%{mver}/sxml -- 2.44.0