commit 26a90cc47c5d537c9df5bdc92f59bb12cebdb5d6 Author: overweight <5324761+overweight@user.noreply.gitee.com> Date: Mon Sep 30 10:52:30 2019 -0400 Package init diff --git a/guile-2.0.14-gc_pkgconfig_private.patch b/guile-2.0.14-gc_pkgconfig_private.patch new file mode 100644 index 0000000..701c3dc --- /dev/null +++ b/guile-2.0.14-gc_pkgconfig_private.patch @@ -0,0 +1,15 @@ +diff -up guile-2.0.14/meta/guile-2.0.pc.in.pkgconfig_private guile-2.0.14/meta/guile-2.0.pc.in +--- guile-2.0.14/meta/guile-2.0.pc.in.pkgconfig_private 2016-12-14 18:03:33.000000000 -0600 ++++ guile-2.0.14/meta/guile-2.0.pc.in 2018-02-20 11:53:56.344379283 -0600 +@@ -21,9 +21,9 @@ guile=${bindir}/@guile@ + Name: GNU Guile + Description: GNU's Ubiquitous Intelligent Language for Extension + Version: @GUILE_VERSION@ +-Libs: -L${libdir} -lguile-@GUILE_EFFECTIVE_VERSION@ @BDW_GC_LIBS@ ++Libs: -L${libdir} -lguile-@GUILE_EFFECTIVE_VERSION@ + Libs.private: @LIB_CLOCK_GETTIME@ @LIBGMP@ @LIBLTDL@ @LIBFFI_LIBS@ \ + @LIBUNISTRING@ @GUILE_LIBS@ @LIBICONV@ @LIBINTL@ @LIBSOCKET@ \ + @SERVENT_LIB@ @HOSTENT_LIB@ @GETADDRINFO_LIB@ @INET_NTOP_LIB@ \ +- @INET_PTON_LIB@ ++ @INET_PTON_LIB@ @BDW_GC_LIBS@ + Cflags: -I${pkgincludedir}/@GUILE_EFFECTIVE_VERSION@ @GUILE_CFLAGS@ @BDW_GC_CFLAGS@ diff --git a/guile-2.0.14.tar.xz b/guile-2.0.14.tar.xz new file mode 100644 index 0000000..abba34a Binary files /dev/null and b/guile-2.0.14.tar.xz differ diff --git a/guile-i18ntest.patch b/guile-i18ntest.patch new file mode 100644 index 0000000..098f194 --- /dev/null +++ b/guile-i18ntest.patch @@ -0,0 +1,62 @@ +diff -up guile-2.0.14/test-suite/tests/i18n.test.i18ntest guile-2.0.14/test-suite/tests/i18n.test +--- guile-2.0.14/test-suite/tests/i18n.test.i18ntest 2017-02-13 21:32:39.000000000 +0100 ++++ guile-2.0.14/test-suite/tests/i18n.test 2017-10-10 13:25:47.492589702 +0200 +@@ -527,28 +527,28 @@ + (with-test-prefix "French" + + (pass-if-equal "integer" +- "123 456" ++ "123\xa0456" + (under-french-locale-or-unresolved + (lambda () + (let ((fr (make-locale LC_ALL %french-locale-name))) + (number->locale-string 123456 #t fr))))) + + (pass-if-equal "negative integer" +- "-1 234 567" ++ "-1\xa0234\xa0567" + (under-french-locale-or-unresolved + (lambda () + (let ((fr (make-locale LC_ALL %french-locale-name))) + (number->locale-string -1234567 #t fr))))) + + (pass-if-equal "fraction" +- "1 234,567" ++ "1\xa0234,567" + (under-french-locale-or-unresolved + (lambda () + (let ((fr (make-locale LC_ALL %french-locale-name))) + (number->locale-string 1234.567 #t fr))))) + + (pass-if-equal "fraction, 1 digit" +- "1 234,6" ++ "1\xa0234,6" + (under-french-locale-or-unresolved + (lambda () + (let ((fr (make-locale LC_ALL %french-locale-name))) +@@ -563,7 +563,7 @@ + (with-test-prefix "French" + + (pass-if-equal "12345.678" +- "12 345,678" ++ "12\xa0345,678" + (under-french-locale-or-unresolved + (lambda () + (if (null? (locale-digit-grouping %french-locale)) +@@ -586,14 +586,14 @@ + (with-test-prefix "French" + + (pass-if-equal "integer" +- "123 456,00 +EUR" ++ "123\xa0456,00 +EUR" + (under-french-locale-or-unresolved + (lambda () + (let ((fr (make-locale LC_ALL %french-locale-name))) + (monetary-amount->locale-string 123456 #f fr))))) + + (pass-if-equal "fraction" +- "1 234,57 EUR " ++ "1\xa0234,57 EUR " + (under-french-locale-or-unresolved + (lambda () + (let ((fr (make-locale LC_ALL %french-locale-name))) diff --git a/guile-ieeetest.patch b/guile-ieeetest.patch new file mode 100644 index 0000000..392458c --- /dev/null +++ b/guile-ieeetest.patch @@ -0,0 +1,19 @@ +diff -up guile-2.0.14/test-suite/tests/bytevectors.test.orig guile-2.0.14/test-suite/tests/bytevectors.test +--- guile-2.0.14/test-suite/tests/bytevectors.test.orig 2018-07-20 10:53:26.644659326 +0200 ++++ guile-2.0.14/test-suite/tests/bytevectors.test 2018-07-20 10:52:50.668567335 +0200 +@@ -381,6 +381,7 @@ + (equal? (bytevector-ieee-single-ref b 0 (endianness little)) + (bytevector-ieee-single-ref b 4 (endianness big))))) + ++ #! + (pass-if "bytevector-ieee-single-{ref,set!} [unaligned]" + (let ((b (make-bytevector 9)) + (number 3.14)) +@@ -388,6 +389,7 @@ + (bytevector-ieee-single-set! b 5 number (endianness big)) + (equal? (bytevector-ieee-single-ref b 1 (endianness little)) + (bytevector-ieee-single-ref b 5 (endianness big))))) ++ !# + + (pass-if "double, little endian" + ;; http://bugs.gnu.org/11310 diff --git a/guile-multilib.patch b/guile-multilib.patch new file mode 100644 index 0000000..4baf309 --- /dev/null +++ b/guile-multilib.patch @@ -0,0 +1,47 @@ +diff -up guile-2.0.9/libguile/Makefile.in.multilib guile-2.0.9/libguile/Makefile.in +--- guile-2.0.9/libguile/Makefile.in.multilib 2013-04-10 01:31:59.000000000 +0200 ++++ guile-2.0.9/libguile/Makefile.in 2013-07-16 16:59:59.490527131 +0200 +@@ -3283,6 +3283,11 @@ install-nodist_modincludeHEADERS: $(nodi + while read files; do \ + echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(modincludedir)'"; \ + $(INSTALL_HEADER) $$files "$(DESTDIR)$(modincludedir)" || exit $$?; \ ++ for f in $$files; do if [ "$$f" = "scmconfig.h" ]; then \ ++ grep -q "SCM_SIZEOF_LONG 4" "$(DESTDIR)$(modincludedir)/$$f" && g=32 || g=64; \ ++ mv "$(DESTDIR)$(modincludedir)/$$f" "$(DESTDIR)$(modincludedir)/scmconfig-$$g.h"; \ ++ $(INSTALL_HEADER) "$${d}scmconfig-multilib.h" "$(DESTDIR)$(modincludedir)/$$f"; \ ++ fi; done \ + done + + uninstall-nodist_modincludeHEADERS: +diff -up guile-2.0.9/libguile/scmconfig-multilib.h.multilib guile-2.0.9/libguile/scmconfig-multilib.h +--- guile-2.0.9/libguile/scmconfig-multilib.h.multilib 2013-07-16 17:02:26.045733704 +0200 ++++ guile-2.0.9/libguile/scmconfig-multilib.h 2013-07-16 17:01:51.623685971 +0200 +@@ -0,0 +1,7 @@ ++/* multilib clean wrapper */ ++#include ++#if __WORDSIZE == 32 ++#include "libguile/scmconfig-32.h" ++#else ++#include "libguile/scmconfig-64.h" ++#endif +diff -up guile-2.0.9/meta/guile-config.in.multilib guile-2.0.9/meta/guile-config.in +--- guile-2.0.9/meta/guile-config.in.multilib 2012-07-02 11:28:14.000000000 +0200 ++++ guile-2.0.9/meta/guile-config.in 2013-07-16 17:09:25.650324597 +0200 +@@ -1,7 +1,6 @@ + #!/bin/sh +-PKG_CONFIG_PATH="@pkgconfigdir@:$PKG_CONFIG_PATH" + GUILE_AUTO_COMPILE=0 +-export PKG_CONFIG_PATH GUILE_AUTO_COMPILE ++export GUILE_AUTO_COMPILE + + exec "@installed_guile@" -e main -s $0 "$@" + !# +@@ -31,7 +30,7 @@ exec "@installed_guile@" -e main -s $0 " + (ice-9 rdelim)) + + +-(define %pkg-config-program "@PKG_CONFIG@") ++(define %pkg-config-program "pkg-config") + + ;;;; main function, command-line processing + diff --git a/guile-threadstest.patch b/guile-threadstest.patch new file mode 100644 index 0000000..b62be51 --- /dev/null +++ b/guile-threadstest.patch @@ -0,0 +1,11 @@ +diff -up guile-2.0.13/test-suite/tests/threads.test.threadstest guile-2.0.13/test-suite/tests/threads.test +--- guile-2.0.13/test-suite/tests/threads.test.threadstest 2014-07-04 15:49:51.000000000 +0200 ++++ guile-2.0.13/test-suite/tests/threads.test 2017-02-14 08:40:44.920306211 +0100 +@@ -415,6 +415,7 @@ + (not (mutex-owner m)))) + + (pass-if "mutex with owner not retained (bug #27450)" ++ (throw 'unresolved) + (let ((g (make-guardian))) + (g (let ((m (make-mutex))) (lock-mutex m) m)) + diff --git a/guile.spec b/guile.spec new file mode 100644 index 0000000..d02ba64 --- /dev/null +++ b/guile.spec @@ -0,0 +1,116 @@ +Name: guile +Version: 2.0.14 +Release: 14 +Epoch: 5 +Summary: GNU's Ubiquitous Intelligent Language for Extension +License: LGPLv3+ +URL: https://www.gnu.org/software/guile/ +Source: https://ftp.gnu.org/gnu/guile/%{name}-%{version}.tar.xz + +Patch1: guile-multilib.patch +Patch2: guile-i18ntest.patch +Patch3: guile-threadstest.patch +Patch4: guile-2.0.14-gc_pkgconfig_private.patch + +BuildRequires: gcc libtool gmp-devel readline-devel gc-devel libffi-devel +BuildRequires: gettext-devel libunistring-devel libtool-ltdl-devel git +Requires: coreutils + +%description +This is Guile, a portable, embeddable Scheme implementation written in +C. Guile provides a machine independent execution platform that can be +linked in as a library when building extensible programs. + +%package devel +Summary: Development files and Header files for %{name} +Requires: guile = %{epoch}:%{version}-%{release} gmp-devel gc-devel pkgconfig + +%description devel +The %{name}-devel package contains libraries and header files for +developing applications that use %{name}. + +%package_help + +%prep +%autosetup -n %{name}-%{version} -p1 -S git + +%build +%configure --disable-error-on-warning +sed -i 's|" $sys_lib_dlsearch_path "|" $sys_lib_dlsearch_path %{_libdir} "|' libtool +%make_build + +%install +%make_install +install -d %{buildroot}%{_datadir}/guile/site/2.0 +%delete_la_and_a +rm -f %{buildroot}%{_infodir}/dir +bzip2 NEWS + +for i in %{buildroot}%{_infodir}/goops.info; do + iconv -f iso8859-1 -t utf-8 < $i > $i.utf8 && mv -f ${i}{.utf8,} +done + +touch %{buildroot}%{_datadir}/guile/site/2.0/slibcat + +ln -s guile %{buildroot}%{_bindir}/guile2 +ln -s guile-tools %{buildroot}%{_bindir}/guile2-tools + +find %{buildroot}%{_datadir} -name '*.scm' -exec touch -r "%{_specdir}/guile.spec" '{}' \; +find %{buildroot}%{_libdir} -name '*.go' -exec touch -r "%{_specdir}/guile.spec" '{}' \; + +%check +make check + +%ldconfig_scriptlets + +%triggerin -- slib >= 3b4-1 +export SCHEME_LIBRARY_PATH=%{_datadir}/slib/ + +%{_bindir}/guile --fresh-auto-compile --no-auto-compile -c \ + "(use-modules (ice-9 slib)) (require 'new-catalog)" &> /dev/null || \ + rm -f %{_datadir}/guile/site/%{mver}/slibcat +: +%triggerun -- slib >= 3b4-1 +if [ "$2" = 0 ]; then + rm -f %{_datadir}/guile/site/%{mver}/slibcat +fi + +%files +%doc AUTHORS +%license COPYING COPYING.LESSER LICENSE +%{_datadir}/guile/2.0/* +%dir %{_datadir}/guile/site/2.0 +%{_bindir}/guild +%{_bindir}/guile +%{_bindir}/guile2* +%{_bindir}/guile-tools +%{_libdir}/guile/2.0/ccache/* +%{_libdir}/libguile-2.0.so.* +%{_libdir}/libguilereadline-v-18.so* +%{_infodir}/guile.info*.gz +%{_infodir}/r5rs.info.gz +%ghost %{_datadir}/guile/site/2.0/slibcat +%exclude %{_libdir}/libguile*gdb.scm + +%files devel +%{_bindir}/guile-config +%{_bindir}/guile-snarf +%{_includedir}/guile/2.0/libguile/*.h +%{_includedir}/guile/2.0/*.h +%{_libdir}/pkgconfig/guile-2.0.pc +%{_libdir}/libguile-2.0.so +%{_datadir}/aclocal/guile.m4 + +%files help +%doc HACKING NEWS.bz2 README THANKS +%{_mandir}/man1/guile.1.gz + +%changelog +* Sat Sep 28 2019 openEuler Buildteam - 2.0.14-14 +- Type:bugfix +- Id:NA +- SUG:NA +- DESC:remove the libguile-2.0.so.22.8.1-gdb.scm from package + +* Tue Sep 18 2019 openEuler Buildteam - 2.0.14-13 +- Package init