diff --git a/sources b/sources index 3595438..8450403 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (xgap-4.32.tar.gz) = 91e09f5c8cdd37d73d0ff733a5c0873527185a29ac784eb7fd18de85118ef4a79a634eea88ac16808e54cc0e144b5c1c850c8a1ce0f4bec63ce134ee301eb997 +SHA512 (xgap-4.33.tar.gz) = 70055f3f8e81060024f1359831bbfff8a1e0f98f075a560187e9de95fb74ba728ec306a2eef74eea53dcee09b93823e950e82cddfab64160b8f8b98914eaecca diff --git a/xgap-gap-path.patch b/xgap-gap-path.patch new file mode 100644 index 0000000..edd181b --- /dev/null +++ b/xgap-gap-path.patch @@ -0,0 +1,11 @@ +--- tst/xgap_test.g.orig 2024-02-07 16:26:14.000000000 -0700 ++++ tst/xgap_test.g 2025-09-06 14:19:22.424822565 -0600 +@@ -142,7 +142,7 @@ end; + XGT_Test:=function(cmd) + local GAP_cmd, GAP_dir, stream, mycmd; + +- GAP_cmd := Filename(DirectoriesLibrary(""), "gap"); ++ GAP_cmd := "/usr/bin/gap"; + GAP_dir := DirectoryCurrent(); + + XGT_buf:=""; diff --git a/xgap-incompatible-pointer.patch b/xgap-incompatible-pointer.patch index 4c15fb4..46b24ca 100644 --- a/xgap-incompatible-pointer.patch +++ b/xgap-incompatible-pointer.patch @@ -19,7 +19,7 @@ In file included from ../../src.x11/utils.h:120, /* change list */ - XawListChange( arg->sel->list, (const char **)text, 0, 0, True ); -+ XawListChange( arg->sel->list, (char **)text, 0, 0, True ); ++ XawListChange( arg->sel->list, text, 0, 0, True ); /* clear old text */ for ( i = 0; arg->sel->text[i]; i++ ) diff --git a/xgap.spec b/xgap.spec index 35473ce..f09c8f0 100644 --- a/xgap.spec +++ b/xgap.spec @@ -1,40 +1,52 @@ -Name: xgap -Version: 4.32 +%global gap_pkgname xgap +%global giturl https://github.com/gap-packages/xgap + +Name: %{gap_pkgname} +Version: 4.33 Release: %autorelease Summary: GUI for GAP # The project as a whole is GPL-2.0-or-later. # src.x11/selfile.{c,h} is HPND. License: GPL-2.0-or-later AND HPND -# See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval -ExcludeArch: %{ix86} URL: https://gap-packages.github.io/xgap/ -VCS: https://github.com/gap-packages/xgap -Source0: %{vcs}/releases/download/v%{version}/%{name}-%{version}.tar.gz +VCS : git:%{giturl}.git +Source0: %{giturl}/releases/download/v%{version}/%{name}-%{version}.tar.gz # Created by Jerry James Source1: %{name}.desktop # Created by Paulo César Pereira de Andrade # Source2: XGap # This patch quiets a compiler warning. -Patch0: %{name}-warning.patch +Patch: %{name}-warning.patch # Fix FTBFS due to an incompatible pointer type -Patch1: %{name}-incompatible-pointer.patch +Patch: %{name}-incompatible-pointer.patch +# Adapt to a change in the gap binary location in gap 4.15.0 +Patch: %{name}-gap-path.patch + +# See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval +ExcludeArch: %{ix86} +BuildSystem: gap +BuildOption(install): bin examples htm lib tst +BuildOption(check): tst/testall.g BuildRequires: desktop-file-utils -BuildRequires: gap-devel +BuildRequires: gap-devel >= 4.7 BuildRequires: gap-pkg-smallgrp-doc BuildRequires: gcc BuildRequires: make BuildRequires: pkgconfig(xaw7) BuildRequires: tth -Requires: gap%{?_isa} +Requires: gap%{?_isa} >= 4.7 -Provides: gap-pkg-xgap = %{version}-%{release} +Provides: gap-pkg-%{gap_pkgname} = %{version}-%{release} + +Provides: gap(XGAP) = %{version}-%{release} +Provides: gap(xgap) = %{version}-%{release} %description -A X Windows GUI for GAP. +An X Windows GUI for GAP. %package doc # The content is GPL-2.0-or-later. The remaining licenses cover the various @@ -49,16 +61,13 @@ Requires: %{name} = %{version}-%{release} Requires: gap-pkg-smallgrp-doc %description doc -This package contains documentation for %{name}. +This package contains documentation for %{gap_pkgname}. %prep %autosetup -p0 -# Autoloading this package interferes with SAGE (bz 819705). -sed -i "/^Autoload/s/true/false/" PackageInfo.g - %build -export CFLAGS="%{build_cflags} -D_GNU_SOURCE" +export CFLAGS='%{build_cflags} -D_GNU_SOURCE' %configure --with-gaproot=%{gap_archdir} %make_build @@ -70,16 +79,15 @@ ln -s %{gap_libdir}/etc ../../etc ln -s %{gap_libdir}/doc ../../doc ln -s %{gap_libdir}/pkg/smallgrp .. ln -s %{name}-%{version} ../%{name} -make -C doc manual +cd doc +./make_doc +cd - rm -f ../%{name} ../smallgrp ../../{doc,etc} -%install +%install -a mkdir -p %{buildroot}%{_bindir} -mkdir -p %{buildroot}%{gap_archdir}/pkg/%{name}/doc -cp -a *.g bin examples htm lib tst %{buildroot}%{gap_archdir}/pkg/%{name} mv %{buildroot}%{gap_archdir}/pkg/%{name}/bin/xgap.sh %{buildroot}%{_bindir}/xgap rm %{buildroot}%{gap_archdir}/pkg/%{name}/bin/*/{Makefile,config*,*.o} -%gap_copy_docs -n %{name} # Install the desktop file mkdir -p %{buildroot}%{_datadir}/applications @@ -90,11 +98,12 @@ desktop-file-install --mode=644 --dir=%{buildroot}%{_datadir}/applications \ mkdir -p %{buildroot}%{_datadir}/X11/app-defaults cp -p %{SOURCE2} %{buildroot}%{_datadir}/X11/app-defaults -%check +%check -p # Temporarily modify the test runner to add the necessary -l argument sed -i.orig 's|"-p"|"-l","%{buildroot}%{gap_archdir};",&|' \ %{buildroot}%{gap_archdir}/pkg/%{name}/tst/xgap_test.g -gap -l "%{buildroot}%{gap_archdir};" tst/testall.g + +%check -a mv %{buildroot}%{gap_archdir}/pkg/%{name}/tst/xgap_test.g.orig \ %{buildroot}%{gap_archdir}/pkg/%{name}/tst/xgap_test.g @@ -103,10 +112,11 @@ mv %{buildroot}%{gap_archdir}/pkg/%{name}/tst/xgap_test.g.orig \ %{_bindir}/%{name} %{_datadir}/applications/%{name}.desktop %{_datadir}/X11/app-defaults/XGap -%{gap_archdir}/pkg/%{name}/ -%exclude %{gap_archdir}/pkg/%{name}/doc/ -%exclude %{gap_archdir}/pkg/%{name}/examples/ -%exclude %{gap_archdir}/pkg/%{name}/htm/ +%dir %{gap_archdir}/pkg/%{name}/ +%{gap_archdir}/pkg/%{name}/*.g +%{gap_archdir}/pkg/%{name}/bin/ +%{gap_archdir}/pkg/%{name}/lib/ +%{gap_archdir}/pkg/%{name}/tst/ %files doc %docdir %{gap_archdir}/pkg/%{name}/doc/