diff options
author | Ting-Wei Lan <lantw44@gmail.com> | 2024-11-03 11:01:41 +0800 |
---|---|---|
committer | Ting-Wei Lan <lantw44@gmail.com> | 2024-11-03 11:01:41 +0800 |
commit | 86130f7bee8c288484a6843353d8bbe713b21d76 (patch) | |
tree | 4dc8f8ff8a54306b727b88b064db02e230f26c39 | |
parent | 080b44931962c3dd68265ec1656adf84f8af6ed0 (diff) | |
download | copr-rpm-spec-86130f7bee8c288484a6843353d8bbe713b21d76.tar copr-rpm-spec-86130f7bee8c288484a6843353d8bbe713b21d76.tar.gz copr-rpm-spec-86130f7bee8c288484a6843353d8bbe713b21d76.tar.bz2 copr-rpm-spec-86130f7bee8c288484a6843353d8bbe713b21d76.tar.lz copr-rpm-spec-86130f7bee8c288484a6843353d8bbe713b21d76.tar.xz copr-rpm-spec-86130f7bee8c288484a6843353d8bbe713b21d76.tar.zst copr-rpm-spec-86130f7bee8c288484a6843353d8bbe713b21d76.zip |
guix: Build Guix for Fedora 39 and 40
Fedora 38 and later versions no longer allow mounting the proc file
system in mock. Ignore container tests in mock for now since Copr no
longer run builds on Fedora 37 hosts.
-rw-r--r-- | guix/guix/guix-1.4.0-tests-gremlin.patch | 20 | ||||
-rw-r--r-- | guix/guix/guix.spec | 35 |
2 files changed, 47 insertions, 8 deletions
diff --git a/guix/guix/guix-1.4.0-tests-gremlin.patch b/guix/guix/guix-1.4.0-tests-gremlin.patch new file mode 100644 index 0000000..b1ea04d --- /dev/null +++ b/guix/guix/guix-1.4.0-tests-gremlin.patch @@ -0,0 +1,20 @@ +diff --git a/tests/gremlin.scm b/tests/gremlin.scm +index 3dbb8d3643..280b1d8819 100644 +--- a/tests/gremlin.scm ++++ b/tests/gremlin.scm +@@ -136,6 +136,7 @@ (define ground-truth + (with-directory-excursion directory + (call-with-output-file "t.c" + (lambda (port) ++ (display "#include <stdio.h>\n" port) + (display "int main () { puts(\"hello\"); }" port))) + (invoke c-compiler "t.c" + "-Wl,--enable-new-dtags" "-Wl,-rpath=/foo" "-Wl,-rpath=/bar") +@@ -164,6 +165,7 @@ (define ground-truth + (with-directory-excursion directory + (call-with-output-file "t.c" + (lambda (port) ++ (display "#include <stdio.h>\n" port) + (display "int main () { puts(\"hello\"); }" port))) + + (invoke c-compiler "t.c" diff --git a/guix/guix/guix.spec b/guix/guix/guix.spec index a9593dd..9ec4d94 100644 --- a/guix/guix/guix.spec +++ b/guix/guix/guix.spec @@ -6,7 +6,7 @@ Name: guix Version: 1.4.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A purely functional package manager for the GNU system License: GPLv3+ @@ -16,6 +16,9 @@ Source0: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.gz # Fix tests/guix-home.sh when Guix is not installed. Patch0: guix-1.4.0-tests-guix-home.patch +# Fix tests/gremlin.scm for GCC 14. +Patch1: guix-1.4.0-tests-gremlin.patch + %global guix_user guixbuild %global guix_group guixbuild %global guile_source_dir %{_datadir}/guile/site/3.0 @@ -67,17 +70,14 @@ Requires: disarchive Requires: gzip, bzip2, xz Requires: selinux-policy -Requires: %{_bindir}/dot -Requires: %{_libdir}/libgcrypt.so -Requires(post): /usr/sbin/useradd -Requires(post): /usr/sbin/usermod -Requires(post): /usr/sbin/groupadd -Requires(post): /usr/sbin/groupmod -Requires(post): /usr/bin/gpasswd +Requires: graphviz +Requires(post): shadow-utils Requires(post): libselinux-utils, policycoreutils Requires(post): info Requires(preun): info +Provides: %{_libexecdir}/guix/guile + %{?systemd_requires} Recommends: guile-ssh >= 0.13.0 @@ -130,6 +130,18 @@ if [ "${cwd_len}" -gt 36 ]; then echo 'The working directory cannot be longer than 36 bytes.' exit 1 fi +# Mounting proc in mock causes errors: +# "mount ~S on ~S: ~A" +# + ("none" +# + "/tmp/guix-directory.XXXXXX/proc" +# + "Operation not permitted") +# + (1)) +if [ "$(id -un)" = mockbuild ]; then + sed -i \ + -e 's|tests/containers\.scm||g' \ + -e 's|tests/guix-environment-container\.sh||' \ + Makefile +fi # Running tests in parallel causes errors: # In procedure copy-file: Permission denied: # "/builddir/build/BUILD/guix-1.4.0/gnu/packages/bootstrap/i686-linux/bash" @@ -488,6 +500,13 @@ fi %changelog +* Sat Nov 02 2024 Ting-Wei Lan <lantw44@gmail.com> - 1.4.0-4 +- Fix tests with GCC 14 for Fedora 40 and later +- Drop dependency on libgcrypt.so because it has been handled by guile-gcrypt +- Convert path dependencies to packages for Fedora 40 DNF conditional file lists +- Provide interpreter paths explicitly for Fedora 40 DNF conditional file lists +- Skip container tests in mock because Fedora 38 broke them + * Wed Apr 19 2023 Ting-Wei Lan <lantw44@gmail.com> - 1.4.0-3 - Rebuilt for Fedora 38 and 39 |