From 2837bbdc31d63dfd758f6ed65d459f24a8c4a2a6 Mon Sep 17 00:00:00 2001 From: Evgeny Ermakov Date: Mon, 21 Dec 2020 14:14:36 +1100 Subject: [PATCH 1/7] New package: guile3-3.0.7 --- common/shlibs | 1 + srcpkgs/guile3-devel | 1 + srcpkgs/guile3/template | 66 +++++++++++++++++++++++++++++++++++++++++ srcpkgs/guile3/update | 2 ++ 4 files changed, 70 insertions(+) create mode 120000 srcpkgs/guile3-devel create mode 100644 srcpkgs/guile3/template create mode 100644 srcpkgs/guile3/update diff --git a/common/shlibs b/common/shlibs index 999d3ad714b8..4c8bd23d5de1 100644 --- a/common/shlibs +++ b/common/shlibs @@ -1388,6 +1388,7 @@ libamtk-5.so.0 amtk-5.0.0_1 libdevhelp-3.so.6 devhelp-libs-3.30.0_1 libunistring.so.2 libunistring-0.9.4_1 libguile-2.2.so.1 libguile-2.2.7_1 +libguile-3.0.so.1 guile3-3.0.5_1 libopts.so.25 libopts-5.18.4_6 libanjuta-3.so.0 anjuta-3.8.4_1 libgmlib.so.1 gmtk-1.0.8_1 diff --git a/srcpkgs/guile3-devel b/srcpkgs/guile3-devel new file mode 120000 index 000000000000..1cd5714f5e94 --- /dev/null +++ b/srcpkgs/guile3-devel @@ -0,0 +1 @@ +guile3 \ No newline at end of file diff --git a/srcpkgs/guile3/template b/srcpkgs/guile3/template new file mode 100644 index 000000000000..759d841f27c9 --- /dev/null +++ b/srcpkgs/guile3/template @@ -0,0 +1,66 @@ +# Template file for 'guile3' +pkgname=guile3 +version=3.0.7 +revision=1 +wrksrc="guile-${version}" +build_style=gnu-configure +configure_args="--program-suffix=3" +hostmakedepends="pkg-config texinfo" +makedepends="gc-devel gmp-devel readline-devel libatomic_ops-devel + libffi-devel libltdl-devel libunistring-devel" +short_desc="Portable, embeddable Scheme implementation written in C" +maintainer="Evgeny Ermakov " +license="GPL-3.0-or-later, LGPL-3.0-or-later" +homepage="https://www.gnu.org/software/guile" +distfiles="${GNU_SITE}/guile/guile-${version}.tar.gz" +checksum=c7935b7a29e42443f6a35d35cf20ffa7d028c399303f872cd1219598a83656ae + +alternatives=" + guile:guile:/usr/bin/guile3 + guile:guild:/usr/bin/guild3 + guile:guile-config:/usr/bin/guile-config3 + guile:guile-snarf:/usr/bin/guile-snarf3 + guile:guile-tools:/usr/bin/guile-tools3 + guile:guile.1:/usr/share/man/man1/guile3.1 + scheme:scheme:/usr/bin/guile3 + scheme:scheme.1:/usr/share/man/man1/guile3.1" + +case "${XBPS_TARGET_MACHINE}" in + i686*) broken="https://debbugs.gnu.org/cgi/bugreport.cgi?bug=43262" ;; +esac + +if [ "$CROSS_BUILD" ]; then + # Need host guile to cross compile + configure_args+=" GUILE_FOR_BUILD=guile3" + hostmakedepends+=" guile3" +fi + +post_patch() { + if [ "$XBPS_TARGET_LIBC" = "musl" ]; then + rm test-suite/tests/{encoding-escapes,encoding-iso88597,i18n,iconv,r6rs-ports,reader,suspendable-ports,time}.test + fi +} + +post_install() { + vmkdir usr/share/gdb/auto-load/usr/lib + mv ${DESTDIR}/usr/lib/*.scm ${DESTDIR}/usr/share/gdb/auto-load/usr/lib + # conflicts with guile-1.8, guile-2.2 + rm -rf ${DESTDIR}/usr/share/info +} + +guile3-devel_package() { + short_desc+=" - development files" + depends="gc-devel gmp-devel guile3>=${version}_${revision}" + if [ "$CROSS_BUILD" ]; then + depends+=" libatomic_ops-devel" + fi + pkg_install() { + vmove usr/bin/guile-config3 + vmove usr/include + vmove usr/lib/pkgconfig + vmove "usr/lib/*.a" + vmove "usr/lib/*.so" + vmove usr/share/aclocal + mv ${PKGDESTDIR}/usr/share/aclocal/{guile.m4,guile-3.0.m4} + } +} diff --git a/srcpkgs/guile3/update b/srcpkgs/guile3/update new file mode 100644 index 000000000000..31edd11d4fc0 --- /dev/null +++ b/srcpkgs/guile3/update @@ -0,0 +1,2 @@ +site="${homepage}/download" +pattern='/guile-\K[\d\.]+(?=\.tar\.gz)' From 8dbd0391bdb948c2f2ad1f70fd85b301b9b12395 Mon Sep 17 00:00:00 2001 From: Evgeny Ermakov Date: Sat, 26 Dec 2020 13:08:43 +1100 Subject: [PATCH 2/7] guile: add alternatives --- srcpkgs/guile/template | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/srcpkgs/guile/template b/srcpkgs/guile/template index f0f917b1c4ee..92f1804e4332 100644 --- a/srcpkgs/guile/template +++ b/srcpkgs/guile/template @@ -3,7 +3,7 @@ pkgname=guile version=2.2.7 revision=2 build_style=gnu-configure -configure_args="--disable-static --disable-error-on-warning" +configure_args="--disable-static --disable-error-on-warning --program-suffix=2" hostmakedepends="pkg-config texinfo" makedepends="gc-devel gmp-devel libatomic_ops-devel libffi-devel libltdl-devel libunistring-devel readline-devel" @@ -15,6 +15,16 @@ distfiles="${GNU_SITE}/${pkgname}/${pkgname}-${version}.tar.gz" checksum=44b4c5fbbe257ccdebea18420212c9b3e90c3c86a54920d8554039fc6769a007 subpackages="libguile guile-devel" +alternatives=" + guile:guile:/usr/bin/guile2 + guile:guild:/usr/bin/guild2 + guile:guile-config:/usr/bin/guile-config2 + guile:guile-snarf:/usr/bin/guile-snarf2 + guile:guile-tools:/usr/bin/guile-tools2 + guile:guile.1:/usr/share/man/man1/guile2.1 + scheme:scheme:/usr/bin/guile2 + scheme:scheme.1:/usr/share/man/man1/guile2.1" + if [ "$XBPS_ENDIAN" != "$XBPS_TARGET_ENDIAN" ]; then broken="opposite-endian host generates broken files" fi @@ -29,6 +39,17 @@ post_extract() { rm -rf prebuilt/32-bit-big-endian } +post_patch() { + if [ "$XBPS_TARGET_LIBC" = "musl" ]; then + rm test-suite/tests/{encoding-escapes,encoding-iso88597,i18n,iconv,r6rs-ports,reader,suspendable-ports,time}.test + fi +} + +post_install() { + # conflicts with guile-1.8, guile-3.0 + rm -rf ${DESTDIR}/usr/share/info +} + libguile_package() { short_desc+=" - runtime library" pkg_install() { @@ -42,10 +63,11 @@ guile-devel_package() { short_desc+=" - development files" depends="gmp-devel gc-devel guile>=${version}_${revision} libatomic_ops-devel" pkg_install() { - vmove usr/bin/guile-config + vmove usr/bin/guile-config2 vmove usr/include - vmove usr/share/aclocal vmove usr/lib/pkgconfig vmove "usr/lib/*.so" + vmove usr/share/aclocal + mv ${PKGDESTDIR}/usr/share/aclocal/{guile.m4,guile-2.2.m4} } } From 062cf9b39c979ba75673e9bf408f6c472253dff5 Mon Sep 17 00:00:00 2001 From: Evgeny Ermakov Date: Wed, 23 Dec 2020 00:40:17 +1100 Subject: [PATCH 3/7] guile-wisp: update to 1.0.7; switch to guile-3.0 Also fix update check. --- srcpkgs/guile-wisp/template | 19 +++++++++++-------- srcpkgs/guile-wisp/update | 4 ++-- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/srcpkgs/guile-wisp/template b/srcpkgs/guile-wisp/template index 73915ce9419a..1e158ba595c8 100644 --- a/srcpkgs/guile-wisp/template +++ b/srcpkgs/guile-wisp/template @@ -1,16 +1,19 @@ # Template file for 'guile-wisp' pkgname=guile-wisp -version=1.0.2 +version=1.0.7 revision=1 -wrksrc="wisp-${version}" +wrksrc="wisp-v${version}" build_style=gnu-configure -configure_args="--datarootdir=/usr/share" -hostmakedepends="guile pkg-config python3" -makedepends="guile-devel" -depends="guile>=2.0" +configure_args="python3=/usr/bin/python3" +hostmakedepends="automake guile3 pkg-config python3" +makedepends="guile3-devel" short_desc="SRFI-119 (WISP, Whitespace Lisp) implementation for guile" maintainer="B. Wilson " license="GPL-3.0-or-later" homepage="https://www.draketo.de/english/wisp" -distfiles="https://bitbucket.org/ArneBab/wisp/downloads/wisp-${version}.tar.gz" -checksum=c66d2bdf0ceffce7322783288ab40bb2a1aef0d1e55207ada7547999e43dff0e +distfiles="https://hg.sr.ht/~arnebab/wisp/archive/v${version}.tar.gz" +checksum=ae9d96e95184622c25edd8abc2cb08384b551326bdb6269ed93524d8a76a5e00 + +pre_configure() { + autoreconf -i +} diff --git a/srcpkgs/guile-wisp/update b/srcpkgs/guile-wisp/update index b1bfd211bb61..04091e223144 100644 --- a/srcpkgs/guile-wisp/update +++ b/srcpkgs/guile-wisp/update @@ -1,2 +1,2 @@ -site="https://bitbucket.org/ArneBab/wisp/downloads/" -pattern="wisp-\K[\d.]+" +site="https://hg.sr.ht/~arnebab/wisp/tags" +pattern="/archive/v\K[\d\.]+(?=\.tar\.gz)" From 28cbe503412be39111b2ad13d6c0503a24b5c781 Mon Sep 17 00:00:00 2001 From: Evgeny Ermakov Date: Mon, 21 Dec 2020 17:28:19 +1100 Subject: [PATCH 4/7] gnutls: add optional guile support, default off --- .../patches/modules-gnutls-fwd-decls.patch | 48 +++++++++++++++++++ srcpkgs/gnutls/template | 13 +++-- 2 files changed, 58 insertions(+), 3 deletions(-) create mode 100644 srcpkgs/gnutls/patches/modules-gnutls-fwd-decls.patch diff --git a/srcpkgs/gnutls/patches/modules-gnutls-fwd-decls.patch b/srcpkgs/gnutls/patches/modules-gnutls-fwd-decls.patch new file mode 100644 index 000000000000..b70fb28644c9 --- /dev/null +++ b/srcpkgs/gnutls/patches/modules-gnutls-fwd-decls.patch @@ -0,0 +1,48 @@ +--- a/guile/modules/gnutls.in.orig ++++ b/guile/modules/gnutls.in +@@ -566,20 +566,33 @@ + + + ;; Renaming. +-(define protocol/ssl-3 protocol/ssl3) +-(define protocol/tls-1.0 protocol/tls1-0) +-(define protocol/tls-1.1 protocol/tls1-1) ++(define protocol/ssl-3 #f) ++(define protocol/tls-1.0 #f) ++(define protocol/tls-1.1 #f) + + ;; Aliases. +-(define credentials/anonymous credentials/anon) +-(define cipher/rijndael-256-cbc cipher/aes-256-cbc) +-(define cipher/rijndael-128-cbc cipher/aes-128-cbc) +-(define cipher/rijndael-cbc cipher/aes-128-cbc) +-(define cipher/arcfour-128 cipher/arcfour) +-(define certificate-verify/allow-any-x509-v1-ca-certificate +- certificate-verify/allow-any-x509-v1-ca-crt) +-(define certificate-verify/allow-x509-v1-ca-certificate +- certificate-verify/allow-x509-v1-ca-crt) ++(define credentials/anonymous #f) ++(define cipher/rijndael-256-cbc #f) ++(define cipher/rijndael-128-cbc #f) ++(define cipher/rijndael-cbc #f) ++(define cipher/arcfour-128 #f) ++(define certificate-verify/allow-any-x509-v1-ca-certificate #f) ++(define certificate-verify/allow-x509-v1-ca-certificate #f) ++ ++(eval-when (load eval) ++ (unless (getenv "GNUTLS_GUILE_CROSS_COMPILING") ++ (set! protocol/ssl-3 protocol/ssl3) ++ (set! protocol/tls-1.0 protocol/tls1-0) ++ (set! protocol/tls-1.1 protocol/tls1-1) ++ (set! credentials/anonymous credentials/anon) ++ (set! cipher/rijndael-256-cbc cipher/aes-256-cbc) ++ (set! cipher/rijndael-128-cbc cipher/aes-128-cbc) ++ (set! cipher/rijndael-cbc cipher/aes-128-cbc) ++ (set! cipher/arcfour-128 cipher/arcfour) ++ (set! certificate-verify/allow-any-x509-v1-ca-certificate ++ certificate-verify/allow-any-x509-v1-ca-crt) ++ (set! certificate-verify/allow-x509-v1-ca-certificate ++ certificate-verify/allow-x509-v1-ca-crt))) + + ;; Deprecated OpenPGP bindings. + (define-deprecated certificate-type/openpgp) diff --git a/srcpkgs/gnutls/template b/srcpkgs/gnutls/template index 3f02c29d3b27..d74aa682c022 100644 --- a/srcpkgs/gnutls/template +++ b/srcpkgs/gnutls/template @@ -3,16 +3,16 @@ pkgname=gnutls version=3.6.16 revision=1 build_style=gnu-configure -configure_args="--with-zlib --disable-guile --disable-static +configure_args="--with-zlib --disable-static $(vopt_enable guile) --disable-valgrind-tests --disable-rpath --with-default-trust-store-file=/etc/ssl/certs/ca-certificates.crt --with-trousers-lib=${XBPS_CROSS_BASE}/usr/lib" -hostmakedepends="gettext libtool pkg-config which" +hostmakedepends="automake gettext-devel libtool pkg-config which $(vopt_if guile guile3)" # for autoreconf #hostmakedepends+=" gettext-devel-tools automake" # dependencies listed in pkg-config files _develdepends="unbound-devel trousers-devel libunistring-devel nettle-devel - libtasn1-devel libidn2-devel p11-kit-devel" + libtasn1-devel libidn2-devel p11-kit-devel $(vopt_if guile guile3-devel)" makedepends="zlib-devel lzo-devel readline-devel libgpg-error-devel libgcrypt-devel ${_develdepends}" checkdepends="iproute2" @@ -23,6 +23,12 @@ homepage="https://gnutls.org" distfiles="https://www.gnupg.org/ftp/gcrypt/gnutls/v${version%.*}/gnutls-${version}.tar.xz" checksum=1b79b381ac283d8b054368b335c408fedcb9b7144e0c07f531e3537d4328f3b3 +build_options="guile" + +pre_configure() { + autoreconf -vfi +} + pre_check() { # same as $PASS in tests/cert-tests/certtool export GNUTLS_PIN=1234 @@ -39,6 +45,7 @@ gnutls-devel_package() { vmove usr/share/info } } + gnutls-tools_package() { short_desc+=" - bundled tools" pkg_install() { From c8ed85729aab4eb8efef152970279701c93bb933 Mon Sep 17 00:00:00 2001 From: Evgeny Ermakov Date: Tue, 22 Dec 2020 23:21:25 +1100 Subject: [PATCH 5/7] make: switch to guile-3.0 --- srcpkgs/make/template | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/srcpkgs/make/template b/srcpkgs/make/template index 9a980aa10dde..3124b2d03568 100644 --- a/srcpkgs/make/template +++ b/srcpkgs/make/template @@ -1,12 +1,12 @@ # Template file for 'make' pkgname=make version=4.3 -revision=3 +revision=4 bootstrap=yes build_style=gnu-configure configure_args="$(vopt_with guile)" hostmakedepends="$(vopt_if guile pkg-config)" -makedepends="$(vopt_if guile 'gc-devel guile-devel')" +makedepends="$(vopt_if guile guile3-devel)" checkdepends="perl" short_desc="GNU Make build tool" maintainer="Enno Boland " From 29efd3a2e503b2a1b8dcb3c916dfccc2f0d8c911 Mon Sep 17 00:00:00 2001 From: Evgeny Ermakov Date: Tue, 22 Dec 2020 23:03:50 +1100 Subject: [PATCH 6/7] aisleriot: rebuild for guile-3.0.7 --- srcpkgs/aisleriot/template | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/srcpkgs/aisleriot/template b/srcpkgs/aisleriot/template index 42614bc3bf45..7373aab26274 100644 --- a/srcpkgs/aisleriot/template +++ b/srcpkgs/aisleriot/template @@ -6,10 +6,10 @@ build_style=meson # build requires assertions to be turned on -> n_debug=false configure_args="-Dtheme_pysol_path=/usr/share/PySolFC/cardsets -Dtheme_pysol=true -Dtheme_kde=false -Db_ndebug=false" -hostmakedepends="desktop-file-utils glib-devel guile intltool itstool pkg-config +hostmakedepends="desktop-file-utils glib-devel guile3 intltool itstool pkg-config pysolfc-cardsets" -makedepends="guile-devel libcanberra-devel librsvg-devel" -depends="guile yelp" +makedepends="guile3-devel libcanberra-devel librsvg-devel" +depends="yelp" short_desc="GNOME solitaire card game" maintainer="Érico Nogueira " license="GPL-3.0-or-later" From deed655c7a7d48a2b073df0ca7c04c14bb8ac222 Mon Sep 17 00:00:00 2001 From: Evgeny Ermakov Date: Mon, 21 Dec 2020 21:05:18 +1100 Subject: [PATCH 7/7] xbindkeys: rebuild for guile-3.0.7 --- srcpkgs/xbindkeys/patches/cross.patch | 15 --------------- srcpkgs/xbindkeys/template | 10 +++++++--- 2 files changed, 7 insertions(+), 18 deletions(-) delete mode 100644 srcpkgs/xbindkeys/patches/cross.patch diff --git a/srcpkgs/xbindkeys/patches/cross.patch b/srcpkgs/xbindkeys/patches/cross.patch deleted file mode 100644 index 86f7f2d448af..000000000000 --- a/srcpkgs/xbindkeys/patches/cross.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff --git Makefile.in Makefile.in -index 7bb5cba..e557452 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -205,8 +205,8 @@ top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - @GUILE_FALSE@AM_CFLAGS = @CFLAGS@ @X_CFLAGS@ @FORK_FLAG@ @GUILE_FLAG@ -I. -Wall - @GUILE_TRUE@AM_CFLAGS = @CFLAGS@ @X_CFLAGS@ @FORK_FLAG@ @GUILE_FLAG@ @GUILE_CFLAGS@ -I. -Wall --@GUILE_FALSE@xbindkeys_LDADD = @X_LIBS@ --@GUILE_TRUE@xbindkeys_LDADD = @X_LIBS@ @GUILE_LDFLAGS@ -+@GUILE_FALSE@xbindkeys_LDADD = @X_LIBS@ -lguile-2.2 -lgc -+@GUILE_TRUE@xbindkeys_LDADD = @X_LIBS@ -lguile-2.2 -lgc - xbindkeys_SOURCES = xbindkeys.c xbindkeys.h \ - keys.h keys.c \ - options.c options.h \ diff --git a/srcpkgs/xbindkeys/template b/srcpkgs/xbindkeys/template index 54486843942a..5fc29280fed0 100644 --- a/srcpkgs/xbindkeys/template +++ b/srcpkgs/xbindkeys/template @@ -1,14 +1,18 @@ # Template file for 'xbindkeys' pkgname=xbindkeys version=1.8.7 -revision=2 +revision=3 build_style=gnu-configure hostmakedepends="pkg-config" -makedepends="libX11-devel guile-devel guile gc-devel" -depends="guile" +makedepends="libX11-devel guile3-devel" short_desc="Launch shell commands with your keyboard or your mouse under X" maintainer="Leah Neukirchen " license="GPL-2.0-or-later" homepage="http://www.nongnu.org/xbindkeys/xbindkeys.html" distfiles="http://www.nongnu.org/${pkgname}/${pkgname}-${version}.tar.gz" checksum=a29b86a8ec91d4abc83b420e547da27470847d0efe808aa6e75147aa0adb82f2 + +pre_configure() { + # this makes sure to use guile-3.0 + vsed -i configure -e 's/2.2 2.0 1.8/3.0 2.2 2.0 1.8/' +}