From 9265eb64114b6c3d73990def3faf830189114436 Mon Sep 17 00:00:00 2001 From: Jiri Date: Sat, 11 Jul 2020 04:18:05 +0200 Subject: [PATCH 01/66] Rebuilt for JDK-11 --- pl.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pl.spec b/pl.spec index 0d898fd..ee8162b 100644 --- a/pl.spec +++ b/pl.spec @@ -18,7 +18,7 @@ Name: pl Version: 8.2.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -485,6 +485,9 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md %changelog +* Sat Jul 11 2020 Jiri Vanek - 8.2.1-2 +- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 + * Mon Jun 29 2020 Jerry James - 8.2.1-1 - 8.2.1 bump - Add -bad-bibtex-entry patch From 8d6052b9823589c411ed8c093d60603d1366fc4a Mon Sep 17 00:00:00 2001 From: Jerry James Date: Tue, 21 Jul 2020 20:26:10 -0600 Subject: [PATCH 02/66] Change URL to use https instead of http. --- pl.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pl.spec b/pl.spec index ee8162b..5b0045f 100644 --- a/pl.spec +++ b/pl.spec @@ -75,7 +75,7 @@ Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #bench/simple_analyzer.pl Free for non-commercial #man/txt/dvi2tty/dvi2tty.c Free for non-commercial License: (GPLv2+ with exceptions or Artistic 2.0) and (GPL+ or Artistic) and (BSD or GPL+) and TCL and UCD and MIT and BSD and Public Domain -URL: http://www.swi-prolog.org/ +URL: https://www.swi-prolog.org/ # Source0: %%{url}download/stable/src/swipl-%%{version}.tar.gz # To create the repackaged archive, use ./repackage.sh %%{version} Source0: swipl-%{version}_repackaged.tar.gz From b8a0db79f196725aef26919f05fb19c18b365b32 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Thu, 23 Jul 2020 14:52:37 -0600 Subject: [PATCH 03/66] Update for cmake changes in Rawhide. --- pl.spec | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/pl.spec b/pl.spec index 5b0045f..96a7191 100644 --- a/pl.spec +++ b/pl.spec @@ -18,7 +18,7 @@ Name: pl Version: 8.2.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -315,37 +315,34 @@ export DISABLE_PKGS="jpl" %endif # Build -mkdir build -cd build %cmake \ -DBUILD_PDF_DOCUMENTATION:BOOL=ON \ -DCPACK_GENERATOR:STRING=RPM \ -DGET0SIG_CONST_T:STRING=const \ -DJQUERYDIR:STRING=%{_datadir}/javascript/jquery/latest \ -DSWIPL_VERSIONED_DIR:BOOL=ON \ - -G Ninja .. -ninja + -G Ninja . +%cmake_build # Switch back before installing; see above -cp -p ../packages/jpl/jpl.pl.install home/library/jpl.pl +mv packages/jpl/jpl.pl.install packages/jpl/jpl.pl %install -cd build # See for file layout -DESTDIR=%{buildroot} ninja install +%cmake_install # Script with shebang should be executable chmod 0755 %{buildroot}%{_libdir}/swipl-%{version}/library/dialect/sicstus/swipl-lfr.pl chmod 0755 %{buildroot}%{_libdir}/swipl-%{version}/customize/edit # Some XPCE files do not get installed -cp -p ../packages/xpce/man/*.1 %{buildroot}%{_mandir}/man1 +cp -p packages/xpce/man/*.1 %{buildroot}%{_mandir}/man1 %if %{with_java} # Move the JPL JNI stuff to where the Java packaging guidelines # say it should be -jpl_ver=$(sed -n 's/.*JPL_VERSION \([.[:digit:]]*\).*/\1/p' ../packages/jpl/CMakeLists.txt) +jpl_ver=$(sed -n 's/.*JPL_VERSION \([.[:digit:]]*\).*/\1/p' packages/jpl/CMakeLists.txt) pushd %{buildroot}%{_libdir} mkdir -p swipl-jpl @@ -466,7 +463,7 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md %files doc %{_libdir}/swipl-%{version}/doc/ -%doc build/man/SWI-Prolog-%{version}.pdf +%doc %{__cmake_builddir}/man/SWI-Prolog-%{version}.pdf %doc %{docdir}-xpce/* %files odbc @@ -485,6 +482,9 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md %changelog +* Thu Jul 23 2020 Jerry James - 8.2.1-3 +- Update for cmake changes in Rawhide + * Sat Jul 11 2020 Jiri Vanek - 8.2.1-2 - Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 From d0dea7310643b7e011e515f24e00bafe8596e8d5 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 28 Jul 2020 22:35:03 +0000 Subject: [PATCH 04/66] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- pl.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pl.spec b/pl.spec index 96a7191..220e3bc 100644 --- a/pl.spec +++ b/pl.spec @@ -18,7 +18,7 @@ Name: pl Version: 8.2.1 -Release: 3%{?dist} +Release: 4%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -482,6 +482,9 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md %changelog +* Tue Jul 28 2020 Fedora Release Engineering - 8.2.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Thu Jul 23 2020 Jerry James - 8.2.1-3 - Update for cmake changes in Rawhide From ebe45d073b9a34ae296c06ef089244e686a50f3d Mon Sep 17 00:00:00 2001 From: Jerry James Date: Tue, 27 Oct 2020 13:17:38 -0600 Subject: [PATCH 05/66] Version 8.2.2. - Remove upstreamed -bad-bibtex-entry patch. - Add -underscore patch to work around LaTeX errors. --- pl.spec | 28 +++++++++++----------- sources | 2 +- swipl-8.2.1-bad-bibtex-entry.patch | 20 ---------------- swipl-8.2.2-underscore.patch | 37 ++++++++++++++++++++++++++++++ 4 files changed, 52 insertions(+), 35 deletions(-) delete mode 100644 swipl-8.2.1-bad-bibtex-entry.patch create mode 100644 swipl-8.2.2-underscore.patch diff --git a/pl.spec b/pl.spec index 220e3bc..4a8cca8 100644 --- a/pl.spec +++ b/pl.spec @@ -17,8 +17,8 @@ %endif Name: pl -Version: 8.2.1 -Release: 4%{?dist} +Version: 8.2.2 +Release: 1%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -88,8 +88,9 @@ Patch0: swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch Patch1: swipl-8.2.1-Fix-JNI.patch # Unbundle libstemmer Patch2: swipl-8.2.0-unbundle-libstemmer.patch -# Fix a bad BibTeX entry -Patch3: swipl-8.2.1-bad-bibtex-entry.patch +# Fix a LaTeX error when labels contain underscores +Patch3: swipl-8.2.2-underscore.patch + BuildRequires: cmake BuildRequires: findutils BuildRequires: gcc-c++ @@ -257,11 +258,7 @@ in Prolog. In both setups it provides a re-entrant bidirectional interface. %prep %global docdir doc-install -%setup -q -n swipl-%{version} -%patch0 -p1 -b .man-files -%patch1 -p1 -b .jni -%patch2 -p1 -b .libstemmer -%patch3 -p1 -b .bibtex +%autosetup -p1 -n swipl-%{version} # Fix the installation path on 64-bit systems if [ "%{_lib}" = "lib64" ]; then @@ -282,8 +279,8 @@ popd cp -p %{SOURCE2} . # Adjustments to take into account the new location of JNI stuff -sed --in-place=.jni2 -e 's#LIBDIR#%{_libdir}#g' packages/jpl/jpl.pl -sed --in-place=.jni2 -e 's#LIBDIR#"%{_libdir}/swipl-jpl"#g' packages/jpl/src/main/java/org/jpl7/JPL.java +sed --in-place=.jni -e 's#LIBDIR#%{_libdir}#g' packages/jpl/jpl.pl +sed --in-place=.jni -e 's#LIBDIR#"%{_libdir}/swipl-jpl"#g' packages/jpl/src/main/java/org/jpl7/JPL.java # Find junit.jar sed --in-place 's,\(%{_datadir}/java/junit\)4\.jar,\1.jar,' \ @@ -348,11 +345,9 @@ pushd %{buildroot}%{_libdir} mkdir -p swipl-jpl mv swipl-%{version}/lib/%{swipl_arch}/libjpl.so swipl-jpl/ mv swipl-%{version}/lib/jpl.jar swipl-jpl/ -mv swipl-%{version}/lib/jpl-${jpl_ver}.jar swipl-jpl/ # Original locations are referenced by internal libraries and examples ln -s ../../../swipl-jpl/libjpl.so swipl-%{version}/lib/%{swipl_arch}/libjpl.so ln -s ../../swipl-jpl/jpl.jar swipl-%{version}/lib/jpl.jar -ln -s ../../swipl-jpl/jpl-${jpl_ver}.jar swipl-%{version}/lib/jpl-${jpl_ver}.jar popd %endif @@ -463,7 +458,7 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md %files doc %{_libdir}/swipl-%{version}/doc/ -%doc %{__cmake_builddir}/man/SWI-Prolog-%{version}.pdf +%doc %{_vpath_builddir}/man/SWI-Prolog-%{version}.pdf %doc %{docdir}-xpce/* %files odbc @@ -482,6 +477,11 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md %changelog +* Tue Oct 27 2020 Jerry James - 8.2.2-1 +- Version 8.2.2 +- Remove upstreamed -bad-bibtex-entry patch +- Add -underscore patch to work around LaTeX errors + * Tue Jul 28 2020 Fedora Release Engineering - 8.2.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild diff --git a/sources b/sources index f31eac2..5c7be1b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-8.2.1_repackaged.tar.gz) = 644e59dcf69fc69155ae1ba21cf9b04eca2454d3602687be5d1c24aaaa151a41da97556c44f52ff0bc96e8ed5f4b8970c34e28d4591f55caa93e8cbcfd192987 +SHA512 (swipl-8.2.2_repackaged.tar.gz) = 63736e8e245dedc3e177084d1d3e89ce41adcb3c079701b502ae867d762c638f4eb363e658641a8ca97badcf43e40290251481d40a7bd677e9a5dfb784be6943 diff --git a/swipl-8.2.1-bad-bibtex-entry.patch b/swipl-8.2.1-bad-bibtex-entry.patch deleted file mode 100644 index 701c3e5..0000000 --- a/swipl-8.2.1-bad-bibtex-entry.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- a/man/pl.bib -+++ b/man/pl.bib -@@ -1111,7 +1111,7 @@ pages = {14--17} - Languages Implementation and Logic Programming (PLILP'94)}, LNCS - 844, Madrid 1994. - --@inproceedings{DBLP:dblpjournals/tplp/CovingtonBOWP12, -+@article{DBLP:dblpjournals/tplp/CovingtonBOWP12, - author = {Michael A. Covington and - Roberto Bagnara and - Richard A. O'Keefe and -@@ -1119,6 +1119,8 @@ pages = {14--17} - Simon Price}, - title = {Coding guidelines for {Prolog}.}, - journal = {{TPLP}}, -+ volume = {12}, -+ number = {6}, - year = {2012}, - pages = {889-927}, - ee = {http://journals.cambridge.org/action/displayAbstract?aid} diff --git a/swipl-8.2.2-underscore.patch b/swipl-8.2.2-underscore.patch new file mode 100644 index 0000000..daf9f27 --- /dev/null +++ b/swipl-8.2.2-underscore.patch @@ -0,0 +1,37 @@ +This prevents a LaTeX error when labels contain underscores: + +(./SWI-Prolog-8.2.2.aux (./intro.aux) (./overview.aux) (./ide.aux) +(./builtin.aux +! Missing \endcsname inserted. + + \protect +l.12 ...{Redicate indicators}{subsection.4.1.2}{}} + +? +! Emergency stop. + + \protect +l.12 ...{Redicate indicators}{subsection.4.1.2}{}} + +End of file on the terminal! + +--- a/man/builtin.doc 2020-10-27 05:10:19.000000000 -0600 ++++ b/man/builtin.doc 2020-10-27 12:43:43.386433966 -0600 +@@ -78,7 +78,7 @@ See also \secref{metacall} for examples + \secref{metapred} for mode flags to label meta-predicate arguments in + module export declarations. + +-\subsection{Redicate indicators} \label{sec:predicate_indic} ++\subsection{Redicate indicators} \label{sec:predicate:indic} + + \index{predicate indicator}% + Referring to a predicate in running text is done using a +@@ -87,7 +87,7 @@ predicate indicator is a term \exam{[ Date: Thu, 26 Nov 2020 10:44:38 -0700 Subject: [PATCH 06/66] Version 8.2.3. Add swipl-8.2.3-qt-deprecated.patch to silence Qt deprecation warnings. --- pl.spec | 21 +++++++++++++++++++-- swipl-8.2.3-qt-deprecated.patch | 25 +++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 swipl-8.2.3-qt-deprecated.patch diff --git a/pl.spec b/pl.spec index 4a8cca8..e512f22 100644 --- a/pl.spec +++ b/pl.spec @@ -17,7 +17,7 @@ %endif Name: pl -Version: 8.2.2 +Version: 8.2.3 Release: 1%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD @@ -90,6 +90,8 @@ Patch1: swipl-8.2.1-Fix-JNI.patch Patch2: swipl-8.2.0-unbundle-libstemmer.patch # Fix a LaTeX error when labels contain underscores Patch3: swipl-8.2.2-underscore.patch +# Silence some Qt deprecation warnings +Patch4: swipl-8.2.3-qt-deprecated.patch BuildRequires: cmake BuildRequires: findutils @@ -148,6 +150,7 @@ BuildRequires: pkgconfig(zlib) # Doc building BuildRequires: tex(latex) BuildRequires: tex(a4wide.sty) +BuildRequires: tex(tabulary.sty) # http Requires: js-jquery @@ -306,12 +309,13 @@ cp -p customize/README.md README-customize.md LC_CTYPE=C.UTF-8 javac JavaConfig.java JAVA_HOME=$(java JavaConfig --home) JAVA_LIBS=$(java JavaConfig --libs-only-L) +export LD_LIBRARY_PATH=$JAVA_HOME/lib/server %else # Processed by packages/configure export DISABLE_PKGS="jpl" %endif -# Build +# Configure %cmake \ -DBUILD_PDF_DOCUMENTATION:BOOL=ON \ -DCPACK_GENERATOR:STRING=RPM \ @@ -319,6 +323,15 @@ export DISABLE_PKGS="jpl" -DJQUERYDIR:STRING=%{_datadir}/javascript/jquery/latest \ -DSWIPL_VERSIONED_DIR:BOOL=ON \ -G Ninja . + +# Help latex2html find the bibliographies +for d in $(find . -name gen); do + target=$(dirname $d) + mkdir -p %{_vpath_builddir}/$target + cp -p $d/*.bbl %{_vpath_builddir}/$target +done + +# Build %cmake_build # Switch back before installing; see above @@ -477,6 +490,10 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md %changelog +* Thu Nov 26 2020 Jerry James - 8.2.3-1 +- Version 8.2.3 +- Add swipl-8.2.3-qt-deprecated.patch to silence Qt deprecation warnings + * Tue Oct 27 2020 Jerry James - 8.2.2-1 - Version 8.2.2 - Remove upstreamed -bad-bibtex-entry patch diff --git a/swipl-8.2.3-qt-deprecated.patch b/swipl-8.2.3-qt-deprecated.patch new file mode 100644 index 0000000..5ab7f15 --- /dev/null +++ b/swipl-8.2.3-qt-deprecated.patch @@ -0,0 +1,25 @@ +Silence some deprecation warnings. + +--- swipl-8.2.3/packages/swipl-win/ParenMatching.cpp.orig 2020-11-04 06:02:43.000000000 -0700 ++++ swipl-8.2.3/packages/swipl-win/ParenMatching.cpp 2020-11-23 09:44:33.888327758 -0700 +@@ -84,9 +84,9 @@ QString ParenMatching::range::plainText( + e = doc->findBlock(end); + QTextStream s(&x); + if (b != e) { +- s << b.text().mid(b.position() - beg) << endl; ++ s << b.text().mid(b.position() - beg) << Qt::endl; + for (b = b.next(); b != e; b = b.next()) +- s << b.text() << endl; ++ s << b.text() << Qt::endl; + s << b.text().left(end - b.position()); + } + else +@@ -105,7 +105,7 @@ QString ParenMatching::range::linesText( + if (b != doc->end()) { + QTextStream s(&x); + for ( ; b != e; b = b.next()) +- s << b.text() << endl; ++ s << b.text() << Qt::endl; + if (b != doc->end()) + s << b.text(); + } From 8fb7bfbe4deb6b6081a9360493f4cd04ec00b699 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Thu, 26 Nov 2020 11:15:40 -0700 Subject: [PATCH 07/66] Actually upload the new sources. --- sources | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources b/sources index 5c7be1b..0e9c0e4 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-8.2.2_repackaged.tar.gz) = 63736e8e245dedc3e177084d1d3e89ce41adcb3c079701b502ae867d762c638f4eb363e658641a8ca97badcf43e40290251481d40a7bd677e9a5dfb784be6943 +SHA512 (swipl-8.2.3_repackaged.tar.gz) = 8e798fdd6dd151b2c593ac6ac5e0f252916ef87a8d11183ce86397a30b4907f83fb4d08e482d64f603c142a2c7566528f0c2a4d8a6952dfcc920ca3844c42aa8 From 5fc0792da2e6a95b7119902a9afa796d5362e02b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 27 Jan 2021 08:10:17 +0000 Subject: [PATCH 08/66] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- pl.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pl.spec b/pl.spec index e512f22..41bd024 100644 --- a/pl.spec +++ b/pl.spec @@ -18,7 +18,7 @@ Name: pl Version: 8.2.3 -Release: 1%{?dist} +Release: 2%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -490,6 +490,9 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md %changelog +* Wed Jan 27 2021 Fedora Release Engineering - 8.2.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Thu Nov 26 2020 Jerry James - 8.2.3-1 - Version 8.2.3 - Add swipl-8.2.3-qt-deprecated.patch to silence Qt deprecation warnings From 86fe9942a81e013cab3fcf0de8d9240738e956ff Mon Sep 17 00:00:00 2001 From: Jerry James Date: Wed, 27 Jan 2021 09:06:13 -0700 Subject: [PATCH 09/66] Version 8.2.4. - Drop upstreamed swipl-8.2.2-underscore.patch. --- pl.spec | 12 +++++++----- sources | 2 +- swipl-8.2.2-underscore.patch | 37 ------------------------------------ 3 files changed, 8 insertions(+), 43 deletions(-) delete mode 100644 swipl-8.2.2-underscore.patch diff --git a/pl.spec b/pl.spec index 41bd024..0b2bb51 100644 --- a/pl.spec +++ b/pl.spec @@ -17,8 +17,8 @@ %endif Name: pl -Version: 8.2.3 -Release: 2%{?dist} +Version: 8.2.4 +Release: 1%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -88,10 +88,8 @@ Patch0: swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch Patch1: swipl-8.2.1-Fix-JNI.patch # Unbundle libstemmer Patch2: swipl-8.2.0-unbundle-libstemmer.patch -# Fix a LaTeX error when labels contain underscores -Patch3: swipl-8.2.2-underscore.patch # Silence some Qt deprecation warnings -Patch4: swipl-8.2.3-qt-deprecated.patch +Patch3: swipl-8.2.3-qt-deprecated.patch BuildRequires: cmake BuildRequires: findutils @@ -490,6 +488,10 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md %changelog +* Wed Jan 27 2021 Jerry James - 8.2.4-1 +- Version 8.2.4 +- Drop upstreamed swipl-8.2.2-underscore.patch + * Wed Jan 27 2021 Fedora Release Engineering - 8.2.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild diff --git a/sources b/sources index 0e9c0e4..d906ff2 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-8.2.3_repackaged.tar.gz) = 8e798fdd6dd151b2c593ac6ac5e0f252916ef87a8d11183ce86397a30b4907f83fb4d08e482d64f603c142a2c7566528f0c2a4d8a6952dfcc920ca3844c42aa8 +SHA512 (swipl-8.2.4_repackaged.tar.gz) = c6d7a4173df7504d24f53f5a2c914fb49f2c608ca56d799a6dcb3fcafb3d260177addd820517fdfd628d43df0bfd675c9de0cc9f59dfdb4f8c245dfe389d2524 diff --git a/swipl-8.2.2-underscore.patch b/swipl-8.2.2-underscore.patch deleted file mode 100644 index daf9f27..0000000 --- a/swipl-8.2.2-underscore.patch +++ /dev/null @@ -1,37 +0,0 @@ -This prevents a LaTeX error when labels contain underscores: - -(./SWI-Prolog-8.2.2.aux (./intro.aux) (./overview.aux) (./ide.aux) -(./builtin.aux -! Missing \endcsname inserted. - - \protect -l.12 ...{Redicate indicators}{subsection.4.1.2}{}} - -? -! Emergency stop. - - \protect -l.12 ...{Redicate indicators}{subsection.4.1.2}{}} - -End of file on the terminal! - ---- a/man/builtin.doc 2020-10-27 05:10:19.000000000 -0600 -+++ b/man/builtin.doc 2020-10-27 12:43:43.386433966 -0600 -@@ -78,7 +78,7 @@ See also \secref{metacall} for examples - \secref{metapred} for mode flags to label meta-predicate arguments in - module export declarations. - --\subsection{Redicate indicators} \label{sec:predicate_indic} -+\subsection{Redicate indicators} \label{sec:predicate:indic} - - \index{predicate indicator}% - Referring to a predicate in running text is done using a -@@ -87,7 +87,7 @@ predicate indicator is a term \exam{[ Date: Tue, 27 Jul 2021 07:45:43 +0000 Subject: [PATCH 10/66] - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- pl.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pl.spec b/pl.spec index 0b2bb51..daed328 100644 --- a/pl.spec +++ b/pl.spec @@ -18,7 +18,7 @@ Name: pl Version: 8.2.4 -Release: 1%{?dist} +Release: 2%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -488,6 +488,10 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md %changelog +* Tue Jul 27 2021 Fedora Release Engineering - 8.2.4-2 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Wed Jan 27 2021 Jerry James - 8.2.4-1 - Version 8.2.4 - Drop upstreamed swipl-8.2.2-underscore.patch From 12085b4c6d44fb53f0e385538b192b8a6fd8d840 Mon Sep 17 00:00:00 2001 From: Sahana Prasad Date: Tue, 14 Sep 2021 19:11:45 +0200 Subject: [PATCH 11/66] Rebuilt with OpenSSL 3.0.0 --- pl.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pl.spec b/pl.spec index daed328..661c134 100644 --- a/pl.spec +++ b/pl.spec @@ -18,7 +18,7 @@ Name: pl Version: 8.2.4 -Release: 2%{?dist} +Release: 3%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -488,6 +488,9 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md %changelog +* Tue Sep 14 2021 Sahana Prasad - 8.2.4-3 +- Rebuilt with OpenSSL 3.0.0 + * Tue Jul 27 2021 Fedora Release Engineering - 8.2.4-2 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From 3ea14d18b1520ae384fbe3233970db33e28a7507 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Thu, 16 Sep 2021 10:26:46 -0600 Subject: [PATCH 12/66] Add -openssl3 patch to fix FTBFS with OpenSSL 3.0.0. --- pl.spec | 6 ++++++ swipl-8.2.4-openssl3.patch | 12 ++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 swipl-8.2.4-openssl3.patch diff --git a/pl.spec b/pl.spec index 661c134..e665ee5 100644 --- a/pl.spec +++ b/pl.spec @@ -90,6 +90,9 @@ Patch1: swipl-8.2.1-Fix-JNI.patch Patch2: swipl-8.2.0-unbundle-libstemmer.patch # Silence some Qt deprecation warnings Patch3: swipl-8.2.3-qt-deprecated.patch +# Don't use RSA_SSLV23_PADDING with OpenSSL 3.x +# https://github.com/SWI-Prolog/packages-ssl/issues/160 +Patch4: swipl-8.2.4-openssl3.patch BuildRequires: cmake BuildRequires: findutils @@ -488,6 +491,9 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md %changelog +* Thu Sep 16 2021 Jerry James - 8.2.4-3 +- Add -openssl3 patch to fix FTBFS with OpenSSL 3.0.0 + * Tue Sep 14 2021 Sahana Prasad - 8.2.4-3 - Rebuilt with OpenSSL 3.0.0 diff --git a/swipl-8.2.4-openssl3.patch b/swipl-8.2.4-openssl3.patch new file mode 100644 index 0000000..f912757 --- /dev/null +++ b/swipl-8.2.4-openssl3.patch @@ -0,0 +1,12 @@ +--- a/packages/ssl/crypto4pl.c 2020-12-29 07:36:23.000000000 -0700 ++++ b/packages/ssl/crypto4pl.c 2021-09-15 13:26:07.011819892 -0600 +@@ -848,7 +848,9 @@ get_padding(term_t t, crypt_mode_t mode, + { if ( a == ATOM_pkcs1 && mode == RSA_MODE ) *padding = RSA_PKCS1_PADDING; + else if ( a == ATOM_pkcs1_oaep && mode == RSA_MODE ) *padding = RSA_PKCS1_OAEP_PADDING; + else if ( a == ATOM_none && mode == RSA_MODE ) *padding = RSA_NO_PADDING; ++#ifdef RSA_SSLV23_PADDING + else if ( a == ATOM_sslv23 && mode == RSA_MODE ) *padding = RSA_SSLV23_PADDING; ++#endif + else if ( a == ATOM_none && mode == EVP_MODE ) *padding = 0; + else if ( a == ATOM_block && mode == EVP_MODE ) *padding = 1; + else return PL_domain_error("padding", t); From 5f6a424cb69d31b3f173e050cef935cf22f96e91 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Sun, 3 Oct 2021 10:08:03 -0600 Subject: [PATCH 13/66] Version 8.4.0. - Drop upstreamed -qt-deprecated and -openssl3 patches. - Add -pclose patch to avoid zombie processes. --- pl.spec | 30 ++++++++++++++++++++---------- repackage.sh | 0 sources | 2 +- swipl-8.2.3-qt-deprecated.patch | 25 ------------------------- swipl-8.2.4-openssl3.patch | 12 ------------ swipl-8.4.0-pclose.patch | 11 +++++++++++ 6 files changed, 32 insertions(+), 48 deletions(-) mode change 100644 => 100755 repackage.sh delete mode 100644 swipl-8.2.3-qt-deprecated.patch delete mode 100644 swipl-8.2.4-openssl3.patch create mode 100644 swipl-8.4.0-pclose.patch diff --git a/pl.spec b/pl.spec index e665ee5..5ddc50a 100644 --- a/pl.spec +++ b/pl.spec @@ -17,8 +17,8 @@ %endif Name: pl -Version: 8.2.4 -Release: 3%{?dist} +Version: 8.4.0 +Release: 1%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -88,11 +88,9 @@ Patch0: swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch Patch1: swipl-8.2.1-Fix-JNI.patch # Unbundle libstemmer Patch2: swipl-8.2.0-unbundle-libstemmer.patch -# Silence some Qt deprecation warnings -Patch3: swipl-8.2.3-qt-deprecated.patch -# Don't use RSA_SSLV23_PADDING with OpenSSL 3.x -# https://github.com/SWI-Prolog/packages-ssl/issues/160 -Patch4: swipl-8.2.4-openssl3.patch +# Fix popen/pclose mismatch +# https://github.com/SWI-Prolog/swipl-devel/pull/888 +Patch3: swipl-8.4.0-pclose.patch BuildRequires: cmake BuildRequires: findutils @@ -262,7 +260,11 @@ in Prolog. In both setups it provides a re-entrant bidirectional interface. %prep %global docdir doc-install -%autosetup -p1 -n swipl-%{version} +%autosetup -N -n swipl-%{version} +%patch0 -p1 +%patch1 -p1 -b .jni +%patch2 -p1 +%patch3 -p1 # Fix the installation path on 64-bit systems if [ "%{_lib}" = "lib64" ]; then @@ -283,8 +285,8 @@ popd cp -p %{SOURCE2} . # Adjustments to take into account the new location of JNI stuff -sed --in-place=.jni -e 's#LIBDIR#%{_libdir}#g' packages/jpl/jpl.pl -sed --in-place=.jni -e 's#LIBDIR#"%{_libdir}/swipl-jpl"#g' packages/jpl/src/main/java/org/jpl7/JPL.java +sed -i 's#LIBDIR#%{_libdir}#g' packages/jpl/jpl.pl +sed -i.jni -e 's#LIBDIR#"%{_libdir}/swipl-jpl"#g' packages/jpl/src/main/java/org/jpl7/JPL.java # Find junit.jar sed --in-place 's,\(%{_datadir}/java/junit\)4\.jar,\1.jar,' \ @@ -368,6 +370,7 @@ popd # Remove stuff we do not want to package rm %{buildroot}%{_libdir}/swipl-%{version}/{LICENSE,README.md} rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md +rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %files @@ -415,6 +418,7 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/rdf_db.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/readline4pl.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/readutil.so +%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/redis4pl.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/rlimit.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/sgml2pl.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/sha4pl.so @@ -436,6 +440,7 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/websocket.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/yaml4pl.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/zlib4pl.so +%{_libdir}/swipl-%{version}/lib/swiplserver/ %{_libdir}/swipl-%{version}/library/ %{_libdir}/swipl-%{version}/swipl.home @@ -491,6 +496,11 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md %changelog +* Sat Oct 2 2021 Jerry James - 8.4.0-1 +- Version 8.4.0 +- Drop upstreamed -qt-deprecated and -openssl3 patches +- Add -pclose patch to avoid zombie processes + * Thu Sep 16 2021 Jerry James - 8.2.4-3 - Add -openssl3 patch to fix FTBFS with OpenSSL 3.0.0 diff --git a/repackage.sh b/repackage.sh old mode 100644 new mode 100755 diff --git a/sources b/sources index d906ff2..537080d 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-8.2.4_repackaged.tar.gz) = c6d7a4173df7504d24f53f5a2c914fb49f2c608ca56d799a6dcb3fcafb3d260177addd820517fdfd628d43df0bfd675c9de0cc9f59dfdb4f8c245dfe389d2524 +SHA512 (swipl-8.4.0_repackaged.tar.gz) = 1725fc4078aa9de9619643a890ea267d6e5f17d03cec7083d81aacd3b97534bb15fac0c5822ddab87e5e8ffd5af1848e9b0865056a9897cc10f9a6cf8a58a9ba diff --git a/swipl-8.2.3-qt-deprecated.patch b/swipl-8.2.3-qt-deprecated.patch deleted file mode 100644 index 5ab7f15..0000000 --- a/swipl-8.2.3-qt-deprecated.patch +++ /dev/null @@ -1,25 +0,0 @@ -Silence some deprecation warnings. - ---- swipl-8.2.3/packages/swipl-win/ParenMatching.cpp.orig 2020-11-04 06:02:43.000000000 -0700 -+++ swipl-8.2.3/packages/swipl-win/ParenMatching.cpp 2020-11-23 09:44:33.888327758 -0700 -@@ -84,9 +84,9 @@ QString ParenMatching::range::plainText( - e = doc->findBlock(end); - QTextStream s(&x); - if (b != e) { -- s << b.text().mid(b.position() - beg) << endl; -+ s << b.text().mid(b.position() - beg) << Qt::endl; - for (b = b.next(); b != e; b = b.next()) -- s << b.text() << endl; -+ s << b.text() << Qt::endl; - s << b.text().left(end - b.position()); - } - else -@@ -105,7 +105,7 @@ QString ParenMatching::range::linesText( - if (b != doc->end()) { - QTextStream s(&x); - for ( ; b != e; b = b.next()) -- s << b.text() << endl; -+ s << b.text() << Qt::endl; - if (b != doc->end()) - s << b.text(); - } diff --git a/swipl-8.2.4-openssl3.patch b/swipl-8.2.4-openssl3.patch deleted file mode 100644 index f912757..0000000 --- a/swipl-8.2.4-openssl3.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/packages/ssl/crypto4pl.c 2020-12-29 07:36:23.000000000 -0700 -+++ b/packages/ssl/crypto4pl.c 2021-09-15 13:26:07.011819892 -0600 -@@ -848,7 +848,9 @@ get_padding(term_t t, crypt_mode_t mode, - { if ( a == ATOM_pkcs1 && mode == RSA_MODE ) *padding = RSA_PKCS1_PADDING; - else if ( a == ATOM_pkcs1_oaep && mode == RSA_MODE ) *padding = RSA_PKCS1_OAEP_PADDING; - else if ( a == ATOM_none && mode == RSA_MODE ) *padding = RSA_NO_PADDING; -+#ifdef RSA_SSLV23_PADDING - else if ( a == ATOM_sslv23 && mode == RSA_MODE ) *padding = RSA_SSLV23_PADDING; -+#endif - else if ( a == ATOM_none && mode == EVP_MODE ) *padding = 0; - else if ( a == ATOM_block && mode == EVP_MODE ) *padding = 1; - else return PL_domain_error("padding", t); diff --git a/swipl-8.4.0-pclose.patch b/swipl-8.4.0-pclose.patch new file mode 100644 index 0000000..bbc0f46 --- /dev/null +++ b/swipl-8.4.0-pclose.patch @@ -0,0 +1,11 @@ +--- a/src/os/pl-cstack.c 2021-09-30 06:47:14.000000000 -0600 ++++ b/src/os/pl-cstack.c 2021-10-02 20:46:40.273377664 -0600 +@@ -371,7 +371,7 @@ addr2line(const char *fname, uintptr_t o + + *o = '\0'; + +- fclose(fd); ++ pclose(fd); + return o > buf; + } + } From ea9345990f52dc305beab994109cd14c8c0fc2eb Mon Sep 17 00:00:00 2001 From: Jerry James Date: Tue, 16 Nov 2021 08:49:54 -0700 Subject: [PATCH 14/66] Version 8.4.1. Drop upstreamed -pclose patch. --- pl.spec | 10 +++++----- sources | 2 +- swipl-8.4.0-pclose.patch | 11 ----------- 3 files changed, 6 insertions(+), 17 deletions(-) delete mode 100644 swipl-8.4.0-pclose.patch diff --git a/pl.spec b/pl.spec index 5ddc50a..16965ce 100644 --- a/pl.spec +++ b/pl.spec @@ -17,7 +17,7 @@ %endif Name: pl -Version: 8.4.0 +Version: 8.4.1 Release: 1%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD @@ -88,9 +88,6 @@ Patch0: swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch Patch1: swipl-8.2.1-Fix-JNI.patch # Unbundle libstemmer Patch2: swipl-8.2.0-unbundle-libstemmer.patch -# Fix popen/pclose mismatch -# https://github.com/SWI-Prolog/swipl-devel/pull/888 -Patch3: swipl-8.4.0-pclose.patch BuildRequires: cmake BuildRequires: findutils @@ -264,7 +261,6 @@ in Prolog. In both setups it provides a re-entrant bidirectional interface. %patch0 -p1 %patch1 -p1 -b .jni %patch2 -p1 -%patch3 -p1 # Fix the installation path on 64-bit systems if [ "%{_lib}" = "lib64" ]; then @@ -496,6 +492,10 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %changelog +* Tue Nov 16 2021 Jerry James - 8.4.1-1 +- Version 8.4.1 +- Drop upstreamed -pclose patch + * Sat Oct 2 2021 Jerry James - 8.4.0-1 - Version 8.4.0 - Drop upstreamed -qt-deprecated and -openssl3 patches diff --git a/sources b/sources index 537080d..36d0081 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-8.4.0_repackaged.tar.gz) = 1725fc4078aa9de9619643a890ea267d6e5f17d03cec7083d81aacd3b97534bb15fac0c5822ddab87e5e8ffd5af1848e9b0865056a9897cc10f9a6cf8a58a9ba +SHA512 (swipl-8.4.1_repackaged.tar.gz) = 670703a53f27773848d32f960a47574117c3ebe8d4eac068a3ee2e1fe8c32d358e77f98886569936e9df2236abfd2792071073f043b738d91d6ff544d5bff249 diff --git a/swipl-8.4.0-pclose.patch b/swipl-8.4.0-pclose.patch deleted file mode 100644 index bbc0f46..0000000 --- a/swipl-8.4.0-pclose.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/src/os/pl-cstack.c 2021-09-30 06:47:14.000000000 -0600 -+++ b/src/os/pl-cstack.c 2021-10-02 20:46:40.273377664 -0600 -@@ -371,7 +371,7 @@ addr2line(const char *fname, uintptr_t o - - *o = '\0'; - -- fclose(fd); -+ pclose(fd); - return o > buf; - } - } From 3b0a80e8e2432df45eb7dd4da3fa3142d6e9eec8 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 21 Jan 2022 08:58:03 +0000 Subject: [PATCH 15/66] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- pl.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pl.spec b/pl.spec index 16965ce..feb328b 100644 --- a/pl.spec +++ b/pl.spec @@ -18,7 +18,7 @@ Name: pl Version: 8.4.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -492,6 +492,9 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %changelog +* Fri Jan 21 2022 Fedora Release Engineering - 8.4.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Tue Nov 16 2021 Jerry James - 8.4.1-1 - Version 8.4.1 - Drop upstreamed -pclose patch From a90af6be5126dba4839180c81288d8124d647412 Mon Sep 17 00:00:00 2001 From: Jiri Date: Sat, 5 Feb 2022 23:26:25 +0100 Subject: [PATCH 16/66] Rebuilt for java-17-openjdk as system jdk https://fedoraproject.org/wiki/Changes/Java17 --- pl.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pl.spec b/pl.spec index feb328b..c35370f 100644 --- a/pl.spec +++ b/pl.spec @@ -18,7 +18,7 @@ Name: pl Version: 8.4.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -492,6 +492,9 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %changelog +* Sat Feb 05 2022 Jiri Vanek - 8.4.1-3 +- Rebuilt for java-17-openjdk as system jdk + * Fri Jan 21 2022 Fedora Release Engineering - 8.4.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From cbaf70cfcea8f8e11f56a95f64c36ba1bc80ceb4 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Mon, 14 Feb 2022 13:53:55 -0700 Subject: [PATCH 17/66] Version 8.4.2. --- pl.spec | 19 +++++++++++-------- sources | 2 +- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/pl.spec b/pl.spec index c35370f..3aad99a 100644 --- a/pl.spec +++ b/pl.spec @@ -17,8 +17,8 @@ %endif Name: pl -Version: 8.4.1 -Release: 3%{?dist} +Version: 8.4.2 +Release: 1%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -170,7 +170,7 @@ source-level debugger) is included. %package devel Summary: Development files for SWI Prolog -Requires: %{name} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: gcc Requires: pkgconfig%{?_isa} Requires: readline-devel%{?_isa} @@ -182,7 +182,7 @@ Development files for SWI Prolog. %package compat-yap-devel Summary: Development files building YAP application against SWI Prolog License: GPLv2+ with exceptions -Requires: %{name}-devel = %{version}-%{release} +Requires: %{name}-devel%{?_isa} = %{version}-%{release} %description compat-yap-devel This package allows to build Yet Annother Prolog applications against SWI @@ -197,7 +197,7 @@ Summary: Documentation for SWI Prolog License: CC-BY-SA and LGPLv2+ # This must be architecture dependent because some files live in %%{_libdir} # because they are used by built-in documentation system. -Requires: %{name} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} %description doc %{summary}. @@ -205,7 +205,7 @@ Requires: %{name} = %{version}-%{release} %package odbc Summary: SWI-Prolog ODBC interface -Requires: %{name} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} %description odbc The value of RDMS for Prolog is often over-estimated, as Prolog itself can @@ -226,7 +226,7 @@ given the RDMS independency constraint. %if %{separate_xpce} %package xpce Summary: A toolkit for developing graphical applications in Prolog -Requires: %{name} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} %description xpce XPCE is a toolkit for developing graphical applications in Prolog and other @@ -243,7 +243,7 @@ approach of for developing GUI applications, as follows: %if %{with_java} %package jpl Summary: A bidirectional Prolog/Java interface for SWI Prolog -Requires: %{name} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: java-headless Requires: javapackages-tools @@ -492,6 +492,9 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %changelog +* Mon Feb 14 2022 Jerry James - 8.4.2-1 +- Version 8.4.2 + * Sat Feb 05 2022 Jiri Vanek - 8.4.1-3 - Rebuilt for java-17-openjdk as system jdk diff --git a/sources b/sources index 36d0081..086fee6 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-8.4.1_repackaged.tar.gz) = 670703a53f27773848d32f960a47574117c3ebe8d4eac068a3ee2e1fe8c32d358e77f98886569936e9df2236abfd2792071073f043b738d91d6ff544d5bff249 +SHA512 (swipl-8.4.2_repackaged.tar.gz) = 2d2e5f15fb4ec510905d517de1e08dc8a3dca3ceab0edafb13ff0eede1e8bd51833d573e9fd02f600f661c52c38f318c49b51226eab3be6548426412ee1511e6 From 3ebc618e30807631da094ac89cd8f10302325c42 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Fri, 4 Mar 2022 11:28:50 -0700 Subject: [PATCH 18/66] Remove . from %%cmake to fix FTBFS. --- pl.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pl.spec b/pl.spec index 3aad99a..2ba4c49 100644 --- a/pl.spec +++ b/pl.spec @@ -18,7 +18,7 @@ Name: pl Version: 8.4.2 -Release: 1%{?dist} +Release: 2%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -321,7 +321,7 @@ export DISABLE_PKGS="jpl" -DGET0SIG_CONST_T:STRING=const \ -DJQUERYDIR:STRING=%{_datadir}/javascript/jquery/latest \ -DSWIPL_VERSIONED_DIR:BOOL=ON \ - -G Ninja . + -G Ninja # Help latex2html find the bibliographies for d in $(find . -name gen); do @@ -492,6 +492,9 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %changelog +* Fri Mar 4 2022 Jerry James - 8.4.2-2 +- Remove . from %%cmake to fix FTBFS + * Mon Feb 14 2022 Jerry James - 8.4.2-1 - Version 8.4.2 From 931a56987a6906a34c86abab5d873ea72fb563f6 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Tue, 21 Jun 2022 11:49:04 -0600 Subject: [PATCH 19/66] Version 8.4.3. --- pl.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/pl.spec b/pl.spec index 2ba4c49..cd0ea08 100644 --- a/pl.spec +++ b/pl.spec @@ -17,8 +17,8 @@ %endif Name: pl -Version: 8.4.2 -Release: 2%{?dist} +Version: 8.4.3 +Release: 1%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -492,6 +492,9 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %changelog +* Tue Jun 21 2022 Jerry James - 8.4.3-1 +- Version 8.4.3 + * Fri Mar 4 2022 Jerry James - 8.4.2-2 - Remove . from %%cmake to fix FTBFS diff --git a/sources b/sources index 086fee6..097bd8c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-8.4.2_repackaged.tar.gz) = 2d2e5f15fb4ec510905d517de1e08dc8a3dca3ceab0edafb13ff0eede1e8bd51833d573e9fd02f600f661c52c38f318c49b51226eab3be6548426412ee1511e6 +SHA512 (swipl-8.4.3_repackaged.tar.gz) = 66ac0f7d682d0af07af32a8e4d4d123844f5d3c3acda16c45f07fb24e12965edf1291776c3e1a7ae7e5dbb32980b458e71f42c5b23d8d4cbfb65078dcf42b736 From dd7695322f0bdf935c36252a4b66f939b474150e Mon Sep 17 00:00:00 2001 From: Jerry James Date: Tue, 5 Jul 2022 11:29:30 -0600 Subject: [PATCH 20/66] Do not build pl-jpl for i686 (rhbz#2104088). --- pl.spec | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/pl.spec b/pl.spec index cd0ea08..bdc93ee 100644 --- a/pl.spec +++ b/pl.spec @@ -6,7 +6,6 @@ # environment variables). For example: # export LC_ALL=C.UTF-8 -%global with_java 1 %global separate_xpce 1 # Name of the architecture-specific lib directory @@ -18,7 +17,7 @@ Name: pl Version: 8.4.3 -Release: 1%{?dist} +Release: 2%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -129,7 +128,7 @@ BuildRequires: pkgconfig(odbc) BuildRequires: openssl BuildRequires: pkgconfig(openssl) # jpl -%if %{with_java} +%ifarch %{java_arches} BuildRequires: java-devel BuildRequires: junit %endif @@ -153,6 +152,11 @@ Requires: js-jquery # Old version of minizip is bundled Provides: bundled(minizip) = 1.2.11 +# This can be removed when F40 reaches EOL +%ifnarch %{java_arches} +Obsoletes: pl-java < 8.4.3-2 +%endif + %description ISO/Edinburgh-style Prolog compiler including modules, auto-load, libraries, Garbage-collector, stack-expandor, C/C++-interface, @@ -240,7 +244,7 @@ approach of for developing GUI applications, as follows: %endif -%if %{with_java} +%ifarch %{java_arches} %package jpl Summary: A bidirectional Prolog/Java interface for SWI Prolog Requires: %{name}%{?_isa} = %{version}-%{release} @@ -304,7 +308,7 @@ cp -p customize/README.md README-customize.md %build -%if %{with_java} +%ifarch %{java_arches} LC_CTYPE=C.UTF-8 javac JavaConfig.java JAVA_HOME=$(java JavaConfig --home) JAVA_LIBS=$(java JavaConfig --libs-only-L) @@ -348,7 +352,7 @@ chmod 0755 %{buildroot}%{_libdir}/swipl-%{version}/customize/edit # Some XPCE files do not get installed cp -p packages/xpce/man/*.1 %{buildroot}%{_mandir}/man1 -%if %{with_java} +%ifarch %{java_arches} # Move the JPL JNI stuff to where the Java packaging guidelines # say it should be jpl_ver=$(sed -n 's/.*JPL_VERSION \([.[:digit:]]*\).*/\1/p' packages/jpl/CMakeLists.txt) @@ -441,7 +445,7 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %{_libdir}/swipl-%{version}/swipl.home # Exclude the files that are in the sub-packages -%if %{with_java} +%ifarch %{java_arches} # JPL %exclude %{_libdir}/swipl-%{version}/library/jpl.pl %endif @@ -481,7 +485,7 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %{_libdir}/swipl-%{version}/library/odbc.pl %doc packages/odbc/{demo,ChangeLog,README} -%if %{with_java} +%ifarch %{java_arches} %files jpl %doc packages/jpl/docs/* %{_libdir}/swipl-%{version}/lib/jpl*jar @@ -492,6 +496,9 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %changelog +* Tue Jul 5 2022 Jerry James - 8.4.3-2 +- Do not build pl-jpl for i686 (rhbz#2104088) + * Tue Jun 21 2022 Jerry James - 8.4.3-1 - Version 8.4.3 From dac53cd1917fb1e8e1c188d20c328bbfd0c33191 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Mon, 18 Jul 2022 17:31:39 -0600 Subject: [PATCH 21/66] Add README.md. --- README.md | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..c17d9fb --- /dev/null +++ b/README.md @@ -0,0 +1,9 @@ +# pl + +[This package](https://www.swi-prolog.org/) contains an ISO/Edinburgh-style +Prolog compiler including modules, auto-load, libraries, Garbage-collector, +stack-expandor, C/C++-interface, GNU-readline interface, very fast compiler. +It includes Prolog packages clib (Unix process control and sockets), cpp (C++ +interface), sgml (reading XML/SGML), sgml/RDF (reading RDF into triples), and +XPCE (Graphics UI toolkit, integrated editor (Emacs-clone) and source-level +debugger). From 7c500bbfcea34a4fa06ecb8277175fb44d200ab1 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 22 Jul 2022 14:52:47 +0000 Subject: [PATCH 22/66] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- pl.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pl.spec b/pl.spec index bdc93ee..476a1f3 100644 --- a/pl.spec +++ b/pl.spec @@ -17,7 +17,7 @@ Name: pl Version: 8.4.3 -Release: 2%{?dist} +Release: 3%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -496,6 +496,9 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %changelog +* Fri Jul 22 2022 Fedora Release Engineering - 8.4.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Tue Jul 5 2022 Jerry James - 8.4.3-2 - Do not build pl-jpl for i686 (rhbz#2104088) From 85b5239e4e62499dae84d38760f354ea0edca3b7 Mon Sep 17 00:00:00 2001 From: Davide Cavalca Date: Wed, 24 Aug 2022 09:48:32 -0700 Subject: [PATCH 23/66] Make it buildable for EPEL --- pl.spec | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/pl.spec b/pl.spec index 476a1f3..2c8201e 100644 --- a/pl.spec +++ b/pl.spec @@ -17,7 +17,7 @@ Name: pl Version: 8.4.3 -Release: 3%{?dist} +Release: 4%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD #library/qsave.pl BSD @@ -99,7 +99,12 @@ BuildRequires: pkgconfig(libedit) BuildRequires: pkgconfig(libpcre) BuildRequires: pkgconfig(libtcmalloc) BuildRequires: pkgconfig(ncurses) +%if 0%{?el8} +# on el8 readline isn't picked up by pkgconfig +BuildRequires: readline-devel +%else BuildRequires: pkgconfig(readline) +%endif # archive BuildRequires: pkgconfig(libarchive) # http @@ -143,9 +148,12 @@ BuildRequires: pkgconfig(yaml-0.1) # zlib BuildRequires: pkgconfig(zlib) # Doc building +# Gated to Fedora as EL is currently missing tex(a4wide.sty) +%if 0%{?fedora} BuildRequires: tex(latex) BuildRequires: tex(a4wide.sty) BuildRequires: tex(tabulary.sty) +%endif # http Requires: js-jquery @@ -320,7 +328,11 @@ export DISABLE_PKGS="jpl" # Configure %cmake \ +%if 0%{?fedora} -DBUILD_PDF_DOCUMENTATION:BOOL=ON \ +%else + -DBUILD_PDF_DOCUMENTATION:BOOL=OFF \ +%endif -DCPACK_GENERATOR:STRING=RPM \ -DGET0SIG_CONST_T:STRING=const \ -DJQUERYDIR:STRING=%{_datadir}/javascript/jquery/latest \ @@ -477,7 +489,9 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %files doc %{_libdir}/swipl-%{version}/doc/ +%if 0%{?fedora} %doc %{_vpath_builddir}/man/SWI-Prolog-%{version}.pdf +%endif %doc %{docdir}-xpce/* %files odbc @@ -496,6 +510,9 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %changelog +* Wed Aug 24 2022 Davide Cavalca - 8.4.3-4 +- Make it buildable for EPEL + * Fri Jul 22 2022 Fedora Release Engineering - 8.4.3-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From 5a98963841e791140c973d0a9adc6388b5614640 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Thu, 15 Dec 2022 17:53:38 -0700 Subject: [PATCH 24/66] Version 9.0.2. - Convert License tag to SPDX (with some licenses pending review). - Add %%check script. - Make jpl tests pass again. --- pl.spec | 243 +++++++++++++++++++++++++++++++-------------- sources | 2 +- tests/jpl/Makefile | 4 +- 3 files changed, 173 insertions(+), 76 deletions(-) diff --git a/pl.spec b/pl.spec index 2c8201e..4959d2a 100644 --- a/pl.spec +++ b/pl.spec @@ -16,64 +16,137 @@ %endif Name: pl -Version: 8.4.3 -Release: 4%{?dist} +Version: 9.0.2 +Release: 1%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler -#LICENSE: BSD -#library/qsave.pl BSD -#library/dialect/iso/iso_predicates.pl BSD and (GPLv2+ with SWI-Prolog extra -# clause or Artistic 2.0) -#library/ugraphs.pl BSD and (GPLv2+ with SWI-Prolog extra -# clause or Artistic 2.0) -#packages/clib/uri.c BSD -#packages/clib/sha1/hmac.c BSD or GPL -#packages/nlp/snowball.c BSD -#packages/nlp/double_metaphone.c GPL+ or Artistic (as Perl) -#packages/protobufs/protobufs.c BSD -#packages/xpce/src/ari/expression.c BSD -#packages/RDF/online.pl BSD -#library/unicode/blocks.pl BSD and UCD -#packages/utf8proc/utf8proc_data.c UCD -#packages/utf8proc/LICENSE MIT and UCD -#packages/http/examples/calc.pl Public Domain -#packages/xpce/src/gnu/getdate.c Public Domain -#packages/jpl/src/java/org/jpl7/fli/ObjectHolder.java BSD -#packages/xpce/prolog/contrib/rubik BSD -#packages/xpce/src/img/gifwrite.c Part is free for any purpose -#packages/xpce/src/rgx/COPYRIGHT BSD and TCL -#packages/clib/bsd-crypt.c BSD -#packages/clib/clib.doc BSD -#packages/clib/md5.c BSD -#packages/clib/sha1/sha1.c BSD -#packages/pengines/web/js/pengines.js BSD -#packages/tipc/tipcutils/tipc-config.c BSD -#library/prolog_metainference.pl BSD +#LICENSE: BSD-2-Clause +#library/dialect/iso/iso_predicates.pl BSD-2-Clause AND (GPL-2.0-or-later WITH +# SWI-Prolog extra clause or Artistic-2.0) +#library/ugraphs.pl BSD-2-Clause AND (GPL-2.0-or-later WITH +# SWI-Prolog extra clause or Artistic-2.0) +#library/unicode/blocks.pl BSD-2-Clause AND Unicode-DFS-2016 +#man/main.doc CC-BY-SA-3.0 +#man/swipl.cls LPPL-1.2 +#packages/bdb/bdb4pl.doc Sleepycat (due to linking with libdb) +#packages/clib/bsd-crypt.c BSD-3-Clause +#packages/clib/clib.doc (BSD-3-Clause OR GPL-1.0-or-later) AND +# BSD-3-Clause +#packages/clib/md5.c Zlib +#packages/clib/md5.h Zlib +#packages/clib/md5passwd.c Beerware +#packages/clib/sha1/brg_endian.h BSD-like (?) OR GPL-1.0-or-later +#packages/clib/sha1/brg_types.h BSD-like (?) OR GPL-1.0-or-later +#packages/clib/sha1/hmac.c BSD-like (?) OR GPL-1.0-or-later +#packages/clib/sha1/hmac.h BSD-like (?) OR GPL-1.0-or-later +#packages/clib/sha1/pwd2key.c BSD-like (?) OR GPL-1.0-or-later +#packages/clib/sha1/pwd2key.h BSD-like (?) OR GPL-1.0-or-later +#packages/clib/sha1/sha1.c BSD-like (?) OR GPL-1.0-or-later +#packages/clib/sha1/sha1.h BSD-like (?) OR GPL-1.0-or-later +#packages/clib/sha1/sha1b.c BSD-like (?) OR GPL-1.0-or-later +#packages/clib/sha1/sha2.c BSD-like (?) OR GPL-1.0-or-later +#packages/clib/sha1/sha2.h BSD-like (?) OR GPL-1.0-or-later +#packages/clib/sha1/sha2b.c BSD-like (?) OR GPL-1.0-or-later +#packages/clpqr/clpq.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpq/bb_q.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpq/bv_q.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpq/fourmotz_q.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpq/ineq_q.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpq/itf_q.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpq/nf_q.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpq/store_q.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpqr/class.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpqr/clpq.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpqr/dump.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpqr/geler.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpqr/itf.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpqr/ordering.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpqr/project.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpqr/redund.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpr.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpr/bb_r.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpr/bv_r.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpr/fourmotz_r.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpr/ineq_r.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpr/itf_r.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpr/nf_r.pl GPL-2.0-or-later with SWI exception +#packages/clpqr/clpr/store_r.pl GPL-2.0-or-later with SWI exception +#packages/mqi/python/ MIT +#packages/nlp/double_metaphone.c GPL-1.0-or-later OR Artistic-1.0-Perl +#packages/nlp/isub.c LGPL-2.0-or-later +#packages/plunit/swi.pl BSD-2-Clause and (GPL-2.0-or-later WITH +# SWI-Prolog extra clause OR Artistic-2.0) +#packages/protobufs/interop/google/ BSD-3-Clause +#packages/semweb/md5.c Zlib +#packages/semweb/md5.h Zlib +#packages/semweb/murmur.c LicenseRef-Fedora-Public-Domain +#packages/semweb/murmur.h LicenseRef-Fedora-Public-Domain +#packages/tipc/tipcutils/tipc-config.c BSD-3-Clause +#packages/utf8proc/pgsql/utf8proc_pgsql.c MIT +#packages/utf8proc/ruby/utf8proc_native.c MIT +#packages/utf8proc/ruby/utf8proc_rb.c MIT +#packages/utf8proc/utf8proc.c MIT +#packages/utf8proc/utf8proc.doc MIT AND Unicode-DFS-2015 +#packages/utf8proc/utf8proc.h MIT +#packages/utf8proc/utf8proc_data.c Unicode-DFS-2015 +#packages/xpce/src/gnu/getdate-source.y LicenseRef-Fedora-Public-Domain +#packages/xpce/src/gnu/getdate.c LicenseRef-Fedora-Public-Domain AND +# GPL-2.0-or-later WITH Bison-exception-2.2 +#packages/xpce/src/gnu/y.tab LicenseRef-Fedora-Public-Domain +#packages/xpce/src/img/gifwrite.c Part is free for any purpose (?) +#packages/xpce/src/rgx/ Spencer-99 AND TCL +#packages/xpce/src/x11/xdnd.h GPL-2.0-or-later +#scripts/swipl-bt LicenseRef-Fedora-Public-Domain +#src/minizip/ Zlib +#src/os/dtoa.c MIT-like (?) +#src/pl-hash.c LicenseRef-Fedora-Public-Domain +#src/pl-hash.h LicenseRef-Fedora-Public-Domain +#src/swipl-ld.1 LGPL-2.0-or-later +#src/tools/functions.pm LicenseRef-Fedora-Public-Domain + # Not compiled into a binary package: -#External: JavaConfig.java GPLv3+ -#External: repackage.sh GPLv2+ -#packages/http/web/js/jquery-1.11.3.min.js MIT -#packages/utf8proc/data_generator.rb MIT and UCD -#packages/xpce/man/info/texinfo.tex GPLv2+ -#packages/xpce/src/msw/simx.h MIT -#packages/xpce/src/msw/xpm.h MIT -#packages/xpce/TeX/name.bst Bibtex +#External: JavaConfig.java GPL-3.0-or-later +#External: repackage.sh GPL-2.0-or-later +#bench/chat_parser.pl MIT +#packages/RDF/configure FSFUL #packages/clib/configure FSFUL +#packages/clpqr/.fileheader GPL-2.0-or-later with SWI exception #packages/clpqr/configure FSFUL #packages/cpp/configure FSFUL +#packages/http/examples/calc.pl LicenseRef-Fedora-Public-Domain +#packages/http/web/js/jquery* MIT #packages/nlp/configure FSFUL +#packages/pcre/cmake/FindPCRE.cmake MIT #packages/protobufs/configure FSFUL -#packages/RDF/configure FSFUL #packages/sgml/configure FSFUL #packages/ssl/configure FSFUL -#packages/xpce/src/aclocal.m4 LGPLv3+ +#packages/stomp/examples/ping.pl LicenseRef-Fedora-Public-Domain +#packages/stomp/examples/pong.pl LicenseRef-Fedora-Public-Domain +#packages/stomp/examples/simple.pl LicenseRef-Fedora-Public-Domain +#packages/swipl-win/README.md LGPL-2.1-only +#packages/utf8proc/LICENSE MIT AND Unicode-DFS-2015 +#packages/utf8proc/data_generator.rb MIT AND Unicode-DFS-2015 +#packages/utf8proc/ruby/gem/LICENSE MIT AND Unicode-DFS-2015 +#packages/xpce/TeX/name.bst LicenseRef-Bibtex +#packages/xpce/man/info/texinfo.tex GPL-2.0-or-later #packages/xpce/src/configure FSFUL +#packages/xpce/src/msw/simx.h SGI-B-2.0 +#packages/xpce/src/msw/xpm.h SGI-B-2.0 #packages/zlib/configure FSFUL +#src/libbf/cutils.c MIT +#src/libbf/cutils.h MIT +#src/libbf/libbf.c MIT +#src/libbf/libbf.h MIT +#src/libbf/mersenne-twister.c BSD-3-Clause +#src/libbf/mersenne-twister.h BSD-3-Clause +#src/Tests/ BSD-2-Clause AND GPL-2.0-or-later WITH +# SWI-Prolog extra clause +#src/tools/update-deps LicenseRef-Fedora-Public-Domain # Removed from repackaged tar ball, see # : #bench/unify.pl Free for non-commercial #bench/simple_analyzer.pl Free for non-commercial #man/txt/dvi2tty/dvi2tty.c Free for non-commercial -License: (GPLv2+ with exceptions or Artistic 2.0) and (GPL+ or Artistic) and (BSD or GPL+) and TCL and UCD and MIT and BSD and Public Domain +License: BSD-2-Clause AND BSD-3-Clause AND (BSD-3-Clause OR GPL-1.0-or-later) AND Beerware AND CC-BY-SA-3.0 AND (GPL-1.0-or-later OR Artistic-1.0-Perl) AND GPL-2.0-or-later AND (GPL-2.0-or-later OR Artistic-2.0) AND LGPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain AND LPPL-1.2 AND MIT AND Sleepycat AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND Zlib URL: https://www.swi-prolog.org/ # Source0: %%{url}download/stable/src/swipl-%%{version}.tar.gz # To create the repackaged archive, use ./repackage.sh %%{version} @@ -81,10 +154,10 @@ Source0: swipl-%{version}_repackaged.tar.gz Source1: %{url}download/xpce/doc/userguide/userguide.html.tgz Source2: JavaConfig.java Source3: repackage.sh -# Upstream installation paths differ from distribution ones -Patch0: swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch # Use JNI for Java binding -Patch1: swipl-8.2.1-Fix-JNI.patch +Patch0: swipl-8.2.1-Fix-JNI.patch +# Upstream installation paths differ from distribution ones +Patch1: swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch # Unbundle libstemmer Patch2: swipl-8.2.0-unbundle-libstemmer.patch @@ -96,7 +169,7 @@ BuildRequires: ninja-build BuildRequires: gmp-devel BuildRequires: pkgconfig BuildRequires: pkgconfig(libedit) -BuildRequires: pkgconfig(libpcre) +BuildRequires: pkgconfig(libpcre2-posix) BuildRequires: pkgconfig(libtcmalloc) BuildRequires: pkgconfig(ncurses) %if 0%{?el8} @@ -127,6 +200,11 @@ BuildRequires: pkgconfig(xmu) BuildRequires: pkgconfig(xrender) # bdb BuildRequires: libdb-devel +# mqi / swiplserver +BuildRequires: python3-devel +BuildRequires: %{py3_dist pip} +BuildRequires: %{py3_dist setuptools} +BuildRequires: %{py3_dist wheel} # ODBC BuildRequires: pkgconfig(odbc) # SSL @@ -160,6 +238,9 @@ Requires: js-jquery # Old version of minizip is bundled Provides: bundled(minizip) = 1.2.11 +# See https://fedoraproject.org/wiki/Bundled_Libraries_Virtual_Provides +Provides: bundled(md5-deutsch) + # This can be removed when F40 reaches EOL %ifnarch %{java_arches} Obsoletes: pl-java < 8.4.3-2 @@ -181,7 +262,7 @@ source-level debugger) is included. %package devel -Summary: Development files for SWI Prolog +Summary: Development files for SWI Prolog Requires: %{name}%{?_isa} = %{version}-%{release} Requires: gcc Requires: pkgconfig%{?_isa} @@ -192,8 +273,8 @@ Development files for SWI Prolog. %package compat-yap-devel -Summary: Development files building YAP application against SWI Prolog -License: GPLv2+ with exceptions +Summary: Development files building YAP application against SWI Prolog +License: BSD-2-Clause Requires: %{name}-devel%{?_isa} = %{version}-%{release} %description compat-yap-devel @@ -202,11 +283,8 @@ Prolog implementation. %package doc -Summary: Documentation for SWI Prolog -#SWI-Prolog-*.pdf CC-BY-SA -#man/Manual/index.html CC-BY-SA -#userguide.html.tgz is from xpce LGPLv2+ -License: CC-BY-SA and LGPLv2+ +Summary: Documentation for SWI Prolog +License: BSD-2-Clause # This must be architecture dependent because some files live in %%{_libdir} # because they are used by built-in documentation system. Requires: %{name}%{?_isa} = %{version}-%{release} @@ -216,7 +294,8 @@ Requires: %{name}%{?_isa} = %{version}-%{release} %package odbc -Summary: SWI-Prolog ODBC interface +Summary: SWI-Prolog ODBC interface +License: BSD-2-Clause Requires: %{name}%{?_isa} = %{version}-%{release} %description odbc @@ -237,7 +316,8 @@ given the RDMS independency constraint. %if %{separate_xpce} %package xpce -Summary: A toolkit for developing graphical applications in Prolog +License: BSD-2-Clause AND AND GPL-2.0-or-later AND GPL-2.0-or-later WITH Bison-exception-2.2 AND LicenseRef-Fedora-Public-Domain AND Spencer-99 AND TCL +Summary: A toolkit for developing graphical applications in Prolog Requires: %{name}%{?_isa} = %{version}-%{release} %description xpce @@ -254,7 +334,8 @@ approach of for developing GUI applications, as follows: %ifarch %{java_arches} %package jpl -Summary: A bidirectional Prolog/Java interface for SWI Prolog +License: BSD-2-Clause +Summary: A bidirectional Prolog/Java interface for SWI Prolog Requires: %{name}%{?_isa} = %{version}-%{release} Requires: java-headless Requires: javapackages-tools @@ -270,9 +351,8 @@ in Prolog. In both setups it provides a re-entrant bidirectional interface. %prep %global docdir doc-install %autosetup -N -n swipl-%{version} -%patch0 -p1 -%patch1 -p1 -b .jni -%patch2 -p1 +%patch0 -p1 -b .jni +%autopatch -p1 -m1 # Fix the installation path on 64-bit systems if [ "%{_lib}" = "lib64" ]; then @@ -302,11 +382,8 @@ sed --in-place 's,\(%{_datadir}/java/junit\)4\.jar,\1.jar,' \ # Build documentation with the original jpl.pl, since the new version refers # to install paths that don't exist yet; then switch before installing. -mv packages/jpl/jpl.pl packages/jpl/jpl.pl.install -mv packages/jpl/jpl.pl.jni packages/jpl/jpl.pl - -# Remove CVS files -find . -name ".cvsignore" -delete +cp -p packages/jpl/jpl.pl packages/jpl/jpl.pl.install +cp -p packages/jpl/jpl.pl.jni packages/jpl/jpl.pl # Do not use the bundled libstemmer rm -fr packages/nlp/libstemmer_c @@ -350,8 +427,7 @@ done %cmake_build # Switch back before installing; see above -mv packages/jpl/jpl.pl.install packages/jpl/jpl.pl - +cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %install # See for file layout @@ -369,14 +445,19 @@ cp -p packages/xpce/man/*.1 %{buildroot}%{_mandir}/man1 # say it should be jpl_ver=$(sed -n 's/.*JPL_VERSION \([.[:digit:]]*\).*/\1/p' packages/jpl/CMakeLists.txt) -pushd %{buildroot}%{_libdir} -mkdir -p swipl-jpl -mv swipl-%{version}/lib/%{swipl_arch}/libjpl.so swipl-jpl/ -mv swipl-%{version}/lib/jpl.jar swipl-jpl/ +mkdir -p %{buildroot}%{_libdir}/swipl-jpl +mv %{buildroot}%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/libjpl.so \ + %{buildroot}%{_libdir}/swipl-jpl + +mkdir -p %{buildroot}%{_jnidir} +mv %{buildroot}%{_libdir}/swipl-%{version}/lib/jpl.jar %{buildroot}%{_jnidir} +ln -s ../lib/jpl.jar %{buildroot}%{_libdir}/swipl-jpl + # Original locations are referenced by internal libraries and examples +cd %{buildroot}%{_libdir} ln -s ../../../swipl-jpl/libjpl.so swipl-%{version}/lib/%{swipl_arch}/libjpl.so ln -s ../../swipl-jpl/jpl.jar swipl-%{version}/lib/jpl.jar -popd +cd - %endif # Remove stuff we do not want to package @@ -384,6 +465,12 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/{LICENSE,README.md} rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE +%check +# Test with the original jpl.pl, since the new version refers to paths that +# don't exist; then switch back. +cp -p packages/jpl/jpl.pl.jni packages/jpl/jpl.pl +%ctest +cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %files %license LICENSE @@ -432,6 +519,7 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/readutil.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/redis4pl.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/rlimit.so +%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/sched.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/sgml2pl.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/sha4pl.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/snowball.so @@ -477,7 +565,8 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %endif %files devel -%dir %{_libdir}/swipl-%{version}/include +%{_libdir}/swipl-%{version}/cmake/ +%dir %{_libdir}/swipl-%{version}/include/ %{_libdir}/swipl-%{version}/include/sicstus/ %{_libdir}/swipl-%{version}/include/SWI* %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/libswipl.so @@ -501,7 +590,8 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %ifarch %{java_arches} %files jpl -%doc packages/jpl/docs/* +%doc packages/jpl/docs/* packages/jpl/src/examples +%{_jnidir}/jpl.jar %{_libdir}/swipl-%{version}/lib/jpl*jar %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/libjpl.so %{_libdir}/swipl-%{version}/library/jpl.pl @@ -510,6 +600,11 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE %changelog +* Thu Dec 15 2022 Jerry James - 9.0.2-1 +- Version 9.0.2 +- Convert License tag to SPDX (with some licenses pending review) +- Add %%check script + * Wed Aug 24 2022 Davide Cavalca - 8.4.3-4 - Make it buildable for EPEL diff --git a/sources b/sources index 097bd8c..a42fc32 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-8.4.3_repackaged.tar.gz) = 66ac0f7d682d0af07af32a8e4d4d123844f5d3c3acda16c45f07fb24e12965edf1291776c3e1a7ae7e5dbb32980b458e71f42c5b23d8d4cbfb65078dcf42b736 +SHA512 (swipl-9.0.2_repackaged.tar.gz) = 7935b20f40ec7a3a1c16975f43ce4b69ab117359b8eb79c66786dc56948f8d6dc21ae2b0a1a96f3265292aa80d9750a4e089b08ac00dd974af3b3bf9e8cba094 diff --git a/tests/jpl/Makefile b/tests/jpl/Makefile index 0b265a4..07de751 100644 --- a/tests/jpl/Makefile +++ b/tests/jpl/Makefile @@ -1,9 +1,11 @@ .PHONY: run +CLASSPATH=/usr/lib/java/jpl.jar + all: run run: java - cd java/Test && sh run.sh + cd java/test && javac -cp $(CLASSPATH):.. Test.java && java -cp $(CLASSPATH):.. test.Test test.pl java: $(wildcard /usr/share/doc/pl-jpl*/examples/java) cp -r $< $@ From dd92b522ad0f2201ce1ad645e91df94bd3249f97 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Thu, 15 Dec 2022 19:18:15 -0700 Subject: [PATCH 25/66] Disable tests on 32-bit architectures. --- pl.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pl.spec b/pl.spec index 4959d2a..3069762 100644 --- a/pl.spec +++ b/pl.spec @@ -465,12 +465,15 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/{LICENSE,README.md} rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE +# FIXME: src/Tests/transaction/test_transaction_constraints.pl fails on 32-bit +%if 0%{?__isa_bits} == 64 %check # Test with the original jpl.pl, since the new version refers to paths that # don't exist; then switch back. cp -p packages/jpl/jpl.pl.jni packages/jpl/jpl.pl %ctest cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl +%endif %files %license LICENSE @@ -603,7 +606,7 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl * Thu Dec 15 2022 Jerry James - 9.0.2-1 - Version 9.0.2 - Convert License tag to SPDX (with some licenses pending review) -- Add %%check script +- Add %%check script for 64-bit architectures * Wed Aug 24 2022 Davide Cavalca - 8.4.3-4 - Make it buildable for EPEL From f6dea32e3b9d2ac2b7ec1fa487a13f0c8aa730a1 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Sun, 18 Dec 2022 12:21:54 -0700 Subject: [PATCH 26/66] Version 9.0.3. --- pl.spec | 6 ++++-- sources | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/pl.spec b/pl.spec index 3069762..a9fb341 100644 --- a/pl.spec +++ b/pl.spec @@ -16,7 +16,7 @@ %endif Name: pl -Version: 9.0.2 +Version: 9.0.3 Release: 1%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD-2-Clause @@ -145,7 +145,6 @@ Summary: SWI-Prolog - Edinburgh compatible Prolog compiler # : #bench/unify.pl Free for non-commercial #bench/simple_analyzer.pl Free for non-commercial -#man/txt/dvi2tty/dvi2tty.c Free for non-commercial License: BSD-2-Clause AND BSD-3-Clause AND (BSD-3-Clause OR GPL-1.0-or-later) AND Beerware AND CC-BY-SA-3.0 AND (GPL-1.0-or-later OR Artistic-1.0-Perl) AND GPL-2.0-or-later AND (GPL-2.0-or-later OR Artistic-2.0) AND LGPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain AND LPPL-1.2 AND MIT AND Sleepycat AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND Zlib URL: https://www.swi-prolog.org/ # Source0: %%{url}download/stable/src/swipl-%%{version}.tar.gz @@ -603,6 +602,9 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %changelog +* Sun Dec 18 2022 Jerry James - 9.0.3-1 +- Version 9.0.3 + * Thu Dec 15 2022 Jerry James - 9.0.2-1 - Version 9.0.2 - Convert License tag to SPDX (with some licenses pending review) diff --git a/sources b/sources index a42fc32..7c1a187 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-9.0.2_repackaged.tar.gz) = 7935b20f40ec7a3a1c16975f43ce4b69ab117359b8eb79c66786dc56948f8d6dc21ae2b0a1a96f3265292aa80d9750a4e089b08ac00dd974af3b3bf9e8cba094 +SHA512 (swipl-9.0.3_repackaged.tar.gz) = 1debc5d1eec8087ac449d47ae32bc734eeedc5b145ec337f46cbd30510e3b2c93356025a7284dd06863aec05422596deba44ec686460a31f4c6121c46b573680 From 1c6009e6a44e6ed18626a0c6803663fa3d3fac50 Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Tue, 10 Jan 2023 14:10:01 +0100 Subject: [PATCH 27/66] Fix C99 compatibility issues in CMake checks Related to: --- pl-cmake-c99.patch | 27 +++++++++++++++++++++++++++ pl.spec | 7 ++++++- 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 pl-cmake-c99.patch diff --git a/pl-cmake-c99.patch b/pl-cmake-c99.patch new file mode 100644 index 0000000..5e65e7b --- /dev/null +++ b/pl-cmake-c99.patch @@ -0,0 +1,27 @@ +Future compilers may not support implicit ints or implicit +function declarations, so avoid them, by using an explicit int +type and including for the alloca function. + +Submitted upstream: + +diff -ur swipl-9.0.3.orig/cmake/GCCBuiltins.cmake swipl-9.0.3/cmake/GCCBuiltins.cmake +--- swipl-9.0.3.orig/cmake/GCCBuiltins.cmake 2022-12-18 16:16:32.000000000 +0100 ++++ swipl-9.0.3/cmake/GCCBuiltins.cmake 2023-01-10 13:55:13.378369966 +0100 +@@ -22,7 +22,7 @@ + "volatile int i=0; int main() { return 0; }" + HAVE_VOLATILE) + check_c_source_compiles( +- "static inline foo() { return 0; } int main() { return foo(); }" ++ "static inline int foo() { return 0; } int main() { return foo(); }" + HAVE_INLINE) + check_c_source_compiles( + "int main() { void *p = &&lbl; goto *p; lbl: return 0; }" +@@ -45,7 +45,7 @@ + # Builtin functions that lead to conflicts + + check_c_source_compiles( +- "int main() { char *s = alloca(10); return s!=0; }" ++ "#include \nint main() { char *s = alloca(10); return s!=0; }" + HAVE_ALLOCA) + check_c_source_compiles( + "#include \nint main() { double x; return signbit(x); }" diff --git a/pl.spec b/pl.spec index a9fb341..74b302e 100644 --- a/pl.spec +++ b/pl.spec @@ -17,7 +17,7 @@ Name: pl Version: 9.0.3 -Release: 1%{?dist} +Release: 2%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD-2-Clause #library/dialect/iso/iso_predicates.pl BSD-2-Clause AND (GPL-2.0-or-later WITH @@ -160,6 +160,8 @@ Patch1: swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch # Unbundle libstemmer Patch2: swipl-8.2.0-unbundle-libstemmer.patch +Patch3: pl-cmake-c99.patch + BuildRequires: cmake BuildRequires: findutils BuildRequires: gcc-c++ @@ -602,6 +604,9 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %changelog +* Tue Jan 10 2023 Florian Weimer - 9.0.3-2 +- Fix C99 compatibility issues in CMake checks + * Sun Dec 18 2022 Jerry James - 9.0.3-1 - Version 9.0.3 From ed65c9f75f2421983a779a44a0921395d3998274 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 20 Jan 2023 09:45:34 +0000 Subject: [PATCH 28/66] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- pl.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pl.spec b/pl.spec index 74b302e..11cadc8 100644 --- a/pl.spec +++ b/pl.spec @@ -17,7 +17,7 @@ Name: pl Version: 9.0.3 -Release: 2%{?dist} +Release: 3%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD-2-Clause #library/dialect/iso/iso_predicates.pl BSD-2-Clause AND (GPL-2.0-or-later WITH @@ -604,6 +604,9 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %changelog +* Fri Jan 20 2023 Fedora Release Engineering - 9.0.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Tue Jan 10 2023 Florian Weimer - 9.0.3-2 - Fix C99 compatibility issues in CMake checks From cd0a2d4ccd2cdb6080673bb52f1c58ce8296920c Mon Sep 17 00:00:00 2001 From: Jerry James Date: Fri, 27 Jan 2023 13:34:07 -0700 Subject: [PATCH 29/66] Version 9.0.4. - Drop upstreamed C99 patch. - Use a Unicode locale while testing to avoid a failed test. --- pl-cmake-c99.patch | 27 --------------------------- pl.spec | 15 ++++++++++----- sources | 2 +- 3 files changed, 11 insertions(+), 33 deletions(-) delete mode 100644 pl-cmake-c99.patch diff --git a/pl-cmake-c99.patch b/pl-cmake-c99.patch deleted file mode 100644 index 5e65e7b..0000000 --- a/pl-cmake-c99.patch +++ /dev/null @@ -1,27 +0,0 @@ -Future compilers may not support implicit ints or implicit -function declarations, so avoid them, by using an explicit int -type and including for the alloca function. - -Submitted upstream: - -diff -ur swipl-9.0.3.orig/cmake/GCCBuiltins.cmake swipl-9.0.3/cmake/GCCBuiltins.cmake ---- swipl-9.0.3.orig/cmake/GCCBuiltins.cmake 2022-12-18 16:16:32.000000000 +0100 -+++ swipl-9.0.3/cmake/GCCBuiltins.cmake 2023-01-10 13:55:13.378369966 +0100 -@@ -22,7 +22,7 @@ - "volatile int i=0; int main() { return 0; }" - HAVE_VOLATILE) - check_c_source_compiles( -- "static inline foo() { return 0; } int main() { return foo(); }" -+ "static inline int foo() { return 0; } int main() { return foo(); }" - HAVE_INLINE) - check_c_source_compiles( - "int main() { void *p = &&lbl; goto *p; lbl: return 0; }" -@@ -45,7 +45,7 @@ - # Builtin functions that lead to conflicts - - check_c_source_compiles( -- "int main() { char *s = alloca(10); return s!=0; }" -+ "#include \nint main() { char *s = alloca(10); return s!=0; }" - HAVE_ALLOCA) - check_c_source_compiles( - "#include \nint main() { double x; return signbit(x); }" diff --git a/pl.spec b/pl.spec index 11cadc8..3b6668e 100644 --- a/pl.spec +++ b/pl.spec @@ -16,8 +16,8 @@ %endif Name: pl -Version: 9.0.3 -Release: 3%{?dist} +Version: 9.0.4 +Release: 1%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD-2-Clause #library/dialect/iso/iso_predicates.pl BSD-2-Clause AND (GPL-2.0-or-later WITH @@ -160,8 +160,6 @@ Patch1: swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch # Unbundle libstemmer Patch2: swipl-8.2.0-unbundle-libstemmer.patch -Patch3: pl-cmake-c99.patch - BuildRequires: cmake BuildRequires: findutils BuildRequires: gcc-c++ @@ -394,8 +392,9 @@ cp -p customize/README.md README-customize.md %build +export LC_ALL=C.UTF-8 %ifarch %{java_arches} -LC_CTYPE=C.UTF-8 javac JavaConfig.java +javac JavaConfig.java JAVA_HOME=$(java JavaConfig --home) JAVA_LIBS=$(java JavaConfig --libs-only-L) export LD_LIBRARY_PATH=$JAVA_HOME/lib/server @@ -469,6 +468,7 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE # FIXME: src/Tests/transaction/test_transaction_constraints.pl fails on 32-bit %if 0%{?__isa_bits} == 64 %check +export LC_ALL=C.UTF-8 # Test with the original jpl.pl, since the new version refers to paths that # don't exist; then switch back. cp -p packages/jpl/jpl.pl.jni packages/jpl/jpl.pl @@ -604,6 +604,11 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %changelog +* Fri Jan 27 2023 Jerry James - 9.0.4-1 +- Version 9.0.4 +- Drop upstreamed C99 patch +- Use a Unicode locale while testing to avoid a failed test + * Fri Jan 20 2023 Fedora Release Engineering - 9.0.3-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild diff --git a/sources b/sources index 7c1a187..085140c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-9.0.3_repackaged.tar.gz) = 1debc5d1eec8087ac449d47ae32bc734eeedc5b145ec337f46cbd30510e3b2c93356025a7284dd06863aec05422596deba44ec686460a31f4c6121c46b573680 +SHA512 (swipl-9.0.4_repackaged.tar.gz) = fa439faa8c2a43a8beb5d7c2eef99e61f89f0f0579bdee3ed33b5d3cde707235d41d2cb32d1db7342ebc504df649eb2feb2ab424fbb9c1bbb5fc05e86ff2d3d0 From d24ed9379a93577477e2dc6ca19afb77ad9c5343 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Fri, 27 Jan 2023 13:59:13 -0700 Subject: [PATCH 30/66] Disable tests on ppc64le until we can diagnose 1 failed test. --- pl.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pl.spec b/pl.spec index 3b6668e..b162b25 100644 --- a/pl.spec +++ b/pl.spec @@ -467,6 +467,7 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE # FIXME: src/Tests/transaction/test_transaction_constraints.pl fails on 32-bit %if 0%{?__isa_bits} == 64 +%ifnarch ppc64le %check export LC_ALL=C.UTF-8 # Test with the original jpl.pl, since the new version refers to paths that @@ -475,6 +476,7 @@ cp -p packages/jpl/jpl.pl.jni packages/jpl/jpl.pl %ctest cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %endif +%endif %files %license LICENSE @@ -608,6 +610,7 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl - Version 9.0.4 - Drop upstreamed C99 patch - Use a Unicode locale while testing to avoid a failed test +- Disable tests on ppc64le until we can diagnose 1 failed test * Fri Jan 20 2023 Fedora Release Engineering - 9.0.3-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From 6ca245db9d708f7bff59ad58b957befcd3e77a29 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Fri, 27 Jan 2023 14:32:54 -0700 Subject: [PATCH 31/66] Disable docs on aarch until bz 2165146 is fixed. --- pl.spec | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pl.spec b/pl.spec index b162b25..b6e08cc 100644 --- a/pl.spec +++ b/pl.spec @@ -406,7 +406,11 @@ export DISABLE_PKGS="jpl" # Configure %cmake \ %if 0%{?fedora} +%ifnarch aarch64 -DBUILD_PDF_DOCUMENTATION:BOOL=ON \ +%else + -DBUILD_PDF_DOCUMENTATION:BOOL=OFF \ +%endif %else -DBUILD_PDF_DOCUMENTATION:BOOL=OFF \ %endif @@ -585,8 +589,10 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %files doc %{_libdir}/swipl-%{version}/doc/ %if 0%{?fedora} +%ifnarch aarch64 %doc %{_vpath_builddir}/man/SWI-Prolog-%{version}.pdf %endif +%endif %doc %{docdir}-xpce/* %files odbc @@ -611,6 +617,7 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl - Drop upstreamed C99 patch - Use a Unicode locale while testing to avoid a failed test - Disable tests on ppc64le until we can diagnose 1 failed test +- Disable docs on aarch until bz 2165146 is fixed * Fri Jan 20 2023 Fedora Release Engineering - 9.0.3-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From 31e81ab420174274da911332f1cf558a141fc47d Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Tue, 31 Jan 2023 15:29:58 -0500 Subject: [PATCH 32/66] enable docs on aarch64 again --- pl.spec | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/pl.spec b/pl.spec index b6e08cc..311f188 100644 --- a/pl.spec +++ b/pl.spec @@ -17,7 +17,7 @@ Name: pl Version: 9.0.4 -Release: 1%{?dist} +Release: 2%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD-2-Clause #library/dialect/iso/iso_predicates.pl BSD-2-Clause AND (GPL-2.0-or-later WITH @@ -406,11 +406,7 @@ export DISABLE_PKGS="jpl" # Configure %cmake \ %if 0%{?fedora} -%ifnarch aarch64 -DBUILD_PDF_DOCUMENTATION:BOOL=ON \ -%else - -DBUILD_PDF_DOCUMENTATION:BOOL=OFF \ -%endif %else -DBUILD_PDF_DOCUMENTATION:BOOL=OFF \ %endif @@ -589,10 +585,8 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %files doc %{_libdir}/swipl-%{version}/doc/ %if 0%{?fedora} -%ifnarch aarch64 %doc %{_vpath_builddir}/man/SWI-Prolog-%{version}.pdf %endif -%endif %doc %{docdir}-xpce/* %files odbc @@ -612,6 +606,9 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %changelog +* Tue Jan 31 2023 Tom Callaway - 9.0.4-2 +- enable docs on aarch64 + * Fri Jan 27 2023 Jerry James - 9.0.4-1 - Version 9.0.4 - Drop upstreamed C99 patch From 957a161f2296eb07327e916f589bfe5de4fbf079 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Mon, 27 Feb 2023 15:34:50 -0700 Subject: [PATCH 33/66] Dynamically generate python BuildRequires. --- pl.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pl.spec b/pl.spec index 311f188..fefaebd 100644 --- a/pl.spec +++ b/pl.spec @@ -201,9 +201,6 @@ BuildRequires: pkgconfig(xrender) BuildRequires: libdb-devel # mqi / swiplserver BuildRequires: python3-devel -BuildRequires: %{py3_dist pip} -BuildRequires: %{py3_dist setuptools} -BuildRequires: %{py3_dist wheel} # ODBC BuildRequires: pkgconfig(odbc) # SSL @@ -390,6 +387,9 @@ rm -fr packages/nlp/libstemmer_c # Avoid a clash on doc names cp -p customize/README.md README-customize.md +%generate_buildrequires +cd packages/mqi/python +%pyproject_buildrequires %build export LC_ALL=C.UTF-8 @@ -606,6 +606,9 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %changelog +* Mon Feb 27 2023 Jerry James - 9.0.4-2 +- Dynamically generate python BuildRequires + * Tue Jan 31 2023 Tom Callaway - 9.0.4-2 - enable docs on aarch64 From dfbc879ec8071af42aaadf705e7c435b9d3e9aff Mon Sep 17 00:00:00 2001 From: Jerry James Date: Fri, 14 Jul 2023 16:57:11 -0600 Subject: [PATCH 34/66] Update deprecated %patchN usage Other changes: - Update License tag with names recently added to Fedora - Drop 32-bit ARM support --- pl.spec | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/pl.spec b/pl.spec index fefaebd..7930c0f 100644 --- a/pl.spec +++ b/pl.spec @@ -9,11 +9,7 @@ %global separate_xpce 1 # Name of the architecture-specific lib directory -%ifarch %{arm} -%global swipl_arch armv7l-linux -%else %global swipl_arch %{_target_cpu}-linux -%endif Name: pl Version: 9.0.4 @@ -145,7 +141,7 @@ Summary: SWI-Prolog - Edinburgh compatible Prolog compiler # : #bench/unify.pl Free for non-commercial #bench/simple_analyzer.pl Free for non-commercial -License: BSD-2-Clause AND BSD-3-Clause AND (BSD-3-Clause OR GPL-1.0-or-later) AND Beerware AND CC-BY-SA-3.0 AND (GPL-1.0-or-later OR Artistic-1.0-Perl) AND GPL-2.0-or-later AND (GPL-2.0-or-later OR Artistic-2.0) AND LGPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain AND LPPL-1.2 AND MIT AND Sleepycat AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND Zlib +License: BSD-2-Clause AND BSD-3-Clause AND (BSD-3-Clause OR GPL-1.0-or-later) AND Beerware AND CC-BY-SA-3.0 AND (GPL-1.0-or-later OR Artistic-1.0-Perl) AND GPL-2.0-or-later AND GPL-2.0-or-later WITH SWI-Exception AND (GPL-2.0-or-later WITH SWI-Exception OR Artistic-2.0) AND LGPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain AND LPPL-1.2 AND MIT AND Sleepycat AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND Zlib URL: https://www.swi-prolog.org/ # Source0: %%{url}download/stable/src/swipl-%%{version}.tar.gz # To create the repackaged archive, use ./repackage.sh %%{version} @@ -347,7 +343,7 @@ in Prolog. In both setups it provides a re-entrant bidirectional interface. %prep %global docdir doc-install %autosetup -N -n swipl-%{version} -%patch0 -p1 -b .jni +%patch -P0 -p1 -b .jni %autopatch -p1 -m1 # Fix the installation path on 64-bit systems @@ -606,6 +602,11 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %changelog +* Fri Jul 14 2023 Jerry James - 9.0.4-2 +- Update deprecated %%patchN usage +- Update License tag with names recently added to Fedora +- Drop 32-bit ARM support + * Mon Feb 27 2023 Jerry James - 9.0.4-2 - Dynamically generate python BuildRequires From d194cc2eb5ea7221da70ef6d63bfda5aa623df32 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 21 Jul 2023 05:39:48 +0000 Subject: [PATCH 35/66] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- pl.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pl.spec b/pl.spec index 7930c0f..fce9bca 100644 --- a/pl.spec +++ b/pl.spec @@ -13,7 +13,7 @@ Name: pl Version: 9.0.4 -Release: 2%{?dist} +Release: 3%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD-2-Clause #library/dialect/iso/iso_predicates.pl BSD-2-Clause AND (GPL-2.0-or-later WITH @@ -602,6 +602,9 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %changelog +* Fri Jul 21 2023 Fedora Release Engineering - 9.0.4-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Fri Jul 14 2023 Jerry James - 9.0.4-2 - Update deprecated %%patchN usage - Update License tag with names recently added to Fedora From a232dfa1014133591025119bca4abe9342a1fc8b Mon Sep 17 00:00:00 2001 From: Jerry James Date: Tue, 16 Jan 2024 14:16:20 -0700 Subject: [PATCH 36/66] Update License tags --- pl.spec | 43 +++++++++++++++++++++++-------------------- 1 file changed, 23 insertions(+), 20 deletions(-) diff --git a/pl.spec b/pl.spec index fce9bca..eab7ff7 100644 --- a/pl.spec +++ b/pl.spec @@ -22,7 +22,7 @@ Summary: SWI-Prolog - Edinburgh compatible Prolog compiler # SWI-Prolog extra clause or Artistic-2.0) #library/unicode/blocks.pl BSD-2-Clause AND Unicode-DFS-2016 #man/main.doc CC-BY-SA-3.0 -#man/swipl.cls LPPL-1.2 +#man/swipl.cls LPPL-1.3a #packages/bdb/bdb4pl.doc Sleepycat (due to linking with libdb) #packages/clib/bsd-crypt.c BSD-3-Clause #packages/clib/clib.doc (BSD-3-Clause OR GPL-1.0-or-later) AND @@ -30,18 +30,18 @@ Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #packages/clib/md5.c Zlib #packages/clib/md5.h Zlib #packages/clib/md5passwd.c Beerware -#packages/clib/sha1/brg_endian.h BSD-like (?) OR GPL-1.0-or-later -#packages/clib/sha1/brg_types.h BSD-like (?) OR GPL-1.0-or-later -#packages/clib/sha1/hmac.c BSD-like (?) OR GPL-1.0-or-later -#packages/clib/sha1/hmac.h BSD-like (?) OR GPL-1.0-or-later -#packages/clib/sha1/pwd2key.c BSD-like (?) OR GPL-1.0-or-later -#packages/clib/sha1/pwd2key.h BSD-like (?) OR GPL-1.0-or-later -#packages/clib/sha1/sha1.c BSD-like (?) OR GPL-1.0-or-later -#packages/clib/sha1/sha1.h BSD-like (?) OR GPL-1.0-or-later -#packages/clib/sha1/sha1b.c BSD-like (?) OR GPL-1.0-or-later -#packages/clib/sha1/sha2.c BSD-like (?) OR GPL-1.0-or-later -#packages/clib/sha1/sha2.h BSD-like (?) OR GPL-1.0-or-later -#packages/clib/sha1/sha2b.c BSD-like (?) OR GPL-1.0-or-later +#packages/clib/sha1/brg_endian.h Brian-Gladman-3-Clause OR GPL-1.0+ +#packages/clib/sha1/brg_types.h Brian-Gladman-3-Clause OR GPL-1.0+ +#packages/clib/sha1/hmac.c Brian-Gladman-3-Clause OR GPL-1.0+ +#packages/clib/sha1/hmac.h Brian-Gladman-3-Clause OR GPL-1.0+ +#packages/clib/sha1/pwd2key.c Brian-Gladman-3-Clause OR GPL-1.0+ +#packages/clib/sha1/pwd2key.h Brian-Gladman-3-Clause OR GPL-1.0+ +#packages/clib/sha1/sha1.c Brian-Gladman-3-Clause OR GPL-1.0+ +#packages/clib/sha1/sha1.h Brian-Gladman-3-Clause OR GPL-1.0+ +#packages/clib/sha1/sha1b.c Brian-Gladman-3-Clause OR GPL-1.0+ +#packages/clib/sha1/sha2.c Brian-Gladman-3-Clause OR GPL-1.0+ +#packages/clib/sha1/sha2.h Brian-Gladman-3-Clause OR GPL-1.0+ +#packages/clib/sha1/sha2b.c Brian-Gladman-3-Clause OR GPL-1.0+ #packages/clpqr/clpq.pl GPL-2.0-or-later with SWI exception #packages/clpqr/clpq/bb_q.pl GPL-2.0-or-later with SWI exception #packages/clpqr/clpq/bv_q.pl GPL-2.0-or-later with SWI exception @@ -88,12 +88,12 @@ Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #packages/xpce/src/gnu/getdate.c LicenseRef-Fedora-Public-Domain AND # GPL-2.0-or-later WITH Bison-exception-2.2 #packages/xpce/src/gnu/y.tab LicenseRef-Fedora-Public-Domain -#packages/xpce/src/img/gifwrite.c Part is free for any purpose (?) +#packages/xpce/src/img/gifwrite.c Part is FBM #packages/xpce/src/rgx/ Spencer-99 AND TCL #packages/xpce/src/x11/xdnd.h GPL-2.0-or-later #scripts/swipl-bt LicenseRef-Fedora-Public-Domain #src/minizip/ Zlib -#src/os/dtoa.c MIT-like (?) +#src/os/dtoa.c dtoa #src/pl-hash.c LicenseRef-Fedora-Public-Domain #src/pl-hash.h LicenseRef-Fedora-Public-Domain #src/swipl-ld.1 LGPL-2.0-or-later @@ -141,7 +141,7 @@ Summary: SWI-Prolog - Edinburgh compatible Prolog compiler # : #bench/unify.pl Free for non-commercial #bench/simple_analyzer.pl Free for non-commercial -License: BSD-2-Clause AND BSD-3-Clause AND (BSD-3-Clause OR GPL-1.0-or-later) AND Beerware AND CC-BY-SA-3.0 AND (GPL-1.0-or-later OR Artistic-1.0-Perl) AND GPL-2.0-or-later AND GPL-2.0-or-later WITH SWI-Exception AND (GPL-2.0-or-later WITH SWI-Exception OR Artistic-2.0) AND LGPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain AND LPPL-1.2 AND MIT AND Sleepycat AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND Zlib +License: BSD-2-Clause AND BSD-3-Clause AND (Brian-Gladman-3-Clause OR GPL-1.0-or-later) AND Beerware AND CC-BY-SA-3.0 AND (GPL-1.0-or-later OR Artistic-1.0-Perl) AND GPL-2.0-or-later AND GPL-2.0-or-later WITH SWI-Exception AND (GPL-2.0-or-later WITH SWI-Exception OR Artistic-2.0) AND LGPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain AND LPPL-1.3a AND MIT AND Sleepycat AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND Zlib AND dtoa URL: https://www.swi-prolog.org/ # Source0: %%{url}download/stable/src/swipl-%%{version}.tar.gz # To create the repackaged archive, use ./repackage.sh %%{version} @@ -265,13 +265,13 @@ Development files for SWI Prolog. %package compat-yap-devel -Summary: Development files building YAP application against SWI Prolog +Summary: Development files for building YAP applications against SWI Prolog License: BSD-2-Clause Requires: %{name}-devel%{?_isa} = %{version}-%{release} %description compat-yap-devel -This package allows to build Yet Annother Prolog applications against SWI -Prolog implementation. +This package enables building YAP (Yet Another Prolog) applications +against the SWI Prolog implementation. %package doc @@ -308,7 +308,7 @@ given the RDMS independency constraint. %if %{separate_xpce} %package xpce -License: BSD-2-Clause AND AND GPL-2.0-or-later AND GPL-2.0-or-later WITH Bison-exception-2.2 AND LicenseRef-Fedora-Public-Domain AND Spencer-99 AND TCL +License: BSD-2-Clause AND AND GPL-2.0-or-later AND GPL-2.0-or-later WITH Bison-exception-2.2 AND LicenseRef-Fedora-Public-Domain AND Spencer-99 AND TCL AND FBM Summary: A toolkit for developing graphical applications in Prolog Requires: %{name}%{?_isa} = %{version}-%{release} @@ -602,6 +602,9 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %changelog +* Tue Jan 16 2024 Jerry James - 9.0.4-3 +- Update License tags + * Fri Jul 21 2023 Fedora Release Engineering - 9.0.4-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From 934c3dda7e5a9c12ddab0ddf5ba48a604019fa6d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 21 Jan 2024 21:48:47 +0000 Subject: [PATCH 37/66] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- pl.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pl.spec b/pl.spec index eab7ff7..5603905 100644 --- a/pl.spec +++ b/pl.spec @@ -13,7 +13,7 @@ Name: pl Version: 9.0.4 -Release: 3%{?dist} +Release: 4%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD-2-Clause #library/dialect/iso/iso_predicates.pl BSD-2-Clause AND (GPL-2.0-or-later WITH @@ -602,6 +602,9 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %changelog +* Sun Jan 21 2024 Fedora Release Engineering - 9.0.4-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Tue Jan 16 2024 Jerry James - 9.0.4-3 - Update License tags From 4e2047c0c43dfa1eade8e40d0459a9878c22727f Mon Sep 17 00:00:00 2001 From: Jerry James Date: Mon, 22 Jan 2024 15:42:20 -0700 Subject: [PATCH 38/66] Add patch for zlib-ng --- pl.spec | 5 +++++ swipl-9.0.4-zlib.patch | 11 +++++++++++ 2 files changed, 16 insertions(+) create mode 100644 swipl-9.0.4-zlib.patch diff --git a/pl.spec b/pl.spec index 5603905..4deebbc 100644 --- a/pl.spec +++ b/pl.spec @@ -155,6 +155,8 @@ Patch0: swipl-8.2.1-Fix-JNI.patch Patch1: swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch # Unbundle libstemmer Patch2: swipl-8.2.0-unbundle-libstemmer.patch +# Fix the bundled minizip for zlib-ng +Patch3: swipl-9.0.4-zlib.patch BuildRequires: cmake BuildRequires: findutils @@ -602,6 +604,9 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %changelog +* Mon Jan 22 2024 Jerry James - 9.0.4-4 +- Add patch for zlib-ng + * Sun Jan 21 2024 Fedora Release Engineering - 9.0.4-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild diff --git a/swipl-9.0.4-zlib.patch b/swipl-9.0.4-zlib.patch new file mode 100644 index 0000000..ab12486 --- /dev/null +++ b/swipl-9.0.4-zlib.patch @@ -0,0 +1,11 @@ +--- swipl-9.0.4/src/minizip/zip.c.orig 2023-01-27 02:16:21.000000000 -0700 ++++ swipl-9.0.4/src/minizip/zip.c 2024-01-22 15:34:30.720495136 -0700 +@@ -46,7 +46,7 @@ + #ifdef Z_U4 + typedef Z_U4 z_crc_t; + #else +-typedef unsigned long z_crc_t; ++typedef unsigned int z_crc_t; + #endif + #endif + #endif From fad5c8c4b17421726cc6ae6634aeb4d02972afee Mon Sep 17 00:00:00 2001 From: Jerry James Date: Thu, 1 Feb 2024 14:34:28 -0700 Subject: [PATCH 39/66] Version 9.2.0 Add patch to fix an LTO type mismatch --- pl.spec | 40 +++++++++++++++++++--------------- repackage.sh | 4 ++-- sources | 2 +- swipl-9.2.0-lto-mismatch.patch | 11 ++++++++++ 4 files changed, 37 insertions(+), 20 deletions(-) create mode 100644 swipl-9.2.0-lto-mismatch.patch diff --git a/pl.spec b/pl.spec index 4deebbc..aaf9417 100644 --- a/pl.spec +++ b/pl.spec @@ -12,8 +12,8 @@ %global swipl_arch %{_target_cpu}-linux Name: pl -Version: 9.0.4 -Release: 4%{?dist} +Version: 9.2.0 +Release: 1%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD-2-Clause #library/dialect/iso/iso_predicates.pl BSD-2-Clause AND (GPL-2.0-or-later WITH @@ -157,6 +157,8 @@ Patch1: swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch Patch2: swipl-8.2.0-unbundle-libstemmer.patch # Fix the bundled minizip for zlib-ng Patch3: swipl-9.0.4-zlib.patch +# Fix an LTO type mismatch +Patch4: swipl-9.2.0-lto-mismatch.patch BuildRequires: cmake BuildRequires: findutils @@ -350,10 +352,9 @@ in Prolog. In both setups it provides a re-entrant bidirectional interface. # Fix the installation path on 64-bit systems if [ "%{_lib}" = "lib64" ]; then - sed -e 's,\${CMAKE_INSTALL_PREFIX}/lib,&64,' \ - -e 's,lib\(/\${SWIPL_INSTALL_DIR}\),lib64\1,' \ + sed -e 's,lib\(/\${SWIPL_INSTALL_DIR}\),lib64\1,' \ -e '/SWIPL_INSTALL_CMAKE_CONFIG_DIR/s/lib/&64/' \ - -i CMakeLists.txt + -i cmake/LocationsPostPorts.cmake fi # Unpack the XPCE user guide @@ -403,14 +404,12 @@ export DISABLE_PKGS="jpl" # Configure %cmake \ -%if 0%{?fedora} - -DBUILD_PDF_DOCUMENTATION:BOOL=ON \ -%else - -DBUILD_PDF_DOCUMENTATION:BOOL=OFF \ -%endif + -DBUILD_PDF_DOCUMENTATION:BOOL=%{?fedora:ON}%{!?fedora:OFF} \ + -DCMAKE_INSTALL_LIBDIR:PATH=%{_libdir} \ -DCPACK_GENERATOR:STRING=RPM \ -DGET0SIG_CONST_T:STRING=const \ - -DJQUERYDIR:STRING=%{_datadir}/javascript/jquery/latest \ + -DJQUERYDIR:PATH=%{_datadir}/javascript/jquery/latest \ + -DSWIPL_INSTALL_IN_LIB:BOOL=ON \ -DSWIPL_VERSIONED_DIR:BOOL=ON \ -G Ninja @@ -482,6 +481,7 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %{_mandir}/man1/swipl* %{_bindir}/swipl %{_bindir}/swipl-ld +%{_libdir}/libswipl.so.9* %dir %{_libdir}/swipl-%{version}/ %dir %{_libdir}/swipl-%{version}/bin/ %{_libdir}/swipl-%{version}/bin/latex2html @@ -489,6 +489,7 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %dir %{_libdir}/swipl-%{version}/bin/%{swipl_arch}/ %{_libdir}/swipl-%{version}/bin/%{swipl_arch}/swipl %{_libdir}/swipl-%{version}/bin/%{swipl_arch}/swipl-ld +%{_libdir}/swipl-%{version}/app/ %{_libdir}/swipl-%{version}/boot* %{_libdir}/swipl-%{version}/customize/ %{_libdir}/swipl-%{version}/demo/ @@ -505,9 +506,9 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/http_stream.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/inclpr.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/isub.so +%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/janus.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/json.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/libedit4pl.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/libswipl.so.* %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/mallocinfo.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/md54pl.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/memfile.so @@ -530,6 +531,7 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/socket.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/ssl4pl.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/streaminfo.so +%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/sweep-module.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/syslog.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/table.so %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/tex.so @@ -551,10 +553,10 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl # Exclude the files that are in the sub-packages %ifarch %{java_arches} # JPL -%exclude %{_libdir}/swipl-%{version}/library/jpl.pl +%exclude %{_libdir}/swipl-%{version}/library/ext/jpl %endif # ODBC -%exclude %{_libdir}/swipl-%{version}/library/odbc.pl +%exclude %{_libdir}/swipl-%{version}/library/ext/odbc %if %{separate_xpce} %files xpce @@ -569,11 +571,11 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %endif %files devel +%{_libdir}/libswipl.so %{_libdir}/swipl-%{version}/cmake/ %dir %{_libdir}/swipl-%{version}/include/ %{_libdir}/swipl-%{version}/include/sicstus/ %{_libdir}/swipl-%{version}/include/SWI* -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/libswipl.so %{_libdir}/cmake/swipl/ %{_datadir}/pkgconfig/swipl.pc @@ -589,7 +591,7 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %files odbc %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/odbc4pl.so -%{_libdir}/swipl-%{version}/library/odbc.pl +%{_libdir}/swipl-%{version}/library/ext/odbc %doc packages/odbc/{demo,ChangeLog,README} %ifarch %{java_arches} @@ -598,12 +600,16 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %{_jnidir}/jpl.jar %{_libdir}/swipl-%{version}/lib/jpl*jar %{_libdir}/swipl-%{version}/lib/%{swipl_arch}/libjpl.so -%{_libdir}/swipl-%{version}/library/jpl.pl +%{_libdir}/swipl-%{version}/library/ext/jpl/ %{_libdir}/swipl-jpl/ %endif %changelog +* Thu Feb 1 2024 Jerry James - 9.2.0-1 +- Version 9.2.0 +- Add patch to fix an LTO type mismatch + * Mon Jan 22 2024 Jerry James - 9.0.4-4 - Add patch for zlib-ng diff --git a/repackage.sh b/repackage.sh index b3e9cd8..6da09e5 100755 --- a/repackage.sh +++ b/repackage.sh @@ -25,8 +25,8 @@ version=$1 # files to be removed without the main pl-/ prefix declare -a REMOVE # Bad license: -REMOVE[${#REMOVE[*]}]="bench/unify.pl" -REMOVE[${#REMOVE[*]}]="bench/simple_analyzer.pl" +REMOVE[${#REMOVE[*]}]="bench/programs/unify.pl" +REMOVE[${#REMOVE[*]}]="bench/programs/simple_analyzer.pl" # no changes below this line should be needed diff --git a/sources b/sources index 085140c..0c7acaa 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-9.0.4_repackaged.tar.gz) = fa439faa8c2a43a8beb5d7c2eef99e61f89f0f0579bdee3ed33b5d3cde707235d41d2cb32d1db7342ebc504df649eb2feb2ab424fbb9c1bbb5fc05e86ff2d3d0 +SHA512 (swipl-9.2.0_repackaged.tar.gz) = e268ee2f6465aaac65263aaaf9d1ef7cf4b77fd8ebbe7975ca8a4bbc0aacdab7e0fcf9177f1de68a8bee4e951fb7d205a79229bd1e9dfe0b04f885c6d4f46ad0 diff --git a/swipl-9.2.0-lto-mismatch.patch b/swipl-9.2.0-lto-mismatch.patch new file mode 100644 index 0000000..44bfe95 --- /dev/null +++ b/swipl-9.2.0-lto-mismatch.patch @@ -0,0 +1,11 @@ +--- swipl-9.2.0/packages/semweb/murmur.h.orig 2023-11-30 14:04:16.000000000 -0700 ++++ swipl-9.2.0/packages/semweb/murmur.h 2024-02-01 10:15:16.810339516 -0700 +@@ -16,7 +16,7 @@ + #define OBJ_MURMUR_SEED (0x14e86b12) + #define GRAPH_MURMUR_SEED (0x78a64d55) + +-COMMON(unsigned int) rdf_murmer_hash(const void *key, size_t len, unsigned int seed); ++COMMON(unsigned int) rdf_murmer_hash(const void *key, int len, unsigned int seed); + + static inline unsigned int + atom_hash(atom_t a, unsigned int seed) From 545727fc483b1f35bb712c11dabcc7422d5a0995 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Wed, 14 Feb 2024 16:32:58 -0700 Subject: [PATCH 40/66] Version 9.2.1 --- pl.spec | 8 +++++++- sources | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/pl.spec b/pl.spec index aaf9417..5213fc3 100644 --- a/pl.spec +++ b/pl.spec @@ -12,7 +12,7 @@ %global swipl_arch %{_target_cpu}-linux Name: pl -Version: 9.2.0 +Version: 9.2.1 Release: 1%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD-2-Clause @@ -160,6 +160,9 @@ Patch3: swipl-9.0.4-zlib.patch # Fix an LTO type mismatch Patch4: swipl-9.2.0-lto-mismatch.patch +# See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval +ExcludeArch: %{ix86} + BuildRequires: cmake BuildRequires: findutils BuildRequires: gcc-c++ @@ -606,6 +609,9 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %changelog +* Wed Feb 14 2024 Jerry James - 9.2.1-1 +- Version 9.2.1 + * Thu Feb 1 2024 Jerry James - 9.2.0-1 - Version 9.2.0 - Add patch to fix an LTO type mismatch diff --git a/sources b/sources index 0c7acaa..7b7f93e 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-9.2.0_repackaged.tar.gz) = e268ee2f6465aaac65263aaaf9d1ef7cf4b77fd8ebbe7975ca8a4bbc0aacdab7e0fcf9177f1de68a8bee4e951fb7d205a79229bd1e9dfe0b04f885c6d4f46ad0 +SHA512 (swipl-9.2.1_repackaged.tar.gz) = 9bc2ae5590161225b3ec4e2c0349f91940150114aacb7ae49db6d00efbafc796d40b17f8a4d8d4575b69b9296aa1acea1c9dc9b5174b17eacc74cbf5dbe8f9e4 From 29f1da9860b144998d27d804ad619819d956efcc Mon Sep 17 00:00:00 2001 From: Jerry James Date: Sun, 3 Mar 2024 09:45:43 -0700 Subject: [PATCH 41/66] Version 9.2.2 --- pl.spec | 10 ++++++++-- sources | 2 +- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/pl.spec b/pl.spec index 5213fc3..9f7a0b4 100644 --- a/pl.spec +++ b/pl.spec @@ -12,7 +12,7 @@ %global swipl_arch %{_target_cpu}-linux Name: pl -Version: 9.2.1 +Version: 9.2.2 Release: 1%{?dist} Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD-2-Clause @@ -143,7 +143,8 @@ Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #bench/simple_analyzer.pl Free for non-commercial License: BSD-2-Clause AND BSD-3-Clause AND (Brian-Gladman-3-Clause OR GPL-1.0-or-later) AND Beerware AND CC-BY-SA-3.0 AND (GPL-1.0-or-later OR Artistic-1.0-Perl) AND GPL-2.0-or-later AND GPL-2.0-or-later WITH SWI-Exception AND (GPL-2.0-or-later WITH SWI-Exception OR Artistic-2.0) AND LGPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain AND LPPL-1.3a AND MIT AND Sleepycat AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND Zlib AND dtoa URL: https://www.swi-prolog.org/ -# Source0: %%{url}download/stable/src/swipl-%%{version}.tar.gz +VCS: https://github.com/SWI-Prolog/swipl +# Source0: %%{url}/download/stable/src/swipl-%%{version}.tar.gz # To create the repackaged archive, use ./repackage.sh %%{version} Source0: swipl-%{version}_repackaged.tar.gz Source1: %{url}download/xpce/doc/userguide/userguide.html.tgz @@ -216,6 +217,8 @@ BuildRequires: junit %endif # nlp BuildRequires: libstemmer-devel +# sweep +BuildRequires: emacs-devel # uuid BuildRequires: pkgconfig(ossp-uuid) # win @@ -609,6 +612,9 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %changelog +* Sun Mar 3 2024 Jerry James - 9.2.2-1 +- Version 9.2.2 + * Wed Feb 14 2024 Jerry James - 9.2.1-1 - Version 9.2.1 diff --git a/sources b/sources index 7b7f93e..6e7734d 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-9.2.1_repackaged.tar.gz) = 9bc2ae5590161225b3ec4e2c0349f91940150114aacb7ae49db6d00efbafc796d40b17f8a4d8d4575b69b9296aa1acea1c9dc9b5174b17eacc74cbf5dbe8f9e4 +SHA512 (swipl-9.2.2_repackaged.tar.gz) = ae5ed472ba6f04a96dc9dcfbdeb444a116fc35c35f151050b8a4357c10ac9164ecca134edaebb345c8ad0a4148a30c5dc66dd7f96cefa4f09ed1ac116aa077b5 From 6cece3691c231d5f031ab183b4a4ba6117ecd91e Mon Sep 17 00:00:00 2001 From: Jerry James Date: Fri, 5 Apr 2024 09:43:06 -0600 Subject: [PATCH 42/66] Convert to %autorelease and %autochangelog [skip changelog] --- changelog | 602 +++++++++++++++++++++++++++++++++++++++++++++++++++++ pl.spec | 605 +----------------------------------------------------- 2 files changed, 604 insertions(+), 603 deletions(-) create mode 100644 changelog diff --git a/changelog b/changelog new file mode 100644 index 0000000..bf6ce08 --- /dev/null +++ b/changelog @@ -0,0 +1,602 @@ +* Sun Mar 3 2024 Jerry James - 9.2.2-1 +- Version 9.2.2 + +* Wed Feb 14 2024 Jerry James - 9.2.1-1 +- Version 9.2.1 + +* Thu Feb 1 2024 Jerry James - 9.2.0-1 +- Version 9.2.0 +- Add patch to fix an LTO type mismatch + +* Mon Jan 22 2024 Jerry James - 9.0.4-4 +- Add patch for zlib-ng + +* Sun Jan 21 2024 Fedora Release Engineering - 9.0.4-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Tue Jan 16 2024 Jerry James - 9.0.4-3 +- Update License tags + +* Fri Jul 21 2023 Fedora Release Engineering - 9.0.4-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Fri Jul 14 2023 Jerry James - 9.0.4-2 +- Update deprecated %%patchN usage +- Update License tag with names recently added to Fedora +- Drop 32-bit ARM support + +* Mon Feb 27 2023 Jerry James - 9.0.4-2 +- Dynamically generate python BuildRequires + +* Tue Jan 31 2023 Tom Callaway - 9.0.4-2 +- enable docs on aarch64 + +* Fri Jan 27 2023 Jerry James - 9.0.4-1 +- Version 9.0.4 +- Drop upstreamed C99 patch +- Use a Unicode locale while testing to avoid a failed test +- Disable tests on ppc64le until we can diagnose 1 failed test +- Disable docs on aarch until bz 2165146 is fixed + +* Fri Jan 20 2023 Fedora Release Engineering - 9.0.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Tue Jan 10 2023 Florian Weimer - 9.0.3-2 +- Fix C99 compatibility issues in CMake checks + +* Sun Dec 18 2022 Jerry James - 9.0.3-1 +- Version 9.0.3 + +* Thu Dec 15 2022 Jerry James - 9.0.2-1 +- Version 9.0.2 +- Convert License tag to SPDX (with some licenses pending review) +- Add %%check script for 64-bit architectures + +* Wed Aug 24 2022 Davide Cavalca - 8.4.3-4 +- Make it buildable for EPEL + +* Fri Jul 22 2022 Fedora Release Engineering - 8.4.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Tue Jul 5 2022 Jerry James - 8.4.3-2 +- Do not build pl-jpl for i686 (rhbz#2104088) + +* Tue Jun 21 2022 Jerry James - 8.4.3-1 +- Version 8.4.3 + +* Fri Mar 4 2022 Jerry James - 8.4.2-2 +- Remove . from %%cmake to fix FTBFS + +* Mon Feb 14 2022 Jerry James - 8.4.2-1 +- Version 8.4.2 + +* Sat Feb 05 2022 Jiri Vanek - 8.4.1-3 +- Rebuilt for java-17-openjdk as system jdk + +* Fri Jan 21 2022 Fedora Release Engineering - 8.4.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Tue Nov 16 2021 Jerry James - 8.4.1-1 +- Version 8.4.1 +- Drop upstreamed -pclose patch + +* Sat Oct 2 2021 Jerry James - 8.4.0-1 +- Version 8.4.0 +- Drop upstreamed -qt-deprecated and -openssl3 patches +- Add -pclose patch to avoid zombie processes + +* Thu Sep 16 2021 Jerry James - 8.2.4-3 +- Add -openssl3 patch to fix FTBFS with OpenSSL 3.0.0 + +* Tue Sep 14 2021 Sahana Prasad - 8.2.4-3 +- Rebuilt with OpenSSL 3.0.0 + +* Tue Jul 27 2021 Fedora Release Engineering - 8.2.4-2 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Jan 27 2021 Jerry James - 8.2.4-1 +- Version 8.2.4 +- Drop upstreamed swipl-8.2.2-underscore.patch + +* Wed Jan 27 2021 Fedora Release Engineering - 8.2.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Thu Nov 26 2020 Jerry James - 8.2.3-1 +- Version 8.2.3 +- Add swipl-8.2.3-qt-deprecated.patch to silence Qt deprecation warnings + +* Tue Oct 27 2020 Jerry James - 8.2.2-1 +- Version 8.2.2 +- Remove upstreamed -bad-bibtex-entry patch +- Add -underscore patch to work around LaTeX errors + +* Tue Jul 28 2020 Fedora Release Engineering - 8.2.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Thu Jul 23 2020 Jerry James - 8.2.1-3 +- Update for cmake changes in Rawhide + +* Sat Jul 11 2020 Jiri Vanek - 8.2.1-2 +- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 + +* Mon Jun 29 2020 Jerry James - 8.2.1-1 +- 8.2.1 bump +- Add -bad-bibtex-entry patch + +* Tue Jun 16 2020 Jerry James - 8.2.0-2 +- Fix broken symlinks in the jpl subpackage (bz 1847510) + +* Thu May 28 2020 Jerry James - 8.2.0-1 +- 8.2.0 bump + +* Thu Jan 30 2020 Fedora Release Engineering - 8.0.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Fri Jul 26 2019 Fedora Release Engineering - 8.0.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Wed Jun 19 2019 Jerry James - 8.0.3-1 +- 8.0.3 bump (bz 1722172) + +* Fri Mar 22 2019 Jerry James - 8.0.2-1 +- 8.0.2 bump (bz 1669571) +- Drop the -static subpackage +- Drop the -jpl-configure, -pc, and -Use-system-js-query patches +- Add -unbundle-libstemmer patch +- Add a check script +- Build the PDF instead of using the one provided by upstream + +* Sun Feb 17 2019 Igor Gnatenko - 7.6.4-9 +- Rebuild for readline 8.0 + +* Sat Feb 02 2019 Fedora Release Engineering - 7.6.4-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Mon Jan 14 2019 Björn Esser - 7.6.4-7 +- Rebuilt for libcrypt.so.2 (#1666033) + +* Sun Nov 18 2018 Zbigniew Jędrzejewski-Szmek - 7.6.4-6 +- Use C.UTF-8 locale + See https://fedoraproject.org/wiki/Changes/Remove_glibc-langpacks-all_from_buildroot + +* Tue Aug 28 2018 Petr Pisar - 7.6.4-5 +- Use latest jquery from js-jquery package + +* Fri Jul 13 2018 Fedora Release Engineering - 7.6.4-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Feb 09 2018 Fedora Release Engineering - 7.6.4-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Sat Jan 20 2018 Björn Esser - 7.6.4-2 +- Rebuilt for switch to libxcrypt + +* Mon Jan 15 2018 Petr Pisar - 7.6.4-1 +- 7.6.4 bump + +* Wed Nov 08 2017 Petr Pisar - 7.6.1-1 +- 7.6.1 bump +- License changed from ((BSD and (GPLv2+ with exceptions or Artistic 2.0)) and + (GPL+ or Artistic) and (BSD or GPL) and LGPLv2+ and TCL and UCD and MIT and + BSD and Public Domain) to ((BSD and (GPLv2+ with exceptions or Artistic 2.0)) + and (GPL+ or Artistic) and (BSD or GPL) and TCL and UCD and MIT and BSD and + Public Domain) + +* Fri Oct 20 2017 Jitka Plesnikova - 7.6.0-1 +- 7.6.0 bump + +* Thu Aug 03 2017 Fedora Release Engineering - 7.4.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 7.4.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Thu Apr 20 2017 Petr Pisar - 7.4.2-1 +- 7.4.2 bump + +* Mon Mar 06 2017 Petr Pisar - 7.4.1-1 +- 7.4.1 bump +- License changed from ((GPLv2+ with exceptions or Artistic 2.0) and (GPLv2+ + with exceptions) and (GPLv2 with exception) and (GPL+ or Artistic) and + LGPLv2+ and LGPLv2 and UCD and (UCD and MIT) and BSD and Public Domain and + EPL and GPLv2 and GPLv2+ and GPLv3+) to ((BSD and (GPLv2+ with exceptions or + Artistic 2.0)) and (GPL+ or Artistic) and (BSD or GPL) and LGPLv2+ and TCL + and UCD and MIT and BSD and Public Domain) + +* Sat Feb 11 2017 Fedora Release Engineering - 7.2.3-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Thu Jan 12 2017 Igor Gnatenko - 7.2.3-4 +- Rebuild for readline 7.x +- Adapt Java library path to java-1.8.0-openjdk-aarch32 (bug #1412771) + +* Wed Apr 13 2016 Petr Pisar - 7.2.3-3 +- Correct swipl-ld tool to handle 268-byte long compiler flags (bug #1326581) + +* Thu Feb 04 2016 Fedora Release Engineering - 7.2.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Thu Aug 27 2015 Petr Pisar - 7.2.3-1 +- 7.2.3 bump + +* Thu Jun 25 2015 Petr Pisar - 7.2.2-1 +- 7.2.2 bump +- License changed from ((GPLv2+ with exceptions or Artistic 2.0) and (GPLv2+ + with exceptions) and (GPLv2 with exception) and (GPL+ or Artistic) and + LGPLv2+ and LGPLv2 and UCD and (UCD and MIT) and BSD and Public Domain and + EPL and GPLv2 and GPLv3+) to ((GPLv2+ with exceptions or Artistic 2.0) and + (GPLv2+ with exceptions) and (GPLv2 with exception) and (GPL+ or Artistic) + and LGPLv2+ and LGPLv2 and UCD and (UCD and MIT) and BSD and Public Domain + and EPL and GPLv2 and GPLv2+ and GPLv3+) + +* Mon Jun 22 2015 Petr Pisar - 7.2.1-3 +- Depend on javapackages-tools instead of jpackage-utils to conform to new Java + guidelines + +* Thu Jun 18 2015 Fedora Release Engineering - 7.2.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Mon Jun 15 2015 Petr Pisar - 7.2.1-1 +- 7.2.1 bump +- Depend on gcc because glibc-headers package will be removed (bug #1230490) +- Unbundle jquery-1 + +* Fri Jun 05 2015 Petr Pisar - 7.2.0-1 +- 7.2.0 bump +- License changed from ((GPLv2+ with exceptions or Artistic 2.0) and (GPLv2+ + with exceptions) and LGPLv2+ and LGPLv2 and UCD and BSD and Public Domain + and EPL and GPLv2 and GPLv3+) to ((GPLv2+ with exceptions or Artistic 2.0) + and (GPLv2+ with exceptions) and (GPLv2 with exception) and (GPL+ or + Artistic) and LGPLv2+ and LGPLv2 and UCD and (UCD and MIT) and BSD and Public + Domain and EPL and GPLv2 and GPLv3+) + +* Wed Apr 22 2015 Petr Pisar - 6.6.6-6 +- Describe XPCE is in pl-xpce (bug #1204623) + +* Fri Feb 27 2015 Petr Pisar - 6.6.6-5 +- Build binding for libarchive (bug #1195960) + +* Sun Aug 17 2014 Fedora Release Engineering - 6.6.6-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Wed Jun 25 2014 Yaakov Selkowitz - 6.6.6-3 +- Fix detection of libjvm on aarch64 (#1112012) + +* Sat Jun 07 2014 Fedora Release Engineering - 6.6.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Mon Jun 02 2014 Petr Pisar - 6.6.6-1 +- 6.6.6 bump + +* Mon Apr 28 2014 Petr Pisar - 6.6.5-1 +- 6.6.5 bump + +* Mon Mar 24 2014 Petr Pisar - 6.6.4-1 +- 6.6.4 bump + +* Thu Mar 20 2014 Petr Pisar - 6.6.3-1 +- 6.6.3 bump + +* Wed Mar 05 2014 Petr Pisar - 6.6.2-1 +- 6.6.2 bump +- License changed from ((GPLv2+ with exceptions or Artistic 2.0) and (GPLv2+ + with exceptions) and LGPLv2+ and LGPLv2 and UCD and BSD and Public Domain + and GPLv2 and GPLv3+) to ((GPLv2+ with exceptions or Artistic 2.0) and (GPLv2+ + with exceptions) and LGPLv2+ and LGPLv2 and UCD and BSD and Public Domain and + EPL and GPLv2 and GPLv3+) + +* Tue Feb 25 2014 Petr Pisar - 6.6.1-2 +- Require headless JRE only (bug #1068485) + +* Mon Dec 16 2013 Petr Pisar - 6.6.1-1 +- 6.6.1 bump + +* Mon Dec 02 2013 Petr Pisar - 6.6.0-1 +- 6.6.0 bump +- Inhibit format-security compiler warning on custom sscanf() parser + (bug #1037250) + +* Tue Sep 03 2013 Petr Pisar - 6.4.1-1 +- 6.4.1 bump +- License changed from ((GPLv2+ or Artistic 2.0) and LGPLv2+ and LGPLv2 and + GPLv2 and GPLv2+ and UCD and Public Domain and GPLv3+) to ((GPLv2+ with + exceptions or Artistic 2.0) and (GPLv2+ with exceptions) and LGPLv2+ and + LGPLv2 and UCD and Public Domain and GPLv3+ and CC-BY-SA) + +* Sun Aug 04 2013 Fedora Release Engineering - 6.2.6-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Thu Feb 14 2013 Fedora Release Engineering - 6.2.6-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Mon Jan 21 2013 Adam Tkac - 6.2.6-2 +- rebuild due to "jpeg8-ABI" feature drop + +* Mon Jan 14 2013 Petr Pisar - 6.2.6-1 +- 6.2.6 bump + +* Thu Jan 03 2013 Petr Pisar - 6.2.5-1 +- 6.2.5 bump + +* Thu Dec 13 2012 Petr Pisar - 6.2.4-1 +- 6.2.4 bump + +* Mon Dec 03 2012 Petr Pisar - 6.2.3-2 +- Sub-package YAP compatibility headers because they are not compatible with + real YAP + +* Thu Nov 22 2012 Petr Pisar - 6.2.3-1 +- 6.2.3 bump + +* Tue Oct 02 2012 Petr Pisar - 6.2.2-1 +- 6.2.2 bump + +* Mon Sep 10 2012 Petr Pisar - 6.2.1-1 +- 6.2.1 bump + +* Thu Aug 23 2012 Petr Pisar - 6.2.0-1 +- 6.2.0 bump + +* Fri Jul 27 2012 Fedora Release Engineering - 6.0.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Thu Mar 22 2012 Petr Pisar - 6.0.2-3 +- Remove JDK version constrain by hacking JDK paths (bug #740897) + +* Fri Mar 09 2012 Petr Pisar - 6.0.2-2 +- Own jpl.jar file by jpl sub-package only + +* Mon Mar 05 2012 Petr Pisar - 6.0.2-1 +- 6.0.2 bump +- Artistic licensed code dual-lincensed under GPLv2+ or Artistic 2.0 now +- Keep executables as symlinks because interpreter uses the symlink value to + locate standard library +- xpce is run as swipl now +- Move documentation into separate sub-package +- Move XPCE into separate sub-package +- Move ODBC interface into separate sub-package +- Fix JPL interface (bug #590499) + +* Thu Mar 01 2012 Petr Pisar - 6.0.1-1 +- 6.0.1 bump +- Clean spec file + +* Sat Jan 14 2012 Fedora Release Engineering - 5.10.5-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Wed Oct 26 2011 Fedora Release Engineering - 5.10.5-6 +- Rebuilt for glibc bug#747377 + +* Wed Oct 26 2011 Marcela Mašláňová - 5.10.5-5 +- rebuild with new gmp + +* Tue Sep 27 2011 Petr Pisar - 5.10.5-4 +- Unify java path search (bug #740897) + +* Fri Sep 23 2011 Petr Pisar - 5.10.5-3 +- Correct Java paths on ARM (thanks to David A. Marlin) + +* Wed Aug 24 2011 Petr Pisar - 5.10.5-2 +- Fix segfault in PutImagePixels32() while displaying malformed GIF + (bug #732952) + +* Mon Aug 22 2011 Petr Pisar - 5.10.5-1 +- 5.10.5 bump +- Adjust patches and remove merged ones + +* Fri Aug 19 2011 Petr Pisar - 5.10.2-4 +- Fix CVE-2011-2896 (David Koblas' GIF decoder LZW decoder buffer overflow) + (bug #727800) +- Fix other GIF decoder bug + (http://www.swi-prolog.org/bugzilla/show_bug.cgi?id=7#c4) + +* Thu Feb 10 2011 Petr Pisar - 5.10.2-3 +- Pass -export-dynamic to linker properly + +* Wed Feb 09 2011 Fedora Release Engineering - 5.10.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Thu Dec 16 2010 Petr Pisar - 5.10.2-1 +- 5.10.2 bump +- Use DT_RUNPATH instead of pl-5.7.11-rpath.patch +- Adjust jpl-configure.patch to 5.10.2 +- Adjust man-files.patch to 5.10.2 +- Adjust jni.patch to 5.10.2 +- Adjust pc.patch to 5.10.2 +- Use make install method for installation +- Adjust license tag to 5.10.2 version (LGPLv2+ added) +- Add executable permission to some files to be properly packaged +- Re-add XPCE user guide + +* Wed Dec 8 2010 Petr Pisar - 5.7.11-6 +- Inhibit XPCE by macro to silent rpmlint +- Define implicit attributes for jpl files +- Expand tabs to spaces to silent rpmlint +- Remove executable bit from jpl documentation files +- Fix spelling in package descriptions +- Strip debuginfo from libpl.so by setting executable bit +- Change license to reflect reality (yes, Artistic1) +- Make java part optional + +* Fri Aug 21 2009 Tomas Mraz - 5.7.11-5 +- rebuilt with new openssl + +* Fri Aug 14 2009 Gerard Milmeister - 5.7.11-4 +- move include files to expected place + +* Sun Jul 26 2009 Fedora Release Engineering - 5.7.11-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Tue Jul 7 2009 Mary Ellen Foster - 5.7.11-2 +- Really fix issue with compiling "maildrop" packages + +* Mon Jul 6 2009 Mary Ellen Foster - 5.7.11-1 +- Move binaries into /usr/bin directly to fix multilib issues +- Update to latest upstream release +- Use officially-distributed PDF documentation instead of HTML +- Unify Java patches +- Remove strndup package; they fixed it upstream +- Fix compilation of "maildrop" packages +- Give the xpce documentation directory a clearer name +- Removed the FILES section of the man page because it also caused + multilib conflicts (and was inaccurate anyway) + +* Fri Jun 12 2009 Dennis Gilmore 5.7.6-5 +-dont use a static definition for strndup + +* Mon Mar 02 2009 Dennis Gilmore 5.7.6-4 +- fix JAVA_HOME and JAVA_LIB for sparc arches + +* Sun Mar 01 2009 Karsten Hopp 5.7.6-3 +- fix java LIBDIRS for mainframe, similar to alpha + +* Wed Feb 25 2009 Mary Ellen Foster - 5.7.6-2 +- Unify all changes: + - Fix java LIBDIRS on alpha (Oliver Falk) + +* Wed Feb 25 2009 Mary Ellen Foster - 5.7.6-1 +- Update to version 5.7 + - Cleaned up virtual machine and compiler + - Increased performance + +* Sat Jan 17 2009 Tomas Mraz - 5.6.60-3 +- rebuild with new openssl + +* Fri Sep 19 2008 Tom "spot" Callaway - 5.6.60-2 +- forgot to remove ANNOUNCE from doc list + +* Fri Sep 19 2008 Tom "spot" Callaway - 5.6.60-1 +- update to 5.6.60 +- use openjdk (FIXME: there may be a way to make this more generic) + +* Wed Jul 2 2008 Mary Ellen Foster - 5.6.57-2 +- Build using any Java +- Include patch from SWI for Turkish locale (thanks to Keri Harris) + +* Wed Jun 25 2008 Mary Ellen Foster - 5.6.57-1 +- Another update, after vacation + +* Mon May 19 2008 Mary Ellen Foster - 5.6.55-1 +- Update to 5.6.55 (wow, fast updates!) +- Un-split xpce for now +- Conditionally build jpl (on Fedora 9 with openjdk, and on + Fedora 8 non-ppc with icedtea) + +* Wed May 07 2008 Mary Ellen Foster - 5.6.54-1 +- Update to 5.6.54 and prepare to actually push this +- Try splitting xpce into own package + +* Tue Apr 15 2008 Mary Ellen Foster - 5.6.53-1 +- Update to 5.6.53 -- fixes ppc64 problems, yay! + +* Wed Apr 09 2008 Mary Ellen Foster - 5.6.52-2 +- Put JPL stuff where the new Java packaging guidelines say it should be + and make all of the necessary adjustments in other files +- Split out "-devel" and "-static" packages per guidelines + +* Mon Mar 31 2008 Mary Ellen Foster - 5.6.52-1 +- Switch jpl requirement from IcedTea to OpenJDK and enable it everywhere +- Upgrade to 5.6.52 +- Patch jpl configure script to find Java libraries on ppc{64} +- NB: Still broken on ppc64, still trying to figure out why + +* Mon Feb 25 2008 Mary Ellen Foster - 5.6.51-1 +- Upgrade to 5.6.51 + +* Fri Feb 22 2008 Mary Ellen Foster - 5.6.50-1 +- Update to 5.6.50 +- Enable JPL (as a sub-package) -- NB: it only builds with icedtea for now, + so we disable that sub-package on ppc64 and ppc for the moment + +* Mon Feb 18 2008 Fedora Release Engineering - 5.6.47-9 +- Autorebuild for GCC 4.3 + +* Thu Dec 6 2007 Gerard Milmeister - 5.6.47-8 +- compile with -fno-strict-aliasing + +* Wed Dec 5 2007 Gerard Milmeister - 5.6.47-5 +- disable jpl for now + +* Wed Dec 5 2007 Gerard Milmeister - 5.6.47-4 +- enable shared library building + +* Wed Dec 5 2007 Gerard Milmeister - 5.6.47-1 +- new release 5.6.47 + +* Fri Jun 8 2007 Gerard Milmeister - 5.6.35-1 +- new version 5.6.35 +- add requires readline-devel + +* Mon Apr 23 2007 Gerard Milmeister - 5.6.34-1 +- new version 5.6.34 + +* Fri Feb 23 2007 Gerard Milmeister - 5.6.28-1 +- new version 5.6.28 + +* Fri Dec 1 2006 Gerard Milmeister - 5.6.24-1 +- new version 5.6.24 + +* Sun Oct 1 2006 Gerard Milmeister - 5.6.20-1 +- new version 5.6.20 + +* Sat Sep 2 2006 Gerard Milmeister - 5.6.18-1 +- updated to 5.6.18 + +* Mon Aug 28 2006 Gerard Milmeister - 5.6.16-3 +- Rebuild for FE6 + +* Tue Jul 11 2006 Gerard Milmeister - 5.6.16-1 +- new version 5.6.16 + +* Mon May 1 2006 Gerard Milmeister - 5.6.12-3 +- added buildreq for libXinerama-devel + +* Mon May 1 2006 Gerard Milmeister - 5.6.12-2 +- added patch to compile with xft + +* Sun Apr 30 2006 Gerard Milmeister - 5.6.12-1 +- new version 5.6.12 + +* Wed Mar 8 2006 Gerard Milmeister - 5.6.7-1 +- new version 5.6.7 + +* Sat Jan 28 2006 Gerard Milmeister - 5.6.3-1 +- new version 5.6.3 + +* Mon Jan 2 2006 Gerard Milmeister - 5.6.0-1 +- new version 5.6.0 + +* Wed Jun 22 2005 Gerard Milmeister - 5.4.7-1 +- new version 5.4.7 + +* Sun May 22 2005 Jeremy Katz - 5.4.6-9 +- rebuild on all arches + +* Wed Apr 6 2005 Michael Schwendt +- rebuilt + +* Wed Feb 23 2005 David Woodhouse - 5.4.6-7 +- Fix visibility abuse. This may well fix x86_64 too, so re-enable that. + +* Mon Feb 21 2005 Gerard Milmeister - 5.4.6-6 +- Exclude x86_64 for now (bugzilla 149038) + +* Sun Feb 20 2005 Michael Schwendt - 5.4.6-5 +- Added patch1 for a few multilib Makefile/configure fixes. +- Use %%makeinstall and set libdir in install section. + +* Sat Feb 12 2005 Warren Togami - 5.4.6-4 +- remove duplicate RPATH patch +- remove Epoch +- remove redundant unixODBC from BR + +* Sat Feb 12 2005 Gerard Milmeister - 5.4.6-2 +- Added BuildRequires: unixODBC, unixODBC-devel +- Removed rpath from shared libs: pl-rpath.patch + +* Sat Feb 12 2005 Gerard Milmeister - 5.4.6-1 +- New Version 5.4.6 + +* Thu Jan 13 2005 Gerard Milmeister - 5.4.5-0.fdr.1 +- New Version 5.4.5 diff --git a/pl.spec b/pl.spec index 9f7a0b4..e04bb37 100644 --- a/pl.spec +++ b/pl.spec @@ -13,7 +13,7 @@ Name: pl Version: 9.2.2 -Release: 1%{?dist} +Release: %autorelease Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD-2-Clause #library/dialect/iso/iso_predicates.pl BSD-2-Clause AND (GPL-2.0-or-later WITH @@ -612,605 +612,4 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %changelog -* Sun Mar 3 2024 Jerry James - 9.2.2-1 -- Version 9.2.2 - -* Wed Feb 14 2024 Jerry James - 9.2.1-1 -- Version 9.2.1 - -* Thu Feb 1 2024 Jerry James - 9.2.0-1 -- Version 9.2.0 -- Add patch to fix an LTO type mismatch - -* Mon Jan 22 2024 Jerry James - 9.0.4-4 -- Add patch for zlib-ng - -* Sun Jan 21 2024 Fedora Release Engineering - 9.0.4-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Tue Jan 16 2024 Jerry James - 9.0.4-3 -- Update License tags - -* Fri Jul 21 2023 Fedora Release Engineering - 9.0.4-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Fri Jul 14 2023 Jerry James - 9.0.4-2 -- Update deprecated %%patchN usage -- Update License tag with names recently added to Fedora -- Drop 32-bit ARM support - -* Mon Feb 27 2023 Jerry James - 9.0.4-2 -- Dynamically generate python BuildRequires - -* Tue Jan 31 2023 Tom Callaway - 9.0.4-2 -- enable docs on aarch64 - -* Fri Jan 27 2023 Jerry James - 9.0.4-1 -- Version 9.0.4 -- Drop upstreamed C99 patch -- Use a Unicode locale while testing to avoid a failed test -- Disable tests on ppc64le until we can diagnose 1 failed test -- Disable docs on aarch until bz 2165146 is fixed - -* Fri Jan 20 2023 Fedora Release Engineering - 9.0.3-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Tue Jan 10 2023 Florian Weimer - 9.0.3-2 -- Fix C99 compatibility issues in CMake checks - -* Sun Dec 18 2022 Jerry James - 9.0.3-1 -- Version 9.0.3 - -* Thu Dec 15 2022 Jerry James - 9.0.2-1 -- Version 9.0.2 -- Convert License tag to SPDX (with some licenses pending review) -- Add %%check script for 64-bit architectures - -* Wed Aug 24 2022 Davide Cavalca - 8.4.3-4 -- Make it buildable for EPEL - -* Fri Jul 22 2022 Fedora Release Engineering - 8.4.3-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Tue Jul 5 2022 Jerry James - 8.4.3-2 -- Do not build pl-jpl for i686 (rhbz#2104088) - -* Tue Jun 21 2022 Jerry James - 8.4.3-1 -- Version 8.4.3 - -* Fri Mar 4 2022 Jerry James - 8.4.2-2 -- Remove . from %%cmake to fix FTBFS - -* Mon Feb 14 2022 Jerry James - 8.4.2-1 -- Version 8.4.2 - -* Sat Feb 05 2022 Jiri Vanek - 8.4.1-3 -- Rebuilt for java-17-openjdk as system jdk - -* Fri Jan 21 2022 Fedora Release Engineering - 8.4.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Tue Nov 16 2021 Jerry James - 8.4.1-1 -- Version 8.4.1 -- Drop upstreamed -pclose patch - -* Sat Oct 2 2021 Jerry James - 8.4.0-1 -- Version 8.4.0 -- Drop upstreamed -qt-deprecated and -openssl3 patches -- Add -pclose patch to avoid zombie processes - -* Thu Sep 16 2021 Jerry James - 8.2.4-3 -- Add -openssl3 patch to fix FTBFS with OpenSSL 3.0.0 - -* Tue Sep 14 2021 Sahana Prasad - 8.2.4-3 -- Rebuilt with OpenSSL 3.0.0 - -* Tue Jul 27 2021 Fedora Release Engineering - 8.2.4-2 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Wed Jan 27 2021 Jerry James - 8.2.4-1 -- Version 8.2.4 -- Drop upstreamed swipl-8.2.2-underscore.patch - -* Wed Jan 27 2021 Fedora Release Engineering - 8.2.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Thu Nov 26 2020 Jerry James - 8.2.3-1 -- Version 8.2.3 -- Add swipl-8.2.3-qt-deprecated.patch to silence Qt deprecation warnings - -* Tue Oct 27 2020 Jerry James - 8.2.2-1 -- Version 8.2.2 -- Remove upstreamed -bad-bibtex-entry patch -- Add -underscore patch to work around LaTeX errors - -* Tue Jul 28 2020 Fedora Release Engineering - 8.2.1-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Thu Jul 23 2020 Jerry James - 8.2.1-3 -- Update for cmake changes in Rawhide - -* Sat Jul 11 2020 Jiri Vanek - 8.2.1-2 -- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 - -* Mon Jun 29 2020 Jerry James - 8.2.1-1 -- 8.2.1 bump -- Add -bad-bibtex-entry patch - -* Tue Jun 16 2020 Jerry James - 8.2.0-2 -- Fix broken symlinks in the jpl subpackage (bz 1847510) - -* Thu May 28 2020 Jerry James - 8.2.0-1 -- 8.2.0 bump - -* Thu Jan 30 2020 Fedora Release Engineering - 8.0.3-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Fri Jul 26 2019 Fedora Release Engineering - 8.0.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Wed Jun 19 2019 Jerry James - 8.0.3-1 -- 8.0.3 bump (bz 1722172) - -* Fri Mar 22 2019 Jerry James - 8.0.2-1 -- 8.0.2 bump (bz 1669571) -- Drop the -static subpackage -- Drop the -jpl-configure, -pc, and -Use-system-js-query patches -- Add -unbundle-libstemmer patch -- Add a check script -- Build the PDF instead of using the one provided by upstream - -* Sun Feb 17 2019 Igor Gnatenko - 7.6.4-9 -- Rebuild for readline 8.0 - -* Sat Feb 02 2019 Fedora Release Engineering - 7.6.4-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Mon Jan 14 2019 Björn Esser - 7.6.4-7 -- Rebuilt for libcrypt.so.2 (#1666033) - -* Sun Nov 18 2018 Zbigniew Jędrzejewski-Szmek - 7.6.4-6 -- Use C.UTF-8 locale - See https://fedoraproject.org/wiki/Changes/Remove_glibc-langpacks-all_from_buildroot - -* Tue Aug 28 2018 Petr Pisar - 7.6.4-5 -- Use latest jquery from js-jquery package - -* Fri Jul 13 2018 Fedora Release Engineering - 7.6.4-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Fri Feb 09 2018 Fedora Release Engineering - 7.6.4-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Sat Jan 20 2018 Björn Esser - 7.6.4-2 -- Rebuilt for switch to libxcrypt - -* Mon Jan 15 2018 Petr Pisar - 7.6.4-1 -- 7.6.4 bump - -* Wed Nov 08 2017 Petr Pisar - 7.6.1-1 -- 7.6.1 bump -- License changed from ((BSD and (GPLv2+ with exceptions or Artistic 2.0)) and - (GPL+ or Artistic) and (BSD or GPL) and LGPLv2+ and TCL and UCD and MIT and - BSD and Public Domain) to ((BSD and (GPLv2+ with exceptions or Artistic 2.0)) - and (GPL+ or Artistic) and (BSD or GPL) and TCL and UCD and MIT and BSD and - Public Domain) - -* Fri Oct 20 2017 Jitka Plesnikova - 7.6.0-1 -- 7.6.0 bump - -* Thu Aug 03 2017 Fedora Release Engineering - 7.4.2-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Thu Jul 27 2017 Fedora Release Engineering - 7.4.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Thu Apr 20 2017 Petr Pisar - 7.4.2-1 -- 7.4.2 bump - -* Mon Mar 06 2017 Petr Pisar - 7.4.1-1 -- 7.4.1 bump -- License changed from ((GPLv2+ with exceptions or Artistic 2.0) and (GPLv2+ - with exceptions) and (GPLv2 with exception) and (GPL+ or Artistic) and - LGPLv2+ and LGPLv2 and UCD and (UCD and MIT) and BSD and Public Domain and - EPL and GPLv2 and GPLv2+ and GPLv3+) to ((BSD and (GPLv2+ with exceptions or - Artistic 2.0)) and (GPL+ or Artistic) and (BSD or GPL) and LGPLv2+ and TCL - and UCD and MIT and BSD and Public Domain) - -* Sat Feb 11 2017 Fedora Release Engineering - 7.2.3-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Thu Jan 12 2017 Igor Gnatenko - 7.2.3-4 -- Rebuild for readline 7.x -- Adapt Java library path to java-1.8.0-openjdk-aarch32 (bug #1412771) - -* Wed Apr 13 2016 Petr Pisar - 7.2.3-3 -- Correct swipl-ld tool to handle 268-byte long compiler flags (bug #1326581) - -* Thu Feb 04 2016 Fedora Release Engineering - 7.2.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Thu Aug 27 2015 Petr Pisar - 7.2.3-1 -- 7.2.3 bump - -* Thu Jun 25 2015 Petr Pisar - 7.2.2-1 -- 7.2.2 bump -- License changed from ((GPLv2+ with exceptions or Artistic 2.0) and (GPLv2+ - with exceptions) and (GPLv2 with exception) and (GPL+ or Artistic) and - LGPLv2+ and LGPLv2 and UCD and (UCD and MIT) and BSD and Public Domain and - EPL and GPLv2 and GPLv3+) to ((GPLv2+ with exceptions or Artistic 2.0) and - (GPLv2+ with exceptions) and (GPLv2 with exception) and (GPL+ or Artistic) - and LGPLv2+ and LGPLv2 and UCD and (UCD and MIT) and BSD and Public Domain - and EPL and GPLv2 and GPLv2+ and GPLv3+) - -* Mon Jun 22 2015 Petr Pisar - 7.2.1-3 -- Depend on javapackages-tools instead of jpackage-utils to conform to new Java - guidelines - -* Thu Jun 18 2015 Fedora Release Engineering - 7.2.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Mon Jun 15 2015 Petr Pisar - 7.2.1-1 -- 7.2.1 bump -- Depend on gcc because glibc-headers package will be removed (bug #1230490) -- Unbundle jquery-1 - -* Fri Jun 05 2015 Petr Pisar - 7.2.0-1 -- 7.2.0 bump -- License changed from ((GPLv2+ with exceptions or Artistic 2.0) and (GPLv2+ - with exceptions) and LGPLv2+ and LGPLv2 and UCD and BSD and Public Domain - and EPL and GPLv2 and GPLv3+) to ((GPLv2+ with exceptions or Artistic 2.0) - and (GPLv2+ with exceptions) and (GPLv2 with exception) and (GPL+ or - Artistic) and LGPLv2+ and LGPLv2 and UCD and (UCD and MIT) and BSD and Public - Domain and EPL and GPLv2 and GPLv3+) - -* Wed Apr 22 2015 Petr Pisar - 6.6.6-6 -- Describe XPCE is in pl-xpce (bug #1204623) - -* Fri Feb 27 2015 Petr Pisar - 6.6.6-5 -- Build binding for libarchive (bug #1195960) - -* Sun Aug 17 2014 Fedora Release Engineering - 6.6.6-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Wed Jun 25 2014 Yaakov Selkowitz - 6.6.6-3 -- Fix detection of libjvm on aarch64 (#1112012) - -* Sat Jun 07 2014 Fedora Release Engineering - 6.6.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Mon Jun 02 2014 Petr Pisar - 6.6.6-1 -- 6.6.6 bump - -* Mon Apr 28 2014 Petr Pisar - 6.6.5-1 -- 6.6.5 bump - -* Mon Mar 24 2014 Petr Pisar - 6.6.4-1 -- 6.6.4 bump - -* Thu Mar 20 2014 Petr Pisar - 6.6.3-1 -- 6.6.3 bump - -* Wed Mar 05 2014 Petr Pisar - 6.6.2-1 -- 6.6.2 bump -- License changed from ((GPLv2+ with exceptions or Artistic 2.0) and (GPLv2+ - with exceptions) and LGPLv2+ and LGPLv2 and UCD and BSD and Public Domain - and GPLv2 and GPLv3+) to ((GPLv2+ with exceptions or Artistic 2.0) and (GPLv2+ - with exceptions) and LGPLv2+ and LGPLv2 and UCD and BSD and Public Domain and - EPL and GPLv2 and GPLv3+) - -* Tue Feb 25 2014 Petr Pisar - 6.6.1-2 -- Require headless JRE only (bug #1068485) - -* Mon Dec 16 2013 Petr Pisar - 6.6.1-1 -- 6.6.1 bump - -* Mon Dec 02 2013 Petr Pisar - 6.6.0-1 -- 6.6.0 bump -- Inhibit format-security compiler warning on custom sscanf() parser - (bug #1037250) - -* Tue Sep 03 2013 Petr Pisar - 6.4.1-1 -- 6.4.1 bump -- License changed from ((GPLv2+ or Artistic 2.0) and LGPLv2+ and LGPLv2 and - GPLv2 and GPLv2+ and UCD and Public Domain and GPLv3+) to ((GPLv2+ with - exceptions or Artistic 2.0) and (GPLv2+ with exceptions) and LGPLv2+ and - LGPLv2 and UCD and Public Domain and GPLv3+ and CC-BY-SA) - -* Sun Aug 04 2013 Fedora Release Engineering - 6.2.6-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Thu Feb 14 2013 Fedora Release Engineering - 6.2.6-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild - -* Mon Jan 21 2013 Adam Tkac - 6.2.6-2 -- rebuild due to "jpeg8-ABI" feature drop - -* Mon Jan 14 2013 Petr Pisar - 6.2.6-1 -- 6.2.6 bump - -* Thu Jan 03 2013 Petr Pisar - 6.2.5-1 -- 6.2.5 bump - -* Thu Dec 13 2012 Petr Pisar - 6.2.4-1 -- 6.2.4 bump - -* Mon Dec 03 2012 Petr Pisar - 6.2.3-2 -- Sub-package YAP compatibility headers because they are not compatible with - real YAP - -* Thu Nov 22 2012 Petr Pisar - 6.2.3-1 -- 6.2.3 bump - -* Tue Oct 02 2012 Petr Pisar - 6.2.2-1 -- 6.2.2 bump - -* Mon Sep 10 2012 Petr Pisar - 6.2.1-1 -- 6.2.1 bump - -* Thu Aug 23 2012 Petr Pisar - 6.2.0-1 -- 6.2.0 bump - -* Fri Jul 27 2012 Fedora Release Engineering - 6.0.2-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Thu Mar 22 2012 Petr Pisar - 6.0.2-3 -- Remove JDK version constrain by hacking JDK paths (bug #740897) - -* Fri Mar 09 2012 Petr Pisar - 6.0.2-2 -- Own jpl.jar file by jpl sub-package only - -* Mon Mar 05 2012 Petr Pisar - 6.0.2-1 -- 6.0.2 bump -- Artistic licensed code dual-lincensed under GPLv2+ or Artistic 2.0 now -- Keep executables as symlinks because interpreter uses the symlink value to - locate standard library -- xpce is run as swipl now -- Move documentation into separate sub-package -- Move XPCE into separate sub-package -- Move ODBC interface into separate sub-package -- Fix JPL interface (bug #590499) - -* Thu Mar 01 2012 Petr Pisar - 6.0.1-1 -- 6.0.1 bump -- Clean spec file - -* Sat Jan 14 2012 Fedora Release Engineering - 5.10.5-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Wed Oct 26 2011 Fedora Release Engineering - 5.10.5-6 -- Rebuilt for glibc bug#747377 - -* Wed Oct 26 2011 Marcela Mašláňová - 5.10.5-5 -- rebuild with new gmp - -* Tue Sep 27 2011 Petr Pisar - 5.10.5-4 -- Unify java path search (bug #740897) - -* Fri Sep 23 2011 Petr Pisar - 5.10.5-3 -- Correct Java paths on ARM (thanks to David A. Marlin) - -* Wed Aug 24 2011 Petr Pisar - 5.10.5-2 -- Fix segfault in PutImagePixels32() while displaying malformed GIF - (bug #732952) - -* Mon Aug 22 2011 Petr Pisar - 5.10.5-1 -- 5.10.5 bump -- Adjust patches and remove merged ones - -* Fri Aug 19 2011 Petr Pisar - 5.10.2-4 -- Fix CVE-2011-2896 (David Koblas' GIF decoder LZW decoder buffer overflow) - (bug #727800) -- Fix other GIF decoder bug - (http://www.swi-prolog.org/bugzilla/show_bug.cgi?id=7#c4) - -* Thu Feb 10 2011 Petr Pisar - 5.10.2-3 -- Pass -export-dynamic to linker properly - -* Wed Feb 09 2011 Fedora Release Engineering - 5.10.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - -* Thu Dec 16 2010 Petr Pisar - 5.10.2-1 -- 5.10.2 bump -- Use DT_RUNPATH instead of pl-5.7.11-rpath.patch -- Adjust jpl-configure.patch to 5.10.2 -- Adjust man-files.patch to 5.10.2 -- Adjust jni.patch to 5.10.2 -- Adjust pc.patch to 5.10.2 -- Use make install method for installation -- Adjust license tag to 5.10.2 version (LGPLv2+ added) -- Add executable permission to some files to be properly packaged -- Re-add XPCE user guide - -* Wed Dec 8 2010 Petr Pisar - 5.7.11-6 -- Inhibit XPCE by macro to silent rpmlint -- Define implicit attributes for jpl files -- Expand tabs to spaces to silent rpmlint -- Remove executable bit from jpl documentation files -- Fix spelling in package descriptions -- Strip debuginfo from libpl.so by setting executable bit -- Change license to reflect reality (yes, Artistic1) -- Make java part optional - -* Fri Aug 21 2009 Tomas Mraz - 5.7.11-5 -- rebuilt with new openssl - -* Fri Aug 14 2009 Gerard Milmeister - 5.7.11-4 -- move include files to expected place - -* Sun Jul 26 2009 Fedora Release Engineering - 5.7.11-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild - -* Tue Jul 7 2009 Mary Ellen Foster - 5.7.11-2 -- Really fix issue with compiling "maildrop" packages - -* Mon Jul 6 2009 Mary Ellen Foster - 5.7.11-1 -- Move binaries into /usr/bin directly to fix multilib issues -- Update to latest upstream release -- Use officially-distributed PDF documentation instead of HTML -- Unify Java patches -- Remove strndup package; they fixed it upstream -- Fix compilation of "maildrop" packages -- Give the xpce documentation directory a clearer name -- Removed the FILES section of the man page because it also caused - multilib conflicts (and was inaccurate anyway) - -* Fri Jun 12 2009 Dennis Gilmore 5.7.6-5 --dont use a static definition for strndup - -* Mon Mar 02 2009 Dennis Gilmore 5.7.6-4 -- fix JAVA_HOME and JAVA_LIB for sparc arches - -* Sun Mar 01 2009 Karsten Hopp 5.7.6-3 -- fix java LIBDIRS for mainframe, similar to alpha - -* Wed Feb 25 2009 Mary Ellen Foster - 5.7.6-2 -- Unify all changes: - - Fix java LIBDIRS on alpha (Oliver Falk) - -* Wed Feb 25 2009 Mary Ellen Foster - 5.7.6-1 -- Update to version 5.7 - - Cleaned up virtual machine and compiler - - Increased performance - -* Sat Jan 17 2009 Tomas Mraz - 5.6.60-3 -- rebuild with new openssl - -* Fri Sep 19 2008 Tom "spot" Callaway - 5.6.60-2 -- forgot to remove ANNOUNCE from doc list - -* Fri Sep 19 2008 Tom "spot" Callaway - 5.6.60-1 -- update to 5.6.60 -- use openjdk (FIXME: there may be a way to make this more generic) - -* Wed Jul 2 2008 Mary Ellen Foster - 5.6.57-2 -- Build using any Java -- Include patch from SWI for Turkish locale (thanks to Keri Harris) - -* Wed Jun 25 2008 Mary Ellen Foster - 5.6.57-1 -- Another update, after vacation - -* Mon May 19 2008 Mary Ellen Foster - 5.6.55-1 -- Update to 5.6.55 (wow, fast updates!) -- Un-split xpce for now -- Conditionally build jpl (on Fedora 9 with openjdk, and on - Fedora 8 non-ppc with icedtea) - -* Wed May 07 2008 Mary Ellen Foster - 5.6.54-1 -- Update to 5.6.54 and prepare to actually push this -- Try splitting xpce into own package - -* Tue Apr 15 2008 Mary Ellen Foster - 5.6.53-1 -- Update to 5.6.53 -- fixes ppc64 problems, yay! - -* Wed Apr 09 2008 Mary Ellen Foster - 5.6.52-2 -- Put JPL stuff where the new Java packaging guidelines say it should be - and make all of the necessary adjustments in other files -- Split out "-devel" and "-static" packages per guidelines - -* Mon Mar 31 2008 Mary Ellen Foster - 5.6.52-1 -- Switch jpl requirement from IcedTea to OpenJDK and enable it everywhere -- Upgrade to 5.6.52 -- Patch jpl configure script to find Java libraries on ppc{64} -- NB: Still broken on ppc64, still trying to figure out why - -* Mon Feb 25 2008 Mary Ellen Foster - 5.6.51-1 -- Upgrade to 5.6.51 - -* Fri Feb 22 2008 Mary Ellen Foster - 5.6.50-1 -- Update to 5.6.50 -- Enable JPL (as a sub-package) -- NB: it only builds with icedtea for now, - so we disable that sub-package on ppc64 and ppc for the moment - -* Mon Feb 18 2008 Fedora Release Engineering - 5.6.47-9 -- Autorebuild for GCC 4.3 - -* Thu Dec 6 2007 Gerard Milmeister - 5.6.47-8 -- compile with -fno-strict-aliasing - -* Wed Dec 5 2007 Gerard Milmeister - 5.6.47-5 -- disable jpl for now - -* Wed Dec 5 2007 Gerard Milmeister - 5.6.47-4 -- enable shared library building - -* Wed Dec 5 2007 Gerard Milmeister - 5.6.47-1 -- new release 5.6.47 - -* Fri Jun 8 2007 Gerard Milmeister - 5.6.35-1 -- new version 5.6.35 -- add requires readline-devel - -* Mon Apr 23 2007 Gerard Milmeister - 5.6.34-1 -- new version 5.6.34 - -* Fri Feb 23 2007 Gerard Milmeister - 5.6.28-1 -- new version 5.6.28 - -* Fri Dec 1 2006 Gerard Milmeister - 5.6.24-1 -- new version 5.6.24 - -* Sun Oct 1 2006 Gerard Milmeister - 5.6.20-1 -- new version 5.6.20 - -* Sat Sep 2 2006 Gerard Milmeister - 5.6.18-1 -- updated to 5.6.18 - -* Mon Aug 28 2006 Gerard Milmeister - 5.6.16-3 -- Rebuild for FE6 - -* Tue Jul 11 2006 Gerard Milmeister - 5.6.16-1 -- new version 5.6.16 - -* Mon May 1 2006 Gerard Milmeister - 5.6.12-3 -- added buildreq for libXinerama-devel - -* Mon May 1 2006 Gerard Milmeister - 5.6.12-2 -- added patch to compile with xft - -* Sun Apr 30 2006 Gerard Milmeister - 5.6.12-1 -- new version 5.6.12 - -* Wed Mar 8 2006 Gerard Milmeister - 5.6.7-1 -- new version 5.6.7 - -* Sat Jan 28 2006 Gerard Milmeister - 5.6.3-1 -- new version 5.6.3 - -* Mon Jan 2 2006 Gerard Milmeister - 5.6.0-1 -- new version 5.6.0 - -* Wed Jun 22 2005 Gerard Milmeister - 5.4.7-1 -- new version 5.4.7 - -* Sun May 22 2005 Jeremy Katz - 5.4.6-9 -- rebuild on all arches - -* Wed Apr 6 2005 Michael Schwendt -- rebuilt - -* Wed Feb 23 2005 David Woodhouse - 5.4.6-7 -- Fix visibility abuse. This may well fix x86_64 too, so re-enable that. - -* Mon Feb 21 2005 Gerard Milmeister - 5.4.6-6 -- Exclude x86_64 for now (bugzilla 149038) - -* Sun Feb 20 2005 Michael Schwendt - 5.4.6-5 -- Added patch1 for a few multilib Makefile/configure fixes. -- Use %%makeinstall and set libdir in install section. - -* Sat Feb 12 2005 Warren Togami - 5.4.6-4 -- remove duplicate RPATH patch -- remove Epoch -- remove redundant unixODBC from BR - -* Sat Feb 12 2005 Gerard Milmeister - 5.4.6-2 -- Added BuildRequires: unixODBC, unixODBC-devel -- Removed rpath from shared libs: pl-rpath.patch - -* Sat Feb 12 2005 Gerard Milmeister - 5.4.6-1 -- New Version 5.4.6 - -* Thu Jan 13 2005 Gerard Milmeister - 5.4.5-0.fdr.1 -- New Version 5.4.5 +%autochangelog From d4a8468b1c60cd75a098f64daaa0ebd8784c5811 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Fri, 5 Apr 2024 11:00:09 -0600 Subject: [PATCH 43/66] Version 9.2.3 - Add template-id patch for C++20 compatibility --- pl.spec | 9 +++-- sources | 2 +- swipl-9.2.0-lto-mismatch.patch | 11 ------ swipl-9.2.3-lto-mismatch.patch | 11 ++++++ swipl-9.2.3-template-id.patch | 66 ++++++++++++++++++++++++++++++++++ 5 files changed, 85 insertions(+), 14 deletions(-) delete mode 100644 swipl-9.2.0-lto-mismatch.patch create mode 100644 swipl-9.2.3-lto-mismatch.patch create mode 100644 swipl-9.2.3-template-id.patch diff --git a/pl.spec b/pl.spec index e04bb37..32628b6 100644 --- a/pl.spec +++ b/pl.spec @@ -12,7 +12,7 @@ %global swipl_arch %{_target_cpu}-linux Name: pl -Version: 9.2.2 +Version: 9.2.3 Release: %autorelease Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD-2-Clause @@ -66,6 +66,7 @@ Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #packages/clpqr/clpr/itf_r.pl GPL-2.0-or-later with SWI exception #packages/clpqr/clpr/nf_r.pl GPL-2.0-or-later with SWI exception #packages/clpqr/clpr/store_r.pl GPL-2.0-or-later with SWI exception +#packages/http/http_server_health.pl GPL-2.0-or-later with SWI exception #packages/mqi/python/ MIT #packages/nlp/double_metaphone.c GPL-1.0-or-later OR Artistic-1.0-Perl #packages/nlp/isub.c LGPL-2.0-or-later @@ -159,7 +160,11 @@ Patch2: swipl-8.2.0-unbundle-libstemmer.patch # Fix the bundled minizip for zlib-ng Patch3: swipl-9.0.4-zlib.patch # Fix an LTO type mismatch -Patch4: swipl-9.2.0-lto-mismatch.patch +# https://github.com/SWI-Prolog/packages-semweb/pull/113 +Patch4: swipl-9.2.3-lto-mismatch.patch +# Fix warnings about template IDs +# https://github.com/SWI-Prolog/packages-cpp/pull/80 +Patch5: swipl-9.2.3-template-id.patch # See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} diff --git a/sources b/sources index 6e7734d..fb4526e 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-9.2.2_repackaged.tar.gz) = ae5ed472ba6f04a96dc9dcfbdeb444a116fc35c35f151050b8a4357c10ac9164ecca134edaebb345c8ad0a4148a30c5dc66dd7f96cefa4f09ed1ac116aa077b5 +SHA512 (swipl-9.2.3_repackaged.tar.gz) = 6285ae08a47613fc4895ffd807e1fb0e10be210895f0bb9db3860ceaa24b9bf2df02bec99d21a9b647127d7c52851a0fea2d78811ab83cc51e2d8bbae1a07d1d diff --git a/swipl-9.2.0-lto-mismatch.patch b/swipl-9.2.0-lto-mismatch.patch deleted file mode 100644 index 44bfe95..0000000 --- a/swipl-9.2.0-lto-mismatch.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- swipl-9.2.0/packages/semweb/murmur.h.orig 2023-11-30 14:04:16.000000000 -0700 -+++ swipl-9.2.0/packages/semweb/murmur.h 2024-02-01 10:15:16.810339516 -0700 -@@ -16,7 +16,7 @@ - #define OBJ_MURMUR_SEED (0x14e86b12) - #define GRAPH_MURMUR_SEED (0x78a64d55) - --COMMON(unsigned int) rdf_murmer_hash(const void *key, size_t len, unsigned int seed); -+COMMON(unsigned int) rdf_murmer_hash(const void *key, int len, unsigned int seed); - - static inline unsigned int - atom_hash(atom_t a, unsigned int seed) diff --git a/swipl-9.2.3-lto-mismatch.patch b/swipl-9.2.3-lto-mismatch.patch new file mode 100644 index 0000000..ac00bdf --- /dev/null +++ b/swipl-9.2.3-lto-mismatch.patch @@ -0,0 +1,11 @@ +--- swipl-9.2.3/packages/semweb/murmur.c.orig 2024-03-28 13:45:03.000000000 -0600 ++++ swipl-9.2.3/packages/semweb/murmur.c 2024-04-05 10:09:30.257172942 -0600 +@@ -67,7 +67,7 @@ rdf_murmer_hash(const void * key, size_t + #define MIX(h,k,m) { k *= m; k ^= k >> r; k *= m; h *= m; h ^= k; } + + unsigned int +-rdf_murmer_hash(const void *key, int len, unsigned int seed) ++rdf_murmer_hash(const void *key, size_t len, unsigned int seed) + { const unsigned int m = 0x5bd1e995; + const int r = 24; + const unsigned char * data = (const unsigned char *)key; diff --git a/swipl-9.2.3-template-id.patch b/swipl-9.2.3-template-id.patch new file mode 100644 index 0000000..517c6be --- /dev/null +++ b/swipl-9.2.3-template-id.patch @@ -0,0 +1,66 @@ +Fixes these warnings: + +In file included from /builddir/build/BUILD/swipl-9.2.3/packages/cpp/test_cpp.cpp:63: +/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:182:26: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] + 182 | explicit WrappedC(C_t v) + | ^~~ +/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:182:26: note: remove the ‘< >’ +/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:185:16: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] + 185 | WrappedC( const WrappedC&) = default; + | ^ +/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:185:16: note: remove the ‘< >’ +/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:190:3: warning: template-id not allowed for destructor in C++20 [-Wtemplate-id-cdtor] + 190 | ~WrappedC() { } + | ^ +/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:190:3: note: remove the ‘< >’ +/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:1670:45: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] + 1670 | explicit PlForeignContextPtr(PlControl handle) + | ^~~~~~~~~ +/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:1670:45: note: remove the ‘< >’ +/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:1674:35: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] + 1674 | PlForeignContextPtr(const PlForeignContextPtr&) = delete; + | ^ +/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:1674:35: note: remove the ‘< >’ +/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:1675:36: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] + 1675 | PlForeignContextPtr(PlForeignContextPtr&&) = delete; + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:1675:36: note: remove the ‘< >’ + +--- swipl-9.2.3/packages/cpp/SWI-cpp2.h.orig 2024-03-26 01:39:06.000000000 -0600 ++++ swipl-9.2.3/packages/cpp/SWI-cpp2.h 2024-04-05 10:26:48.084014514 -0600 +@@ -179,15 +179,15 @@ public: + + friend C_t *PlUnwrapAsPtr(WrappedC* obj) { return obj ? obj->unwrap_as_ptr() : nullptr; } + +- explicit WrappedC(C_t v) ++ explicit WrappedC(C_t v) + : C_(v) { } + +- WrappedC( const WrappedC&) = default; +- WrappedC& operator =(const WrappedC&) = default; ++ WrappedC( const WrappedC&) = default; ++ WrappedC& operator =(const WrappedC&) = default; + // This simple wrapper class doesn't need a move constructor or + // move operator =. + +- ~WrappedC() { } ++ ~WrappedC() { } + + operator bool() const = delete; // Use not_null(), is_null() instead + bool operator ==(WrappedC o) const { return C_ == o.C_; } +@@ -1667,12 +1667,12 @@ class PlForeignContextPtr + { + public: + [[deprecated("Use PlControl::context_unique_ptr")]] +- explicit PlForeignContextPtr(PlControl handle) ++ explicit PlForeignContextPtr(PlControl handle) + { ptr_.reset(static_cast(handle.foreign_context_address())); + } + +- PlForeignContextPtr(const PlForeignContextPtr&) = delete; +- PlForeignContextPtr(PlForeignContextPtr&&) = delete; ++ PlForeignContextPtr(const PlForeignContextPtr&) = delete; ++ PlForeignContextPtr(PlForeignContextPtr&&) = delete; + PlForeignContextPtr& operator =(const PlForeignContextPtr&) = delete; + PlForeignContextPtr& operator =(PlForeignContextPtr&&) = delete; + From 77024420cb2cd188662f966b5bf25b72e126ace1 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Fri, 5 Apr 2024 12:17:05 -0600 Subject: [PATCH 44/66] Fix use-after-free scenario in swipy --- pl.spec | 3 +++ swipl-9.2.3-janus-ref.patch | 25 +++++++++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 swipl-9.2.3-janus-ref.patch diff --git a/pl.spec b/pl.spec index 32628b6..7a9e591 100644 --- a/pl.spec +++ b/pl.spec @@ -165,6 +165,9 @@ Patch4: swipl-9.2.3-lto-mismatch.patch # Fix warnings about template IDs # https://github.com/SWI-Prolog/packages-cpp/pull/80 Patch5: swipl-9.2.3-template-id.patch +# Avoid a use-after-free scenario in swipy +# https://github.com/SWI-Prolog/packages-swipy/pull/8 +Patch6: swipl-9.2.3-janus-ref.patch # See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} diff --git a/swipl-9.2.3-janus-ref.patch b/swipl-9.2.3-janus-ref.patch new file mode 100644 index 0000000..0cfc557 --- /dev/null +++ b/swipl-9.2.3-janus-ref.patch @@ -0,0 +1,25 @@ +--- swipl-9.2.3/packages/swipy/janus/janus.c.orig 2024-04-04 08:11:51.000000000 -0600 ++++ swipl-9.2.3/packages/swipy/janus/janus.c 2024-04-05 12:02:46.639224747 -0600 +@@ -426,7 +426,6 @@ py_register_module(term_t name, term_t o + goto out; + + m = check_error(PyImport_Import(idobj)); +- Py_DECREF(idobj); + if ( m ) + { PyObject *old = NULL; + if ( mod ) +@@ -434,12 +433,11 @@ py_register_module(term_t name, term_t o + rc = py_add_hashmap(py_module_table, as, m, &old); + if ( old ) + Py_DECREF(old); +- return rc; + } ++out: ++ Py_DECREF(idobj); + } + +-out: +- Py_CLEAR(idobj); + return rc; + } + From c6d9d577df11f3a88d3b0df2cdc35d39e4a2f755 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20Such=C3=BD?= Date: Sun, 7 Apr 2024 06:42:19 +0000 Subject: [PATCH 45/66] Correct typo in SPDX license --- pl.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pl.spec b/pl.spec index 7a9e591..fd63520 100644 --- a/pl.spec +++ b/pl.spec @@ -326,7 +326,7 @@ given the RDMS independency constraint. %if %{separate_xpce} %package xpce -License: BSD-2-Clause AND AND GPL-2.0-or-later AND GPL-2.0-or-later WITH Bison-exception-2.2 AND LicenseRef-Fedora-Public-Domain AND Spencer-99 AND TCL AND FBM +License: BSD-2-Clause AND GPL-2.0-or-later AND GPL-2.0-or-later WITH Bison-exception-2.2 AND LicenseRef-Fedora-Public-Domain AND Spencer-99 AND TCL AND FBM Summary: A toolkit for developing graphical applications in Prolog Requires: %{name}%{?_isa} = %{version}-%{release} From 916b13d5a65834fabd255e94a2483a31d28caa94 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Fri, 26 Apr 2024 13:06:51 -0600 Subject: [PATCH 46/66] Version 9.2.4 - Drop upstreamed template-id and janus-ref patches --- pl.spec | 8 +---- sources | 2 +- swipl-9.2.3-janus-ref.patch | 25 ------------- swipl-9.2.3-template-id.patch | 66 ----------------------------------- 4 files changed, 2 insertions(+), 99 deletions(-) delete mode 100644 swipl-9.2.3-janus-ref.patch delete mode 100644 swipl-9.2.3-template-id.patch diff --git a/pl.spec b/pl.spec index fd63520..9c73a6c 100644 --- a/pl.spec +++ b/pl.spec @@ -12,7 +12,7 @@ %global swipl_arch %{_target_cpu}-linux Name: pl -Version: 9.2.3 +Version: 9.2.4 Release: %autorelease Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD-2-Clause @@ -162,12 +162,6 @@ Patch3: swipl-9.0.4-zlib.patch # Fix an LTO type mismatch # https://github.com/SWI-Prolog/packages-semweb/pull/113 Patch4: swipl-9.2.3-lto-mismatch.patch -# Fix warnings about template IDs -# https://github.com/SWI-Prolog/packages-cpp/pull/80 -Patch5: swipl-9.2.3-template-id.patch -# Avoid a use-after-free scenario in swipy -# https://github.com/SWI-Prolog/packages-swipy/pull/8 -Patch6: swipl-9.2.3-janus-ref.patch # See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} diff --git a/sources b/sources index fb4526e..ef10868 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-9.2.3_repackaged.tar.gz) = 6285ae08a47613fc4895ffd807e1fb0e10be210895f0bb9db3860ceaa24b9bf2df02bec99d21a9b647127d7c52851a0fea2d78811ab83cc51e2d8bbae1a07d1d +SHA512 (swipl-9.2.4_repackaged.tar.gz) = b0de421011c117e6ccb85212398f7cb84c3f1d8e97986c5d05ac6d31d0375c32c410d5cc73749a0f727a27f36284345cb96472a69dac9d1eaffc85b38678c268 diff --git a/swipl-9.2.3-janus-ref.patch b/swipl-9.2.3-janus-ref.patch deleted file mode 100644 index 0cfc557..0000000 --- a/swipl-9.2.3-janus-ref.patch +++ /dev/null @@ -1,25 +0,0 @@ ---- swipl-9.2.3/packages/swipy/janus/janus.c.orig 2024-04-04 08:11:51.000000000 -0600 -+++ swipl-9.2.3/packages/swipy/janus/janus.c 2024-04-05 12:02:46.639224747 -0600 -@@ -426,7 +426,6 @@ py_register_module(term_t name, term_t o - goto out; - - m = check_error(PyImport_Import(idobj)); -- Py_DECREF(idobj); - if ( m ) - { PyObject *old = NULL; - if ( mod ) -@@ -434,12 +433,11 @@ py_register_module(term_t name, term_t o - rc = py_add_hashmap(py_module_table, as, m, &old); - if ( old ) - Py_DECREF(old); -- return rc; - } -+out: -+ Py_DECREF(idobj); - } - --out: -- Py_CLEAR(idobj); - return rc; - } - diff --git a/swipl-9.2.3-template-id.patch b/swipl-9.2.3-template-id.patch deleted file mode 100644 index 517c6be..0000000 --- a/swipl-9.2.3-template-id.patch +++ /dev/null @@ -1,66 +0,0 @@ -Fixes these warnings: - -In file included from /builddir/build/BUILD/swipl-9.2.3/packages/cpp/test_cpp.cpp:63: -/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:182:26: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] - 182 | explicit WrappedC(C_t v) - | ^~~ -/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:182:26: note: remove the ‘< >’ -/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:185:16: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] - 185 | WrappedC( const WrappedC&) = default; - | ^ -/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:185:16: note: remove the ‘< >’ -/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:190:3: warning: template-id not allowed for destructor in C++20 [-Wtemplate-id-cdtor] - 190 | ~WrappedC() { } - | ^ -/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:190:3: note: remove the ‘< >’ -/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:1670:45: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] - 1670 | explicit PlForeignContextPtr(PlControl handle) - | ^~~~~~~~~ -/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:1670:45: note: remove the ‘< >’ -/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:1674:35: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] - 1674 | PlForeignContextPtr(const PlForeignContextPtr&) = delete; - | ^ -/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:1674:35: note: remove the ‘< >’ -/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:1675:36: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor] - 1675 | PlForeignContextPtr(PlForeignContextPtr&&) = delete; - | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -/builddir/build/BUILD/swipl-9.2.3/packages/cpp/SWI-cpp2.h:1675:36: note: remove the ‘< >’ - ---- swipl-9.2.3/packages/cpp/SWI-cpp2.h.orig 2024-03-26 01:39:06.000000000 -0600 -+++ swipl-9.2.3/packages/cpp/SWI-cpp2.h 2024-04-05 10:26:48.084014514 -0600 -@@ -179,15 +179,15 @@ public: - - friend C_t *PlUnwrapAsPtr(WrappedC* obj) { return obj ? obj->unwrap_as_ptr() : nullptr; } - -- explicit WrappedC(C_t v) -+ explicit WrappedC(C_t v) - : C_(v) { } - -- WrappedC( const WrappedC&) = default; -- WrappedC& operator =(const WrappedC&) = default; -+ WrappedC( const WrappedC&) = default; -+ WrappedC& operator =(const WrappedC&) = default; - // This simple wrapper class doesn't need a move constructor or - // move operator =. - -- ~WrappedC() { } -+ ~WrappedC() { } - - operator bool() const = delete; // Use not_null(), is_null() instead - bool operator ==(WrappedC o) const { return C_ == o.C_; } -@@ -1667,12 +1667,12 @@ class PlForeignContextPtr - { - public: - [[deprecated("Use PlControl::context_unique_ptr")]] -- explicit PlForeignContextPtr(PlControl handle) -+ explicit PlForeignContextPtr(PlControl handle) - { ptr_.reset(static_cast(handle.foreign_context_address())); - } - -- PlForeignContextPtr(const PlForeignContextPtr&) = delete; -- PlForeignContextPtr(PlForeignContextPtr&&) = delete; -+ PlForeignContextPtr(const PlForeignContextPtr&) = delete; -+ PlForeignContextPtr(PlForeignContextPtr&&) = delete; - PlForeignContextPtr& operator =(const PlForeignContextPtr&) = delete; - PlForeignContextPtr& operator =(PlForeignContextPtr&&) = delete; - From eb26a3284b0e868d72f3e0aa2c1ecf3c6e1ff6c7 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Wed, 22 May 2024 08:39:55 -0600 Subject: [PATCH 47/66] Version 9.2.5 - Drop upstreamed zlib patch - Drop junit.jar workaround, now fixed upstream --- pl.spec | 13 ++----------- sources | 2 +- swipl-9.0.4-zlib.patch | 11 ----------- 3 files changed, 3 insertions(+), 23 deletions(-) delete mode 100644 swipl-9.0.4-zlib.patch diff --git a/pl.spec b/pl.spec index 9c73a6c..fc6d90e 100644 --- a/pl.spec +++ b/pl.spec @@ -12,7 +12,7 @@ %global swipl_arch %{_target_cpu}-linux Name: pl -Version: 9.2.4 +Version: 9.2.5 Release: %autorelease Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD-2-Clause @@ -157,11 +157,9 @@ Patch0: swipl-8.2.1-Fix-JNI.patch Patch1: swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch # Unbundle libstemmer Patch2: swipl-8.2.0-unbundle-libstemmer.patch -# Fix the bundled minizip for zlib-ng -Patch3: swipl-9.0.4-zlib.patch # Fix an LTO type mismatch # https://github.com/SWI-Prolog/packages-semweb/pull/113 -Patch4: swipl-9.2.3-lto-mismatch.patch +Patch3: swipl-9.2.3-lto-mismatch.patch # See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} @@ -379,10 +377,6 @@ cp -p %{SOURCE2} . sed -i 's#LIBDIR#%{_libdir}#g' packages/jpl/jpl.pl sed -i.jni -e 's#LIBDIR#"%{_libdir}/swipl-jpl"#g' packages/jpl/src/main/java/org/jpl7/JPL.java -# Find junit.jar -sed --in-place 's,\(%{_datadir}/java/junit\)4\.jar,\1.jar,' \ - packages/jpl/cmake/JUnit.cmake - # Build documentation with the original jpl.pl, since the new version refers # to install paths that don't exist yet; then switch before installing. cp -p packages/jpl/jpl.pl packages/jpl/jpl.pl.install @@ -470,8 +464,6 @@ rm %{buildroot}%{_libdir}/swipl-%{version}/{LICENSE,README.md} rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE -# FIXME: src/Tests/transaction/test_transaction_constraints.pl fails on 32-bit -%if 0%{?__isa_bits} == 64 %ifnarch ppc64le %check export LC_ALL=C.UTF-8 @@ -481,7 +473,6 @@ cp -p packages/jpl/jpl.pl.jni packages/jpl/jpl.pl %ctest cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %endif -%endif %files %license LICENSE diff --git a/sources b/sources index ef10868..52cc74e 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-9.2.4_repackaged.tar.gz) = b0de421011c117e6ccb85212398f7cb84c3f1d8e97986c5d05ac6d31d0375c32c410d5cc73749a0f727a27f36284345cb96472a69dac9d1eaffc85b38678c268 +SHA512 (swipl-9.2.5_repackaged.tar.gz) = 14e58a0510959bb9840042203081f5d3014ef2e3345d850e838e152498d5ae4c9cffc99f699f17fe1f8910909c02d8b014f6a408f344d401828687533973cc38 diff --git a/swipl-9.0.4-zlib.patch b/swipl-9.0.4-zlib.patch deleted file mode 100644 index ab12486..0000000 --- a/swipl-9.0.4-zlib.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- swipl-9.0.4/src/minizip/zip.c.orig 2023-01-27 02:16:21.000000000 -0700 -+++ swipl-9.0.4/src/minizip/zip.c 2024-01-22 15:34:30.720495136 -0700 -@@ -46,7 +46,7 @@ - #ifdef Z_U4 - typedef Z_U4 z_crc_t; - #else --typedef unsigned long z_crc_t; -+typedef unsigned int z_crc_t; - #endif - #endif - #endif From b735ea4972ba9f5957780de8da39792748d523dc Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 7 Jun 2024 10:32:13 +0200 Subject: [PATCH 48/66] Rebuilt for Python 3.13 From c277295e8da4b74eaf91d37633e39292c52b0edc Mon Sep 17 00:00:00 2001 From: Jerry James Date: Wed, 17 Jul 2024 14:40:55 -0600 Subject: [PATCH 49/66] Fix VCS field --- pl.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pl.spec b/pl.spec index fc6d90e..0c59b24 100644 --- a/pl.spec +++ b/pl.spec @@ -144,7 +144,7 @@ Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #bench/simple_analyzer.pl Free for non-commercial License: BSD-2-Clause AND BSD-3-Clause AND (Brian-Gladman-3-Clause OR GPL-1.0-or-later) AND Beerware AND CC-BY-SA-3.0 AND (GPL-1.0-or-later OR Artistic-1.0-Perl) AND GPL-2.0-or-later AND GPL-2.0-or-later WITH SWI-Exception AND (GPL-2.0-or-later WITH SWI-Exception OR Artistic-2.0) AND LGPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain AND LPPL-1.3a AND MIT AND Sleepycat AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND Zlib AND dtoa URL: https://www.swi-prolog.org/ -VCS: https://github.com/SWI-Prolog/swipl +VCS: git:https://github.com/SWI-Prolog/swipl.git # Source0: %%{url}/download/stable/src/swipl-%%{version}.tar.gz # To create the repackaged archive, use ./repackage.sh %%{version} Source0: swipl-%{version}_repackaged.tar.gz From 3cdc4365769c74e44ddaf2e8253c4b50e78c1a30 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jul 2024 07:53:28 +0000 Subject: [PATCH 50/66] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 36d15d8e519caaa68ca5043f09bfd0fa78a602f8 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Thu, 25 Jul 2024 15:44:40 -0600 Subject: [PATCH 51/66] Version 9.2.6 - Build with Qt6 instead of Qt5 --- pl.spec | 7 ++++--- sources | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/pl.spec b/pl.spec index 0c59b24..8790887 100644 --- a/pl.spec +++ b/pl.spec @@ -12,7 +12,7 @@ %global swipl_arch %{_target_cpu}-linux Name: pl -Version: 9.2.5 +Version: 9.2.6 Release: %autorelease Summary: SWI-Prolog - Edinburgh compatible Prolog compiler #LICENSE: BSD-2-Clause @@ -213,7 +213,8 @@ BuildRequires: pkgconfig(openssl) # jpl %ifarch %{java_arches} BuildRequires: java-devel -BuildRequires: junit +BuildRequires: mvn(junit:junit) +BuildRequires: mvn(org.hamcrest:hamcrest) %endif # nlp BuildRequires: libstemmer-devel @@ -222,7 +223,7 @@ BuildRequires: emacs-devel # uuid BuildRequires: pkgconfig(ossp-uuid) # win -BuildRequires: pkgconfig(Qt5) +BuildRequires: pkgconfig(Qt6) # yaml BuildRequires: pkgconfig(yaml-0.1) # zlib diff --git a/sources b/sources index 52cc74e..b886e0d 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-9.2.5_repackaged.tar.gz) = 14e58a0510959bb9840042203081f5d3014ef2e3345d850e838e152498d5ae4c9cffc99f699f17fe1f8910909c02d8b014f6a408f344d401828687533973cc38 +SHA512 (swipl-9.2.6_repackaged.tar.gz) = 7ec4baa8af64c8c4f5ea5c076ebf6e5369ff4581dd94f4785a628f7264bbb0ba15fb4d1fc7f0cf3046ee729ea7d68d900c8e7e9eff148f6809ce1b612f292063 From da8e17267b40032d4c6909e29a588bf5d13473bd Mon Sep 17 00:00:00 2001 From: Jerry James Date: Tue, 17 Sep 2024 13:09:51 -0600 Subject: [PATCH 52/66] Version 9.2.7 - Change subpackage names to match Debian at upstream's request - Build with tcmalloc support - Unbundle texinfo.tex - Setting LC_ALL is no longer necessary - Drop JavaConfig.java in favor of %%{java_home} - Tests now pass on all architectures - Numerous spec file cleanups and simplifications --- JavaConfig.java | 153 --- pl.spec | 912 ++++++++++-------- sources | 2 +- ...-files-locations-from-swipl-1-manual.patch | 4 +- swipl-8.2.1-Fix-JNI.patch | 4 +- swipl-9.2.3-lto-mismatch.patch | 11 - swipl-9.2.7-gettid.patch | 93 ++ 7 files changed, 615 insertions(+), 564 deletions(-) delete mode 100644 JavaConfig.java delete mode 100644 swipl-9.2.3-lto-mismatch.patch create mode 100644 swipl-9.2.7-gettid.patch diff --git a/JavaConfig.java b/JavaConfig.java deleted file mode 100644 index c5d0f02..0000000 --- a/JavaConfig.java +++ /dev/null @@ -1,153 +0,0 @@ -/* JavaConfig - tool for getting paths for current java environment. - * © 2011, 2012, 2014, 2017 Petr Písař - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -class JavaConfig { - private static String output = ""; - - - /* - * Append text to output with proper padding or terminates if text is null. - * @param text String to append. - */ - private static void concatenate(String text) { - if (text == null) { - System.exit(2); - } - output = (output.equals("") ? "" : output + " " ) + text; - } - - - /* - * Show usage message and terminates program with given @exit_code. - * @param exit_code code to return - * */ - private static void usage(int exitCode) { - System.out.print( - "JavaConfig [OPTIONS]\n" + - " --home Output path to Java home\n" + - " --libs-only-L Output -L linker flags\n" + - " --version Output Java version on first separate line\n" - ); - System.exit(exitCode); - } - - - /* - * @Return path to Java home or null in case of error. - */ - public static String home() { - return System.getProperty("java.home"); - } - - - /* - * @Return formated libary search path as -L compiler flag, - * null if error occured. - * */ - public static String libsOnlyL() { - String value; - String architecture = System.getProperty("os.arch"); - String home = home(); - String filesep = System.getProperty("file.separator"); - String paths[]; - - /* The java.library.path works up to JDK 1.6. */ - if (null == (value = System.getProperty("java.library.path"))) { - return null; - } - - /* The java.library.path does not work since JDK 1.7. See - * . - * The "client" subdirectory is need on AArch64 since JDK 1.8. See - * . */ - if (null == architecture || null == home || null == filesep) { - return null; - } - - /* Experimental 32-bit ARM openjdk variant uses lib/aarch32. See - * . */ - if (architecture.contentEquals("arm") && home.contains("aarch32")) { - architecture = "aarch32"; - } - - value = value + ":" + - home + filesep + "lib" + filesep + architecture + ":" + - home + filesep + "lib" + filesep + architecture + filesep + "server" + - ":" + - home + filesep + "lib" + filesep + architecture + filesep + "client"; - - - /* Convert the colon-delimited paths to LDFLAGS format */ - paths = value.split(":"); - - for (int i = 0; i < paths.length; i++) { - if (paths[i].equals("")) { - continue; - } - - if (i == 0) { - value = "-L" + paths[i]; - } else { - value = value + " -L" + paths[i]; - } - } - value = value + " -Wl,-rpath," + home + filesep + "lib" + architecture + - filesep + "server"; - - return value; - } - - - /* - * @Return version of Java home or null in case of error. - */ - public static String version() { - return System.getProperty("java.version"); - } - - - /* - * Entry point to this class. - */ - public static void main(String argv[]) { - if (argv.length < 1) { - usage(1); - } - - for (int i = 0; i < argv.length; i++) { - if (argv[i].equals("--home")) { - concatenate(home()); - } else if (argv[i].equals("--libs-only-L")) { - concatenate(libsOnlyL()); - } else if (argv[i].equals("--version")) { - /* pkg-config prints version on first line */ - String version = version(); - if (null == version) { - System.exit(2); - } - System.out.println(version); - } else { - usage(1); - } - } - - if (!output.equals("")) { - System.out.println(output); - } - System.exit(0); - } -} diff --git a/pl.spec b/pl.spec index 8790887..9ab904e 100644 --- a/pl.spec +++ b/pl.spec @@ -1,165 +1,27 @@ -# TESTING NOTE: The tests can be run by executing ctest in the build directory. -# However, some tests are guaranteed to fail when built by koji: -# - Those that require a network: http:http, semweb:load, ssl:ssl -# - Those that require JNI: jpl:prolog_in_java, jpl:java_in_prolog -# Also, the zlib:zlib test requires a Unicode locale (via the LC_ALL or LANG -# environment variables). For example: -# export LC_ALL=C.UTF-8 - -%global separate_xpce 1 - # Name of the architecture-specific lib directory %global swipl_arch %{_target_cpu}-linux -Name: pl -Version: 9.2.6 -Release: %autorelease -Summary: SWI-Prolog - Edinburgh compatible Prolog compiler -#LICENSE: BSD-2-Clause -#library/dialect/iso/iso_predicates.pl BSD-2-Clause AND (GPL-2.0-or-later WITH -# SWI-Prolog extra clause or Artistic-2.0) -#library/ugraphs.pl BSD-2-Clause AND (GPL-2.0-or-later WITH -# SWI-Prolog extra clause or Artistic-2.0) -#library/unicode/blocks.pl BSD-2-Clause AND Unicode-DFS-2016 -#man/main.doc CC-BY-SA-3.0 -#man/swipl.cls LPPL-1.3a -#packages/bdb/bdb4pl.doc Sleepycat (due to linking with libdb) -#packages/clib/bsd-crypt.c BSD-3-Clause -#packages/clib/clib.doc (BSD-3-Clause OR GPL-1.0-or-later) AND -# BSD-3-Clause -#packages/clib/md5.c Zlib -#packages/clib/md5.h Zlib -#packages/clib/md5passwd.c Beerware -#packages/clib/sha1/brg_endian.h Brian-Gladman-3-Clause OR GPL-1.0+ -#packages/clib/sha1/brg_types.h Brian-Gladman-3-Clause OR GPL-1.0+ -#packages/clib/sha1/hmac.c Brian-Gladman-3-Clause OR GPL-1.0+ -#packages/clib/sha1/hmac.h Brian-Gladman-3-Clause OR GPL-1.0+ -#packages/clib/sha1/pwd2key.c Brian-Gladman-3-Clause OR GPL-1.0+ -#packages/clib/sha1/pwd2key.h Brian-Gladman-3-Clause OR GPL-1.0+ -#packages/clib/sha1/sha1.c Brian-Gladman-3-Clause OR GPL-1.0+ -#packages/clib/sha1/sha1.h Brian-Gladman-3-Clause OR GPL-1.0+ -#packages/clib/sha1/sha1b.c Brian-Gladman-3-Clause OR GPL-1.0+ -#packages/clib/sha1/sha2.c Brian-Gladman-3-Clause OR GPL-1.0+ -#packages/clib/sha1/sha2.h Brian-Gladman-3-Clause OR GPL-1.0+ -#packages/clib/sha1/sha2b.c Brian-Gladman-3-Clause OR GPL-1.0+ -#packages/clpqr/clpq.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpq/bb_q.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpq/bv_q.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpq/fourmotz_q.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpq/ineq_q.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpq/itf_q.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpq/nf_q.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpq/store_q.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpqr/class.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpqr/clpq.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpqr/dump.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpqr/geler.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpqr/itf.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpqr/ordering.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpqr/project.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpqr/redund.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpr.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpr/bb_r.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpr/bv_r.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpr/fourmotz_r.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpr/ineq_r.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpr/itf_r.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpr/nf_r.pl GPL-2.0-or-later with SWI exception -#packages/clpqr/clpr/store_r.pl GPL-2.0-or-later with SWI exception -#packages/http/http_server_health.pl GPL-2.0-or-later with SWI exception -#packages/mqi/python/ MIT -#packages/nlp/double_metaphone.c GPL-1.0-or-later OR Artistic-1.0-Perl -#packages/nlp/isub.c LGPL-2.0-or-later -#packages/plunit/swi.pl BSD-2-Clause and (GPL-2.0-or-later WITH -# SWI-Prolog extra clause OR Artistic-2.0) -#packages/protobufs/interop/google/ BSD-3-Clause -#packages/semweb/md5.c Zlib -#packages/semweb/md5.h Zlib -#packages/semweb/murmur.c LicenseRef-Fedora-Public-Domain -#packages/semweb/murmur.h LicenseRef-Fedora-Public-Domain -#packages/tipc/tipcutils/tipc-config.c BSD-3-Clause -#packages/utf8proc/pgsql/utf8proc_pgsql.c MIT -#packages/utf8proc/ruby/utf8proc_native.c MIT -#packages/utf8proc/ruby/utf8proc_rb.c MIT -#packages/utf8proc/utf8proc.c MIT -#packages/utf8proc/utf8proc.doc MIT AND Unicode-DFS-2015 -#packages/utf8proc/utf8proc.h MIT -#packages/utf8proc/utf8proc_data.c Unicode-DFS-2015 -#packages/xpce/src/gnu/getdate-source.y LicenseRef-Fedora-Public-Domain -#packages/xpce/src/gnu/getdate.c LicenseRef-Fedora-Public-Domain AND -# GPL-2.0-or-later WITH Bison-exception-2.2 -#packages/xpce/src/gnu/y.tab LicenseRef-Fedora-Public-Domain -#packages/xpce/src/img/gifwrite.c Part is FBM -#packages/xpce/src/rgx/ Spencer-99 AND TCL -#packages/xpce/src/x11/xdnd.h GPL-2.0-or-later -#scripts/swipl-bt LicenseRef-Fedora-Public-Domain -#src/minizip/ Zlib -#src/os/dtoa.c dtoa -#src/pl-hash.c LicenseRef-Fedora-Public-Domain -#src/pl-hash.h LicenseRef-Fedora-Public-Domain -#src/swipl-ld.1 LGPL-2.0-or-later -#src/tools/functions.pm LicenseRef-Fedora-Public-Domain +Name: pl +Version: 9.2.7 +Release: %autorelease +Summary: ISO/Edinburgh-style Prolog interpreter -# Not compiled into a binary package: -#External: JavaConfig.java GPL-3.0-or-later -#External: repackage.sh GPL-2.0-or-later -#bench/chat_parser.pl MIT -#packages/RDF/configure FSFUL -#packages/clib/configure FSFUL -#packages/clpqr/.fileheader GPL-2.0-or-later with SWI exception -#packages/clpqr/configure FSFUL -#packages/cpp/configure FSFUL -#packages/http/examples/calc.pl LicenseRef-Fedora-Public-Domain -#packages/http/web/js/jquery* MIT -#packages/nlp/configure FSFUL -#packages/pcre/cmake/FindPCRE.cmake MIT -#packages/protobufs/configure FSFUL -#packages/sgml/configure FSFUL -#packages/ssl/configure FSFUL -#packages/stomp/examples/ping.pl LicenseRef-Fedora-Public-Domain -#packages/stomp/examples/pong.pl LicenseRef-Fedora-Public-Domain -#packages/stomp/examples/simple.pl LicenseRef-Fedora-Public-Domain -#packages/swipl-win/README.md LGPL-2.1-only -#packages/utf8proc/LICENSE MIT AND Unicode-DFS-2015 -#packages/utf8proc/data_generator.rb MIT AND Unicode-DFS-2015 -#packages/utf8proc/ruby/gem/LICENSE MIT AND Unicode-DFS-2015 -#packages/xpce/TeX/name.bst LicenseRef-Bibtex -#packages/xpce/man/info/texinfo.tex GPL-2.0-or-later -#packages/xpce/src/configure FSFUL -#packages/xpce/src/msw/simx.h SGI-B-2.0 -#packages/xpce/src/msw/xpm.h SGI-B-2.0 -#packages/zlib/configure FSFUL -#src/libbf/cutils.c MIT -#src/libbf/cutils.h MIT -#src/libbf/libbf.c MIT -#src/libbf/libbf.h MIT -#src/libbf/mersenne-twister.c BSD-3-Clause -#src/libbf/mersenne-twister.h BSD-3-Clause -#src/Tests/ BSD-2-Clause AND GPL-2.0-or-later WITH -# SWI-Prolog extra clause -#src/tools/update-deps LicenseRef-Fedora-Public-Domain -# Removed from repackaged tar ball, see -# : -#bench/unify.pl Free for non-commercial -#bench/simple_analyzer.pl Free for non-commercial -License: BSD-2-Clause AND BSD-3-Clause AND (Brian-Gladman-3-Clause OR GPL-1.0-or-later) AND Beerware AND CC-BY-SA-3.0 AND (GPL-1.0-or-later OR Artistic-1.0-Perl) AND GPL-2.0-or-later AND GPL-2.0-or-later WITH SWI-Exception AND (GPL-2.0-or-later WITH SWI-Exception OR Artistic-2.0) AND LGPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain AND LPPL-1.3a AND MIT AND Sleepycat AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND Zlib AND dtoa -URL: https://www.swi-prolog.org/ -VCS: git:https://github.com/SWI-Prolog/swipl.git -# Source0: %%{url}/download/stable/src/swipl-%%{version}.tar.gz +License: BSD-2-Clause +URL: https://www.swi-prolog.org/ +VCS: git:https://github.com/SWI-Prolog/swipl.git +# Source0: %%{url}download/stable/src/%%{name}-%%{version}.tar.gz # To create the repackaged archive, use ./repackage.sh %%{version} -Source0: swipl-%{version}_repackaged.tar.gz -Source1: %{url}download/xpce/doc/userguide/userguide.html.tgz -Source2: JavaConfig.java -Source3: repackage.sh +Source0: swipl-%{version}_repackaged.tar.gz +Source1: %{url}download/xpce/doc/userguide/userguide.html.tgz +Source2: repackage.sh # Use JNI for Java binding -Patch0: swipl-8.2.1-Fix-JNI.patch +Patch0: swipl-8.2.1-Fix-JNI.patch # Upstream installation paths differ from distribution ones -Patch1: swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch +Patch1: swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch # Unbundle libstemmer -Patch2: swipl-8.2.0-unbundle-libstemmer.patch -# Fix an LTO type mismatch -# https://github.com/SWI-Prolog/packages-semweb/pull/113 -Patch3: swipl-9.2.3-lto-mismatch.patch +Patch2: swipl-8.2.0-unbundle-libstemmer.patch +# Use the glibc wrapper for gettid +Patch3: swipl-9.2.7-gettid.patch # See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} @@ -170,37 +32,29 @@ BuildRequires: gcc-c++ BuildRequires: ninja-build # Base BuildRequires: gmp-devel +BuildRequires: libatomic BuildRequires: pkgconfig BuildRequires: pkgconfig(libedit) BuildRequires: pkgconfig(libpcre2-posix) BuildRequires: pkgconfig(libtcmalloc) BuildRequires: pkgconfig(ncurses) -%if 0%{?el8} -# on el8 readline isn't picked up by pkgconfig -BuildRequires: readline-devel -%else BuildRequires: pkgconfig(readline) -%endif # archive BuildRequires: pkgconfig(libarchive) # http BuildRequires: js-jquery # XPCE -BuildRequires: pkgconfig(ice) +BuildRequires: pkgconfig(fontconfig) +BuildRequires: pkgconfig(freetype2) BuildRequires: pkgconfig(libjpeg) -BuildRequires: pkgconfig(sm) BuildRequires: pkgconfig(x11) +BuildRequires: pkgconfig(xext) BuildRequires: pkgconfig(xft) BuildRequires: pkgconfig(xinerama) BuildRequires: pkgconfig(xpm) +BuildRequires: pkgconfig(xrandr) BuildRequires: pkgconfig(xt) -# Freetype support in XPCE -BuildRequires: pkgconfig(fontconfig) -BuildRequires: pkgconfig(freetype2) -BuildRequires: pkgconfig(xaw7) -BuildRequires: pkgconfig(xext) -BuildRequires: pkgconfig(xmu) -BuildRequires: pkgconfig(xrender) +BuildRequires: texinfo-tex # bdb BuildRequires: libdb-devel # mqi / swiplserver @@ -235,121 +89,316 @@ BuildRequires: tex(latex) BuildRequires: tex(a4wide.sty) BuildRequires: tex(tabulary.sty) %endif -# http -Requires: js-jquery + +%global _desc %{expand: +SWI-Prolog is a fast and powerful ISO/Edinburgh-style Prolog compiler with a +rich set of built-in predicates. It offers a fast, robust and small +environment which enables substantial applications to be developed with it. + +SWI-Prolog additionally offers: + +* A powerful module system +* Garbage collection +* Unicode character set handling +* Unbounted integer and rational number arithmetic +* Multithreading support +* A powerful C/C++ interface +* GNU Readline interface +} + +%description %_desc + +# Not compiled into a binary package: +#External: repackage.sh GPL-2.0-or-later +#bench/ Various licenses +#packages/RDF/configure FSFUL +#packages/clib/configure FSFUL +#packagfes/clib/demo/ Public Domain +#packages/clpqr/.fileheader GPL-2.0-or-later with SWI exception +#packages/clpqr/configure FSFUL +#packages/cpp/configure FSFUL +#packages/http/examples/ LicenseRef-Fedora-Public-Domain +#packages/http/web/js/jquery* MIT +#packages/nlp/configure FSFUL +#packages/pcre/cmake/FindPCRE.cmake MIT +#packages/protobufs/configure FSFUL +#packages/sgml/configure FSFUL +#packages/ssl/configure FSFUL +#packages/ssl/https.pl LicenseRef-Fedora-Public-Domain +#packages/stomp/examples/ LicenseRef-Fedora-Public-Domain +#packages/swipy/tests/ LicenseRef-Fedora-Public-Domain +#packages/utf8proc/LICENSE MIT AND Unicode-DFS-2015 +#packages/utf8proc/data_generator.rb MIT AND Unicode-DFS-2015 +#packages/utf8proc/ruby/gem/LICENSE MIT AND Unicode-DFS-2015 +#packages/xpce/TeX/name.bst LicenseRef-Bibtex +#packages/xpce/deps/xpm/ X11 +#packages/xpce/src/configure FSFUL +#packages/xpce/src/msw/simx.h SGI-B-2.0 +#packages/xpce/src/msw/xpm.h SGI-B-2.0 +#packages/zlib/configure FSFUL +#scripts/swipl-bt LicenseRef-Fedora-Public-Domain +#src/libbf/cutils.c MIT +#src/libbf/cutils.h MIT +#src/libbf/libbf.c MIT +#src/libbf/libbf.h MIT +#src/tools/functions.pm LicenseRef-Fedora-Public-Domain +#src/Tests/ BSD-2-Clause AND GPL-2.0-or-later WITH +# SWI-Prolog extra clause +#src/tools/update-deps LicenseRef-Fedora-Public-Domain +# Removed from repackaged tar ball, see +# : +#bench/unify.pl Free for non-commercial +#bench/simple_analyzer.pl Free for non-commercial +#License: BSD-2-Clause AND BSD-3-Clause AND (Brian-Gladman-3-Clause OR GPL-1.0-or-later) AND Beerware AND CC-BY-SA-3.0 AND (GPL-1.0-or-later OR Artistic-1.0-Perl) AND GPL-2.0-or-later AND GPL-2.0-or-later WITH SWI-Exception AND (GPL-2.0-or-later WITH SWI-Exception OR Artistic-2.0) AND LGPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain AND LPPL-1.3a AND MIT AND Sleepycat AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND Zlib AND dtoa + +%package -n swi-prolog +Summary: ISO/Edinburgh-style Prolog interpreter +BuildArch: noarch +Requires: swi-prolog-doc = %{version}-%{release} +Requires: swi-prolog-nox = %{version}-%{release} +Requires: swi-prolog-x = %{version}-%{release} + +# This can be removed when F45 reaches EOL +Obsoletes: pl < 9.2.7-2 +Provides: pl = %{version}-%{release} +Obsoletes: pl-devel < 9.2.7-2 +Provides: pl-devel = %{version}-%{release} +Obsoletes: pl-compat-yap-devel < 9.2.7-2 +Provides: pl-compat-yap-devel = %{version}-%{release} + +%description -n swi-prolog %_desc +This is a metapackage, which installs the SWI-Prolog suite, except Java, ODBC, +Berkeley DB support and tests. + +%package -n swi-prolog-full +Summary: ISO/Edinburgh-style Prolog interpreter - full suite +BuildArch: noarch +Requires: swi-prolog = %{version}-%{release} +Requires: swi-prolog-bdb = %{version}-%{release} +Requires: swi-prolog-java = %{version}-%{release} +Requires: swi-prolog-odbc = %{version}-%{release} +Requires: swi-prolog-win = %{version}-%{release} + +%description -n swi-prolog-full %_desc +This is a metapackage, which installs the full SWI-Prolog suite, except tests. + +%package -n swi-prolog-core +# NOTE: There is no swi-prolog-core-devel package. Instead, the header files +# and other development files are included in this package. It is a Prolog +# compiler, and therefore is a development package itself. +# +# The project as a whole is distributed under the BSD-2-Clause license. +# These files carry different licenses: +# library/aggregate.pl BSD-2-Clause AND LicenseRef-Fedora-Public-Domain +# library/dialect/bim.pl LicenseRef-Fedora-Public-Domain +# library/dialect/iso/iso_predicates.pl BSD-2-Clause AND (GPL-2.0-or-later +# WITH SWI-Exception OR Artistic-2.0) +# library/unicode/blocks.pl BSD-2-Clause AND Unicode-TOU +# src/libbf/mersenne-twister.c BSD-3-Clause +# src/libbf/mersenne-twister.h BSD-3-Clause +# src/libtai/ LicenseRef-Fedora-Public-Domain +# src/minizip/ Zlib +# src/os/dtoa.c dtoa +# src/pl-hash.{c,h} LicenseRef-Fedora-Public-Domain +License: BSD-2-Clause AND BSD-3-Clause AND (GPL-2.0-or-later WITH SWI-Exception OR Artistic-2.0) AND LicenseRef-Fedora-Public-Domain AND Unicode-TOU AND Zlib AND dtoa +Summary: ISO/Edinburgh-style Prolog interpreter - core system +Recommends: swi-prolog-bdb%{?_isa} = %{version}-%{release} +Recommends: swi-prolog-core-packages%{?_isa} = %{version}-%{release} +Recommends: swi-prolog-doc = %{version}-%{release} +Recommends: swi-prolog-java%{?_isa} = %{version}-%{release} +Recommends: swi-prolog-odbc%{?_isa} = %{version}-%{release} # Old version of minizip is bundled -Provides: bundled(minizip) = 1.2.11 +Provides: bundled(minizip) = 1.3.1 +%description -n swi-prolog-core %_desc +This package contains the core SWI-Prolog system. + +%package -n swi-prolog-core-packages +# The project as a whole is distributed under the BSD-2-Clause license. +# These files carry different licenses: +# library/ugraphs.pl BSD-2-Clause OR Artistic-2.0 +# packages/clib/bsd-crypt.c BSD-3-Clause +# packages/clib/md5.{c,h} Zlib +# packages/clib/md5passwd.c Beerware +# packages/clib/sha1/ Brian-Gladman-3-Clause OR GPL-1.0+ +# packages/clpqr/ GPL-2.0-or-later with SWI-exception +# packages/http/http_server_health.pl GPL-2.0-or-later with SWI-exception +# packages/http/http_stream.pl BSD-2-Clause AND MIT +# packages/http/multipart.c BSD-2-Clause AND MIT +# packages/mqi/python/ MIT +# packages/nlp/double_metaphone.c GPL-1.0-or-later OR Artistic-1.0-Perl +# packages/nlp/isub.c LGPL-2.0-or-later +# packages/protobufs/interop/google/ BSD-3-Clause +# packages/semweb/md5.{c,h} Zlib +# packages/semweb/murmur.{c,h} LicenseRef-Fedora-Public-Domain +# packages/sgml/DTD/ W3C +# packages/sweep/emacs-module.h GPL-3.0-or-later +# packages/sweep/sweep.texi GFDL-1.3-no-invariants-or-later +# packages/utf8proc/ MIT AND Unicode-DFS-2015 +# +# Note that packages/redis/redis.pl was relicensed. It contains a note about +# the former license (MIT), but is no longer distributed under that license. +License: BSD-2-Clause AND (Brian-Gladman-3-Clause OR GPL-1.0-or-later) AND (BSD-2-Clause OR Artistic-2.0) AND BSD-3-Clause AND Beerware AND GFDL-1.3-no-invariants-or-later AND (GPL-1.0-or-later OR Artistic-1.0-Perl) AND GPL-2.0-or-later with SWI-exception AND GPL-3.0-or-later AND LGPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain AND MIT AND Unicode-DFS-2015 AND W3C AND Zlib +Summary: ISO/Edinburgh-style Prolog interpreter - core packages +Requires: swi-prolog-core%{?_isa} = %{version}-%{release} +Requires: js-jquery +Requires: texlive-base +Recommends: swi-prolog-bdb%{?_isa} = %{version}-%{release} +Recommends: swi-prolog-doc = %{version}-%{release} +Recommends: swi-prolog-java%{?_isa} = %{version}-%{release} +Recommends: swi-prolog-odbc%{?_isa} = %{version}-%{release} + +# packages/clib and packages/semweb both contain an MD5 implementation # See https://fedoraproject.org/wiki/Bundled_Libraries_Virtual_Provides Provides: bundled(md5-deutsch) -# This can be removed when F40 reaches EOL -%ifnarch %{java_arches} -Obsoletes: pl-java < 8.4.3-2 -%endif +%description -n swi-prolog-core-packages %_desc +This package contains the core SWI-Prolog packages. -%description -ISO/Edinburgh-style Prolog compiler including modules, auto-load, -libraries, Garbage-collector, stack-expandor, C/C++-interface, -GNU-readline interface, very fast compiler. Including packages clib -(Unix process control and sockets), cpp (C++ interface), sgml (reading -XML/SGML), sgml/RDF (reading RDF into triples). -%if %{separate_xpce} -XPCE (Graphics UI toolkit, integrated editor (Emacs-clone) and source-level -debugger) is available in %{name}-xpce package. -%else -Also XPCE (Graphics UI toolkit, integrated editor (Emacs-clone) and -source-level debugger) is included. -%endif +%package -n swi-prolog-nox +# The project as a whole is distributed under the BSD-2-Clause license. +# These files carry different licenses: +# packages/ssl/crypt_blowfish.{c,h} bcrypt-Solar-Designer +# packages/tipc/tipcutils/tipc-config.c BSD-3-Clause +License: BSD-2-Clause AND BSD-3-Clause AND bcrypt-Solar-Designer +Summary: ISO/Edinburgh-style Prolog interpreter - without X support +Requires: swi-prolog-core%{?_isa} = %{version}-%{release} +Requires: swi-prolog-core-packages%{?_isa} = %{version}-%{release} +Recommends: swi-prolog-bdb%{?_isa} = %{version}-%{release} +Recommends: swi-prolog-doc = %{version}-%{release} +Recommends: swi-prolog-java%{?_isa} = %{version}-%{release} +Recommends: swi-prolog-odbc%{?_isa} = %{version}-%{release} +%description -n swi-prolog-nox %_desc +This package contains a SWI-Prolog installation without GUI components. -%package devel -Summary: Development files for SWI Prolog -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: gcc -Requires: pkgconfig%{?_isa} -Requires: readline-devel%{?_isa} +%package -n swi-prolog-x +# The project as a whole is distributed under the BSD-2-Clause license. +# These files carry different licenses: +# packages/xpce/man/course CC-BY-SA-3.0 +# packages/xpce/man/info CC-BY-SA-3.0 +# packages/xpce/src/gnu/getdate.c LicenseRef-Fedora-Public-Domain AND +# GPL-2.0-or-later WITH Bison-exception-2.2 +# packages/xpce/src/gnu/getdate-source.y LicenseRef-Fedora-Public-Domain +# packages/xpce/src/gnu/y.tab LicenseRef-Fedora-Public-Domain +# packages/xpce/src/img/gifwrite.c BSD-2-Clause AND FBM AND HPND-Pbmplus +# packages/xpce/src/img/jdatadst.c BSD-2-Clause AND IJG +# packages/xpce/src/rgx/ Spencer-99 AND TCL AND PostgreSQL +# packages/xpce/src/x11/xdnd.{c,h} LGPL-2.0-or-later +License: BSD-2-Clause AND CC-BY-SA-3.0 AND FBM AND GPL-2.0-or-later WITH Bison-exception-2.2 AND HPND-Pbmplus AND IJG AND LGPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain AND PostgreSQL AND Spencer-99 AND TCL +Summary: ISO/Edinburgh-style Prolog interpreter - with X support +Requires: swi-prolog-nox%{?_isa} = %{version}-%{release} -%description devel -Development files for SWI Prolog. +# This can be removed when F45 reaches EOL +Obsoletes: pl-xpce < 9.2.7-2 +Provides: pl-xpce = %{version}-%{release} - -%package compat-yap-devel -Summary: Development files for building YAP applications against SWI Prolog -License: BSD-2-Clause -Requires: %{name}-devel%{?_isa} = %{version}-%{release} - -%description compat-yap-devel -This package enables building YAP (Yet Another Prolog) applications -against the SWI Prolog implementation. - - -%package doc -Summary: Documentation for SWI Prolog -License: BSD-2-Clause -# This must be architecture dependent because some files live in %%{_libdir} -# because they are used by built-in documentation system. -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description doc -%{summary}. - - -%package odbc -Summary: SWI-Prolog ODBC interface -License: BSD-2-Clause -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description odbc -The value of RDMS for Prolog is often over-estimated, as Prolog itself can -manage substantial amounts of data. Nevertheless a Prolog/RDMS interface -provides advantages if data is already provided in an RDMS, data must be -shared with other applications, there are strong persistency requirements -or there is too much data to fit in memory. - -The popularity of ODBC makes it possible to design a single -foreign-language module that provides RDMS access for a wide variety of -databases on a wide variety of platforms. The SWI-Prolog RDMS interface is -closely modeled after the ODBC API. This API is rather low-level, but -defaults and dynamic typing provided by Prolog give the user quite simple -access to RDMS, while the interface provides the best possible performance -given the RDMS independency constraint. - - -%if %{separate_xpce} -%package xpce -License: BSD-2-Clause AND GPL-2.0-or-later AND GPL-2.0-or-later WITH Bison-exception-2.2 AND LicenseRef-Fedora-Public-Domain AND Spencer-99 AND TCL AND FBM -Summary: A toolkit for developing graphical applications in Prolog -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description xpce -XPCE is a toolkit for developing graphical applications in Prolog and other -interactive and dynamically typed languages. XPCE follows a rather unique -approach of for developing GUI applications, as follows: +%description -n swi-prolog-x %_desc +This package contains XPCE, an object-oriented symbolic programming +environment for user interfaces. Although XPCE was designed to be +language-independent, it has gained the most popularity with Prolog. XPCE +follows a rather unique approach for developing GUI applications, as follows: - Add object layer to Prolog - High level of abstraction - Exploit rapid Prolog development cycle - Platform independent programs -%endif - %ifarch %{java_arches} -%package jpl -License: BSD-2-Clause -Summary: A bidirectional Prolog/Java interface for SWI Prolog -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: java-headless -Requires: javapackages-tools +%package -n swi-prolog-java +Summary: Bidirectional interface between SWI-Prolog and Java +Requires: swi-prolog%{?_isa} = %{version}-%{release} +Requires: java-headless +Requires: javapackages-tools -%description jpl -JPL is a library using the SWI-Prolog foreign interface and the Java Native -Interface providing a bidirectional interface between Java and Prolog -that can be used to embed Prolog in Java as well as for embedding Java -in Prolog. In both setups it provides a re-entrant bidirectional interface. +# This can be removed when F45 reaches EOL +Obsoletes: pl-jpl < 9.2.7-2 +Provides: pl-jpl = %{version}-%{release} + +%description -n swi-prolog-java %_desc +This package provides JPL, a library using the SWI-Prolog foreign interface +and the Java Native Interface to provide a bidirectional interface between +Java and Prolog. Prolog can be embedded in Java, and Java can be embedded in +Prolog. It provides a reentrant bidirectional interface in both cases. %endif +%package -n swi-prolog-odbc +Summary: SWI-Prolog ODBC interface +Requires: swi-prolog-nox%{?_isa} = %{version}-%{release} + +# This can be removed when F45 reaches EOL +Obsoletes: pl-odbc < 9.2.7-2 +Provides: pl-odbc = %{version}-%{release} + +%description -n swi-prolog-odbc %_desc +The value of RDMS for Prolog is often overestimated, as Prolog itself can +manage substantial amounts of data. Nevertheless a Prolog/RDMS interface +provides advantages if data is already provided in an RDMS, data must be +shared with other applications, there are strong persistence requirements or +there is too much data to fit in memory. + +The popularity of ODBC makes it possible to design a single foreign-language +module that provides RDMS access for a wide variety of databases on a wide +variety of platforms. The SWI-Prolog RDMS interface is closely modeled after +the ODBC API. This API is rather low-level, but defaults and dynamic typing +provided by Prolog give the user quite simple access to RDMS, while the +interface provides the best possible performance given the RDMS independence +constraint. + +%package -n swi-prolog-bdb +Summary: SWI-Prolog Berkeley DB interface +Requires: swi-prolog-nox%{?_isa} = %{version}-%{release} + +%description -n swi-prolog-bdb %_desc +This package provides a foreign language extension to the Berkeley DB (libdb) +embedded database. + +%package -n swi-prolog-doc +# The project as a whole is distributed under the BSD-2-Clause license. +# These files carry different licenses: +# man/bk9.co LPPL-1.3a+ +# man/main.doc CC-BY-SA-3.0 +# man/name.bst Knuth-CTAN +# man/swipl.cls LPPL-1.3a+ +# The PDF of the manual contains embedded fonts with these licenses: +# CM: Knuth-CTAN +# Nimbus: AGPL-3.0-only +License: BSD-2-Clause AND CC-BY-SA-3.0 AND Knuth-CTAN AND LPPL-1.3a+ AND AGPL-3.0-only +Summary: Documentation and examples for SWI-Prolog +BuildArch: noarch +Requires: swi-prolog-core%{?_isa} = %{version}-%{release} + +# This can be removed when F45 reaches EOL +Obsoletes: pl-doc < 9.2.7-2 +Provides: pl-doc = %{version}-%{release} + +%description -n swi-prolog-doc %_desc +This package provides documentation and examples. + +%package -n swi-prolog-test +# The project as a whole is distributed under the BSD-2-Clause license. +# These files carry different licenses: +# src/Tests/compile/test_autoload.pl GPL-2.0-or-later WITH SWI-exception +# src/Tests/core/test_arith.pl LGPL-2.1-or-later +# src/Tests/core/test_coroutining.pl BSD-2-Clause AND GPL-2.0-or-later +# src/Tests/xsb/**/*.P LGPL-2.0-only +License: BSD-2-Clause AND GPL-2.0-or-later AND GPL-2.0-or-later WITH SWI-exception AND LGPL-2.0-only AND LGPL-2.1-or-later +Summary: Tests and checks for SWI-Prolog +Requires: swi-prolog-nox%{?_isa} = %{version}-%{release} + +%description -n swi-prolog-test %_desc +This package provides a set of prepared tests and checks for installed +SWI-Prolog systems. This package is intended for SWI-Prolog development and +is of no use for ordinary users. If you are not sure if you need this +package, you do not. + +%package -n swi-prolog-win +Summary: SWI-Prolog GUI interface +Requires: swi-prolog-core%{?_isa} = %{version}-%{release} + +%description -n swi-prolog-win %_desc +This package provides a Qt-based GUI for SWI-Prolog. %prep %global docdir doc-install @@ -386,6 +435,10 @@ cp -p packages/jpl/jpl.pl.jni packages/jpl/jpl.pl # Do not use the bundled libstemmer rm -fr packages/nlp/libstemmer_c +# Do not use the bundled texinfo.tex +rm packages/xpce/man/info/texinfo.tex +ln -s %{_texmf}/tex/texinfo/texinfo.tex packages/xpce/man/info + # Avoid a clash on doc names cp -p customize/README.md README-customize.md @@ -394,12 +447,9 @@ cd packages/mqi/python %pyproject_buildrequires %build -export LC_ALL=C.UTF-8 %ifarch %{java_arches} -javac JavaConfig.java -JAVA_HOME=$(java JavaConfig --home) -JAVA_LIBS=$(java JavaConfig --libs-only-L) -export LD_LIBRARY_PATH=$JAVA_HOME/lib/server +export JAVA_HOME=%{java_home} +export LD_LIBRARY_PATH=%{java_home}/lib/server %else # Processed by packages/configure export DISABLE_PKGS="jpl" @@ -410,10 +460,13 @@ export DISABLE_PKGS="jpl" -DBUILD_PDF_DOCUMENTATION:BOOL=%{?fedora:ON}%{!?fedora:OFF} \ -DCMAKE_INSTALL_LIBDIR:PATH=%{_libdir} \ -DCPACK_GENERATOR:STRING=RPM \ - -DGET0SIG_CONST_T:STRING=const \ + -DINSTALL_TESTS:BOOL=ON \ -DJQUERYDIR:PATH=%{_datadir}/javascript/jquery/latest \ + -DSKIP_SSL_TESTS:BOOL=ON \ -DSWIPL_INSTALL_IN_LIB:BOOL=ON \ - -DSWIPL_VERSIONED_DIR:BOOL=ON \ + -DSWIPL_INSTALL_IN_SHARE:BOOL=ON \ + -DSWIPL_VERSIONED_DIR:BOOL=OFF \ + -DUSE_TCMALLOC:BOOL=ON \ -G Ninja # Help latex2html find the bibliographies @@ -434,11 +487,27 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %cmake_install # Script with shebang should be executable -chmod 0755 %{buildroot}%{_libdir}/swipl-%{version}/library/dialect/sicstus/swipl-lfr.pl -chmod 0755 %{buildroot}%{_libdir}/swipl-%{version}/customize/edit +chmod 0755 %{buildroot}%{_libdir}/swipl/library/dialect/sicstus/swipl-lfr.pl +chmod 0755 %{buildroot}%{_libdir}/swipl/customize/edit # Some XPCE files do not get installed cp -p packages/xpce/man/*.1 %{buildroot}%{_mandir}/man1 +cp -a packages/xpce/man/course %{buildroot}%{_libdir}/swipl/xpce/man + +# Let LaTeX know about the style file +mkdir -p %{buildroot}%{_texmf}/tex/latex/swi-prolog +ln %{buildroot}%{_libdir}/swipl/library/ext/pldoc/pldoc/pldoc.sty \ + %{buildroot}%{_texmf}/tex/latex/swi-prolog/pldoc.sty + +# Install the sweep info file +mkdir -p %{buildroot}%{_infodir} +cd packages/sweep +makeinfo sweep.texi +cp -p sweep.info %{buildroot}%{_infodir} +cd - + +# Fix the pkgconfig file +sed -i 's,/usr//usr,/usr,' %{buildroot}%{_datadir}/pkgconfig/swipl.pc %ifarch %{java_arches} # Move the JPL JNI stuff to where the Java packaging guidelines @@ -446,164 +515,217 @@ cp -p packages/xpce/man/*.1 %{buildroot}%{_mandir}/man1 jpl_ver=$(sed -n 's/.*JPL_VERSION \([.[:digit:]]*\).*/\1/p' packages/jpl/CMakeLists.txt) mkdir -p %{buildroot}%{_libdir}/swipl-jpl -mv %{buildroot}%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/libjpl.so \ +mv %{buildroot}%{_libdir}/swipl/lib/%{swipl_arch}/libjpl.so \ %{buildroot}%{_libdir}/swipl-jpl mkdir -p %{buildroot}%{_jnidir} -mv %{buildroot}%{_libdir}/swipl-%{version}/lib/jpl.jar %{buildroot}%{_jnidir} +mv %{buildroot}%{_libdir}/swipl/lib/jpl.jar %{buildroot}%{_jnidir} ln -s ../lib/jpl.jar %{buildroot}%{_libdir}/swipl-jpl # Original locations are referenced by internal libraries and examples cd %{buildroot}%{_libdir} -ln -s ../../../swipl-jpl/libjpl.so swipl-%{version}/lib/%{swipl_arch}/libjpl.so -ln -s ../../swipl-jpl/jpl.jar swipl-%{version}/lib/jpl.jar +ln -s ../../../swipl-jpl/libjpl.so swipl/lib/%{swipl_arch}/libjpl.so +ln -s ../../swipl-jpl/jpl.jar swipl/lib/jpl.jar cd - %endif # Remove stuff we do not want to package -rm %{buildroot}%{_libdir}/swipl-%{version}/{LICENSE,README.md} -rm %{buildroot}%{_libdir}/swipl-%{version}/customize/README.md -rm %{buildroot}%{_libdir}/swipl-%{version}/lib/swiplserver/LICENSE +rm %{buildroot}%{_libdir}/swipl/{LICENSE,README.md} +rm %{buildroot}%{_libdir}/swipl/customize/README.md +rm %{buildroot}%{_libdir}/swipl/lib/swiplserver/LICENSE -%ifnarch ppc64le %check -export LC_ALL=C.UTF-8 # Test with the original jpl.pl, since the new version refers to paths that # don't exist; then switch back. cp -p packages/jpl/jpl.pl.jni packages/jpl/jpl.pl %ctest cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl -%endif -%files +%files -n swi-prolog + +%files -n swi-prolog-full + +%files -n swi-prolog-core %license LICENSE %doc README.md README-customize.md -%{_mandir}/man1/swipl* %{_bindir}/swipl %{_bindir}/swipl-ld -%{_libdir}/libswipl.so.9* -%dir %{_libdir}/swipl-%{version}/ -%dir %{_libdir}/swipl-%{version}/bin/ -%{_libdir}/swipl-%{version}/bin/latex2html -%{_libdir}/swipl-%{version}/bin/swipl.home -%dir %{_libdir}/swipl-%{version}/bin/%{swipl_arch}/ -%{_libdir}/swipl-%{version}/bin/%{swipl_arch}/swipl -%{_libdir}/swipl-%{version}/bin/%{swipl_arch}/swipl-ld -%{_libdir}/swipl-%{version}/app/ -%{_libdir}/swipl-%{version}/boot* -%{_libdir}/swipl-%{version}/customize/ -%{_libdir}/swipl-%{version}/demo/ -%dir %{_libdir}/swipl-%{version}/lib/ -%dir %{_libdir}/swipl-%{version}/lib/%{swipl_arch} -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/archive4pl.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/bdb4pl.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/cgi.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/crypto4pl.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/crypt.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/double_metaphone.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/files.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/hashstream.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/http_stream.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/inclpr.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/isub.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/janus.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/json.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/libedit4pl.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/mallocinfo.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/md54pl.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/memfile.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/ntriples.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/pcre4pl.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/pdt_console.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/porter_stem.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/process.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/prolog_stream.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/protobufs.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/rdf_db.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/readline4pl.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/readutil.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/redis4pl.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/rlimit.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/sched.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/sgml2pl.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/sha4pl.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/snowball.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/socket.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/ssl4pl.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/streaminfo.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/sweep-module.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/syslog.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/table.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/tex.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/time.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/tipc.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/turtle.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/uid.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/unicode4pl.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/unix.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/uri.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/uuid.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/websocket.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/yaml4pl.so -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/zlib4pl.so -%{_libdir}/swipl-%{version}/lib/swiplserver/ -%{_libdir}/swipl-%{version}/library/ -%{_libdir}/swipl-%{version}/swipl.home - -# Exclude the files that are in the sub-packages -%ifarch %{java_arches} -# JPL -%exclude %{_libdir}/swipl-%{version}/library/ext/jpl -%endif -# ODBC -%exclude %{_libdir}/swipl-%{version}/library/ext/odbc - -%if %{separate_xpce} -%files xpce -%doc packages/xpce/CUSTOMISE.md packages/xpce/README.md -%{_bindir}/swipl-win -%{_libdir}/swipl-%{version}/bin/%{swipl_arch}/swipl-win -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/pl2xpce.so -%{_libdir}/swipl-%{version}/swipl.rc -%{_libdir}/swipl-%{version}/swipl-win.rc -%{_libdir}/swipl-%{version}/xpce/ -%{_mandir}/man1/xpce* -%endif - -%files devel -%{_libdir}/libswipl.so -%{_libdir}/swipl-%{version}/cmake/ -%dir %{_libdir}/swipl-%{version}/include/ -%{_libdir}/swipl-%{version}/include/sicstus/ -%{_libdir}/swipl-%{version}/include/SWI* %{_libdir}/cmake/swipl/ +%dir %{_libdir}/swipl/ +%dir %{_libdir}/swipl/bin/ +%{_libdir}/swipl/bin/swipl.home +%dir %{_libdir}/swipl/bin/%{swipl_arch}/ +%{_libdir}/swipl/bin/%{swipl_arch}/swipl +%{_libdir}/swipl/bin/%{swipl_arch}/swipl-ld +%{_libdir}/swipl/boot/ +%{_libdir}/swipl/boot.prc +%{_libdir}/swipl/cmake/ +%{_libdir}/swipl/customize/ +%{_libdir}/swipl/demo/ +%dir %{_libdir}/swipl/include/ +%{_libdir}/swipl/include/SWI-Prolog.h +%{_libdir}/swipl/include/SWI-Stream.h +%{_libdir}/swipl/include/Yap/ +%{_libdir}/swipl/include/sicstus/ +%dir %{_libdir}/swipl/library/ +%{_libdir}/swipl/library/*.pl +%{_libdir}/swipl/library/*.qlf +%{_libdir}/swipl/library/build/ +%{_libdir}/swipl/library/clp/ +%{_libdir}/swipl/library/dcg/ +%{_libdir}/swipl/library/dialect/ +%{_libdir}/swipl/library/iri_scheme/ +%{_libdir}/swipl/library/lynx/ +%{_libdir}/swipl/library/theme/ +%{_libdir}/swipl/library/unicode/ +%{_libdir}/swipl/swipl.home +%{_libdir}/libswipl.so.9* +%{_libdir}/libswipl.so +%{_mandir}/man1/swipl* %{_datadir}/pkgconfig/swipl.pc +%{_infodir}/sweep.info* -%files compat-yap-devel -%{_libdir}/swipl-%{version}/include/Yap/ +%files -n swi-prolog-core-packages +%{_libdir}/swipl/bin/latex2html +%{_libdir}/swipl/include/SWI-cpp.h +%{_libdir}/swipl/include/SWI-cpp2* +%dir %{_libdir}/swipl/lib/ +%{_libdir}/swipl/lib/swiplserver/ +%dir %{_libdir}/swipl/lib/%{swipl_arch}/ +%{_libdir}/swipl/lib/%{swipl_arch}/cgi.so +%{_libdir}/swipl/lib/%{swipl_arch}/crypt.so +%{_libdir}/swipl/lib/%{swipl_arch}/double_metaphone.so +%{_libdir}/swipl/lib/%{swipl_arch}/files.so +%{_libdir}/swipl/lib/%{swipl_arch}/hashstream.so +%{_libdir}/swipl/lib/%{swipl_arch}/http_stream.so +%{_libdir}/swipl/lib/%{swipl_arch}/inclpr.so +%{_libdir}/swipl/lib/%{swipl_arch}/isub.so +%{_libdir}/swipl/lib/%{swipl_arch}/janus.so +%{_libdir}/swipl/lib/%{swipl_arch}/json.so +%{_libdir}/swipl/lib/%{swipl_arch}/mallocinfo.so +%{_libdir}/swipl/lib/%{swipl_arch}/md54pl.so +%{_libdir}/swipl/lib/%{swipl_arch}/memfile.so +%{_libdir}/swipl/lib/%{swipl_arch}/ntriples.so +%{_libdir}/swipl/lib/%{swipl_arch}/pdt_console.so +%{_libdir}/swipl/lib/%{swipl_arch}/porter_stem.so +%{_libdir}/swipl/lib/%{swipl_arch}/process.so +%{_libdir}/swipl/lib/%{swipl_arch}/prolog_stream.so +%{_libdir}/swipl/lib/%{swipl_arch}/protobufs.so +%{_libdir}/swipl/lib/%{swipl_arch}/rdf_db.so +%{_libdir}/swipl/lib/%{swipl_arch}/readutil.so +%{_libdir}/swipl/lib/%{swipl_arch}/redis4pl.so +%{_libdir}/swipl/lib/%{swipl_arch}/rlimit.so +%{_libdir}/swipl/lib/%{swipl_arch}/sched.so +%{_libdir}/swipl/lib/%{swipl_arch}/sgml2pl.so +%{_libdir}/swipl/lib/%{swipl_arch}/sha4pl.so +%{_libdir}/swipl/lib/%{swipl_arch}/snowball.so +%{_libdir}/swipl/lib/%{swipl_arch}/socket.so +%{_libdir}/swipl/lib/%{swipl_arch}/streaminfo.so +%{_libdir}/swipl/lib/%{swipl_arch}/sweep-module.so +%{_libdir}/swipl/lib/%{swipl_arch}/syslog.so +%{_libdir}/swipl/lib/%{swipl_arch}/table.so +%{_libdir}/swipl/lib/%{swipl_arch}/test_cpp.so +%{_libdir}/swipl/lib/%{swipl_arch}/test_ffi.so +%{_libdir}/swipl/lib/%{swipl_arch}/tex.so +%{_libdir}/swipl/lib/%{swipl_arch}/time.so +%{_libdir}/swipl/lib/%{swipl_arch}/turtle.so +%{_libdir}/swipl/lib/%{swipl_arch}/uid.so +%{_libdir}/swipl/lib/%{swipl_arch}/unicode4pl.so +%{_libdir}/swipl/lib/%{swipl_arch}/unix.so +%{_libdir}/swipl/lib/%{swipl_arch}/uri.so +%{_libdir}/swipl/lib/%{swipl_arch}/uuid.so +%{_libdir}/swipl/lib/%{swipl_arch}/websocket.so +%{_libdir}/swipl/lib/%{swipl_arch}/zlib4pl.so +%dir %{_libdir}/swipl/library/ext/ +%{_libdir}/swipl/library/ext/PDT/ +%{_libdir}/swipl/library/ext/RDF/ +%{_libdir}/swipl/library/ext/chr/ +%{_libdir}/swipl/library/ext/clib/ +%{_libdir}/swipl/library/ext/clpqr +%{_libdir}/swipl/library/ext/http/ +%{_libdir}/swipl/library/ext/inclpr/ +%{_libdir}/swipl/library/ext/ltx2htm/ +%{_libdir}/swipl/library/ext/mqi/ +%{_libdir}/swipl/library/ext/nlp/ +%{_libdir}/swipl/library/ext/paxos/ +%{_libdir}/swipl/library/ext/pengines/ +%{_libdir}/swipl/library/ext/pldoc/ +%{_libdir}/swipl/library/ext/plunit/ +%{_libdir}/swipl/library/ext/protobufs/ +%{_libdir}/swipl/library/ext/redis/ +%{_libdir}/swipl/library/ext/semweb/ +%{_libdir}/swipl/library/ext/sgml/ +%{_libdir}/swipl/library/ext/stomp/ +%{_libdir}/swipl/library/ext/sweep/ +%{_libdir}/swipl/library/ext/swipy/ +%{_libdir}/swipl/library/ext/table/ +%{_libdir}/swipl/library/ext/utf8proc/ +%{_libdir}/swipl/library/ext/zlib/ +%{_libdir}/swipl/library/http/ +%{_libdir}/swipl/library/protobufs/ +%{_libdir}/swipl/library/semweb/ +%{_texmf}/tex/latex/swi-prolog/ -%files doc -%{_libdir}/swipl-%{version}/doc/ -%if 0%{?fedora} -%doc %{_vpath_builddir}/man/SWI-Prolog-%{version}.pdf -%endif -%doc %{docdir}-xpce/* +%files -n swi-prolog-nox +%{_libdir}/swipl/app/ +%{_libdir}/swipl/lib/%{swipl_arch}/archive4pl.so +%{_libdir}/swipl/lib/%{swipl_arch}/crypto4pl.so +%{_libdir}/swipl/lib/%{swipl_arch}/libedit4pl.so +%{_libdir}/swipl/lib/%{swipl_arch}/pcre4pl.so +%{_libdir}/swipl/lib/%{swipl_arch}/readline4pl.so +%{_libdir}/swipl/lib/%{swipl_arch}/ssl4pl.so +%{_libdir}/swipl/lib/%{swipl_arch}/tipc.so +%{_libdir}/swipl/lib/%{swipl_arch}/yaml4pl.so +%{_libdir}/swipl/library/ext/archive/ +%{_libdir}/swipl/library/ext/libedit/ +%{_libdir}/swipl/library/ext/pcre/ +%{_libdir}/swipl/library/ext/readline/ +%{_libdir}/swipl/library/ext/ssl/ +%{_libdir}/swipl/library/ext/tipc/ +%{_libdir}/swipl/library/ext/yaml/ -%files odbc -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/odbc4pl.so -%{_libdir}/swipl-%{version}/library/ext/odbc -%doc packages/odbc/{demo,ChangeLog,README} +%files -n swi-prolog-x +%doc packages/xpce/{CUSTOMISE,EXTENDING,README}.md +%{_libdir}/swipl/lib/%{swipl_arch}/pl2xpce.so +%{_libdir}/swipl/swipl.rc +%{_libdir}/swipl/xpce/ +%{_mandir}/man1/xpce-client.1* %ifarch %{java_arches} -%files jpl -%doc packages/jpl/docs/* packages/jpl/src/examples +%files -n swi-prolog-java +%doc packages/jpl/README.md %{_jnidir}/jpl.jar -%{_libdir}/swipl-%{version}/lib/jpl*jar -%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/libjpl.so -%{_libdir}/swipl-%{version}/library/ext/jpl/ +%{_libdir}/swipl/lib/jpl*jar +%{_libdir}/swipl/lib/%{swipl_arch}/libjpl.so +%{_libdir}/swipl/library/ext/jpl/ %{_libdir}/swipl-jpl/ %endif +%files -n swi-prolog-odbc +%doc packages/odbc/README +%{_libdir}/swipl/lib/%{swipl_arch}/odbc4pl.so +%{_libdir}/swipl/library/ext/cql/ +%{_libdir}/swipl/library/ext/odbc/ + +%files -n swi-prolog-bdb +%doc packages/bdb/README.md +%{_libdir}/swipl/lib/%{swipl_arch}/bdb4pl.so +%{_libdir}/swipl/library/ext/bdb/ + +%files -n swi-prolog-doc +%if 0%{?fedora} +%doc %{_vpath_builddir}/man/SWI-Prolog-%{version}.pdf +%endif +%{_datadir}/swipl/ + +%files -n swi-prolog-test +%{_libdir}/swipl/test/ + +%files -n swi-prolog-win +%doc packages/swipl-win/README.md +%{_bindir}/swipl-win +%{_libdir}/swipl/bin/%{swipl_arch}/swipl-win +%{_libdir}/swipl/swipl-win.rc %changelog %autochangelog diff --git a/sources b/sources index b886e0d..3431dcb 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-9.2.6_repackaged.tar.gz) = 7ec4baa8af64c8c4f5ea5c076ebf6e5369ff4581dd94f4785a628f7264bbb0ba15fb4d1fc7f0cf3046ee729ea7d68d900c8e7e9eff148f6809ce1b612f292063 +SHA512 (swipl-9.2.7_repackaged.tar.gz) = 1e3fd963f4a6b4ed261dfcb7d79b680fc081bd92189c68c1cc3e2d80154e1866ad3c20a2ff96d4cffd6b2b462b8d855b55ff9152d7fad02143ce7e510a26d3c5 diff --git a/swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch b/swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch index 49d5dc0..4c40729 100644 --- a/swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch +++ b/swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch @@ -17,7 +17,7 @@ diff --git a/src/swipl.1.in b/src/swipl.1.in index e6eeda5..81c5abb 100644 --- a/src/swipl.1.in +++ b/src/swipl.1.in -@@ -396,38 +396,6 @@ to find the local installation directory +@@ -449,38 +449,6 @@ to find the local installation directory .I ~/.config/swi-prolog/init.pl Personal initialisation files consulted by SWI-Prolog on startup. The exact location depends on the OS. @@ -56,7 +56,7 @@ index e6eeda5..81c5abb 100644 .SH SEE ALSO .PP The SWI-Prolog web-home at -@@ -437,9 +405,6 @@ Jan\ Wielemaker +@@ -490,9 +458,6 @@ Jan\ Wielemaker .IR "SWI-Prolog Reference Manual" " at" .I http://www.swi-prolog.org/pldoc/index.html .PP diff --git a/swipl-8.2.1-Fix-JNI.patch b/swipl-8.2.1-Fix-JNI.patch index 08b105c..23f6749 100644 --- a/swipl-8.2.1-Fix-JNI.patch +++ b/swipl-8.2.1-Fix-JNI.patch @@ -18,7 +18,7 @@ diff --git a/packages/jpl/jpl.pl b/packages/jpl/jpl.pl index 024dd79..ffeccd9 100644 --- a/packages/jpl/jpl.pl +++ b/packages/jpl/jpl.pl -@@ -3960,7 +3960,8 @@ prolog:error_message(java_exception(Ex)) +@@ -3823,7 +3823,8 @@ prolog:error_message(java_exception(Ex)) :- multifile user:file_search_path/2. :- dynamic user:file_search_path/2. @@ -28,7 +28,7 @@ index 024dd79..ffeccd9 100644 classpath(DirOrJar) :- getenv('CLASSPATH', ClassPath), -@@ -4140,7 +4141,7 @@ add_jpl_to_classpath :- +@@ -3992,7 +3993,7 @@ add_jpl_to_classpath :- libjpl(File) :- ( current_prolog_flag(unix, true) diff --git a/swipl-9.2.3-lto-mismatch.patch b/swipl-9.2.3-lto-mismatch.patch deleted file mode 100644 index ac00bdf..0000000 --- a/swipl-9.2.3-lto-mismatch.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- swipl-9.2.3/packages/semweb/murmur.c.orig 2024-03-28 13:45:03.000000000 -0600 -+++ swipl-9.2.3/packages/semweb/murmur.c 2024-04-05 10:09:30.257172942 -0600 -@@ -67,7 +67,7 @@ rdf_murmer_hash(const void * key, size_t - #define MIX(h,k,m) { k *= m; k ^= k >> r; k *= m; h *= m; h ^= k; } - - unsigned int --rdf_murmer_hash(const void *key, int len, unsigned int seed) -+rdf_murmer_hash(const void *key, size_t len, unsigned int seed) - { const unsigned int m = 0x5bd1e995; - const int r = 24; - const unsigned char * data = (const unsigned char *)key; diff --git a/swipl-9.2.7-gettid.patch b/swipl-9.2.7-gettid.patch new file mode 100644 index 0000000..d5fc874 --- /dev/null +++ b/swipl-9.2.7-gettid.patch @@ -0,0 +1,93 @@ +From 94409d713398ca49f429ebda5eb32273e9cc9e5d Mon Sep 17 00:00:00 2001 +From: Jerry James +Date: Tue, 17 Sep 2024 10:50:03 -0600 +Subject: [PATCH] Call gettid via its glibc wrapper if possible + +The glibc gettid wrapper was introduced in glibc 2.30 (2019). +--- + cmake/Config.cmake | 31 ++++++++++++++++++++----------- + src/pl-thread.c | 9 ++++++++- + 2 files changed, 28 insertions(+), 12 deletions(-) + +diff --git a/cmake/Config.cmake b/cmake/Config.cmake +index 380453b88..f2595fafe 100644 +--- a/cmake/Config.cmake ++++ b/cmake/Config.cmake +@@ -343,22 +343,31 @@ check_pthread_setname_np() + endif(HAVE_PTHREAD_SETNAME_NP) + + check_c_source_compiles( +- "#include +- #include ++ "#define _GNU_SOURCE ++ #include + int main() +- { _syscall0(pid_t,gettid); +- return 0; ++ { return gettid(); + }" +- HAVE_GETTID_MACRO) +-if(NOT HAVE_GETTID_MACRO) ++ HAVE_GETTID_FUNCTION) ++if(NOT HAVE_GETTID_FUNCTION) + check_c_source_compiles( +- "#include +- #include ++ "#include ++ #include + int main() +- { syscall(__NR_gettid); +- return 0; ++ { _syscall0(pid_t,gettid); ++ return 0; + }" +- HAVE_GETTID_SYSCALL) ++ HAVE_GETTID_MACRO) ++ if(NOT HAVE_GETTID_7FUNCTION AND NOT HAVE_GETTID_MACRO) ++ check_c_source_compiles( ++ "#include ++ #include ++ int main() ++ { syscall(__NR_gettid); ++ return 0; ++ }" ++ HAVE_GETTID_SYSCALL) ++ endif() + endif() + + endif(CMAKE_USE_PTHREADS_INIT) +diff --git a/src/pl-thread.c b/src/pl-thread.c +index 25743eebf..23038d37e 100644 +--- a/src/pl-thread.c ++++ b/src/pl-thread.c +@@ -125,11 +125,18 @@ APPROACH + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ + + #if defined(__linux__) ++#ifdef HAVE_GETTID_FUNCTION ++#ifndef _GNU_SOURCE ++#define _GNU_SOURCE ++#endif ++#include ++#else + #include + #ifdef HAVE_GETTID_MACRO + _syscall0(pid_t,gettid) + #endif + #endif ++#endif + + #ifdef HAVE_SYS_RESOURCE_H + #include +@@ -1935,7 +1942,7 @@ set_system_thread_id(PL_thread_info_t *info) + info->has_tid = TRUE; + #if defined(HAVE_GETTID_SYSCALL) + info->pid = syscall(__NR_gettid); +-#elif defined(HAVE_GETTID_MACRO) ++#elif defined(HAVE_GETTID_FUNCTION) || defined(HAVE_GETTID_MACRO) + info->pid = gettid(); + #elif defined(__CYGWIN__) + info->pid = getpid(); +-- +2.46.0 + From 42a8ac14cad1f180b03f271c47cd11de3f575329 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Tue, 17 Sep 2024 13:45:01 -0600 Subject: [PATCH 53/66] Fix swi-prolog-doc dependency on swi-prolog-core --- pl.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pl.spec b/pl.spec index 9ab904e..80527f7 100644 --- a/pl.spec +++ b/pl.spec @@ -364,10 +364,10 @@ embedded database. # The PDF of the manual contains embedded fonts with these licenses: # CM: Knuth-CTAN # Nimbus: AGPL-3.0-only -License: BSD-2-Clause AND CC-BY-SA-3.0 AND Knuth-CTAN AND LPPL-1.3a+ AND AGPL-3.0-only +License: BSD-2-Clause AND AGPL-3.0-only AND CC-BY-SA-3.0 AND Knuth-CTAN AND LPPL-1.3a+ Summary: Documentation and examples for SWI-Prolog BuildArch: noarch -Requires: swi-prolog-core%{?_isa} = %{version}-%{release} +Requires: swi-prolog-core = %{version}-%{release} # This can be removed when F45 reaches EOL Obsoletes: pl-doc < 9.2.7-2 From ef360ff83a35046618a110bbdc37fd3491a24ca2 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Wed, 18 Sep 2024 09:57:39 -0600 Subject: [PATCH 54/66] Fix swi-prolog-java FTI (rhbz#2313232) - Expose inclpr plugin dependency on the math library - Fix a license typo in swi-prolog-core - Fix broken links - Deduplicate files --- pl.spec | 41 +++++++++++++++++++++++++---------- swipl-9.2.7-inclpr-math.patch | 10 +++++++++ 2 files changed, 40 insertions(+), 11 deletions(-) create mode 100644 swipl-9.2.7-inclpr-math.patch diff --git a/pl.spec b/pl.spec index 80527f7..6e820e6 100644 --- a/pl.spec +++ b/pl.spec @@ -22,11 +22,14 @@ Patch1: swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch Patch2: swipl-8.2.0-unbundle-libstemmer.patch # Use the glibc wrapper for gettid Patch3: swipl-9.2.7-gettid.patch +# Expose inclpr plugin dependency on the math library to RPM +Patch4: swipl-9.2.7-inclpr-math.patch # See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} BuildRequires: cmake +BuildRequires: fdupes BuildRequires: findutils BuildRequires: gcc-c++ BuildRequires: ninja-build @@ -149,7 +152,6 @@ SWI-Prolog additionally offers: # : #bench/unify.pl Free for non-commercial #bench/simple_analyzer.pl Free for non-commercial -#License: BSD-2-Clause AND BSD-3-Clause AND (Brian-Gladman-3-Clause OR GPL-1.0-or-later) AND Beerware AND CC-BY-SA-3.0 AND (GPL-1.0-or-later OR Artistic-1.0-Perl) AND GPL-2.0-or-later AND GPL-2.0-or-later WITH SWI-Exception AND (GPL-2.0-or-later WITH SWI-Exception OR Artistic-2.0) AND LGPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain AND LPPL-1.3a AND MIT AND Sleepycat AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND Zlib AND dtoa %package -n swi-prolog Summary: ISO/Edinburgh-style Prolog interpreter @@ -192,7 +194,7 @@ This is a metapackage, which installs the full SWI-Prolog suite, except tests. # library/aggregate.pl BSD-2-Clause AND LicenseRef-Fedora-Public-Domain # library/dialect/bim.pl LicenseRef-Fedora-Public-Domain # library/dialect/iso/iso_predicates.pl BSD-2-Clause AND (GPL-2.0-or-later -# WITH SWI-Exception OR Artistic-2.0) +# WITH SWI-exception OR Artistic-2.0) # library/unicode/blocks.pl BSD-2-Clause AND Unicode-TOU # src/libbf/mersenne-twister.c BSD-3-Clause # src/libbf/mersenne-twister.h BSD-3-Clause @@ -200,7 +202,7 @@ This is a metapackage, which installs the full SWI-Prolog suite, except tests. # src/minizip/ Zlib # src/os/dtoa.c dtoa # src/pl-hash.{c,h} LicenseRef-Fedora-Public-Domain -License: BSD-2-Clause AND BSD-3-Clause AND (GPL-2.0-or-later WITH SWI-Exception OR Artistic-2.0) AND LicenseRef-Fedora-Public-Domain AND Unicode-TOU AND Zlib AND dtoa +License: BSD-2-Clause AND BSD-3-Clause AND (GPL-2.0-or-later WITH SWI-exception OR Artistic-2.0) AND LicenseRef-Fedora-Public-Domain AND Unicode-TOU AND Zlib AND dtoa Summary: ISO/Edinburgh-style Prolog interpreter - core system Recommends: swi-prolog-bdb%{?_isa} = %{version}-%{release} Recommends: swi-prolog-core-packages%{?_isa} = %{version}-%{release} @@ -308,7 +310,7 @@ follows a rather unique approach for developing GUI applications, as follows: %ifarch %{java_arches} %package -n swi-prolog-java Summary: Bidirectional interface between SWI-Prolog and Java -Requires: swi-prolog%{?_isa} = %{version}-%{release} +Requires: swi-prolog-nox%{?_isa} = %{version}-%{release} Requires: java-headless Requires: javapackages-tools @@ -385,7 +387,8 @@ This package provides documentation and examples. # src/Tests/xsb/**/*.P LGPL-2.0-only License: BSD-2-Clause AND GPL-2.0-or-later AND GPL-2.0-or-later WITH SWI-exception AND LGPL-2.0-only AND LGPL-2.1-or-later Summary: Tests and checks for SWI-Prolog -Requires: swi-prolog-nox%{?_isa} = %{version}-%{release} +BuildArch: noarch +Requires: swi-prolog-nox = %{version}-%{release} %description -n swi-prolog-test %_desc This package provides a set of prepared tests and checks for installed @@ -486,9 +489,19 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl # See for file layout %cmake_install -# Script with shebang should be executable -chmod 0755 %{buildroot}%{_libdir}/swipl/library/dialect/sicstus/swipl-lfr.pl -chmod 0755 %{buildroot}%{_libdir}/swipl/customize/edit +# Scripts with shebang should be executable +chmod 0755 \ + %{buildroot}%{_datadir}/swipl/doc/packages/examples/http/linux-init-script \ + %{buildroot}%{_datadir}/swipl/doc/packages/examples/jpl/java/zahed/run.sh \ + %{buildroot}%{_datadir}/swipl/doc/packages/examples/pldoc/man_server.pl \ + %{buildroot}%{_datadir}/swipl/doc/packages/examples/protobufs/interop/test_read.py \ + %{buildroot}%{_datadir}/swipl/doc/packages/examples/protobufs/interop/test_write.py \ + %{buildroot}%{_datadir}/swipl/doc/packages/examples/stomp/server-loop.sh \ + %{buildroot}%{_libdir}/swipl/customize/edit \ + %{buildroot}%{_libdir}/swipl/library/dialect/sicstus/swipl-lfr.pl \ + %{buildroot}%{_libdir}/swipl/test/Tests/xsb/delay_tests/*.sh \ + %{buildroot}%{_libdir}/swipl/test/Tests/xsb/ptq/*.sh \ + %{buildroot}%{_libdir}/swipl/test/Tests/xsb/wfs_tests/*.sh # Some XPCE files do not get installed cp -p packages/xpce/man/*.1 %{buildroot}%{_mandir}/man1 @@ -496,8 +509,8 @@ cp -a packages/xpce/man/course %{buildroot}%{_libdir}/swipl/xpce/man # Let LaTeX know about the style file mkdir -p %{buildroot}%{_texmf}/tex/latex/swi-prolog -ln %{buildroot}%{_libdir}/swipl/library/ext/pldoc/pldoc/pldoc.sty \ - %{buildroot}%{_texmf}/tex/latex/swi-prolog/pldoc.sty +ln -s %{_libdir}/swipl/library/ext/pldoc/pldoc/pldoc.sty \ + %{buildroot}%{_texmf}/tex/latex/swi-prolog/pldoc.sty # Install the sweep info file mkdir -p %{buildroot}%{_infodir} @@ -520,7 +533,7 @@ mv %{buildroot}%{_libdir}/swipl/lib/%{swipl_arch}/libjpl.so \ mkdir -p %{buildroot}%{_jnidir} mv %{buildroot}%{_libdir}/swipl/lib/jpl.jar %{buildroot}%{_jnidir} -ln -s ../lib/jpl.jar %{buildroot}%{_libdir}/swipl-jpl +ln -s ../../lib/java/jpl.jar %{buildroot}%{_libdir}/swipl-jpl # Original locations are referenced by internal libraries and examples cd %{buildroot}%{_libdir} @@ -533,6 +546,12 @@ cd - rm %{buildroot}%{_libdir}/swipl/{LICENSE,README.md} rm %{buildroot}%{_libdir}/swipl/customize/README.md rm %{buildroot}%{_libdir}/swipl/lib/swiplserver/LICENSE +rm %{buildroot}%{_libdir}/swipl/test/Tests/xsb/.gitignore +rm %{buildroot}%{_libdir}/swipl/xpce/man/course/.gitignore + +# Link duplicates +%fdupes %{buildroot}%{_datadir}/swipl +%fdupes %{buildroot}%{_libdir}/swipl %check # Test with the original jpl.pl, since the new version refers to paths that diff --git a/swipl-9.2.7-inclpr-math.patch b/swipl-9.2.7-inclpr-math.patch new file mode 100644 index 0000000..2a87408 --- /dev/null +++ b/swipl-9.2.7-inclpr-math.patch @@ -0,0 +1,10 @@ +--- swipl-9.2.7/packages/inclpr/CMakeLists.txt.orig 2023-12-11 03:16:08.000000000 -0700 ++++ swipl-9.2.7/packages/inclpr/CMakeLists.txt 2024-09-18 09:37:46.320423903 -0600 +@@ -15,6 +15,7 @@ swipl_plugin(inclpr_priv + swipl_plugin(inclpr + NOINDEX + C_SOURCES inclpr.c ++ C_LIBS m + PL_LIBS inclpr.pl) + + swipl_examples(benchmarks.pl) From bc846fbaf153336a679f3aa1ed96c966a0425c03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20Such=C3=BD?= Date: Fri, 20 Sep 2024 07:33:37 +0200 Subject: [PATCH 55/66] change license back from Unicode-TOU to Unicode-DFS-2016 Unicode-TOU is not approved licese. Mostly because of https://gitlab.com/fedora/legal/fedora-license-data/-/issues/199 https://gitlab.com/fedora/legal/fedora-license-data/-/issues/314 Unicode-TOU in this package has been introduced in commit da8e17267b40032d4c6909e29a588bf5d13473bd So I am basically proposing the revert of this part. --- pl.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pl.spec b/pl.spec index 6e820e6..a34bcfb 100644 --- a/pl.spec +++ b/pl.spec @@ -195,14 +195,14 @@ This is a metapackage, which installs the full SWI-Prolog suite, except tests. # library/dialect/bim.pl LicenseRef-Fedora-Public-Domain # library/dialect/iso/iso_predicates.pl BSD-2-Clause AND (GPL-2.0-or-later # WITH SWI-exception OR Artistic-2.0) -# library/unicode/blocks.pl BSD-2-Clause AND Unicode-TOU +# library/unicode/blocks.pl BSD-2-Clause AND Unicode-DFS-2016 # src/libbf/mersenne-twister.c BSD-3-Clause # src/libbf/mersenne-twister.h BSD-3-Clause # src/libtai/ LicenseRef-Fedora-Public-Domain # src/minizip/ Zlib # src/os/dtoa.c dtoa # src/pl-hash.{c,h} LicenseRef-Fedora-Public-Domain -License: BSD-2-Clause AND BSD-3-Clause AND (GPL-2.0-or-later WITH SWI-exception OR Artistic-2.0) AND LicenseRef-Fedora-Public-Domain AND Unicode-TOU AND Zlib AND dtoa +License: BSD-2-Clause AND BSD-3-Clause AND (GPL-2.0-or-later WITH SWI-exception OR Artistic-2.0) AND LicenseRef-Fedora-Public-Domain AND Unicode-DFS-2016 AND Zlib AND dtoa Summary: ISO/Edinburgh-style Prolog interpreter - core system Recommends: swi-prolog-bdb%{?_isa} = %{version}-%{release} Recommends: swi-prolog-core-packages%{?_isa} = %{version}-%{release} From ed23f8041cc48e626e737766520be01f61121e19 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Wed, 23 Oct 2024 14:31:04 -0600 Subject: [PATCH 56/66] Version 9.2.8 - Drop upstreamed gettid patch - Upstream has relicensed some files; change License tags accordingly --- pl.spec | 17 +++----- sources | 2 +- swipl-9.2.7-gettid.patch | 93 ---------------------------------------- 3 files changed, 6 insertions(+), 106 deletions(-) delete mode 100644 swipl-9.2.7-gettid.patch diff --git a/pl.spec b/pl.spec index a34bcfb..dd6f916 100644 --- a/pl.spec +++ b/pl.spec @@ -2,14 +2,14 @@ %global swipl_arch %{_target_cpu}-linux Name: pl -Version: 9.2.7 +Version: 9.2.8 Release: %autorelease Summary: ISO/Edinburgh-style Prolog interpreter License: BSD-2-Clause URL: https://www.swi-prolog.org/ VCS: git:https://github.com/SWI-Prolog/swipl.git -# Source0: %%{url}download/stable/src/%%{name}-%%{version}.tar.gz +# Source0: %%{url}download/stable/src/swipl-%%{version}.tar.gz # To create the repackaged archive, use ./repackage.sh %%{version} Source0: swipl-%{version}_repackaged.tar.gz Source1: %{url}download/xpce/doc/userguide/userguide.html.tgz @@ -20,10 +20,8 @@ Patch0: swipl-8.2.1-Fix-JNI.patch Patch1: swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch # Unbundle libstemmer Patch2: swipl-8.2.0-unbundle-libstemmer.patch -# Use the glibc wrapper for gettid -Patch3: swipl-9.2.7-gettid.patch # Expose inclpr plugin dependency on the math library to RPM -Patch4: swipl-9.2.7-inclpr-math.patch +Patch3: swipl-9.2.7-inclpr-math.patch # See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} @@ -145,8 +143,6 @@ SWI-Prolog additionally offers: #src/libbf/libbf.c MIT #src/libbf/libbf.h MIT #src/tools/functions.pm LicenseRef-Fedora-Public-Domain -#src/Tests/ BSD-2-Clause AND GPL-2.0-or-later WITH -# SWI-Prolog extra clause #src/tools/update-deps LicenseRef-Fedora-Public-Domain # Removed from repackaged tar ball, see # : @@ -193,8 +189,6 @@ This is a metapackage, which installs the full SWI-Prolog suite, except tests. # These files carry different licenses: # library/aggregate.pl BSD-2-Clause AND LicenseRef-Fedora-Public-Domain # library/dialect/bim.pl LicenseRef-Fedora-Public-Domain -# library/dialect/iso/iso_predicates.pl BSD-2-Clause AND (GPL-2.0-or-later -# WITH SWI-exception OR Artistic-2.0) # library/unicode/blocks.pl BSD-2-Clause AND Unicode-DFS-2016 # src/libbf/mersenne-twister.c BSD-3-Clause # src/libbf/mersenne-twister.h BSD-3-Clause @@ -202,7 +196,7 @@ This is a metapackage, which installs the full SWI-Prolog suite, except tests. # src/minizip/ Zlib # src/os/dtoa.c dtoa # src/pl-hash.{c,h} LicenseRef-Fedora-Public-Domain -License: BSD-2-Clause AND BSD-3-Clause AND (GPL-2.0-or-later WITH SWI-exception OR Artistic-2.0) AND LicenseRef-Fedora-Public-Domain AND Unicode-DFS-2016 AND Zlib AND dtoa +License: BSD-2-Clause AND BSD-3-Clause AND LicenseRef-Fedora-Public-Domain AND Unicode-DFS-2016 AND Zlib AND dtoa Summary: ISO/Edinburgh-style Prolog interpreter - core system Recommends: swi-prolog-bdb%{?_isa} = %{version}-%{release} Recommends: swi-prolog-core-packages%{?_isa} = %{version}-%{release} @@ -384,8 +378,7 @@ This package provides documentation and examples. # src/Tests/compile/test_autoload.pl GPL-2.0-or-later WITH SWI-exception # src/Tests/core/test_arith.pl LGPL-2.1-or-later # src/Tests/core/test_coroutining.pl BSD-2-Clause AND GPL-2.0-or-later -# src/Tests/xsb/**/*.P LGPL-2.0-only -License: BSD-2-Clause AND GPL-2.0-or-later AND GPL-2.0-or-later WITH SWI-exception AND LGPL-2.0-only AND LGPL-2.1-or-later +License: BSD-2-Clause AND GPL-2.0-or-later AND GPL-2.0-or-later WITH SWI-exception AND LGPL-2.1-or-later Summary: Tests and checks for SWI-Prolog BuildArch: noarch Requires: swi-prolog-nox = %{version}-%{release} diff --git a/sources b/sources index 3431dcb..6d9009c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-9.2.7_repackaged.tar.gz) = 1e3fd963f4a6b4ed261dfcb7d79b680fc081bd92189c68c1cc3e2d80154e1866ad3c20a2ff96d4cffd6b2b462b8d855b55ff9152d7fad02143ce7e510a26d3c5 +SHA512 (swipl-9.2.8_repackaged.tar.gz) = 8e1ebd8dc9bedd50b82490b6632f6f24b368d0781d85df5774a7e816edcaaa46eb827abf4e730f3ab0ad18038ea94f00b4c25422d5be6901f353f9193205202b diff --git a/swipl-9.2.7-gettid.patch b/swipl-9.2.7-gettid.patch deleted file mode 100644 index d5fc874..0000000 --- a/swipl-9.2.7-gettid.patch +++ /dev/null @@ -1,93 +0,0 @@ -From 94409d713398ca49f429ebda5eb32273e9cc9e5d Mon Sep 17 00:00:00 2001 -From: Jerry James -Date: Tue, 17 Sep 2024 10:50:03 -0600 -Subject: [PATCH] Call gettid via its glibc wrapper if possible - -The glibc gettid wrapper was introduced in glibc 2.30 (2019). ---- - cmake/Config.cmake | 31 ++++++++++++++++++++----------- - src/pl-thread.c | 9 ++++++++- - 2 files changed, 28 insertions(+), 12 deletions(-) - -diff --git a/cmake/Config.cmake b/cmake/Config.cmake -index 380453b88..f2595fafe 100644 ---- a/cmake/Config.cmake -+++ b/cmake/Config.cmake -@@ -343,22 +343,31 @@ check_pthread_setname_np() - endif(HAVE_PTHREAD_SETNAME_NP) - - check_c_source_compiles( -- "#include -- #include -+ "#define _GNU_SOURCE -+ #include - int main() -- { _syscall0(pid_t,gettid); -- return 0; -+ { return gettid(); - }" -- HAVE_GETTID_MACRO) --if(NOT HAVE_GETTID_MACRO) -+ HAVE_GETTID_FUNCTION) -+if(NOT HAVE_GETTID_FUNCTION) - check_c_source_compiles( -- "#include -- #include -+ "#include -+ #include - int main() -- { syscall(__NR_gettid); -- return 0; -+ { _syscall0(pid_t,gettid); -+ return 0; - }" -- HAVE_GETTID_SYSCALL) -+ HAVE_GETTID_MACRO) -+ if(NOT HAVE_GETTID_7FUNCTION AND NOT HAVE_GETTID_MACRO) -+ check_c_source_compiles( -+ "#include -+ #include -+ int main() -+ { syscall(__NR_gettid); -+ return 0; -+ }" -+ HAVE_GETTID_SYSCALL) -+ endif() - endif() - - endif(CMAKE_USE_PTHREADS_INIT) -diff --git a/src/pl-thread.c b/src/pl-thread.c -index 25743eebf..23038d37e 100644 ---- a/src/pl-thread.c -+++ b/src/pl-thread.c -@@ -125,11 +125,18 @@ APPROACH - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ - - #if defined(__linux__) -+#ifdef HAVE_GETTID_FUNCTION -+#ifndef _GNU_SOURCE -+#define _GNU_SOURCE -+#endif -+#include -+#else - #include - #ifdef HAVE_GETTID_MACRO - _syscall0(pid_t,gettid) - #endif - #endif -+#endif - - #ifdef HAVE_SYS_RESOURCE_H - #include -@@ -1935,7 +1942,7 @@ set_system_thread_id(PL_thread_info_t *info) - info->has_tid = TRUE; - #if defined(HAVE_GETTID_SYSCALL) - info->pid = syscall(__NR_gettid); --#elif defined(HAVE_GETTID_MACRO) -+#elif defined(HAVE_GETTID_FUNCTION) || defined(HAVE_GETTID_MACRO) - info->pid = gettid(); - #elif defined(__CYGWIN__) - info->pid = getpid(); --- -2.46.0 - From c57c6bcfa71d18045029d8d5ccf9d5d333909e8e Mon Sep 17 00:00:00 2001 From: Jerry James Date: Wed, 23 Oct 2024 15:12:27 -0600 Subject: [PATCH 57/66] Update obsoletes to stay ahead of F40 --- pl.spec | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pl.spec b/pl.spec index dd6f916..8557c74 100644 --- a/pl.spec +++ b/pl.spec @@ -157,11 +157,11 @@ Requires: swi-prolog-nox = %{version}-%{release} Requires: swi-prolog-x = %{version}-%{release} # This can be removed when F45 reaches EOL -Obsoletes: pl < 9.2.7-2 +Obsoletes: pl < 9.2.8-2 Provides: pl = %{version}-%{release} -Obsoletes: pl-devel < 9.2.7-2 +Obsoletes: pl-devel < 9.2.8-2 Provides: pl-devel = %{version}-%{release} -Obsoletes: pl-compat-yap-devel < 9.2.7-2 +Obsoletes: pl-compat-yap-devel < 9.2.8-2 Provides: pl-compat-yap-devel = %{version}-%{release} %description -n swi-prolog %_desc @@ -287,7 +287,7 @@ Summary: ISO/Edinburgh-style Prolog interpreter - with X support Requires: swi-prolog-nox%{?_isa} = %{version}-%{release} # This can be removed when F45 reaches EOL -Obsoletes: pl-xpce < 9.2.7-2 +Obsoletes: pl-xpce < 9.2.8-2 Provides: pl-xpce = %{version}-%{release} %description -n swi-prolog-x %_desc @@ -309,7 +309,7 @@ Requires: java-headless Requires: javapackages-tools # This can be removed when F45 reaches EOL -Obsoletes: pl-jpl < 9.2.7-2 +Obsoletes: pl-jpl < 9.2.8-2 Provides: pl-jpl = %{version}-%{release} %description -n swi-prolog-java %_desc @@ -324,7 +324,7 @@ Summary: SWI-Prolog ODBC interface Requires: swi-prolog-nox%{?_isa} = %{version}-%{release} # This can be removed when F45 reaches EOL -Obsoletes: pl-odbc < 9.2.7-2 +Obsoletes: pl-odbc < 9.2.8-2 Provides: pl-odbc = %{version}-%{release} %description -n swi-prolog-odbc %_desc @@ -366,7 +366,7 @@ BuildArch: noarch Requires: swi-prolog-core = %{version}-%{release} # This can be removed when F45 reaches EOL -Obsoletes: pl-doc < 9.2.7-2 +Obsoletes: pl-doc < 9.2.8-2 Provides: pl-doc = %{version}-%{release} %description -n swi-prolog-doc %_desc From 4e7393513afa4a09838209f2d07d161aa45f9f4e Mon Sep 17 00:00:00 2001 From: Jerry James Date: Tue, 7 Jan 2025 15:10:26 -0700 Subject: [PATCH 58/66] Version 9.2.9 - Use zlib-ng instead of the zlib compatibility interface --- pl.spec | 6 +- sources | 2 +- swipl-9.2.9-zlib-ng.patch | 1222 +++++++++++++++++++++++++++++++++++++ 3 files changed, 1227 insertions(+), 3 deletions(-) create mode 100644 swipl-9.2.9-zlib-ng.patch diff --git a/pl.spec b/pl.spec index 8557c74..6cc8fe5 100644 --- a/pl.spec +++ b/pl.spec @@ -2,7 +2,7 @@ %global swipl_arch %{_target_cpu}-linux Name: pl -Version: 9.2.8 +Version: 9.2.9 Release: %autorelease Summary: ISO/Edinburgh-style Prolog interpreter @@ -22,6 +22,8 @@ Patch1: swipl-8.2.0-Remove-files-locations-from-swipl-1-manual.patch Patch2: swipl-8.2.0-unbundle-libstemmer.patch # Expose inclpr plugin dependency on the math library to RPM Patch3: swipl-9.2.7-inclpr-math.patch +# Use zlib-ng directly rather than via the zlib compatibility interface +Patch4: swipl-9.2.9-zlib-ng.patch # See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} @@ -82,7 +84,7 @@ BuildRequires: pkgconfig(Qt6) # yaml BuildRequires: pkgconfig(yaml-0.1) # zlib -BuildRequires: pkgconfig(zlib) +BuildRequires: pkgconfig(zlib-ng) # Doc building # Gated to Fedora as EL is currently missing tex(a4wide.sty) %if 0%{?fedora} diff --git a/sources b/sources index 6d9009c..03aeff4 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-9.2.8_repackaged.tar.gz) = 8e1ebd8dc9bedd50b82490b6632f6f24b368d0781d85df5774a7e816edcaaa46eb827abf4e730f3ab0ad18038ea94f00b4c25422d5be6901f353f9193205202b +SHA512 (swipl-9.2.9_repackaged.tar.gz) = 57f0e043c6f0985106c68a2bba3a558ee3eb19ecaa145d5968d963da005f3d1fe0ef62ba43f299b067bda3bb6e4212a9e121926a4d8452df9aa8cbbecf6b27e2 diff --git a/swipl-9.2.9-zlib-ng.patch b/swipl-9.2.9-zlib-ng.patch new file mode 100644 index 0000000..11e5aaf --- /dev/null +++ b/swipl-9.2.9-zlib-ng.patch @@ -0,0 +1,1222 @@ +--- swipl-9.2.9/cmake/Config.cmake.orig 2024-12-20 02:46:40.000000000 -0700 ++++ swipl-9.2.9/cmake/Config.cmake 2025-01-06 15:12:11.957532676 -0700 +@@ -51,7 +51,7 @@ check_include_file(valgrind/valgrind.h H + check_include_file(vfork.h HAVE_VFORK_H) + check_include_file(mach/thread_act.h HAVE_MACH_THREAD_ACT_H) + check_include_file(sys/stropts.h HAVE_SYS_STROPTS_H) +-check_include_file(zlib.h HAVE_ZLIB_H) ++check_include_file(zlib-ng.h HAVE_ZLIB_H) + check_include_file(crt_externs.h HAVE_CRT_EXTERNS_H) + check_include_file(gperftools/malloc_extension_c.h HAVE_TCMALLOC_EXTENSION_C_H) + +@@ -108,7 +108,7 @@ if(HAVE_LIBANDROID_EXECINFO) + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} android-execinfo) + endif() + if(HAVE_ZLIB_H) +- set(CMAKE_EXTRA_INCLUDE_FILES ${CMAKE_EXTRA_INCLUDE_FILES} zlib.h) ++ set(CMAKE_EXTRA_INCLUDE_FILES ${CMAKE_EXTRA_INCLUDE_FILES} zlib-ng.h) + endif() + + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} +--- swipl-9.2.9/packages/zlib/zlib4pl.c.orig 2024-03-06 08:03:07.000000000 -0700 ++++ swipl-9.2.9/packages/zlib/zlib4pl.c 2025-01-06 15:29:54.151408246 -0700 +@@ -40,7 +40,7 @@ + #include + #include + #include +-#include ++#include + + install_t install_zlib4pl(void); + +@@ -80,8 +80,8 @@ typedef struct z_context + int multi_part; /* Multipart gzip file */ + int z_stream_end; /* Seen Z_STREAM_END */ + zformat format; /* current format */ +- z_stream zstate; /* Zlib state */ +- gz_header zhead; /* Header */ ++ zng_stream zstate; /* Zlib state */ ++ zng_gz_header zhead; /* Header */ + } z_context; + + +@@ -155,15 +155,15 @@ zread(void *handle, char *buf, size_t si + + if ( ctx->initialized == FALSE ) + { if ( ctx->format == F_GZIP ) +- { rc = inflateInit2(&ctx->zstate, MAX_WBITS+16); ++ { rc = zng_inflateInit2(&ctx->zstate, MAX_WBITS+16); + } else if ( ctx->format == F_DEFLATE ) +- { rc = inflateInit(&ctx->zstate); ++ { rc = zng_inflateInit(&ctx->zstate); + } else if ( ctx->format == F_RAW_DEFLATE ) +- { rc = inflateInit2(&ctx->zstate, -MAX_WBITS); ++ { rc = zng_inflateInit2(&ctx->zstate, -MAX_WBITS); + } else + { memset(&ctx->zhead, 0, sizeof(ctx->zhead)); +- rc = inflateInit2(&ctx->zstate, MAX_WBITS+32); +- rc = inflateGetHeader(&ctx->zstate, &ctx->zhead); ++ rc = zng_inflateInit2(&ctx->zstate, MAX_WBITS+32); ++ rc = zng_inflateGetHeader(&ctx->zstate, &ctx->zhead); + if ( rc != Z_OK ) + Sdprintf("inflateGetHeader() failed\n"); + } +@@ -171,7 +171,7 @@ zread(void *handle, char *buf, size_t si + sync_stream(ctx); + } + +- rc = inflate(&ctx->zstate, Z_NO_FLUSH); ++ rc = zng_inflate(&ctx->zstate, Z_NO_FLUSH); + sync_stream(ctx); + + switch( rc ) +@@ -214,7 +214,7 @@ zread(void *handle, char *buf, size_t si + DEBUG(1, Sdprintf("Multi-part gzip stream; restarting\n")); + ctx->z_stream_end = FALSE; + ctx->initialized = FALSE; /* multiple zips */ +- inflateEnd(&ctx->zstate); ++ zng_inflateEnd(&ctx->zstate); + return zread(handle, buf, size); + } + +@@ -267,7 +267,7 @@ zwrite4(void *handle, char *buf, size_t + ctx->zstate.next_out = buffer; + ctx->zstate.avail_out = sizeof(buffer); + +- switch( (rc = deflate(&ctx->zstate, flush)) ) ++ switch( (rc = zng_deflate(&ctx->zstate, flush)) ) + { case Z_OK: + case Z_STREAM_END: + { size_t n = sizeof(buffer) - ctx->zstate.avail_out; +@@ -348,15 +348,15 @@ zclose(void *handle) + + if ( (ctx->stream->flags & SIO_INPUT) ) + { if ( ctx->initialized == TRUE ) +- rc = inflateEnd(&ctx->zstate); ++ rc = zng_inflateEnd(&ctx->zstate); + else + rc = Z_OK; + } else + { rc = zwrite4(handle, NULL, 0, Z_FINISH); /* flush */ + if ( rc == 0 ) +- rc = deflateEnd(&ctx->zstate); ++ rc = zng_deflateEnd(&ctx->zstate); + else +- deflateEnd(&ctx->zstate); ++ zng_deflateEnd(&ctx->zstate); + } + + switch(rc) +@@ -466,11 +466,11 @@ pl_zopen(term_t org, term_t new, term_t + { int rc; + + if ( fmt == F_GZIP ) +- { rc = deflateInit2(&ctx->zstate, level, Z_DEFLATED, MAX_WBITS+16, MAX_MEM_LEVEL, 0); ++ { rc = zng_deflateInit2(&ctx->zstate, level, Z_DEFLATED, MAX_WBITS+16, MAX_MEM_LEVEL, 0); + } else if ( fmt == F_RAW_DEFLATE ) +- { rc = deflateInit2(&ctx->zstate, level, Z_DEFLATED, -MAX_WBITS, MAX_MEM_LEVEL, 0); ++ { rc = zng_deflateInit2(&ctx->zstate, level, Z_DEFLATED, -MAX_WBITS, MAX_MEM_LEVEL, 0); + } else +- { rc = deflateInit(&ctx->zstate, level); ++ { rc = zng_deflateInit(&ctx->zstate, level); + } + + if ( rc != Z_OK ) +--- swipl-9.2.9/src/CMakeLists.txt.orig 2024-12-20 02:46:40.000000000 -0700 ++++ swipl-9.2.9/src/CMakeLists.txt 2025-01-07 14:24:27.950836575 -0700 +@@ -389,7 +389,7 @@ if(GMP_FOUND) + set(LIBSWIPL_LIBRARIES ${LIBSWIPL_LIBRARIES} ${GMP_LIBRARIES}) + set(LIBSWIPL_INCLUDES ${LIBSWIPL_INCLUDES} ${GMP_INCLUDE_DIRS}) + endif() +-set(LIBSWIPL_LIBRARIES ${LIBSWIPL_LIBRARIES} ${ZLIB_LIBRARIES}) ++set(LIBSWIPL_LIBRARIES ${LIBSWIPL_LIBRARIES} z-ng) + if(MULTI_THREADED) + set(LIBSWIPL_LIBRARIES ${LIBSWIPL_LIBRARIES} Threads::Threads) + endif() +@@ -445,7 +445,7 @@ add_dependencies(swiplobjs${PGO_SUFFIX} + target_include_directories(swiplobjs${PGO_SUFFIX} BEFORE PRIVATE + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} +- ${ZLIB_INCLUDE_DIRS} ++ ${ZLIB-NG_INCLUDE_DIRS} + ${LIBSWIPL_INCLUDES}) + + function(libswipl_properties lib outname) +--- swipl-9.2.9/src/minizip/ioapi.h.orig 2024-12-20 02:46:40.000000000 -0700 ++++ swipl-9.2.9/src/minizip/ioapi.h 2025-01-07 14:09:51.722868378 -0700 +@@ -25,7 +25,7 @@ + + #include + #include +-#include "zlib.h" ++#include + + #ifdef HAVE_MINIZIP64_CONF_H + #include "mz64conf.h" +--- swipl-9.2.9/src/minizip/mztools.c.orig 2024-12-20 02:46:40.000000000 -0700 ++++ swipl-9.2.9/src/minizip/mztools.c 2025-01-07 14:09:55.618819467 -0700 +@@ -8,7 +8,7 @@ + #include + #include + #include +-#include "zlib.h" ++#include + #include "unzip.h" + + #define READ_8(adr) ((unsigned char)*(adr)) +@@ -27,7 +27,7 @@ + WRITE_16((unsigned char*)(buff) + 2, (n) >> 16); \ + } while(0) + +-extern int ZEXPORT unzRepair(const char* file, const char* fileOut, const char* fileOutTmp, uLong* nRecovered, uLong* bytesRecovered) { ++extern int Z_EXPORT unzRepair(const char* file, const char* fileOut, const char* fileOutTmp, uLong* nRecovered, uLong* bytesRecovered) { + int err = Z_OK; + FILE* fpZip = fopen(file, "rb"); + FILE* fpOut = fopen(fileOut, "wb"); +--- swipl-9.2.9/src/minizip/mztools.h.orig 2024-12-20 02:46:40.000000000 -0700 ++++ swipl-9.2.9/src/minizip/mztools.h 2025-01-07 14:10:01.338747659 -0700 +@@ -11,9 +11,7 @@ + extern "C" { + #endif + +-#ifndef _ZLIB_H +-#include "zlib.h" +-#endif ++#include + + #include "unzip.h" + +@@ -22,7 +20,7 @@ extern "C" { + fileOut: output file after recovery + fileOutTmp: temporary file name used for recovery + */ +-extern int ZEXPORT unzRepair(const char* file, ++extern int Z_EXPORT unzRepair(const char* file, + const char* fileOut, + const char* fileOutTmp, + uLong* nRecovered, +--- swipl-9.2.9/src/minizip/unzip.c.orig 2024-12-20 02:46:40.000000000 -0700 ++++ swipl-9.2.9/src/minizip/unzip.c 2025-01-07 14:18:47.812124997 -0700 +@@ -72,7 +72,7 @@ + #define NOUNCRYPT + #endif + +-#include "zlib.h" ++#include + #include "unzip.h" + + #ifdef STDC +@@ -90,7 +90,7 @@ + #ifdef Z_U4 + typedef Z_U4 z_crc_t; + #else +-typedef unsigned long z_crc_t; ++typedef uint32_t z_crc_t; + #endif + #endif + #endif +@@ -140,7 +140,7 @@ typedef struct unz_file_info64_internal_ + typedef struct + { + char *read_buffer; /* internal buffer for compressed data */ +- z_stream stream; /* zLib stream structure for inflate */ ++ zng_stream stream; /* zLib stream structure for inflate */ + + #ifdef HAVE_BZIP2 + bz_stream bstream; /* bzLib stream structure for bziped */ +@@ -207,7 +207,7 @@ typedef struct + Clone an unzFile + */ + +-extern unzFile ZEXPORT unzClone(const unzFile file) { ++extern unzFile Z_EXPORT unzClone(const unzFile file) { + unz64_s *s, *c; + if (file==NULL) + return NULL; //UNZ_PARAMERROR; +@@ -334,7 +334,7 @@ local int strcmpcasenosensitive_internal + (like 1 on Unix, 2 on Windows) + + */ +-extern int ZEXPORT unzStringFileNameCompare (const char* fileName1, ++extern int Z_EXPORT unzStringFileNameCompare (const char* fileName1, + const char* fileName2, + int iCaseSensitivity) { + if (iCaseSensitivity==0) +@@ -703,7 +703,7 @@ local unzFile unzOpenInternal(const void + } + + +-extern unzFile ZEXPORT unzOpen2(const char *path, ++extern unzFile Z_EXPORT unzOpen2(const char *path, + zlib_filefunc_def* pzlib_filefunc32_def) { + if (pzlib_filefunc32_def != NULL) + { +@@ -715,7 +715,7 @@ extern unzFile ZEXPORT unzOpen2(const ch + return unzOpenInternal(path, NULL, 0); + } + +-extern unzFile ZEXPORT unzOpen2_64(const void *path, ++extern unzFile Z_EXPORT unzOpen2_64(const void *path, + zlib_filefunc64_def* pzlib_filefunc_def) { + if (pzlib_filefunc_def != NULL) + { +@@ -729,11 +729,11 @@ extern unzFile ZEXPORT unzOpen2_64(const + return unzOpenInternal(path, NULL, 1); + } + +-extern unzFile ZEXPORT unzOpen(const char *path) { ++extern unzFile Z_EXPORT unzOpen(const char *path) { + return unzOpenInternal(path, NULL, 0); + } + +-extern unzFile ZEXPORT unzOpen64(const void *path) { ++extern unzFile Z_EXPORT unzOpen64(const void *path) { + return unzOpenInternal(path, NULL, 1); + } + +@@ -742,7 +742,7 @@ extern unzFile ZEXPORT unzOpen64(const v + If there is files inside the .Zip opened with unzOpenCurrentFile (see later), + these files MUST be closed with unzCloseCurrentFile before call unzClose. + return UNZ_OK if there is no problem. */ +-extern int ZEXPORT unzClose(unzFile file) { ++extern int Z_EXPORT unzClose(unzFile file) { + unz64_s* s; + if (file==NULL) + return UNZ_PARAMERROR; +@@ -761,7 +761,7 @@ extern int ZEXPORT unzClose(unzFile file + Write info about the ZipFile in the *pglobal_info structure. + No preparation of the structure is needed + return UNZ_OK if there is no problem. */ +-extern int ZEXPORT unzGetGlobalInfo64(unzFile file, unz_global_info64* pglobal_info) { ++extern int Z_EXPORT unzGetGlobalInfo64(unzFile file, unz_global_info64* pglobal_info) { + unz64_s* s; + if (file==NULL) + return UNZ_PARAMERROR; +@@ -770,7 +770,7 @@ extern int ZEXPORT unzGetGlobalInfo64(un + return UNZ_OK; + } + +-extern int ZEXPORT unzGetGlobalInfo(unzFile file, unz_global_info* pglobal_info32) { ++extern int Z_EXPORT unzGetGlobalInfo(unzFile file, unz_global_info* pglobal_info32) { + unz64_s* s; + if (file==NULL) + return UNZ_PARAMERROR; +@@ -1040,7 +1040,7 @@ local int unz64local_GetCurrentFileInfoI + No preparation of the structure is needed + return UNZ_OK if there is no problem. + */ +-extern int ZEXPORT unzGetCurrentFileInfo64(unzFile file, ++extern int Z_EXPORT unzGetCurrentFileInfo64(unzFile file, + unz_file_info64 * pfile_info, + char * szFileName, uLong fileNameBufferSize, + void *extraField, uLong extraFieldBufferSize, +@@ -1051,7 +1051,7 @@ extern int ZEXPORT unzGetCurrentFileInfo + szComment,commentBufferSize); + } + +-extern int ZEXPORT unzGetCurrentFileInfo(unzFile file, ++extern int Z_EXPORT unzGetCurrentFileInfo(unzFile file, + unz_file_info * pfile_info, + char * szFileName, uLong fileNameBufferSize, + void *extraField, uLong extraFieldBufferSize, +@@ -1092,7 +1092,7 @@ extern int ZEXPORT unzGetCurrentFileInfo + Set the current file of the zipfile to the first file. + return UNZ_OK if there is no problem + */ +-extern int ZEXPORT unzGoToFirstFile(unzFile file) { ++extern int Z_EXPORT unzGoToFirstFile(unzFile file) { + int err=UNZ_OK; + unz64_s* s; + if (file==NULL) +@@ -1112,7 +1112,7 @@ extern int ZEXPORT unzGoToFirstFile(unzF + return UNZ_OK if there is no problem + return UNZ_END_OF_LIST_OF_FILE if the actual file was the latest. + */ +-extern int ZEXPORT unzGoToNextFile(unzFile file) { ++extern int Z_EXPORT unzGoToNextFile(unzFile file) { + unz64_s* s; + int err; + +@@ -1144,7 +1144,7 @@ extern int ZEXPORT unzGoToNextFile(unzFi + UNZ_OK if the file is found. It becomes the current file. + UNZ_END_OF_LIST_OF_FILE if the file is not found + */ +-extern int ZEXPORT unzLocateFile(unzFile file, const char *szFileName, int iCaseSensitivity) { ++extern int Z_EXPORT unzLocateFile(unzFile file, const char *szFileName, int iCaseSensitivity) { + unz64_s* s; + int err; + +@@ -1219,7 +1219,7 @@ typedef struct unz_file_pos_s + } unz_file_pos; + */ + +-extern int ZEXPORT unzGetFilePos64(unzFile file, unz64_file_pos* file_pos) { ++extern int Z_EXPORT unzGetFilePos64(unzFile file, unz64_file_pos* file_pos) { + unz64_s* s; + + if (file==NULL || file_pos==NULL) +@@ -1234,7 +1234,7 @@ extern int ZEXPORT unzGetFilePos64(unzFi + return UNZ_OK; + } + +-extern int ZEXPORT unzGetFilePos(unzFile file, unz_file_pos* file_pos) { ++extern int Z_EXPORT unzGetFilePos(unzFile file, unz_file_pos* file_pos) { + unz64_file_pos file_pos64; + int err = unzGetFilePos64(file,&file_pos64); + if (err==UNZ_OK) +@@ -1245,7 +1245,7 @@ extern int ZEXPORT unzGetFilePos(unzFile + return err; + } + +-extern int ZEXPORT unzGoToFilePos64(unzFile file, const unz64_file_pos* file_pos) { ++extern int Z_EXPORT unzGoToFilePos64(unzFile file, const unz64_file_pos* file_pos) { + unz64_s* s; + int err; + +@@ -1266,7 +1266,7 @@ extern int ZEXPORT unzGoToFilePos64(unzF + return err; + } + +-extern int ZEXPORT unzGoToFilePos(unzFile file, unz_file_pos* file_pos) { ++extern int Z_EXPORT unzGoToFilePos(unzFile file, unz_file_pos* file_pos) { + unz64_file_pos file_pos64; + if (file_pos == NULL) + return UNZ_PARAMERROR; +@@ -1374,7 +1374,7 @@ local int unz64local_CheckCurrentFileCoh + Open for reading data the current file in the zipfile. + If there is no error and the file is opened, the return value is UNZ_OK. + */ +-extern int ZEXPORT unzOpenCurrentFile3(unzFile file, int* method, ++extern int Z_EXPORT unzOpenCurrentFile3(unzFile file, int* method, + int* level, int raw, const char* password) { + int err=UNZ_OK; + uInt iSizeVar; +@@ -1486,7 +1486,7 @@ extern int ZEXPORT unzOpenCurrentFile3(u + pfile_in_zip_read_info->stream.next_in = 0; + pfile_in_zip_read_info->stream.avail_in = 0; + +- err=inflateInit2(&pfile_in_zip_read_info->stream, -MAX_WBITS); ++ err=zng_inflateInit2(&pfile_in_zip_read_info->stream, -MAX_WBITS); + if (err == Z_OK) + pfile_in_zip_read_info->stream_initialised=Z_DEFLATED; + else +@@ -1544,21 +1544,21 @@ extern int ZEXPORT unzOpenCurrentFile3(u + return UNZ_OK; + } + +-extern int ZEXPORT unzOpenCurrentFile(unzFile file) { ++extern int Z_EXPORT unzOpenCurrentFile(unzFile file) { + return unzOpenCurrentFile3(file, NULL, NULL, 0, NULL); + } + +-extern int ZEXPORT unzOpenCurrentFilePassword(unzFile file, const char* password) { ++extern int Z_EXPORT unzOpenCurrentFilePassword(unzFile file, const char* password) { + return unzOpenCurrentFile3(file, NULL, NULL, 0, password); + } + +-extern int ZEXPORT unzOpenCurrentFile2(unzFile file, int* method, int* level, int raw) { ++extern int Z_EXPORT unzOpenCurrentFile2(unzFile file, int* method, int* level, int raw) { + return unzOpenCurrentFile3(file, method, level, raw, NULL); + } + + /** Addition for GDAL : START */ + +-extern ZPOS64_T ZEXPORT unzGetCurrentFileZStreamPos64(unzFile file) { ++extern ZPOS64_T Z_EXPORT unzGetCurrentFileZStreamPos64(unzFile file) { + unz64_s* s; + file_in_zip64_read_info_s* pfile_in_zip_read_info; + s=(unz64_s*)file; +@@ -1583,7 +1583,7 @@ extern ZPOS64_T ZEXPORT unzGetCurrentFil + return <0 with error code if there is an error + (UNZ_ERRNO for IO error, or zLib error for uncompress error) + */ +-extern int ZEXPORT unzReadCurrentFile(unzFile file, voidp buf, unsigned len) { ++extern int Z_EXPORT unzReadCurrentFile(unzFile file, voidp buf, unsigned len) { + int err=UNZ_OK; + uInt iRead = 0; + unz64_s* s; +@@ -1682,7 +1682,7 @@ extern int ZEXPORT unzReadCurrentFile(un + + pfile_in_zip_read_info->total_out_64 = pfile_in_zip_read_info->total_out_64 + uDoCopy; + +- pfile_in_zip_read_info->crc32 = crc32(pfile_in_zip_read_info->crc32, ++ pfile_in_zip_read_info->crc32 = zng_crc32(pfile_in_zip_read_info->crc32, + pfile_in_zip_read_info->stream.next_out, + uDoCopy); + pfile_in_zip_read_info->rest_read_uncompressed-=uDoCopy; +@@ -1752,7 +1752,7 @@ extern int ZEXPORT unzReadCurrentFile(un + (pfile_in_zip_read_info->rest_read_compressed == 0)) + flush = Z_FINISH; + */ +- err=inflate(&pfile_in_zip_read_info->stream,flush); ++ err=zng_inflate(&pfile_in_zip_read_info->stream,flush); + + if ((err>=0) && (pfile_in_zip_read_info->stream.msg!=NULL)) + err = Z_DATA_ERROR; +@@ -1766,7 +1766,7 @@ extern int ZEXPORT unzReadCurrentFile(un + pfile_in_zip_read_info->total_out_64 = pfile_in_zip_read_info->total_out_64 + uOutThis; + + pfile_in_zip_read_info->crc32 = +- crc32(pfile_in_zip_read_info->crc32,bufBefore, ++ zng_crc32(pfile_in_zip_read_info->crc32,bufBefore, + (uInt)(uOutThis)); + + pfile_in_zip_read_info->rest_read_uncompressed -= +@@ -1790,7 +1790,7 @@ extern int ZEXPORT unzReadCurrentFile(un + /* + Give the current position in uncompressed data + */ +-extern z_off_t ZEXPORT unztell(unzFile file) { ++extern z_off_t Z_EXPORT unztell(unzFile file) { + unz64_s* s; + file_in_zip64_read_info_s* pfile_in_zip_read_info; + if (file==NULL) +@@ -1804,7 +1804,7 @@ extern z_off_t ZEXPORT unztell(unzFile f + return (z_off_t)pfile_in_zip_read_info->stream.total_out; + } + +-extern ZPOS64_T ZEXPORT unztell64(unzFile file) { ++extern ZPOS64_T Z_EXPORT unztell64(unzFile file) { + + unz64_s* s; + file_in_zip64_read_info_s* pfile_in_zip_read_info; +@@ -1823,7 +1823,7 @@ extern ZPOS64_T ZEXPORT unztell64(unzFil + /* + return 1 if the end of file was reached, 0 elsewhere + */ +-extern int ZEXPORT unzeof(unzFile file) { ++extern int Z_EXPORT unzeof(unzFile file) { + unz64_s* s; + file_in_zip64_read_info_s* pfile_in_zip_read_info; + if (file==NULL) +@@ -1854,7 +1854,7 @@ more info in the local-header version th + the return value is the number of bytes copied in buf, or (if <0) + the error code + */ +-extern int ZEXPORT unzGetLocalExtrafield(unzFile file, voidp buf, unsigned len) { ++extern int Z_EXPORT unzGetLocalExtrafield(unzFile file, voidp buf, unsigned len) { + unz64_s* s; + file_in_zip64_read_info_s* pfile_in_zip_read_info; + uInt read_now; +@@ -1901,7 +1901,7 @@ extern int ZEXPORT unzGetLocalExtrafield + Close the file in zip opened with unzOpenCurrentFile + Return UNZ_CRCERROR if all the file was read but the CRC is not good + */ +-extern int ZEXPORT unzCloseCurrentFile(unzFile file) { ++extern int Z_EXPORT unzCloseCurrentFile(unzFile file) { + int err=UNZ_OK; + + unz64_s* s; +@@ -1926,7 +1926,7 @@ extern int ZEXPORT unzCloseCurrentFile(u + free(pfile_in_zip_read_info->read_buffer); + pfile_in_zip_read_info->read_buffer = NULL; + if (pfile_in_zip_read_info->stream_initialised == Z_DEFLATED) +- inflateEnd(&pfile_in_zip_read_info->stream); ++ zng_inflateEnd(&pfile_in_zip_read_info->stream); + #ifdef HAVE_BZIP2 + else if (pfile_in_zip_read_info->stream_initialised == Z_BZIP2ED) + BZ2_bzDecompressEnd(&pfile_in_zip_read_info->bstream); +@@ -1947,7 +1947,7 @@ extern int ZEXPORT unzCloseCurrentFile(u + uSizeBuf is the size of the szComment buffer. + return the number of byte copied or an error code <0 + */ +-extern int ZEXPORT unzGetGlobalComment(unzFile file, char * szComment, uLong uSizeBuf) { ++extern int Z_EXPORT unzGetGlobalComment(unzFile file, char * szComment, uLong uSizeBuf) { + unz64_s* s; + uLong uReadThis ; + if (file==NULL) +@@ -1974,7 +1974,7 @@ extern int ZEXPORT unzGetGlobalComment(u + } + + /* Additions by RX '2004 */ +-extern ZPOS64_T ZEXPORT unzGetOffset64(unzFile file) { ++extern ZPOS64_T Z_EXPORT unzGetOffset64(unzFile file) { + unz64_s* s; + + if (file==NULL) +@@ -1988,7 +1988,7 @@ extern ZPOS64_T ZEXPORT unzGetOffset64(u + return s->pos_in_central_dir; + } + +-extern uLong ZEXPORT unzGetOffset(unzFile file) { ++extern uLong Z_EXPORT unzGetOffset(unzFile file) { + ZPOS64_T offset64; + + if (file==NULL) +@@ -1997,7 +1997,7 @@ extern uLong ZEXPORT unzGetOffset(unzFil + return (uLong)offset64; + } + +-extern int ZEXPORT unzSetOffset64(unzFile file, ZPOS64_T pos) { ++extern int Z_EXPORT unzSetOffset64(unzFile file, ZPOS64_T pos) { + unz64_s* s; + int err; + +@@ -2014,6 +2014,6 @@ extern int ZEXPORT unzSetOffset64(unzFil + return err; + } + +-extern int ZEXPORT unzSetOffset (unzFile file, uLong pos) { ++extern int Z_EXPORT unzSetOffset (unzFile file, uLong pos) { + return unzSetOffset64(file,pos); + } +--- swipl-9.2.9/src/minizip/unzip.h.orig 2024-12-20 02:46:40.000000000 -0700 ++++ swipl-9.2.9/src/minizip/unzip.h 2025-01-07 14:10:06.986676751 -0700 +@@ -47,9 +47,7 @@ + extern "C" { + #endif + +-#ifndef _ZLIB_H +-#include "zlib.h" +-#endif ++#include + + #ifndef _ZLIBIOAPI_H + #include "ioapi.h" +@@ -150,7 +148,7 @@ typedef struct unz_file_info_s + tm_unz tmu_date; + } unz_file_info; + +-extern int ZEXPORT unzStringFileNameCompare(const char* fileName1, ++extern int Z_EXPORT unzStringFileNameCompare(const char* fileName1, + const char* fileName2, + int iCaseSensitivity); + /* +@@ -163,8 +161,8 @@ extern int ZEXPORT unzStringFileNameComp + */ + + +-extern unzFile ZEXPORT unzOpen(const char *path); +-extern unzFile ZEXPORT unzOpen64(const void *path); ++extern unzFile Z_EXPORT unzOpen(const char *path); ++extern unzFile Z_EXPORT unzOpen64(const void *path); + /* + Open a Zip file. path contain the full pathname (by example, + on a Windows XP computer "c:\\zlib\\zlib113.zip" or on an Unix computer +@@ -181,38 +179,38 @@ extern unzFile ZEXPORT unzOpen64(const v + */ + + +-extern unzFile ZEXPORT unzOpen2(const char *path, ++extern unzFile Z_EXPORT unzOpen2(const char *path, + zlib_filefunc_def* pzlib_filefunc_def); + /* + Open a Zip file, like unzOpen, but provide a set of file low level API + for read/write the zip file (see ioapi.h) + */ + +-extern unzFile ZEXPORT unzOpen2_64(const void *path, ++extern unzFile Z_EXPORT unzOpen2_64(const void *path, + zlib_filefunc64_def* pzlib_filefunc_def); + /* + Open a Zip file, like unz64Open, but provide a set of file low level API + for read/write the zip file (see ioapi.h) + */ + +-extern unzFile ZEXPORT unzClone(const unzFile file); ++extern unzFile Z_EXPORT unzClone(const unzFile file); + /* + Clone a ZipFile opened with unzOpen. + The clone provides independent access that can be used for nested + reading or concurrent access. */ + + +-extern int ZEXPORT unzClose(unzFile file); ++extern int Z_EXPORT unzClose(unzFile file); + /* + Close a ZipFile opened with unzOpen. + If there is files inside the .Zip opened with unzOpenCurrentFile (see later), + these files MUST be closed with unzCloseCurrentFile before call unzClose. + return UNZ_OK if there is no problem. */ + +-extern int ZEXPORT unzGetGlobalInfo(unzFile file, ++extern int Z_EXPORT unzGetGlobalInfo(unzFile file, + unz_global_info *pglobal_info); + +-extern int ZEXPORT unzGetGlobalInfo64(unzFile file, ++extern int Z_EXPORT unzGetGlobalInfo64(unzFile file, + unz_global_info64 *pglobal_info); + /* + Write info about the ZipFile in the *pglobal_info structure. +@@ -220,7 +218,7 @@ extern int ZEXPORT unzGetGlobalInfo64(un + return UNZ_OK if there is no problem. */ + + +-extern int ZEXPORT unzGetGlobalComment(unzFile file, ++extern int Z_EXPORT unzGetGlobalComment(unzFile file, + char *szComment, + uLong uSizeBuf); + /* +@@ -233,20 +231,20 @@ extern int ZEXPORT unzGetGlobalComment(u + /***************************************************************************/ + /* Unzip package allow you browse the directory of the zipfile */ + +-extern int ZEXPORT unzGoToFirstFile(unzFile file); ++extern int Z_EXPORT unzGoToFirstFile(unzFile file); + /* + Set the current file of the zipfile to the first file. + return UNZ_OK if there is no problem + */ + +-extern int ZEXPORT unzGoToNextFile(unzFile file); ++extern int Z_EXPORT unzGoToNextFile(unzFile file); + /* + Set the current file of the zipfile to the next file. + return UNZ_OK if there is no problem + return UNZ_END_OF_LIST_OF_FILE if the actual file was the latest. + */ + +-extern int ZEXPORT unzLocateFile(unzFile file, ++extern int Z_EXPORT unzLocateFile(unzFile file, + const char *szFileName, + int iCaseSensitivity); + /* +@@ -268,11 +266,11 @@ typedef struct unz_file_pos_s + uLong num_of_file; /* # of file */ + } unz_file_pos; + +-extern int ZEXPORT unzGetFilePos( ++extern int Z_EXPORT unzGetFilePos( + unzFile file, + unz_file_pos* file_pos); + +-extern int ZEXPORT unzGoToFilePos( ++extern int Z_EXPORT unzGoToFilePos( + unzFile file, + unz_file_pos* file_pos); + +@@ -282,17 +280,17 @@ typedef struct unz64_file_pos_s + ZPOS64_T num_of_file; /* # of file */ + } unz64_file_pos; + +-extern int ZEXPORT unzGetFilePos64( ++extern int Z_EXPORT unzGetFilePos64( + unzFile file, + unz64_file_pos* file_pos); + +-extern int ZEXPORT unzGoToFilePos64( ++extern int Z_EXPORT unzGoToFilePos64( + unzFile file, + const unz64_file_pos* file_pos); + + /* ****************************************** */ + +-extern int ZEXPORT unzGetCurrentFileInfo64(unzFile file, ++extern int Z_EXPORT unzGetCurrentFileInfo64(unzFile file, + unz_file_info64 *pfile_info, + char *szFileName, + uLong fileNameBufferSize, +@@ -301,7 +299,7 @@ extern int ZEXPORT unzGetCurrentFileInfo + char *szComment, + uLong commentBufferSize); + +-extern int ZEXPORT unzGetCurrentFileInfo(unzFile file, ++extern int Z_EXPORT unzGetCurrentFileInfo(unzFile file, + unz_file_info *pfile_info, + char *szFileName, + uLong fileNameBufferSize, +@@ -325,7 +323,7 @@ extern int ZEXPORT unzGetCurrentFileInfo + + /** Addition for GDAL : START */ + +-extern ZPOS64_T ZEXPORT unzGetCurrentFileZStreamPos64(unzFile file); ++extern ZPOS64_T Z_EXPORT unzGetCurrentFileZStreamPos64(unzFile file); + + /** Addition for GDAL : END */ + +@@ -335,13 +333,13 @@ extern ZPOS64_T ZEXPORT unzGetCurrentFil + from it, and close it (you can close it before reading all the file) + */ + +-extern int ZEXPORT unzOpenCurrentFile(unzFile file); ++extern int Z_EXPORT unzOpenCurrentFile(unzFile file); + /* + Open for reading data the current file in the zipfile. + If there is no error, the return value is UNZ_OK. + */ + +-extern int ZEXPORT unzOpenCurrentFilePassword(unzFile file, ++extern int Z_EXPORT unzOpenCurrentFilePassword(unzFile file, + const char* password); + /* + Open for reading data the current file in the zipfile. +@@ -349,7 +347,7 @@ extern int ZEXPORT unzOpenCurrentFilePas + If there is no error, the return value is UNZ_OK. + */ + +-extern int ZEXPORT unzOpenCurrentFile2(unzFile file, ++extern int Z_EXPORT unzOpenCurrentFile2(unzFile file, + int* method, + int* level, + int raw); +@@ -362,7 +360,7 @@ extern int ZEXPORT unzOpenCurrentFile2(u + but you CANNOT set method parameter as NULL + */ + +-extern int ZEXPORT unzOpenCurrentFile3(unzFile file, ++extern int Z_EXPORT unzOpenCurrentFile3(unzFile file, + int* method, + int* level, + int raw, +@@ -377,13 +375,13 @@ extern int ZEXPORT unzOpenCurrentFile3(u + */ + + +-extern int ZEXPORT unzCloseCurrentFile(unzFile file); ++extern int Z_EXPORT unzCloseCurrentFile(unzFile file); + /* + Close the file in zip opened with unzOpenCurrentFile + Return UNZ_CRCERROR if all the file was read but the CRC is not good + */ + +-extern int ZEXPORT unzReadCurrentFile(unzFile file, ++extern int Z_EXPORT unzReadCurrentFile(unzFile file, + voidp buf, + unsigned len); + /* +@@ -397,19 +395,19 @@ extern int ZEXPORT unzReadCurrentFile(un + (UNZ_ERRNO for IO error, or zLib error for uncompress error) + */ + +-extern z_off_t ZEXPORT unztell(unzFile file); ++extern z_off_t Z_EXPORT unztell(unzFile file); + +-extern ZPOS64_T ZEXPORT unztell64(unzFile file); ++extern ZPOS64_T Z_EXPORT unztell64(unzFile file); + /* + Give the current position in uncompressed data + */ + +-extern int ZEXPORT unzeof(unzFile file); ++extern int Z_EXPORT unzeof(unzFile file); + /* + return 1 if the end of file was reached, 0 elsewhere + */ + +-extern int ZEXPORT unzGetLocalExtrafield(unzFile file, ++extern int Z_EXPORT unzGetLocalExtrafield(unzFile file, + voidp buf, + unsigned len); + /* +@@ -428,12 +426,12 @@ extern int ZEXPORT unzGetLocalExtrafield + /***************************************************************************/ + + /* Get the current file offset */ +-extern ZPOS64_T ZEXPORT unzGetOffset64 (unzFile file); +-extern uLong ZEXPORT unzGetOffset (unzFile file); ++extern ZPOS64_T Z_EXPORT unzGetOffset64 (unzFile file); ++extern uLong Z_EXPORT unzGetOffset (unzFile file); + + /* Set the current file offset */ +-extern int ZEXPORT unzSetOffset64 (unzFile file, ZPOS64_T pos); +-extern int ZEXPORT unzSetOffset (unzFile file, uLong pos); ++extern int Z_EXPORT unzSetOffset64 (unzFile file, ZPOS64_T pos); ++extern int Z_EXPORT unzSetOffset (unzFile file, uLong pos); + + + +--- swipl-9.2.9/src/minizip/zip.c.orig 2024-12-20 02:46:40.000000000 -0700 ++++ swipl-9.2.9/src/minizip/zip.c 2025-01-07 14:18:20.235472676 -0700 +@@ -28,7 +28,7 @@ + #include + #include + #include +-#include "zlib.h" ++#include + #include "zip.h" + + #ifdef STDC +@@ -47,7 +47,7 @@ + #ifdef Z_U4 + typedef Z_U4 z_crc_t; + #else +-typedef unsigned long z_crc_t; ++typedef uint32_t z_crc_t; + #endif + #endif + #endif +@@ -138,7 +138,7 @@ typedef struct linkedlist_data_s + + typedef struct + { +- z_stream stream; /* zLib stream structure for inflate */ ++ zng_stream stream; /* zLib stream structure for inflate */ + #ifdef HAVE_BZIP2 + bz_stream bstream; /* bzLib stream structure for bziped */ + #endif +@@ -826,7 +826,7 @@ local int LoadCentralDirectoryRecord(zip + + + /************************************************************/ +-extern zipFile ZEXPORT zipOpen3(const void *pathname, int append, zipcharpc* globalcomment, zlib_filefunc64_32_def* pzlib_filefunc64_32_def) { ++extern zipFile Z_EXPORT zipOpen3(const void *pathname, int append, zipcharpc* globalcomment, zlib_filefunc64_32_def* pzlib_filefunc64_32_def) { + zip64_internal ziinit; + zip64_internal* zi; + int err=ZIP_OK; +@@ -896,7 +896,7 @@ extern zipFile ZEXPORT zipOpen3(const vo + } + } + +-extern zipFile ZEXPORT zipOpen2(const char *pathname, int append, zipcharpc* globalcomment, zlib_filefunc_def* pzlib_filefunc32_def) { ++extern zipFile Z_EXPORT zipOpen2(const char *pathname, int append, zipcharpc* globalcomment, zlib_filefunc_def* pzlib_filefunc32_def) { + if (pzlib_filefunc32_def != NULL) + { + zlib_filefunc64_32_def zlib_filefunc64_32_def_fill; +@@ -907,7 +907,7 @@ extern zipFile ZEXPORT zipOpen2(const ch + return zipOpen3(pathname, append, globalcomment, NULL); + } + +-extern zipFile ZEXPORT zipOpen2_64(const void *pathname, int append, zipcharpc* globalcomment, zlib_filefunc64_def* pzlib_filefunc_def) { ++extern zipFile Z_EXPORT zipOpen2_64(const void *pathname, int append, zipcharpc* globalcomment, zlib_filefunc64_def* pzlib_filefunc_def) { + if (pzlib_filefunc_def != NULL) + { + zlib_filefunc64_32_def zlib_filefunc64_32_def_fill; +@@ -922,11 +922,11 @@ extern zipFile ZEXPORT zipOpen2_64(const + + + +-extern zipFile ZEXPORT zipOpen(const char* pathname, int append) { ++extern zipFile Z_EXPORT zipOpen(const char* pathname, int append) { + return zipOpen3((const void*)pathname,append,NULL,NULL); + } + +-extern zipFile ZEXPORT zipOpen64(const void* pathname, int append) { ++extern zipFile Z_EXPORT zipOpen64(const void* pathname, int append) { + return zipOpen3(pathname,append,NULL,NULL); + } + +@@ -1026,7 +1026,7 @@ local int Write_LocalFileHeader(zip64_in + It is not done here because then we need to realloc a new buffer since parameters are 'const' and I want to minimize + unnecessary allocations. + */ +-extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char* filename, const zip_fileinfo* zipfi, ++extern int Z_EXPORT zipOpenNewFileInZip4_64(zipFile file, const char* filename, const zip_fileinfo* zipfi, + const void* extrafield_local, uInt size_extrafield_local, + const void* extrafield_global, uInt size_extrafield_global, + const char* comment, int method, int level, int raw, +@@ -1202,7 +1202,7 @@ extern int ZEXPORT zipOpenNewFileInZip4_ + if (windowBits>0) + windowBits = -windowBits; + +- err = deflateInit2(&zi->ci.stream, level, Z_DEFLATED, windowBits, memLevel, strategy); ++ err = zng_deflateInit2(&zi->ci.stream, level, Z_DEFLATED, windowBits, memLevel, strategy); + + if (err==Z_OK) + zi->ci.stream_initialised = Z_DEFLATED; +@@ -1230,7 +1230,7 @@ extern int ZEXPORT zipOpenNewFileInZip4_ + unsigned char bufHead[RAND_HEAD_LEN]; + unsigned int sizeHead; + zi->ci.encrypt = 1; +- zi->ci.pcrc_32_tab = get_crc_table(); ++ zi->ci.pcrc_32_tab = zng_get_crc_table(); + /*init_keys(password,zi->ci.keys,zi->ci.pcrc_32_tab);*/ + + sizeHead=crypthead(password,bufHead,RAND_HEAD_LEN,zi->ci.keys,zi->ci.pcrc_32_tab,crcForCrypting); +@@ -1246,7 +1246,7 @@ extern int ZEXPORT zipOpenNewFileInZip4_ + return err; + } + +-extern int ZEXPORT zipOpenNewFileInZip4(zipFile file, const char* filename, const zip_fileinfo* zipfi, ++extern int Z_EXPORT zipOpenNewFileInZip4(zipFile file, const char* filename, const zip_fileinfo* zipfi, + const void* extrafield_local, uInt size_extrafield_local, + const void* extrafield_global, uInt size_extrafield_global, + const char* comment, int method, int level, int raw, +@@ -1261,7 +1261,7 @@ extern int ZEXPORT zipOpenNewFileInZip4( + password, crcForCrypting, versionMadeBy, flagBase, 0); + } + +-extern int ZEXPORT zipOpenNewFileInZip3(zipFile file, const char* filename, const zip_fileinfo* zipfi, ++extern int Z_EXPORT zipOpenNewFileInZip3(zipFile file, const char* filename, const zip_fileinfo* zipfi, + const void* extrafield_local, uInt size_extrafield_local, + const void* extrafield_global, uInt size_extrafield_global, + const char* comment, int method, int level, int raw, +@@ -1275,7 +1275,7 @@ extern int ZEXPORT zipOpenNewFileInZip3( + password, crcForCrypting, VERSIONMADEBY, 0, 0); + } + +-extern int ZEXPORT zipOpenNewFileInZip3_64(zipFile file, const char* filename, const zip_fileinfo* zipfi, ++extern int Z_EXPORT zipOpenNewFileInZip3_64(zipFile file, const char* filename, const zip_fileinfo* zipfi, + const void* extrafield_local, uInt size_extrafield_local, + const void* extrafield_global, uInt size_extrafield_global, + const char* comment, int method, int level, int raw, +@@ -1289,7 +1289,7 @@ extern int ZEXPORT zipOpenNewFileInZip3_ + password, crcForCrypting, VERSIONMADEBY, 0, zip64); + } + +-extern int ZEXPORT zipOpenNewFileInZip2(zipFile file, const char* filename, const zip_fileinfo* zipfi, ++extern int Z_EXPORT zipOpenNewFileInZip2(zipFile file, const char* filename, const zip_fileinfo* zipfi, + const void* extrafield_local, uInt size_extrafield_local, + const void* extrafield_global, uInt size_extrafield_global, + const char* comment, int method, int level, int raw) { +@@ -1301,7 +1301,7 @@ extern int ZEXPORT zipOpenNewFileInZip2( + NULL, 0, VERSIONMADEBY, 0, 0); + } + +-extern int ZEXPORT zipOpenNewFileInZip2_64(zipFile file, const char* filename, const zip_fileinfo* zipfi, ++extern int Z_EXPORT zipOpenNewFileInZip2_64(zipFile file, const char* filename, const zip_fileinfo* zipfi, + const void* extrafield_local, uInt size_extrafield_local, + const void* extrafield_global, uInt size_extrafield_global, + const char* comment, int method, int level, int raw, int zip64) { +@@ -1313,7 +1313,7 @@ extern int ZEXPORT zipOpenNewFileInZip2_ + NULL, 0, VERSIONMADEBY, 0, zip64); + } + +-extern int ZEXPORT zipOpenNewFileInZip64(zipFile file, const char* filename, const zip_fileinfo* zipfi, ++extern int Z_EXPORT zipOpenNewFileInZip64(zipFile file, const char* filename, const zip_fileinfo* zipfi, + const void* extrafield_local, uInt size_extrafield_local, + const void*extrafield_global, uInt size_extrafield_global, + const char* comment, int method, int level, int zip64) { +@@ -1325,7 +1325,7 @@ extern int ZEXPORT zipOpenNewFileInZip64 + NULL, 0, VERSIONMADEBY, 0, zip64); + } + +-extern int ZEXPORT zipOpenNewFileInZip(zipFile file, const char* filename, const zip_fileinfo* zipfi, ++extern int Z_EXPORT zipOpenNewFileInZip(zipFile file, const char* filename, const zip_fileinfo* zipfi, + const void* extrafield_local, uInt size_extrafield_local, + const void*extrafield_global, uInt size_extrafield_global, + const char* comment, int method, int level) { +@@ -1375,7 +1375,7 @@ local int zip64FlushWriteBuffer(zip64_in + return err; + } + +-extern int ZEXPORT zipWriteInFileInZip(zipFile file, const void* buf, unsigned int len) { ++extern int Z_EXPORT zipWriteInFileInZip(zipFile file, const void* buf, unsigned int len) { + zip64_internal* zi; + int err=ZIP_OK; + +@@ -1386,7 +1386,7 @@ extern int ZEXPORT zipWriteInFileInZip(z + if (zi->in_opened_file_inzip == 0) + return ZIP_PARAMERROR; + +- zi->ci.crc32 = crc32(zi->ci.crc32,buf,(uInt)len); ++ zi->ci.crc32 = zng_crc32(zi->ci.crc32,buf,(uInt)len); + + #ifdef HAVE_BZIP2 + if(zi->ci.method == Z_BZIP2ED && (!zi->ci.raw)) +@@ -1445,7 +1445,7 @@ extern int ZEXPORT zipWriteInFileInZip(z + if ((zi->ci.method == Z_DEFLATED) && (!zi->ci.raw)) + { + uLong uTotalOutBefore = zi->ci.stream.total_out; +- err=deflate(&zi->ci.stream, Z_NO_FLUSH); ++ err=zng_deflate(&zi->ci.stream, Z_NO_FLUSH); + + zi->ci.pos_in_buffered_data += (uInt)(zi->ci.stream.total_out - uTotalOutBefore) ; + } +@@ -1476,11 +1476,11 @@ extern int ZEXPORT zipWriteInFileInZip(z + return err; + } + +-extern int ZEXPORT zipCloseFileInZipRaw(zipFile file, uLong uncompressed_size, uLong crc32) { ++extern int Z_EXPORT zipCloseFileInZipRaw(zipFile file, uLong uncompressed_size, uLong crc32) { + return zipCloseFileInZipRaw64 (file, uncompressed_size, crc32); + } + +-extern int ZEXPORT zipCloseFileInZipRaw64(zipFile file, ZPOS64_T uncompressed_size, uLong crc32) { ++extern int Z_EXPORT zipCloseFileInZipRaw64(zipFile file, ZPOS64_T uncompressed_size, uLong crc32) { + zip64_internal* zi; + ZPOS64_T compressed_size; + uLong invalidValue = 0xffffffff; +@@ -1508,7 +1508,7 @@ extern int ZEXPORT zipCloseFileInZipRaw6 + zi->ci.stream.next_out = zi->ci.buffered_data; + } + uTotalOutBefore = zi->ci.stream.total_out; +- err=deflate(&zi->ci.stream, Z_FINISH); ++ err=zng_deflate(&zi->ci.stream, Z_FINISH); + zi->ci.pos_in_buffered_data += (uInt)(zi->ci.stream.total_out - uTotalOutBefore) ; + } + } +@@ -1550,7 +1550,7 @@ extern int ZEXPORT zipCloseFileInZipRaw6 + + if ((zi->ci.method == Z_DEFLATED) && (!zi->ci.raw)) + { +- int tmp_err = deflateEnd(&zi->ci.stream); ++ int tmp_err = zng_deflateEnd(&zi->ci.stream); + if (err == ZIP_OK) + err = tmp_err; + zi->ci.stream_initialised = 0; +@@ -1715,7 +1715,7 @@ extern int ZEXPORT zipCloseFileInZipRaw6 + return err; + } + +-extern int ZEXPORT zipCloseFileInZip(zipFile file) { ++extern int Z_EXPORT zipCloseFileInZip(zipFile file) { + return zipCloseFileInZipRaw (file,0,0); + } + +@@ -1843,7 +1843,7 @@ local int Write_GlobalComment(zip64_inte + return err; + } + +-extern int ZEXPORT zipClose(zipFile file, const char* global_comment) { ++extern int Z_EXPORT zipClose(zipFile file, const char* global_comment) { + zip64_internal* zi; + int err = 0; + uLong size_centraldir = 0; +@@ -1911,7 +1911,7 @@ extern int ZEXPORT zipClose(zipFile file + return err; + } + +-extern int ZEXPORT zipRemoveExtraInfoBlock(char* pData, int* dataLen, short sHeader) { ++extern int Z_EXPORT zipRemoveExtraInfoBlock(char* pData, int* dataLen, short sHeader) { + char* p = pData; + int size = 0; + char* pNewHeader; +--- swipl-9.2.9/src/minizip/zip.h.orig 2024-12-20 02:46:40.000000000 -0700 ++++ swipl-9.2.9/src/minizip/zip.h 2025-01-07 14:10:11.410621214 -0700 +@@ -46,9 +46,7 @@ extern "C" { + + //#define HAVE_BZIP2 + +-#ifndef _ZLIB_H +-#include "zlib.h" +-#endif ++#include + + #ifndef _ZLIBIOAPI_H + #include "ioapi.h" +@@ -113,8 +111,8 @@ typedef const char* zipcharpc; + #define APPEND_STATUS_CREATEAFTER (1) + #define APPEND_STATUS_ADDINZIP (2) + +-extern zipFile ZEXPORT zipOpen(const char *pathname, int append); +-extern zipFile ZEXPORT zipOpen64(const void *pathname, int append); ++extern zipFile Z_EXPORT zipOpen(const char *pathname, int append); ++extern zipFile Z_EXPORT zipOpen64(const void *pathname, int append); + /* + Create a zipfile. + pathname contain on Windows XP a filename like "c:\\zlib\\zlib113.zip" or on +@@ -134,22 +132,22 @@ extern zipFile ZEXPORT zipOpen64(const v + Of course, you can use RAW reading and writing to copy the file you did not want delete + */ + +-extern zipFile ZEXPORT zipOpen2(const char *pathname, ++extern zipFile Z_EXPORT zipOpen2(const char *pathname, + int append, + zipcharpc* globalcomment, + zlib_filefunc_def* pzlib_filefunc_def); + +-extern zipFile ZEXPORT zipOpen2_64(const void *pathname, ++extern zipFile Z_EXPORT zipOpen2_64(const void *pathname, + int append, + zipcharpc* globalcomment, + zlib_filefunc64_def* pzlib_filefunc_def); + +-extern zipFile ZEXPORT zipOpen3(const void *pathname, ++extern zipFile Z_EXPORT zipOpen3(const void *pathname, + int append, + zipcharpc* globalcomment, + zlib_filefunc64_32_def* pzlib_filefunc64_32_def); + +-extern int ZEXPORT zipOpenNewFileInZip(zipFile file, ++extern int Z_EXPORT zipOpenNewFileInZip(zipFile file, + const char* filename, + const zip_fileinfo* zipfi, + const void* extrafield_local, +@@ -160,7 +158,7 @@ extern int ZEXPORT zipOpenNewFileInZip(z + int method, + int level); + +-extern int ZEXPORT zipOpenNewFileInZip64(zipFile file, ++extern int Z_EXPORT zipOpenNewFileInZip64(zipFile file, + const char* filename, + const zip_fileinfo* zipfi, + const void* extrafield_local, +@@ -189,7 +187,7 @@ extern int ZEXPORT zipOpenNewFileInZip64 + */ + + +-extern int ZEXPORT zipOpenNewFileInZip2(zipFile file, ++extern int Z_EXPORT zipOpenNewFileInZip2(zipFile file, + const char* filename, + const zip_fileinfo* zipfi, + const void* extrafield_local, +@@ -202,7 +200,7 @@ extern int ZEXPORT zipOpenNewFileInZip2( + int raw); + + +-extern int ZEXPORT zipOpenNewFileInZip2_64(zipFile file, ++extern int Z_EXPORT zipOpenNewFileInZip2_64(zipFile file, + const char* filename, + const zip_fileinfo* zipfi, + const void* extrafield_local, +@@ -218,7 +216,7 @@ extern int ZEXPORT zipOpenNewFileInZip2_ + Same than zipOpenNewFileInZip, except if raw=1, we write raw file + */ + +-extern int ZEXPORT zipOpenNewFileInZip3(zipFile file, ++extern int Z_EXPORT zipOpenNewFileInZip3(zipFile file, + const char* filename, + const zip_fileinfo* zipfi, + const void* extrafield_local, +@@ -235,7 +233,7 @@ extern int ZEXPORT zipOpenNewFileInZip3( + const char* password, + uLong crcForCrypting); + +-extern int ZEXPORT zipOpenNewFileInZip3_64(zipFile file, ++extern int Z_EXPORT zipOpenNewFileInZip3_64(zipFile file, + const char* filename, + const zip_fileinfo* zipfi, + const void* extrafield_local, +@@ -260,7 +258,7 @@ extern int ZEXPORT zipOpenNewFileInZip3_ + crcForCrypting : crc of file to compress (needed for crypting) + */ + +-extern int ZEXPORT zipOpenNewFileInZip4(zipFile file, ++extern int Z_EXPORT zipOpenNewFileInZip4(zipFile file, + const char* filename, + const zip_fileinfo* zipfi, + const void* extrafield_local, +@@ -280,7 +278,7 @@ extern int ZEXPORT zipOpenNewFileInZip4( + uLong flagBase); + + +-extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, ++extern int Z_EXPORT zipOpenNewFileInZip4_64(zipFile file, + const char* filename, + const zip_fileinfo* zipfi, + const void* extrafield_local, +@@ -306,23 +304,23 @@ extern int ZEXPORT zipOpenNewFileInZip4_ + */ + + +-extern int ZEXPORT zipWriteInFileInZip(zipFile file, ++extern int Z_EXPORT zipWriteInFileInZip(zipFile file, + const void* buf, + unsigned len); + /* + Write data in the zipfile + */ + +-extern int ZEXPORT zipCloseFileInZip(zipFile file); ++extern int Z_EXPORT zipCloseFileInZip(zipFile file); + /* + Close the current file in the zipfile + */ + +-extern int ZEXPORT zipCloseFileInZipRaw(zipFile file, ++extern int Z_EXPORT zipCloseFileInZipRaw(zipFile file, + uLong uncompressed_size, + uLong crc32); + +-extern int ZEXPORT zipCloseFileInZipRaw64(zipFile file, ++extern int Z_EXPORT zipCloseFileInZipRaw64(zipFile file, + ZPOS64_T uncompressed_size, + uLong crc32); + +@@ -332,14 +330,14 @@ extern int ZEXPORT zipCloseFileInZipRaw6 + uncompressed_size and crc32 are value for the uncompressed size + */ + +-extern int ZEXPORT zipClose(zipFile file, ++extern int Z_EXPORT zipClose(zipFile file, + const char* global_comment); + /* + Close the zipfile + */ + + +-extern int ZEXPORT zipRemoveExtraInfoBlock(char* pData, int* dataLen, short sHeader); ++extern int Z_EXPORT zipRemoveExtraInfoBlock(char* pData, int* dataLen, short sHeader); + /* + zipRemoveExtraInfoBlock - Added by Mathias Svensson + From ea6067fa69c6013bbda02002712064106515dafd Mon Sep 17 00:00:00 2001 From: Jerry James Date: Tue, 7 Jan 2025 15:11:09 -0700 Subject: [PATCH 59/66] Update obsoletes to stay ahead of F40 --- pl.spec | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pl.spec b/pl.spec index 6cc8fe5..b0e6e22 100644 --- a/pl.spec +++ b/pl.spec @@ -159,11 +159,11 @@ Requires: swi-prolog-nox = %{version}-%{release} Requires: swi-prolog-x = %{version}-%{release} # This can be removed when F45 reaches EOL -Obsoletes: pl < 9.2.8-2 +Obsoletes: pl < 9.2.9-2 Provides: pl = %{version}-%{release} -Obsoletes: pl-devel < 9.2.8-2 +Obsoletes: pl-devel < 9.2.9-2 Provides: pl-devel = %{version}-%{release} -Obsoletes: pl-compat-yap-devel < 9.2.8-2 +Obsoletes: pl-compat-yap-devel < 9.2.9-2 Provides: pl-compat-yap-devel = %{version}-%{release} %description -n swi-prolog %_desc @@ -289,7 +289,7 @@ Summary: ISO/Edinburgh-style Prolog interpreter - with X support Requires: swi-prolog-nox%{?_isa} = %{version}-%{release} # This can be removed when F45 reaches EOL -Obsoletes: pl-xpce < 9.2.8-2 +Obsoletes: pl-xpce < 9.2.9-2 Provides: pl-xpce = %{version}-%{release} %description -n swi-prolog-x %_desc @@ -311,7 +311,7 @@ Requires: java-headless Requires: javapackages-tools # This can be removed when F45 reaches EOL -Obsoletes: pl-jpl < 9.2.8-2 +Obsoletes: pl-jpl < 9.2.9-2 Provides: pl-jpl = %{version}-%{release} %description -n swi-prolog-java %_desc @@ -326,7 +326,7 @@ Summary: SWI-Prolog ODBC interface Requires: swi-prolog-nox%{?_isa} = %{version}-%{release} # This can be removed when F45 reaches EOL -Obsoletes: pl-odbc < 9.2.8-2 +Obsoletes: pl-odbc < 9.2.9-2 Provides: pl-odbc = %{version}-%{release} %description -n swi-prolog-odbc %_desc @@ -368,7 +368,7 @@ BuildArch: noarch Requires: swi-prolog-core = %{version}-%{release} # This can be removed when F45 reaches EOL -Obsoletes: pl-doc < 9.2.8-2 +Obsoletes: pl-doc < 9.2.9-2 Provides: pl-doc = %{version}-%{release} %description -n swi-prolog-doc %_desc From b0ae1d3aa0d28d080d31949b45d6711ffc27feb4 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 18 Jan 2025 10:11:00 +0000 Subject: [PATCH 60/66] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From c3aaa6b11fb50b5b497c4d44c5aa8e581dfc34b9 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Sat, 18 Jan 2025 11:35:53 -0700 Subject: [PATCH 61/66] Add patch for C23 compatibility --- pl.spec | 4 ++++ swipl-9.2.9-c23.patch | 11 +++++++++++ 2 files changed, 15 insertions(+) create mode 100644 swipl-9.2.9-c23.patch diff --git a/pl.spec b/pl.spec index b0e6e22..5cc18ff 100644 --- a/pl.spec +++ b/pl.spec @@ -24,6 +24,9 @@ Patch2: swipl-8.2.0-unbundle-libstemmer.patch Patch3: swipl-9.2.7-inclpr-math.patch # Use zlib-ng directly rather than via the zlib compatibility interface Patch4: swipl-9.2.9-zlib-ng.patch +# Adapt to changed semantics of "type f();" in C23 +# https://github.com/SWI-Prolog/swipl/pull/33 +Patch5: swipl-9.2.9-c23.patch # See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} @@ -404,6 +407,7 @@ This package provides a Qt-based GUI for SWI-Prolog. %patch -P0 -p1 -b .jni %autopatch -p1 -m1 +%conf # Fix the installation path on 64-bit systems if [ "%{_lib}" = "lib64" ]; then sed -e 's,lib\(/\${SWIPL_INSTALL_DIR}\),lib64\1,' \ diff --git a/swipl-9.2.9-c23.patch b/swipl-9.2.9-c23.patch new file mode 100644 index 0000000..4ca03ad --- /dev/null +++ b/swipl-9.2.9-c23.patch @@ -0,0 +1,11 @@ +--- swipl-9.2.9/src/SWI-Prolog.h.orig 2024-12-20 02:46:40.000000000 -0700 ++++ swipl-9.2.9/src/SWI-Prolog.h 2025-01-18 11:04:45.028193615 -0700 +@@ -209,7 +209,7 @@ typedef _PLS(PL_local_data) *PL_engine_t + typedef uintptr_t PL_atomic_t; /* same a word */ + typedef uintptr_t foreign_t; /* return type of foreign functions */ + typedef wchar_t pl_wchar_t; /* Prolog wide character */ +-#ifdef __cplusplus ++#if defined(__cplusplus) || __STDC_VERSION__ > 201710L + typedef void * pl_function_t; /* pass function as void* */ + #else + typedef foreign_t (*pl_function_t)(); /* foreign language functions */ From c5e01a597ad0822e7bf7b54d5d02c750b353df75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= Date: Sat, 1 Feb 2025 19:56:37 +0100 Subject: [PATCH 62/66] Add explicit BR: libxcrypt-devel MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Björn Esser --- pl.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pl.spec b/pl.spec index 5cc18ff..67a6dda 100644 --- a/pl.spec +++ b/pl.spec @@ -88,6 +88,9 @@ BuildRequires: pkgconfig(Qt6) BuildRequires: pkgconfig(yaml-0.1) # zlib BuildRequires: pkgconfig(zlib-ng) +# crypt +BuildRequires: libxcrypt-devel + # Doc building # Gated to Fedora as EL is currently missing tex(a4wide.sty) %if 0%{?fedora} From fe9a6c0cbc3bcf3891a93abda557ca2b5ca1c479 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Mon, 2 Jun 2025 22:56:30 +0200 Subject: [PATCH 63/66] Rebuilt for Python 3.14 From d179830d78f1d04f1d37527f9d4a21bd9a773a4b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 25 Jul 2025 05:48:42 +0000 Subject: [PATCH 64/66] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From 0e3c032d50ec41c51a9a859217f0ffa4a077627b Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Wed, 30 Jul 2025 00:58:24 +0200 Subject: [PATCH 65/66] Rebuilt for java-25-openjdk as preffered jdk https://fedoraproject.org/wiki/Changes/Java25AndNoMoreSystemJdk Note, that since f43, you should be always explicit on what jdk to use. This commit should do exactly that. --- pl.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pl.spec b/pl.spec index 67a6dda..8c71abf 100644 --- a/pl.spec +++ b/pl.spec @@ -72,7 +72,7 @@ BuildRequires: openssl BuildRequires: pkgconfig(openssl) # jpl %ifarch %{java_arches} -BuildRequires: java-devel +BuildRequires: java-25-devel BuildRequires: mvn(junit:junit) BuildRequires: mvn(org.hamcrest:hamcrest) %endif @@ -313,7 +313,7 @@ follows a rather unique approach for developing GUI applications, as follows: %package -n swi-prolog-java Summary: Bidirectional interface between SWI-Prolog and Java Requires: swi-prolog-nox%{?_isa} = %{version}-%{release} -Requires: java-headless +Requires: java-25-headless Requires: javapackages-tools # This can be removed when F45 reaches EOL From 73f467849e8c4749bedbf9cad742d2708287480b Mon Sep 17 00:00:00 2001 From: Jerry James Date: Tue, 9 Dec 2025 06:39:56 -0700 Subject: [PATCH 66/66] Version 10.0.0 - Drop upstreamed C23 patch - Add patch to properly detect the secure_getenv function - Figure the License fields out all over again - Rename swi-prolog-nox to swi-prolog-cli - Combine swi-prolog-x into swi-prolog-win --- licenses.txt | 221 +++++++++++++++++ pl.spec | 401 +++++++++++++++---------------- sources | 3 +- swipl-10.0.0-secure-getenv.patch | 13 + swipl-9.2.9-c23.patch | 11 - 5 files changed, 424 insertions(+), 225 deletions(-) create mode 100644 licenses.txt create mode 100644 swipl-10.0.0-secure-getenv.patch delete mode 100644 swipl-9.2.9-c23.patch diff --git a/licenses.txt b/licenses.txt new file mode 100644 index 0000000..bab9088 --- /dev/null +++ b/licenses.txt @@ -0,0 +1,221 @@ +The swipl project is released under the BSD-2-Clause license. Exceptions are +noted below. The status of each file is indicated with the following codes: + +BD = in the swi-prolog-bdb package +CL = in the swi-prolog-cli package +CP = in the swi-prolog-core-packages package +CR = in the swi-prolog-core package +DC = in the swi-prolog-doc package +FL = in the swi-prolog-full package +JV = in the swi-prolog-java pacakge +MN = in the main package, swi-prolog +NP = not packaged; these files do not influence the package License field +OD = in the swi-prolog-odbc package +TS = in the swi-prolog-test package +WN = in the swi-prolog-win package + +bcrypt-Solar-Designer +--------------------- +CL packages/ssl/crypt_blowfish.{c,h} + +Beerware +-------- +CP packages/clib/md5passwd.c + +Brian-Gladman-3-Clause OR GPL-1.0-or-later +------------------------------------------ +CP packages/clib/sha1/brg_endian.h +CP packages/clib/sha1/brg_types.h +CP packages/clib/sha1/hmac.{c,h} +CP packages/clib/sha1/pwd2key.{c,h} +CP packages/clib/sha1/sha* +CR src/pl-termhash.{c,h} + +BSD-2-Clause AND BSD-3-Clause +----------------------------- +CL packages/libedit/libedit4pl.c + +BSD-2-Clause AND FBM AND HPND-Pbmplus +------------------------------------- +WN packages/xpce/src/img/gifwrite.c + +BSD-2-Clause AND GPL-2.0-or-later +--------------------------------- +TS src/Tests/core/test_coroutining.pl + +BSD-2-Clause AND IJG +-------------------- +WN packages/xpce/src/img/jdatadst.c +WN packages/xpce/src/img/jdatasrc.c + +BSD-2-Clause AND LicenseRef-Fedora-Public-Domain +------------------------------------------------ +CR library/aggregate.pl +WN packages/xpce/src/gra/colour.c + +BSD-2-Clause AND MIT +-------------------- +CP packages/http/http_stream.pl +CP packages/http/multipart.c + +BSD-2-Clause AND Unicode-DFS-2016 +--------------------------------- +CR library/blocks.pl + +BSD-2-Clause OR Artistic-2.0 +---------------------------- +CP library/ugraphs.pl + +BSD-3-Clause +------------ +CP packages/clib/bsd-crypt.c +NP packages/libedit/libedit/* +NP packages/odbc/cmake/FindODBC.cmake +NP packages/protobufs/interop/google/protobuf/unittest* +CL packages/tipc/tipcutils/tipc-config.c +NP packages/xpce/cmake/FindFontConfig.cmake +CR src/libbf/mersenne-twister.{c,h} + +CC-BY-SA-3.0 +------------ +DC man/main.doc +WN packages/xpce/man/course/doc.doc +WN packages/xpce/man/info/titlepage.def + +dtoa +---- +CR src/os/dtoa.c + +Free for non-commercial use +--------------------------- +NP bench/unify.pl (removed from tarball) +NP bench/simple_analyzer.pl (removed from tarball) + +GFDL-1.3-no-invariants-or-later +------------------------------- +CP packages/sweep/sweep.texi + +GPL-1.0-or-later OR Artistic-1.0-Perl +------------------------------------- +CP packages/nlp/double_metaphone.c + +GPL-2.0-or-later +---------------- +NP repackage.sh (not included in the upstream tarball) +NP packages/xpce/man/info/texinfo.tex + +GPL-2.0-or-later WITH Bison-exception-2.2 AND LicenseRef-Fedora-Public-Domain +----------------------------------------------------------------------------- +WN packages/xpce/src/gnu/getdate.c + +GPL-2.0-or-later with SWI-exception +----------------------------------- +CP packages/clpqr/* +CP packages/http/http_server_health.pl +TS src/Tests/compile/test_autoload.pl +TS tests/library/test_pio.pl + +GPL-3.0-or-later +---------------- +CP packages/sweep/emacs-module.h + +Knuth-CTAN +---------- +DC man/name.bst +WN packages/xpce/TeX/name.bst + +LGPL-2.0-only +------------- +NP cmake/TestSignalType.cmake + +LGPL-2.0-or-later +----------------- +CP packages/nlp/isub.c + +LGPL-2.1-or-later +----------------- +TS src/Tests/core/test_arith.pl +TS src/Tests/core/test_bips.pl +TS src/Tests/core/test_dcg.pl +TS src/Tests/core/test_sort.pl +TS src/Tests/core/test_subsumes.pl + +LicenseRef-Fedora-Public-Domain +------------------------------- +NP bench/programs/derive.pl +NP bench/programs/divide10.pl +NP bench/programs/eval.pl +NP bench/programs/fib.pl +NP bench/programs/log10.pl +NP bench/programs/nreverse.pl +NP bench/programs/ops8.pl +NP bench/programs/qsort.pl +NP bench/programs/queens_clpfd.pl +NP bench/programs/query.pl +NP bench/programs/serialise.pl +NP bench/programs/sieve.pl +NP bench/programs/times10.pl +CR library/dialect/bim.pl +NP packages/clib/demo/* +NP packages/cpp/likes.cpp +NP packages/http/examples/demo_body.pl +NP packages/http/examples/demo_daemon.pl +CP packages/semweb/murmur.{c,h} +NP packages/ssl/https.pl +NP packages/stomp/examples/* +NP packages/swipy/tests/russel.pl +WN packages/xpce/man/course/bib.pl +WN packages/xpce/man/course/fam.pl +WN packages/xpce/man/course/ftp.pl +WN packages/xpce/man/course/learner.pl +WN packages/xpce/man/course/lib/prompt.pl +WN packages/xpce/man/info/dialog.pl +WN packages/xpce/man/info/which.pl +WN packages/xpce/man/info/window.pl +WN packages/xpce/man/reference/class/image.doc +WN packages/xpce/man/userguide/examples/graphedit.pl +WN packages/xpce/src/gnu/getdate-source.y +WN packages/xpce/src/gnu/y.tab +NP scripts/swipl-bt +CR src/pl-hash.{c,h} +CR src/libtai/* +NP src/tools/functions.pm +NP src/tools/update-deps + +LPPL-1.3c +--------- +DC man/bk9.clo +DC man/swipl.cls + +MIT +--- +NP bench/programs/chat_parser.pl +NP packages/http/web/js/jquery* +CP packages/mqi/python/* +NP packages/pcre/cmake/FindPCRE.cmake +NP packages/swipy/test_xsb_janus.pl +NP packages/swipy/xsb_tests/* +CR src/libbf/cutils.{c,h} +CR src/libbf/libbf.{c,h} + +MIT AND Unicode-DFS-2015 +------------------------ +CP packages/utf8proc/* + +Spencer-99 AND TCL AND PostgreSQL +--------------------------------- +WN packages/xpce/src/rgx/* + +W3C +--- +CP packages/sgml/DTD/* + +X11 +--- +NP packages/xpce/deps/xpm/* + +Zlib +---- +CP packages/clib/md5.{c,h} +CP packages/semweb/md5.{c,h} +CR src/minizip/* diff --git a/pl.spec b/pl.spec index 8c71abf..322ecbd 100644 --- a/pl.spec +++ b/pl.spec @@ -2,18 +2,19 @@ %global swipl_arch %{_target_cpu}-linux Name: pl -Version: 9.2.9 +Version: 10.0.0 Release: %autorelease Summary: ISO/Edinburgh-style Prolog interpreter +# For the license breakdown, see licenses.txt, Source2 License: BSD-2-Clause URL: https://www.swi-prolog.org/ VCS: git:https://github.com/SWI-Prolog/swipl.git # Source0: %%{url}download/stable/src/swipl-%%{version}.tar.gz # To create the repackaged archive, use ./repackage.sh %%{version} Source0: swipl-%{version}_repackaged.tar.gz -Source1: %{url}download/xpce/doc/userguide/userguide.html.tgz -Source2: repackage.sh +Source1: repackage.sh +Source2: licenses.txt # Use JNI for Java binding Patch0: swipl-8.2.1-Fix-JNI.patch # Upstream installation paths differ from distribution ones @@ -24,9 +25,8 @@ Patch2: swipl-8.2.0-unbundle-libstemmer.patch Patch3: swipl-9.2.7-inclpr-math.patch # Use zlib-ng directly rather than via the zlib compatibility interface Patch4: swipl-9.2.9-zlib-ng.patch -# Adapt to changed semantics of "type f();" in C23 -# https://github.com/SWI-Prolog/swipl/pull/33 -Patch5: swipl-9.2.9-c23.patch +# Fix detection of the secure_getenv function +Patch5: swipl-10.0.0-secure-getenv.patch # See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} @@ -37,59 +37,56 @@ BuildRequires: findutils BuildRequires: gcc-c++ BuildRequires: ninja-build # Base -BuildRequires: gmp-devel +BuildRequires: cmake(zlib-ng) BuildRequires: libatomic BuildRequires: pkgconfig -BuildRequires: pkgconfig(libedit) +BuildRequires: pkgconfig(gmp) BuildRequires: pkgconfig(libpcre2-posix) BuildRequires: pkgconfig(libtcmalloc) BuildRequires: pkgconfig(ncurses) BuildRequires: pkgconfig(readline) # archive BuildRequires: pkgconfig(libarchive) -# http -BuildRequires: js-jquery -# XPCE -BuildRequires: pkgconfig(fontconfig) -BuildRequires: pkgconfig(freetype2) -BuildRequires: pkgconfig(libjpeg) -BuildRequires: pkgconfig(x11) -BuildRequires: pkgconfig(xext) -BuildRequires: pkgconfig(xft) -BuildRequires: pkgconfig(xinerama) -BuildRequires: pkgconfig(xpm) -BuildRequires: pkgconfig(xrandr) -BuildRequires: pkgconfig(xt) -BuildRequires: texinfo-tex # bdb BuildRequires: libdb-devel -# mqi / swiplserver -BuildRequires: python3-devel -# ODBC -BuildRequires: pkgconfig(odbc) -# SSL -BuildRequires: openssl -BuildRequires: pkgconfig(openssl) +# crypt +BuildRequires: libxcrypt-devel +# http +BuildRequires: js-jquery # jpl %ifarch %{java_arches} BuildRequires: java-25-devel BuildRequires: mvn(junit:junit) BuildRequires: mvn(org.hamcrest:hamcrest) %endif +# mqi / swiplserver +BuildRequires: python3-devel # nlp BuildRequires: libstemmer-devel +# ODBC +BuildRequires: pkgconfig(odbc) +# SSL +BuildRequires: openssl +BuildRequires: pkgconfig(openssl) # sweep BuildRequires: emacs-devel +# term +BuildRequires: pkgconfig(libedit) # uuid BuildRequires: pkgconfig(ossp-uuid) # win -BuildRequires: pkgconfig(Qt6) +BuildRequires: cmake(Qt6) +# XPCE +BuildRequires: cmake(SDL3) +BuildRequires: cmake(SDL3_image) +BuildRequires: pkgconfig(cairo) +BuildRequires: pkgconfig(pango) +BuildRequires: pkgconfig(fontconfig) +BuildRequires: pkgconfig(libjpeg) +BuildRequires: pkgconfig(xpm) +BuildRequires: texinfo-tex # yaml BuildRequires: pkgconfig(yaml-0.1) -# zlib -BuildRequires: pkgconfig(zlib-ng) -# crypt -BuildRequires: libxcrypt-devel # Doc building # Gated to Fedora as EL is currently missing tex(a4wide.sty) @@ -99,8 +96,7 @@ BuildRequires: tex(a4wide.sty) BuildRequires: tex(tabulary.sty) %endif -%global _desc %{expand: -SWI-Prolog is a fast and powerful ISO/Edinburgh-style Prolog compiler with a +%global _desc %{expand:SWI-Prolog is a fast and powerful ISO/Edinburgh-style Prolog compiler with a rich set of built-in predicates. It offers a fast, robust and small environment which enables substantial applications to be developed with it. @@ -112,57 +108,17 @@ SWI-Prolog additionally offers: * Unbounted integer and rational number arithmetic * Multithreading support * A powerful C/C++ interface -* GNU Readline interface -} +* GNU Readline interface} -%description %_desc - -# Not compiled into a binary package: -#External: repackage.sh GPL-2.0-or-later -#bench/ Various licenses -#packages/RDF/configure FSFUL -#packages/clib/configure FSFUL -#packagfes/clib/demo/ Public Domain -#packages/clpqr/.fileheader GPL-2.0-or-later with SWI exception -#packages/clpqr/configure FSFUL -#packages/cpp/configure FSFUL -#packages/http/examples/ LicenseRef-Fedora-Public-Domain -#packages/http/web/js/jquery* MIT -#packages/nlp/configure FSFUL -#packages/pcre/cmake/FindPCRE.cmake MIT -#packages/protobufs/configure FSFUL -#packages/sgml/configure FSFUL -#packages/ssl/configure FSFUL -#packages/ssl/https.pl LicenseRef-Fedora-Public-Domain -#packages/stomp/examples/ LicenseRef-Fedora-Public-Domain -#packages/swipy/tests/ LicenseRef-Fedora-Public-Domain -#packages/utf8proc/LICENSE MIT AND Unicode-DFS-2015 -#packages/utf8proc/data_generator.rb MIT AND Unicode-DFS-2015 -#packages/utf8proc/ruby/gem/LICENSE MIT AND Unicode-DFS-2015 -#packages/xpce/TeX/name.bst LicenseRef-Bibtex -#packages/xpce/deps/xpm/ X11 -#packages/xpce/src/configure FSFUL -#packages/xpce/src/msw/simx.h SGI-B-2.0 -#packages/xpce/src/msw/xpm.h SGI-B-2.0 -#packages/zlib/configure FSFUL -#scripts/swipl-bt LicenseRef-Fedora-Public-Domain -#src/libbf/cutils.c MIT -#src/libbf/cutils.h MIT -#src/libbf/libbf.c MIT -#src/libbf/libbf.h MIT -#src/tools/functions.pm LicenseRef-Fedora-Public-Domain -#src/tools/update-deps LicenseRef-Fedora-Public-Domain -# Removed from repackaged tar ball, see -# : -#bench/unify.pl Free for non-commercial -#bench/simple_analyzer.pl Free for non-commercial +%description +%_desc %package -n swi-prolog Summary: ISO/Edinburgh-style Prolog interpreter BuildArch: noarch Requires: swi-prolog-doc = %{version}-%{release} -Requires: swi-prolog-nox = %{version}-%{release} -Requires: swi-prolog-x = %{version}-%{release} +Requires: swi-prolog-cli = %{version}-%{release} +Requires: swi-prolog-win = %{version}-%{release} # This can be removed when F45 reaches EOL Obsoletes: pl < 9.2.9-2 @@ -172,7 +128,9 @@ Provides: pl-devel = %{version}-%{release} Obsoletes: pl-compat-yap-devel < 9.2.9-2 Provides: pl-compat-yap-devel = %{version}-%{release} -%description -n swi-prolog %_desc +%description -n swi-prolog +%_desc + This is a metapackage, which installs the SWI-Prolog suite, except Java, ODBC, Berkeley DB support and tests. @@ -185,26 +143,25 @@ Requires: swi-prolog-java = %{version}-%{release} Requires: swi-prolog-odbc = %{version}-%{release} Requires: swi-prolog-win = %{version}-%{release} -%description -n swi-prolog-full %_desc +%description -n swi-prolog-full +%_desc + This is a metapackage, which installs the full SWI-Prolog suite, except tests. %package -n swi-prolog-core # NOTE: There is no swi-prolog-core-devel package. Instead, the header files # and other development files are included in this package. It is a Prolog # compiler, and therefore is a development package itself. -# -# The project as a whole is distributed under the BSD-2-Clause license. -# These files carry different licenses: -# library/aggregate.pl BSD-2-Clause AND LicenseRef-Fedora-Public-Domain -# library/dialect/bim.pl LicenseRef-Fedora-Public-Domain -# library/unicode/blocks.pl BSD-2-Clause AND Unicode-DFS-2016 -# src/libbf/mersenne-twister.c BSD-3-Clause -# src/libbf/mersenne-twister.h BSD-3-Clause -# src/libtai/ LicenseRef-Fedora-Public-Domain -# src/minizip/ Zlib -# src/os/dtoa.c dtoa -# src/pl-hash.{c,h} LicenseRef-Fedora-Public-Domain -License: BSD-2-Clause AND BSD-3-Clause AND LicenseRef-Fedora-Public-Domain AND Unicode-DFS-2016 AND Zlib AND dtoa +License: %{shrink: + BSD-2-Clause AND + (Brian-Gladman-3-Clause OR GPL-1.0-or-later) AND + BSD-3-Clause AND + dtoa AND + LicenseRef-Fedora-Public-Domain AND + MIT AND + Unicode-DFS-2016 AND + Zlib + } Summary: ISO/Edinburgh-style Prolog interpreter - core system Recommends: swi-prolog-bdb%{?_isa} = %{version}-%{release} Recommends: swi-prolog-core-packages%{?_isa} = %{version}-%{release} @@ -215,35 +172,29 @@ Recommends: swi-prolog-odbc%{?_isa} = %{version}-%{release} # Old version of minizip is bundled Provides: bundled(minizip) = 1.3.1 -%description -n swi-prolog-core %_desc +%description -n swi-prolog-core +%_desc + This package contains the core SWI-Prolog system. %package -n swi-prolog-core-packages -# The project as a whole is distributed under the BSD-2-Clause license. -# These files carry different licenses: -# library/ugraphs.pl BSD-2-Clause OR Artistic-2.0 -# packages/clib/bsd-crypt.c BSD-3-Clause -# packages/clib/md5.{c,h} Zlib -# packages/clib/md5passwd.c Beerware -# packages/clib/sha1/ Brian-Gladman-3-Clause OR GPL-1.0+ -# packages/clpqr/ GPL-2.0-or-later with SWI-exception -# packages/http/http_server_health.pl GPL-2.0-or-later with SWI-exception -# packages/http/http_stream.pl BSD-2-Clause AND MIT -# packages/http/multipart.c BSD-2-Clause AND MIT -# packages/mqi/python/ MIT -# packages/nlp/double_metaphone.c GPL-1.0-or-later OR Artistic-1.0-Perl -# packages/nlp/isub.c LGPL-2.0-or-later -# packages/protobufs/interop/google/ BSD-3-Clause -# packages/semweb/md5.{c,h} Zlib -# packages/semweb/murmur.{c,h} LicenseRef-Fedora-Public-Domain -# packages/sgml/DTD/ W3C -# packages/sweep/emacs-module.h GPL-3.0-or-later -# packages/sweep/sweep.texi GFDL-1.3-no-invariants-or-later -# packages/utf8proc/ MIT AND Unicode-DFS-2015 -# -# Note that packages/redis/redis.pl was relicensed. It contains a note about -# the former license (MIT), but is no longer distributed under that license. -License: BSD-2-Clause AND (Brian-Gladman-3-Clause OR GPL-1.0-or-later) AND (BSD-2-Clause OR Artistic-2.0) AND BSD-3-Clause AND Beerware AND GFDL-1.3-no-invariants-or-later AND (GPL-1.0-or-later OR Artistic-1.0-Perl) AND GPL-2.0-or-later with SWI-exception AND GPL-3.0-or-later AND LGPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain AND MIT AND Unicode-DFS-2015 AND W3C AND Zlib +License: %{shrink: + BSD-2-Clause AND + Beerware AND + (Brian-Gladman-3-Clause OR GPL-1.0-or-later) AND + (BSD-2-Clause OR Artistic-2.0) AND + BSD-3-Clause AND + GFDL-1.3-no-invariants-or-later AND + (GPL-1.0-or-later OR Artistic-1.0-Perl) AND + GPL-2.0-or-later WITH SWI-exception AND + GPL-3.0-or-later AND + LGPL-2.0-or-later AND + LicenseRef-Fedora-Public-Domain AND + MIT AND + Unicode-DFS-2016 AND + W3C AND + Zlib + } Summary: ISO/Edinburgh-style Prolog interpreter - core packages Requires: swi-prolog-core%{?_isa} = %{version}-%{release} Requires: js-jquery @@ -257,16 +208,18 @@ Recommends: swi-prolog-odbc%{?_isa} = %{version}-%{release} # See https://fedoraproject.org/wiki/Bundled_Libraries_Virtual_Provides Provides: bundled(md5-deutsch) -%description -n swi-prolog-core-packages %_desc +# An old version of ut8proc is bundled, not fully compatible with the 2.x +# versions available in Fedora +Provides: bundled(utf8proc) = 1.1.6 + +%description -n swi-prolog-core-packages +%_desc + This package contains the core SWI-Prolog packages. -%package -n swi-prolog-nox -# The project as a whole is distributed under the BSD-2-Clause license. -# These files carry different licenses: -# packages/ssl/crypt_blowfish.{c,h} bcrypt-Solar-Designer -# packages/tipc/tipcutils/tipc-config.c BSD-3-Clause +%package -n swi-prolog-cli License: BSD-2-Clause AND BSD-3-Clause AND bcrypt-Solar-Designer -Summary: ISO/Edinburgh-style Prolog interpreter - without X support +Summary: ISO/Edinburgh-style Prolog interpreter - command line interface Requires: swi-prolog-core%{?_isa} = %{version}-%{release} Requires: swi-prolog-core-packages%{?_isa} = %{version}-%{release} Recommends: swi-prolog-bdb%{?_isa} = %{version}-%{release} @@ -274,31 +227,46 @@ Recommends: swi-prolog-doc = %{version}-%{release} Recommends: swi-prolog-java%{?_isa} = %{version}-%{release} Recommends: swi-prolog-odbc%{?_isa} = %{version}-%{release} -%description -n swi-prolog-nox %_desc -This package contains a SWI-Prolog installation without GUI components. +# This can be removed when F47 reaches EOL +Obsoletes: swi-prolog-nox < 10.0.0 +Provides: swi-prolog-nox = %{version}-%{release} -%package -n swi-prolog-x -# The project as a whole is distributed under the BSD-2-Clause license. -# These files carry different licenses: -# packages/xpce/man/course CC-BY-SA-3.0 -# packages/xpce/man/info CC-BY-SA-3.0 -# packages/xpce/src/gnu/getdate.c LicenseRef-Fedora-Public-Domain AND -# GPL-2.0-or-later WITH Bison-exception-2.2 -# packages/xpce/src/gnu/getdate-source.y LicenseRef-Fedora-Public-Domain -# packages/xpce/src/gnu/y.tab LicenseRef-Fedora-Public-Domain -# packages/xpce/src/img/gifwrite.c BSD-2-Clause AND FBM AND HPND-Pbmplus -# packages/xpce/src/img/jdatadst.c BSD-2-Clause AND IJG -# packages/xpce/src/rgx/ Spencer-99 AND TCL AND PostgreSQL -# packages/xpce/src/x11/xdnd.{c,h} LGPL-2.0-or-later -License: BSD-2-Clause AND CC-BY-SA-3.0 AND FBM AND GPL-2.0-or-later WITH Bison-exception-2.2 AND HPND-Pbmplus AND IJG AND LGPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain AND PostgreSQL AND Spencer-99 AND TCL -Summary: ISO/Edinburgh-style Prolog interpreter - with X support -Requires: swi-prolog-nox%{?_isa} = %{version}-%{release} +%description -n swi-prolog-cli +%_desc + +This package contains a SWI-Prolog installation with a command line interface +but no GUI components. + +%package -n swi-prolog-win +License: %{shrink: + BSD-2-Clause AND + CC-BY-SA-3.0 AND + FBM AND + GPL-2.0-or-later WITH Bison-exception-2.2 AND + HPND-Pbmplus AND + IJG AND + Knuth-CTAN AND + LicenseRef-Fedora-Public-Domain AND + PostgreSQL AND + Spencer-99 AND + TCL + } +Summary: ISO/Edinburgh-style Prolog interpreter - with GUI support +Requires: swi-prolog-cli%{?_isa} = %{version}-%{release} +Requires: hicolor-icon-theme +Requires: shared-mime-info%{?_isa} # This can be removed when F45 reaches EOL Obsoletes: pl-xpce < 9.2.9-2 Provides: pl-xpce = %{version}-%{release} -%description -n swi-prolog-x %_desc +# This can be removed when F47 reaches EOL +Obsoletes: swi-prolog-x < 10.0.0 +Provides: swi-prolog-x = %{version}-%{release} + +%description -n swi-prolog-win +%_desc + This package contains XPCE, an object-oriented symbolic programming environment for user interfaces. Although XPCE was designed to be language-independent, it has gained the most popularity with Prolog. XPCE @@ -312,7 +280,7 @@ follows a rather unique approach for developing GUI applications, as follows: %ifarch %{java_arches} %package -n swi-prolog-java Summary: Bidirectional interface between SWI-Prolog and Java -Requires: swi-prolog-nox%{?_isa} = %{version}-%{release} +Requires: swi-prolog-cli%{?_isa} = %{version}-%{release} Requires: java-25-headless Requires: javapackages-tools @@ -320,7 +288,9 @@ Requires: javapackages-tools Obsoletes: pl-jpl < 9.2.9-2 Provides: pl-jpl = %{version}-%{release} -%description -n swi-prolog-java %_desc +%description -n swi-prolog-java +%_desc + This package provides JPL, a library using the SWI-Prolog foreign interface and the Java Native Interface to provide a bidirectional interface between Java and Prolog. Prolog can be embedded in Java, and Java can be embedded in @@ -329,13 +299,15 @@ Prolog. It provides a reentrant bidirectional interface in both cases. %package -n swi-prolog-odbc Summary: SWI-Prolog ODBC interface -Requires: swi-prolog-nox%{?_isa} = %{version}-%{release} +Requires: swi-prolog-cli%{?_isa} = %{version}-%{release} # This can be removed when F45 reaches EOL Obsoletes: pl-odbc < 9.2.9-2 Provides: pl-odbc = %{version}-%{release} -%description -n swi-prolog-odbc %_desc +%description -n swi-prolog-odbc +%_desc + The value of RDMS for Prolog is often overestimated, as Prolog itself can manage substantial amounts of data. Nevertheless a Prolog/RDMS interface provides advantages if data is already provided in an RDMS, data must be @@ -352,23 +324,21 @@ constraint. %package -n swi-prolog-bdb Summary: SWI-Prolog Berkeley DB interface -Requires: swi-prolog-nox%{?_isa} = %{version}-%{release} +Requires: swi-prolog-cli%{?_isa} = %{version}-%{release} + +%description -n swi-prolog-bdb +%_desc -%description -n swi-prolog-bdb %_desc This package provides a foreign language extension to the Berkeley DB (libdb) embedded database. %package -n swi-prolog-doc -# The project as a whole is distributed under the BSD-2-Clause license. -# These files carry different licenses: -# man/bk9.co LPPL-1.3a+ -# man/main.doc CC-BY-SA-3.0 -# man/name.bst Knuth-CTAN -# man/swipl.cls LPPL-1.3a+ -# The PDF of the manual contains embedded fonts with these licenses: -# CM: Knuth-CTAN -# Nimbus: AGPL-3.0-only -License: BSD-2-Clause AND AGPL-3.0-only AND CC-BY-SA-3.0 AND Knuth-CTAN AND LPPL-1.3a+ +License: %{shrink: + BSD-2-Clause AND + CC-BY-SA-3.0 AND + Knuth-CTAN AND + LPPL-1.3c + } Summary: Documentation and examples for SWI-Prolog BuildArch: noarch Requires: swi-prolog-core = %{version}-%{release} @@ -377,38 +347,36 @@ Requires: swi-prolog-core = %{version}-%{release} Obsoletes: pl-doc < 9.2.9-2 Provides: pl-doc = %{version}-%{release} -%description -n swi-prolog-doc %_desc +%description -n swi-prolog-doc +%_desc + This package provides documentation and examples. %package -n swi-prolog-test -# The project as a whole is distributed under the BSD-2-Clause license. -# These files carry different licenses: -# src/Tests/compile/test_autoload.pl GPL-2.0-or-later WITH SWI-exception -# src/Tests/core/test_arith.pl LGPL-2.1-or-later -# src/Tests/core/test_coroutining.pl BSD-2-Clause AND GPL-2.0-or-later -License: BSD-2-Clause AND GPL-2.0-or-later AND GPL-2.0-or-later WITH SWI-exception AND LGPL-2.1-or-later +License: %{shrink: + BSD-2-Clause AND + GPL-2.0-or-later AND + GPL-2.0-or-later WITH SWI-exception AND + LGPL-2.1-or-later + } Summary: Tests and checks for SWI-Prolog BuildArch: noarch -Requires: swi-prolog-nox = %{version}-%{release} +Requires: swi-prolog-cli = %{version}-%{release} + +%description -n swi-prolog-test +%_desc -%description -n swi-prolog-test %_desc This package provides a set of prepared tests and checks for installed SWI-Prolog systems. This package is intended for SWI-Prolog development and is of no use for ordinary users. If you are not sure if you need this package, you do not. -%package -n swi-prolog-win -Summary: SWI-Prolog GUI interface -Requires: swi-prolog-core%{?_isa} = %{version}-%{release} - -%description -n swi-prolog-win %_desc -This package provides a Qt-based GUI for SWI-Prolog. - %prep %global docdir doc-install %autosetup -N -n swipl-%{version} %patch -P0 -p1 -b .jni %autopatch -p1 -m1 +cp -p %{SOURCE2} . %conf # Fix the installation path on 64-bit systems @@ -418,16 +386,6 @@ if [ "%{_lib}" = "lib64" ]; then -i cmake/LocationsPostPorts.cmake fi -# Unpack the XPCE user guide -mkdir %{docdir}-xpce -pushd %{docdir}-xpce -tar -xzf %{SOURCE1} -mv UserGuide xpce-UserGuide -popd - -# Get the Java config sources -cp -p %{SOURCE2} . - # Adjustments to take into account the new location of JNI stuff sed -i 's#LIBDIR#%{_libdir}#g' packages/jpl/jpl.pl sed -i.jni -e 's#LIBDIR#"%{_libdir}/swipl-jpl"#g' packages/jpl/src/main/java/org/jpl7/JPL.java @@ -437,12 +395,15 @@ sed -i.jni -e 's#LIBDIR#"%{_libdir}/swipl-jpl"#g' packages/jpl/src/main/java/org cp -p packages/jpl/jpl.pl packages/jpl/jpl.pl.install cp -p packages/jpl/jpl.pl.jni packages/jpl/jpl.pl +# Do not use the bundled libedit +rm -fr packages/libedit/libedit + # Do not use the bundled libstemmer rm -fr packages/nlp/libstemmer_c # Do not use the bundled texinfo.tex rm packages/xpce/man/info/texinfo.tex -ln -s %{_texmf}/tex/texinfo/texinfo.tex packages/xpce/man/info +ln -s %{_texmf_main}/tex/texinfo/texinfo.tex packages/xpce/man/info # Avoid a clash on doc names cp -p customize/README.md README-customize.md @@ -471,6 +432,7 @@ export DISABLE_PKGS="jpl" -DSWIPL_INSTALL_IN_LIB:BOOL=ON \ -DSWIPL_INSTALL_IN_SHARE:BOOL=ON \ -DSWIPL_VERSIONED_DIR:BOOL=OFF \ + -DSYSTEM_LIBEDIT:BOOL=ON \ -DUSE_TCMALLOC:BOOL=ON \ -G Ninja @@ -500,19 +462,18 @@ chmod 0755 \ %{buildroot}%{_datadir}/swipl/doc/packages/examples/protobufs/interop/test_write.py \ %{buildroot}%{_datadir}/swipl/doc/packages/examples/stomp/server-loop.sh \ %{buildroot}%{_libdir}/swipl/customize/edit \ - %{buildroot}%{_libdir}/swipl/library/dialect/sicstus/swipl-lfr.pl \ - %{buildroot}%{_libdir}/swipl/test/Tests/xsb/delay_tests/*.sh \ - %{buildroot}%{_libdir}/swipl/test/Tests/xsb/ptq/*.sh \ - %{buildroot}%{_libdir}/swipl/test/Tests/xsb/wfs_tests/*.sh + %{buildroot}%{_libdir}/swipl/test/xsb/delay_tests/*.sh \ + %{buildroot}%{_libdir}/swipl/test/xsb/ptq/*.sh \ + %{buildroot}%{_libdir}/swipl/test/xsb/wfs_tests/*.sh # Some XPCE files do not get installed cp -p packages/xpce/man/*.1 %{buildroot}%{_mandir}/man1 cp -a packages/xpce/man/course %{buildroot}%{_libdir}/swipl/xpce/man # Let LaTeX know about the style file -mkdir -p %{buildroot}%{_texmf}/tex/latex/swi-prolog +mkdir -p %{buildroot}%{_texmf_main}/tex/latex/swi-prolog ln -s %{_libdir}/swipl/library/ext/pldoc/pldoc/pldoc.sty \ - %{buildroot}%{_texmf}/tex/latex/swi-prolog/pldoc.sty + %{buildroot}%{_texmf_main}/tex/latex/swi-prolog/pldoc.sty # Install the sweep info file mkdir -p %{buildroot}%{_infodir} @@ -548,8 +509,22 @@ cd - rm %{buildroot}%{_libdir}/swipl/{LICENSE,README.md} rm %{buildroot}%{_libdir}/swipl/customize/README.md rm %{buildroot}%{_libdir}/swipl/lib/swiplserver/LICENSE -rm %{buildroot}%{_libdir}/swipl/test/Tests/xsb/.gitignore -rm %{buildroot}%{_libdir}/swipl/xpce/man/course/.gitignore +find %{buildroot}%{_libdir} -name .gitignore -delete + +# Move the desktop files to where we really want them +mkdir -p %{buildroot}%{_datadir}/applications +mkdir -p %{buildroot}%{_datadir}/icons/hicolor/64x64/apps +mkdir -p %{buildroot}%{_datadir}/icons/hicolor/96x96/apps +mkdir -p %{buildroot}%{_datadir}/mime/packages +mv %{buildroot}%{_libdir}/swipl/desktop/*.desktop \ + %{buildroot}%{_datadir}/applications +mv %{buildroot}%{_libdir}/swipl/desktop/swipl.png \ + %{buildroot}%{_datadir}/icons/hicolor/64x64/apps +mv %{buildroot}%{_libdir}/swipl/desktop/swipl-cli.png \ + %{buildroot}%{_datadir}/icons/hicolor/96x96/apps +mv %{buildroot}%{_libdir}/swipl/desktop/prolog-mime.xml \ + %{buildroot}%{_datadir}/mime/packages +rmdir %{buildroot}%{_libdir}/swipl/desktop # Link duplicates %fdupes %{buildroot}%{_datadir}/swipl @@ -567,12 +542,13 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %files -n swi-prolog-full %files -n swi-prolog-core -%license LICENSE +%license LICENSE licenses.txt %doc README.md README-customize.md %{_bindir}/swipl %{_bindir}/swipl-ld %{_libdir}/cmake/swipl/ %dir %{_libdir}/swipl/ +%{_libdir}/swipl/ABI %dir %{_libdir}/swipl/bin/ %{_libdir}/swipl/bin/swipl.home %dir %{_libdir}/swipl/bin/%{swipl_arch}/ @@ -600,7 +576,7 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %{_libdir}/swipl/library/theme/ %{_libdir}/swipl/library/unicode/ %{_libdir}/swipl/swipl.home -%{_libdir}/libswipl.so.9* +%{_libdir}/libswipl.so.10{,.*} %{_libdir}/libswipl.so %{_mandir}/man1/swipl* %{_datadir}/pkgconfig/swipl.pc @@ -665,6 +641,7 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %{_libdir}/swipl/library/ext/clpqr %{_libdir}/swipl/library/ext/http/ %{_libdir}/swipl/library/ext/inclpr/ +%{_libdir}/swipl/library/ext/json/ %{_libdir}/swipl/library/ext/ltx2htm/ %{_libdir}/swipl/library/ext/mqi/ %{_libdir}/swipl/library/ext/nlp/ @@ -685,30 +662,36 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %{_libdir}/swipl/library/http/ %{_libdir}/swipl/library/protobufs/ %{_libdir}/swipl/library/semweb/ -%{_texmf}/tex/latex/swi-prolog/ +%{_texmf_main}/tex/latex/swi-prolog/ -%files -n swi-prolog-nox +%files -n swi-prolog-cli %{_libdir}/swipl/app/ %{_libdir}/swipl/lib/%{swipl_arch}/archive4pl.so %{_libdir}/swipl/lib/%{swipl_arch}/crypto4pl.so %{_libdir}/swipl/lib/%{swipl_arch}/libedit4pl.so %{_libdir}/swipl/lib/%{swipl_arch}/pcre4pl.so -%{_libdir}/swipl/lib/%{swipl_arch}/readline4pl.so %{_libdir}/swipl/lib/%{swipl_arch}/ssl4pl.so %{_libdir}/swipl/lib/%{swipl_arch}/tipc.so %{_libdir}/swipl/lib/%{swipl_arch}/yaml4pl.so %{_libdir}/swipl/library/ext/archive/ %{_libdir}/swipl/library/ext/libedit/ %{_libdir}/swipl/library/ext/pcre/ -%{_libdir}/swipl/library/ext/readline/ %{_libdir}/swipl/library/ext/ssl/ %{_libdir}/swipl/library/ext/tipc/ %{_libdir}/swipl/library/ext/yaml/ -%files -n swi-prolog-x +%files -n swi-prolog-win %doc packages/xpce/{CUSTOMISE,EXTENDING,README}.md +%{_bindir}/swipl-win +%{_datadir}/applications/swipl.desktop +%{_datadir}/applications/swipl-win.desktop +%{_datadir}/icons/hicolor/64x64/apps/swipl.png +%{_datadir}/icons/hicolor/96x96/apps/swipl-cli.png +%{_datadir}/mime/packages/prolog-mime.xml +%{_libdir}/swipl/bin/%{swipl_arch}/swipl-win %{_libdir}/swipl/lib/%{swipl_arch}/pl2xpce.so %{_libdir}/swipl/swipl.rc +%{_libdir}/swipl/swipl-win.rc %{_libdir}/swipl/xpce/ %{_mandir}/man1/xpce-client.1* @@ -742,11 +725,5 @@ cp -p packages/jpl/jpl.pl.install packages/jpl/jpl.pl %files -n swi-prolog-test %{_libdir}/swipl/test/ -%files -n swi-prolog-win -%doc packages/swipl-win/README.md -%{_bindir}/swipl-win -%{_libdir}/swipl/bin/%{swipl_arch}/swipl-win -%{_libdir}/swipl/swipl-win.rc - %changelog %autochangelog diff --git a/sources b/sources index 03aeff4..b17c9c0 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -SHA512 (userguide.html.tgz) = baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9 -SHA512 (swipl-9.2.9_repackaged.tar.gz) = 57f0e043c6f0985106c68a2bba3a558ee3eb19ecaa145d5968d963da005f3d1fe0ef62ba43f299b067bda3bb6e4212a9e121926a4d8452df9aa8cbbecf6b27e2 +SHA512 (swipl-10.0.0_repackaged.tar.gz) = d8f85ceed3ccfcc7b44535d3384bc8fd9ddaff1dce5405382433328e2b873a52a232bab7dfee5adc28882413b03da623565f2dfb312fede13e316545d96c31ee diff --git a/swipl-10.0.0-secure-getenv.patch b/swipl-10.0.0-secure-getenv.patch new file mode 100644 index 0000000..d0e6869 --- /dev/null +++ b/swipl-10.0.0-secure-getenv.patch @@ -0,0 +1,13 @@ +--- swipl-10.0.0/packages/libedit/libedit/src/CMakeLists.txt.orig 2025-11-30 01:13:23.000000000 -0700 ++++ swipl-10.0.0/packages/libedit/libedit/src/CMakeLists.txt 2025-12-05 15:40:03.894414328 -0700 +@@ -116,7 +116,10 @@ check_symbol_exists(unvis "vis.h" HAVE_U + check_symbol_exists(endpwent "pwd.h" HAVE_ENDPWENT) + check_symbol_exists(getpwuid_r "pwd.h" HAVE_GETPW_R_POSIX) + check_symbol_exists(isascii "ctype.h" HAVE_ISASCII) ++set(OLD_CMAKE_REQUIRED_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS}) ++list(APPEND CMAKE_REQUIRED_DEFINITIONS -D_GNU_SOURCE) + check_symbol_exists(secure_getenv "stdlib.h" HAVE_SECURE_GETENV) ++set(CMAKE_REQUIRED_DEFINITIONS ${OLD_CMAKE_REQUIRED_DEFINITIONS}) + check_symbol_exists(wcsdup "wchar.h" HAVE_WCSDUP) + + include(CheckIncludeFile) diff --git a/swipl-9.2.9-c23.patch b/swipl-9.2.9-c23.patch deleted file mode 100644 index 4ca03ad..0000000 --- a/swipl-9.2.9-c23.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- swipl-9.2.9/src/SWI-Prolog.h.orig 2024-12-20 02:46:40.000000000 -0700 -+++ swipl-9.2.9/src/SWI-Prolog.h 2025-01-18 11:04:45.028193615 -0700 -@@ -209,7 +209,7 @@ typedef _PLS(PL_local_data) *PL_engine_t - typedef uintptr_t PL_atomic_t; /* same a word */ - typedef uintptr_t foreign_t; /* return type of foreign functions */ - typedef wchar_t pl_wchar_t; /* Prolog wide character */ --#ifdef __cplusplus -+#if defined(__cplusplus) || __STDC_VERSION__ > 201710L - typedef void * pl_function_t; /* pass function as void* */ - #else - typedef foreign_t (*pl_function_t)(); /* foreign language functions */