The package rpms/pl.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/pl.git/commit/?id=c176a2a7f6c1e0b....
Change:
+%ifarch %{arm}
Thanks.
Full change:
============
commit c176a2a7f6c1e0bba9b8149428e29d6f7173f2a8
Author: Jerry James <loganjerry(a)gmail.com>
Date: Mon Mar 25 18:59:06 2019 -0600
8.0.2 bump (bz 1669571).
Also:
- 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.
diff --git a/.gitignore b/.gitignore
index f7b8ee0..1d338f9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,60 +1,4 @@
-userguide.html.tgz
-pl-5.7.11.tar.gz
-SWI-Prolog-5.7.11.pdf
-/pl-5.10.2.tar.gz
-/SWI-Prolog-5.10.2.pdf
+/SWI-Prolog-*.pdf
/userguide.html.tgz
-/pl-5.10.5.tar.gz
-/SWI-Prolog-5.10.5.pdf
-/pl-6.0.1.tar.gz
-/SWI-Prolog-6.0.1.pdf
-/pl-6.0.2.tar.gz
-/SWI-Prolog-6.0.2.pdf
-/pl-6.2.0.tar.gz
-/SWI-Prolog-6.2.0.pdf
-/pl-6.2.1.tar.gz
-/SWI-Prolog-6.2.1.pdf
-/pl-6.2.2.tar.gz
-/SWI-Prolog-6.2.2.pdf
-/pl-6.2.3.tar.gz
-/SWI-Prolog-6.2.3.pdf
-/pl-6.2.4.tar.gz
-/SWI-Prolog-6.2.4.pdf
-/pl-6.2.5.tar.gz
-/SWI-Prolog-6.2.5.pdf
-/pl-6.2.6.tar.gz
-/SWI-Prolog-6.2.6.pdf
-/pl-6.4.1.tar.gz
-/SWI-Prolog-6.4.1.pdf
-/pl-6.6.0_repackaged.tar.gz
-/SWI-Prolog-6.6.0.pdf
-/pl-6.6.1_repackaged.tar.gz
-/SWI-Prolog-6.6.1.pdf
-/pl-6.6.2_repackaged.tar.gz
-/SWI-Prolog-6.6.2.pdf
-/pl-6.6.3_repackaged.tar.gz
-/SWI-Prolog-6.6.3.pdf
-/pl-6.6.4_repackaged.tar.gz
-/SWI-Prolog-6.6.4.pdf
-/pl-6.6.5_repackaged.tar.gz
-/SWI-Prolog-6.6.5.pdf
-/pl-6.6.6_repackaged.tar.gz
-/SWI-Prolog-6.6.6.pdf
-/SWI-Prolog-7.2.0.pdf
-/swipl-7.2.0_repackaged.tar.gz
-/swipl-7.2.1_repackaged.tar.gz
-/SWI-Prolog-7.2.1.pdf
-/swipl-7.2.2_repackaged.tar.gz
-/SWI-Prolog-7.2.2.pdf
-/swipl-7.2.3_repackaged.tar.gz
-/SWI-Prolog-7.2.3.pdf
-/swipl-7.4.1_repackaged.tar.gz
-/SWI-Prolog-7.4.1.pdf
-/swipl-7.4.2_repackaged.tar.gz
-/SWI-Prolog-7.4.2.pdf
-/swipl-7.6.0_repackaged.tar.gz
-/SWI-Prolog-7.6.0.pdf
-/swipl-7.6.1_repackaged.tar.gz
-/SWI-Prolog-7.6.1.pdf
-/SWI-Prolog-7.6.4.pdf
-/swipl-7.6.4_repackaged.tar.gz
+/pl-*.tar.gz
+/swipl-*.tar.gz
diff --git a/JavaConfig.java b/JavaConfig.java
index a6a42fb..c5d0f02 100644
--- a/JavaConfig.java
+++ b/JavaConfig.java
@@ -91,7 +91,7 @@ class JavaConfig {
home + filesep + "lib" + filesep + architecture + filesep +
"client";
- /* Convert the collon delimited paths to LDFLAGS format */
+ /* Convert the colon-delimited paths to LDFLAGS format */
paths = value.split(":");
for (int i = 0; i < paths.length; i++) {
@@ -105,6 +105,8 @@ class JavaConfig {
value = value + " -L" + paths[i];
}
}
+ value = value + " -Wl,-rpath," + home + filesep + "lib" +
architecture +
+ filesep + "server";
return value;
}
diff --git a/pl-6.2.0-pc.patch b/pl-6.2.0-pc.patch
deleted file mode 100644
index 974e6b5..0000000
--- a/pl-6.2.0-pc.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/swipl.pc.in
-+++ b/src/swipl.pc.in
-@@ -1,7 +1,7 @@
- prefix=@prefix@
- exec_prefix=@exec_prefix@
- libdir=@libdir@
--includedir=@includedir@
-+includedir=${libdir}/@PL@-@PLVERSION@/include
-
- PLBASE=@PLBASE@
- PLARCH=@PLARCH@
diff --git a/pl.spec b/pl.spec
index 858ab91..ed160f9 100644
--- a/pl.spec
+++ b/pl.spec
@@ -1,9 +1,24 @@
+# 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 with_java 1
%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: 7.6.4
-Release: 9%{?dist}
+Version: 8.0.2
+Release: 1%{?dist}
Summary: SWI-Prolog - Edinburgh compatible Prolog compiler
#LICENSE: BSD
#library/qsave.pl BSD
@@ -59,33 +74,29 @@ 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 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
+License: (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
URL:
http://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
-Source1: %{url}download/stable/doc/SWI-Prolog-%{version}.pdf
-Source2: %{url}download/xpce/doc/userguide/userguide.html.tgz
-Source3: JavaConfig.java
-Source4: repackage.sh
-# Fix paths to JDK libraries
-Patch1: swipl-7.6.0-jpl-configure.patch
+Source1: %%{url}download/xpce/doc/userguide/userguide.html.tgz
+Source2: JavaConfig.java
+Source3: repackage.sh
# Upstream installation paths differ from distribution ones
-Patch2: swipl-7.2.0-Remove-files-locations-from-swipl-1-manual.patch
+Patch0: swipl-7.2.0-Remove-files-locations-from-swipl-1-manual.patch
# Use JNI for Java binding
-Patch3: swipl-7.4.1-Fix-JNI.patch
-# Fix paths in pkg-config module
-Patch4: %{name}-6.2.0-pc.patch
-# Unbundle jquery and use the latest one from js-jquery package
-Patch5: swipl-7.6.4-Use-system-js-query.patch
-BuildRequires: coreutils
+Patch1: swipl-7.4.1-Fix-JNI.patch
+# Unbundle libstemmer
+Patch2: swipl-8.0.2-unbundle-libstemmer.patch
+BuildRequires: cmake
BuildRequires: findutils
-BuildRequires: gcc
-BuildRequires: make
-BuildRequires: sed
+BuildRequires: gcc-c++
+BuildRequires: ninja-build
# Base
BuildRequires: gmp-devel
+BuildRequires: libedit-devel
BuildRequires: ncurses-devel
+BuildRequires: pcre-devel
BuildRequires: pkgconfig
BuildRequires: readline-devel
# archive
@@ -113,18 +124,32 @@ BuildRequires: libdb-devel
# ODBC
BuildRequires: unixODBC-devel
# SSL
+BuildRequires: openssl
BuildRequires: openssl-devel
# jpl
%if %{with_java}
BuildRequires: java-devel
+BuildRequires: junit
%endif
+# nlp
+BuildRequires: libstemmer-devel
+# uuid
+BuildRequires: uuid-devel
+# win
+BuildRequires: qt5-qtbase-devel
+# yaml
+BuildRequires: libyaml-devel
# zlib
BuildRequires: zlib-devel
-# helpers for export_dynamic patch
-BuildRequires: autoconf
+# Doc building
+BuildRequires: tex(latex)
+BuildRequires: tex(a4wide.sty)
# http
Requires: js-jquery
+# Old version of minizip is bundled
+Provides: bundled(minizip) = 1.2.11
+
%description
ISO/Edinburgh-style Prolog compiler including modules, auto-load,
libraries, Garbage-collector, stack-expandor, C/C++-interface,
@@ -144,8 +169,12 @@ source-level debugger) is included.
Summary: Development files for SWI Prolog
Requires: %{name} = %{version}-%{release}
Requires: gcc
-Requires: pkgconfig
-Requires: readline-devel
+Requires: pkgconfig%{?_isa}
+Requires: readline-devel%{?_isa}
+
+# This can be removed when F29 reaches EOL
+Obsoletes: %{name}-static < 8.0-1
+Provides: %{name}-static = %{version}-%{release}
%description devel
Development files for SWI Prolog.
@@ -167,7 +196,7 @@ Summary: Documentation for SWI Prolog
#man/Manual/index.html CC-BY-SA
#userguide.html.tgz is from xpce LGPLv2+
License: CC-BY-SA and LGPLv2+
-# This must be archicture dependend because some files live in %%{_libdir}
+# This must be architecture dependent because some files live in %%{_libdir}
# because they are used by built-in documentation system.
Requires: %{name} = %{version}-%{release}
@@ -195,15 +224,6 @@ access to RDMS, while the interface provides the best possible
performance
given the RDMS independency constraint.
-%package static
-Summary: Static library for SWI Prolog
-Requires: %{name} = %{version}-%{release}
-Requires: readline-devel
-
-%description static
-Static library for SWI Prolog.
-
-
%if %{separate_xpce}
%package xpce
Summary: A toolkit for developing graphical applications in Prolog
@@ -239,41 +259,44 @@ in Prolog. In both setups it provides a re-entrant bidirectional
interface.
%prep
%global docdir doc-install
%setup -q -n swipl-%{version}
-%patch1 -p1 -b .libjvm
-%patch2 -p1 -b .man-files
-%patch3 -p1 -b .jni
-%patch4 -p1 -b .pc
-%patch5 -p1
-(
- cd src
- autoconf
-)
-(
- # For Use-system-js-query.patch
- cd packages/http
- autoconf
-)
-(
- mkdir %{docdir}
- cp -p %{SOURCE1} %{docdir}
-)
-(
- mkdir %{docdir}-xpce
- cd %{docdir}-xpce
- tar -xzf %{SOURCE2}
- mv UserGuide xpce-UserGuide
-)
-(
- cp %{SOURCE3} .
-)
+%patch0 -p1 -b .man-files
+%patch1 -p1 -b .jni
+%patch2 -p1 -b .libstemmer
+
+# Fix the installation path on 64-bit systems
+if [ "%{_lib}" = "lib64" ]; then
+ sed --in-place 's,lib\(/\${SWIPL_INSTALL_DIR}\),lib64\1,' CMakeLists.txt
+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 --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/java/org/jpl7/JPL.java
+# 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 executable bits from documentation
chmod 0644 packages/jpl/examples/java/runall.sh
+# Remove CVS files
+find . -name ".cvsignore" -exec rm -f {} \+
+
+# Do not use the bundled libstemmer
+rm -fr packages/nlp/libstemmer_c
+
+
%build
%if %{with_java}
LC_CTYPE=C.UTF-8 javac JavaConfig.java
@@ -284,36 +307,38 @@ JAVA_LIBS=$(java JavaConfig --libs-only-L)
export DISABLE_PKGS="jpl"
%endif
-# Build interpreter needed for SWI packages compilation
-%configure --enable-shared LDFLAGS="-Wl,--enable-new-dtags"
-make COFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
+# Build
+mkdir build
+cd build
+%cmake \
+ -DBUILD_DOCUMENTATION:BOOL=ON \
+ -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
-# Build SWI packages
-pushd packages
-%configure LDFLAGS="-Wl,--enable-new-dtags"
-make COFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" JAVALIBS="${JAVA_LIBS}
-ljava -lverify -ljvm"
-popd
+# Switch back before installing; see above
+cp -p ../packages/jpl/jpl.pl.install home/library/jpl.pl
%install
+cd build
# See <
http://www.swi-prolog.org/build/guidelines.html> for file layout
-make install DESTDIR=$RPM_BUILD_ROOT
-# Library must be executable to get its debuginfo
-chmod 0755 $RPM_BUILD_ROOT%{_libdir}/swipl-%{version}/lib/*/libswipl.so.*
+DESTDIR=%{buildroot} ninja install
+
# Script with shebang should be executable
-chmod 0755 \
-$RPM_BUILD_ROOT%{_libdir}/swipl-%{version}/library/dialect/sicstus/swipl-lfr.pl
+chmod 0755 %{buildroot}%{_libdir}/swipl-%{version}/library/dialect/sicstus/swipl-lfr.pl
-pushd packages
-make install DESTDIR=$RPM_BUILD_ROOT
-# Do not chmod earlier, the run.sh's are executed
-chmod -x jpl/examples/java/*/run.sh
-popd
+# Some XPCE files do not get installed
+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
-pushd $RPM_BUILD_ROOT%{_libdir}
+pushd %{buildroot}%{_libdir}
mkdir -p swipl-jpl
mv swipl-%{version}/lib/*/libjpl.so swipl-jpl/
mv swipl-%{version}/lib/jpl.jar swipl-jpl/
@@ -322,82 +347,117 @@ ln -s ../../swipl-jpl/jpl.jar swipl-%{version}/lib/jpl.jar
popd
%endif
-# Clean up the other stuff that shouldn't be packaged
-find packages/jpl/examples -name "*.class" | xargs rm -f
-find packages/jpl/examples -name ".cvsignore" | xargs rm -f
+# Remove stuff we do not want to package
+rm %{buildroot}%{_libdir}/swipl-%{version}/{LICENSE,README.md}
%files
%license LICENSE
-%doc ReleaseNotes/relnotes-5.10 README.md VERSION
-%doc customize/dotswiplrc
-%{_mandir}/man1/*
-%dir %{_libdir}/swipl-%{version}
-%{_libdir}/swipl-%{version}/*
-%{_bindir}/*
+%doc README.md VERSION customize/dotswiplrc
+%{_mandir}/man1/swipl*
+%{_bindir}/swipl
+%{_bindir}/swipl-ld
+%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}/boot*
+%{_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}/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
+%{_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}/rlimit.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}/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}/library/
+%{_libdir}/swipl-%{version}/swipl.home
# Exclude the files that are in the sub-packages
%if %{with_java}
# JPL
-%exclude %{_libdir}/swipl-%{version}/lib/jpl.jar
%exclude %{_libdir}/swipl-%{version}/library/jpl.pl
%endif
-# Devel
-%exclude %{_libdir}/swipl-%{version}/lib/*/libswipl.so
-%exclude %{_libdir}/swipl-%{version}/include
-# Doc
-%exclude %{_libdir}/swipl-%{version}/doc
# ODBC
-%exclude %{_libdir}/swipl-%{version}/lib/*-linux/odbc4pl.so
%exclude %{_libdir}/swipl-%{version}/library/odbc.pl
-# Static
-%exclude %{_libdir}/swipl-%{version}/lib/*/libswipl.a
-%if %{separate_xpce}
-# XPCE
-%exclude %{_bindir}/xpce*
-%exclude %{_libdir}/swipl-%{version}/customize/dotxpcerc
-%exclude %{_libdir}/swipl-%{version}/lib/*-linux/pl2xpce.so
-%exclude %{_libdir}/swipl-%{version}/library/http/xpce_httpd.pl
-%exclude %{_libdir}/swipl-%{version}/Makefile
-%exclude %{_libdir}/swipl-%{version}/swipl.rc
-%exclude %{_libdir}/swipl-%{version}/xpce
-%exclude %{_mandir}/man1/xpce-client.1*
-%endif
%if %{separate_xpce}
%files xpce
%doc customize/dotxpcerc packages/xpce/INFO
-%{_bindir}/xpce*
-%{_libdir}/swipl-%{version}/customize/dotxpcerc
-%{_libdir}/swipl-%{version}/lib/*-linux/pl2xpce.so
-%{_libdir}/swipl-%{version}/library/http/xpce_httpd.pl
-%{_libdir}/swipl-%{version}/Makefile
+%{_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}/xpce
-%{_mandir}/man1/xpce-client.1*
+%{_libdir}/swipl-%{version}/swipl-win.rc
+%{_libdir}/swipl-%{version}/xpce/
+%{_mandir}/man1/xpce*
%endif
%files devel
-%{_libdir}/swipl-%{version}/include
-%exclude %{_libdir}/swipl-%{version}/include/Yap
-%{_libdir}/swipl-%{version}/lib/*/libswipl.so
-%{_libdir}/pkgconfig/swipl.pc
+%dir %{_libdir}/swipl-%{version}/include
+%{_libdir}/swipl-%{version}/include/sicstus/
+%{_libdir}/swipl-%{version}/include/SWI*
+%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/libswipl.so
+%{_datadir}/pkgconfig/swipl.pc
%files compat-yap-devel
-%{_libdir}/swipl-%{version}/include/Yap
+%{_libdir}/swipl-%{version}/include/Yap/
%files doc
-%{_libdir}/swipl-%{version}/doc
-%doc %{docdir}/*
+%{_libdir}/swipl-%{version}/doc/
+%doc build/man/SWI-Prolog-%{version}.pdf
%doc %{docdir}-xpce/*
%files odbc
-%{_libdir}/swipl-%{version}/lib/*-linux/odbc4pl.so
+%{_libdir}/swipl-%{version}/lib/%{swipl_arch}/odbc4pl.so
%{_libdir}/swipl-%{version}/library/odbc.pl
-%doc packages/odbc/{demo,ChangeLog,odbc.html,README}
-
-%files static
-%{_libdir}/swipl-%{version}/lib/*/libswipl.a
+%doc packages/odbc/{demo,ChangeLog,README}
%if %{with_java}
%files jpl
@@ -405,11 +465,19 @@ find packages/jpl/examples -name ".cvsignore" | xargs rm
-f
%doc packages/jpl/examples
%{_libdir}/swipl-%{version}/lib/jpl.jar
%{_libdir}/swipl-%{version}/library/jpl.pl
-%{_libdir}/swipl-jpl
+%{_libdir}/swipl-jpl/
%endif
%changelog
+* Fri Mar 22 2019 Jerry James <loganjerry(a)gmail.com> - 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 <ignatenkobrain(a)fedoraproject.org> - 7.6.4-9
- Rebuild for readline 8.0
diff --git a/repackage.sh b/repackage.sh
old mode 100755
new mode 100644
index 5e68b93..b3e9cd8
--- a/repackage.sh
+++ b/repackage.sh
@@ -27,7 +27,6 @@ declare -a REMOVE
# Bad license: <
http://www.swi-prolog.org/bugzilla/show_bug.cgi?id=145>
REMOVE[${#REMOVE[*]}]="bench/unify.pl"
REMOVE[${#REMOVE[*]}]="bench/simple_analyzer.pl"
-REMOVE[${#REMOVE[*]}]="man/txt/dvi2tty/dvi2tty.c"
# no changes below this line should be needed
diff --git a/sources b/sources
index 2baeb37..c47ef99 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,2 @@
SHA512 (userguide.html.tgz) =
baa16d8f06a666e77ef45aaf7708e877710bfcb8fc0fb519bc70c54619c45def2d2ab4feaa0f1a1875b2a2270e8907551b63582da1b4beaa5b50f013a41d7ab9
-SHA512 (swipl-7.6.4_repackaged.tar.gz) =
98631ac6f2be8834cd24a0617cd03d9fcdf65d22411c823e0c7017abec5233c269441cb055fa126e0a67d0e3d5d4a0c3562fa23cc89129d36ee98f9f99bba022
-SHA512 (SWI-Prolog-7.6.4.pdf) =
027099fcf05d9f60c47e6ecf6e73d902416d5c97566f922da4edf013a2da8d138505ec10913e2f7188c8446c913a2a58b6f21d5c72ac7ab09e6c37ac40ac9837
+SHA512 (swipl-8.0.2_repackaged.tar.gz) =
011ee2ac6fab6f2a8a16b8d7acc9599583caad135fcd2e532d8f404f84618cb3d4b7a8e2ac9df149b954955161f48bdcbcad067f2e73017caf39e80decc3acf6
diff --git a/swipl-7.2.0-Remove-files-locations-from-swipl-1-manual.patch
b/swipl-7.2.0-Remove-files-locations-from-swipl-1-manual.patch
index dff379b..4bd6c51 100644
--- a/swipl-7.2.0-Remove-files-locations-from-swipl-1-manual.patch
+++ b/swipl-7.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
-@@ -369,38 +369,6 @@ Personal initialisation files consulted by SWI-Prolog on startup.
+@@ -391,38 +391,6 @@ Personal initialisation files consulted by SWI-Prolog on startup.
If both exist
.I .swiplrc
is used.
@@ -56,7 +56,7 @@ index e6eeda5..81c5abb 100644
.SH SEE ALSO
.PP
The SWI-Prolog web-home at
-@@ -410,9 +378,6 @@ Jan\ Wielemaker
+@@ -432,9 +400,6 @@ Jan\ Wielemaker
.IR "SWI-Prolog Reference Manual" " at"
.I
http://www.swi-prolog.org/pldoc/index.html
.PP
diff --git a/swipl-7.4.1-Fix-JNI.patch b/swipl-7.4.1-Fix-JNI.patch
index 5ba68ac..df263b9 100644
--- a/swipl-7.4.1-Fix-JNI.patch
+++ b/swipl-7.4.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
-@@ -3939,7 +3939,8 @@ prolog:error_message(java_exception(Ex)) -->
+@@ -3952,7 +3952,8 @@ prolog:error_message(java_exception(Ex))
:- multifile user:file_search_path/2.
:- dynamic user:file_search_path/2.
@@ -26,9 +26,9 @@ index 024dd79..ffeccd9 100644
+user:file_search_path(jar, 'LIBDIR/swipl-jpl').
+user:file_search_path(jni, 'LIBDIR/swipl-jpl').
- %! add_search_path(+Var, +Value) is det.
- %
-@@ -4087,7 +4088,7 @@ add_jpl_to_classpath :-
+ classpath(DirOrJar) :-
+ getenv('CLASSPATH', ClassPath),
+@@ -4126,7 +4127,7 @@ add_jpl_to_classpath :-
libjpl(File) :-
( current_prolog_flag(unix, true)
@@ -41,17 +41,20 @@ diff --git a/packages/jpl/src/java/org/jpl7/JPL.java
b/packages/jpl/src/java/org
index 9705fa5..8d849dd 100644
--- a/packages/jpl/src/java/org/jpl7/JPL.java
+++ b/packages/jpl/src/java/org/jpl7/JPL.java
-@@ -109,9 +109,7 @@ public class JPL {
+@@ -109,9 +109,11 @@ public class JPL {
} else if (nativeLibraryDir != null) {
System.load((new File(nativeLibraryDir,
System.mapLibraryName(nativeLibraryName))).getAbsolutePath());
} else {
- System.loadLibrary(nativeLibraryName); // as resolved somewhere on
- // system property
- // 'java.library.path'
-+ System.load((new File(LIBDIR,
System.mapLibraryName(nativeLibraryName))).getAbsolutePath());
++ try {
++ System.load((new File(LIBDIR,
System.mapLibraryName(nativeLibraryName))).getAbsolutePath());
++ } catch (UnsatisfiedLinkError e) {
++ System.loadLibrary(nativeLibraryName);
++ }
}
}
--
2.7.4
-
diff --git a/swipl-7.6.0-jpl-configure.patch b/swipl-7.6.0-jpl-configure.patch
deleted file mode 100644
index 219eb59..0000000
--- a/swipl-7.6.0-jpl-configure.patch
+++ /dev/null
@@ -1,104 +0,0 @@
-diff -up swipl-7.6.0/packages/jpl/configure.orig swipl-7.6.0/packages/jpl/configure
---- swipl-7.6.0/packages/jpl/configure.orig 2017-10-20 09:41:38.924326293 +0200
-+++ swipl-7.6.0/packages/jpl/configure 2017-10-20 09:47:22.792854064 +0200
-@@ -4618,34 +4618,6 @@ $as_echo "#define PL_ARITY_AS_SIZE 1" >>
- CMDEXT=sh
- OSLIBPL=
-
--if test "x$JAVALIBS" = "x"; then
-- case "$PLARCH" in
-- *darwin*)
-- JAVALIBS="-ljvm"
-- { $as_echo "$as_me:${as_lineno-$LINENO}: checking
\"JAVA_HOME\"..." >&5
--$as_echo "$as_me: checking \"JAVA_HOME\"..." >&6;}
-- if test -z "$JAVA_HOME" -o ! -d "$JAVA_HOME"; then
-- JAVA_HOME=$(/usr/libexec/java_home)
-- fi
-- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $JAVA_HOME" >&5
--$as_echo "$JAVA_HOME" >&6; }
-- JAVA_BINDIR="${JAVA_BINDIR:-$JAVA_HOME/bin}"
-- PATH="$JAVA_BINDIR:$PATH"
-- java_abs_paths=yes
-- OSLIBPL=jpl_config.pl
-- ;;
-- *powerpc-linux*)
-- JAVALIBS="-ljava -ljvm"
-- ;;
-- *win32*|*win64*)
-- JAVALIBS="-ljvm"
-- CMDEXT=bat
-- ;;
-- *)
-- JAVALIBS="-ljava -lverify -ljvm"
-- ;;
-- esac
--fi
-
- case "$PLARCH" in
- *win32*)
-@@ -5657,6 +5629,10 @@ darwin*) _JNI_LIBDIRS="lib"
- _JNI_LIBDIRS="lib/amd64"
- _JNI_LIBSUBDIRS="server"
- ;;
-+ alpha*)
-+ _JNI_LIBDIRS="lib/alpha"
-+ _JNI_LIBSUBDIRS="server"
-+ ;;
- arm*)
- _JNI_LIBDIRS="lib/arm"
- _JNI_LIBSUBDIRS="server"
-@@ -5670,14 +5646,16 @@ darwin*) _JNI_LIBDIRS="lib"
- _JNI_LIBSUBDIRS="server"
- ;;
- powerpc)
-- case "$host_os" in
-- linux*)
-- _JNI_LIBDIRS="lib/ppc bin"
-- _JNI_LIBSUBDIRS="server classic"
-- ;;
-- *)
-- _JNI_LIBDIRS=""
-- esac
-+ _JNI_LIBDIRS="lib/ppc"
-+ _JNI_LIBSUBDIRS="server"
-+ ;;
-+ s390)
-+ _jni_libdirs="lib/s390"
-+ _jni_libsubdirs="server"
-+ ;;
-+ s390x)
-+ _jni_libdirs="lib/s390x"
-+ _jni_libsubdirs="server"
- ;;
- *)
- # Fallback option should work on all architectures except
-@@ -5688,6 +5666,29 @@ darwin*) _JNI_LIBDIRS="lib"
- ;;
- esac
-
-+# Set JAVALIBS differently if we're using GCJ
-+if test "x$JAVALIBS" = "x"; then
-+ if (echo $_JTOPDIR | grep gcj > /dev/null); then
-+ JAVALIBS="-ljvm"
-+ else
-+ case "$PLARCH" in
-+ *darwin*)
-+ JAVALIBS="-Wl,-framework,JavaVM"
-+ ;;
-+ *powerpc-linux*)
-+ JAVALIBS="-ljava -ljvm"
-+ ;;
-+ *win32*|*win64*)
-+ JAVALIBS="-ljvm"
-+ ;;
-+ *)
-+ JAVALIBS="-ljava -lverify -ljvm"
-+ ;;
-+ esac
-+ fi
-+fi
-+
-+
- if test -z "$JNI_CLIENT_DIRS"; then
- for d in $_JNI_LIBDIRS; do
- for subd in $_JNI_LIBSUBDIRS; do
diff --git a/swipl-7.6.4-Use-system-js-query.patch
b/swipl-7.6.4-Use-system-js-query.patch
deleted file mode 100644
index 2dcb2d5..0000000
--- a/swipl-7.6.4-Use-system-js-query.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 9904e2c6f7b584ab3fddd93e05b9a4b7e3ce7219 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar(a)redhat.com>
-Date: Tue, 28 Aug 2018 08:48:04 +0200
-Subject: [PATCH] Use system js-query
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Signed-off-by: Petr Psa <ppisar(a)redhat.com>
----
- packages/http/configure.ac | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/packages/http/configure.ac b/packages/http/configure.ac
-index 58ac506..1aee2b8 100644
---- a/packages/http/configure.ac
-+++ b/packages/http/configure.ac
-@@ -13,9 +13,9 @@ AC_MSG_CHECKING(jquery)
- JQUERY="$(ls web/js/jquery-*.min.js)"
- JSFILES=$(basename $JQUERY)
- if test "$CROSSCOMPILING" != yes; then
-- dnl Try jquery from Debian libjs-jquery package
-- if test -r /usr/share/javascript/jquery/jquery.min.js; then
-- JQUERY=/usr/share/javascript/jquery/jquery.min.js
-+ dnl Try jquery from Fedora js-jquery package
-+ if test -r /usr/share/javascript/jquery/latest/jquery.min.js; then
-+ JQUERY=/usr/share/javascript/jquery/latest/jquery.min.js
- JSFILES=
- fi
- fi
---
-2.14.4
-
diff --git a/swipl-8.0.2-unbundle-libstemmer.patch
b/swipl-8.0.2-unbundle-libstemmer.patch
new file mode 100644
index 0000000..3e27cd7
--- /dev/null
+++ b/swipl-8.0.2-unbundle-libstemmer.patch
@@ -0,0 +1,38 @@
+--- a/packages/nlp/CMakeLists.txt 2019-01-24 04:14:45.000000000 -0700
++++ b/packages/nlp/CMakeLists.txt 2019-03-22 13:00:30.351172410 -0600
+@@ -2,7 +2,8 @@ cmake_minimum_required(VERSION 3.5)
+ project(swipl-nlp)
+
+ include("../cmake/PrologPackage.cmake")
+-add_subdirectory(libstemmer_c)
++AC_CHECK_HEADERS(libstemmer.h)
++if(HAVE_LIBSTEMMER_H)
+
+ AC_CHECK_FUNCS(wcsdup)
+
+@@ -27,7 +28,7 @@ swipl_plugin(
+ swipl_plugin(
+ snowball
+ C_SOURCES snowball.c
+- THREADED C_LIBS libstemmer
++ THREADED C_LIBS stemmer
+ PL_LIBS snowball.pl)
+
+ add_custom_target(nlp)
+@@ -36,3 +37,5 @@ add_dependencies(nlp double_metaphone po
+ pkg_doc(nlp
+ SECTION
+ snowball.pl isub.pl)
++
++endif(HAVE_LIBSTEMMER_H)
+--- a/packages/nlp/snowball.c 2019-01-24 04:14:45.000000000 -0700
++++ b/packages/nlp/snowball.c 2019-03-22 12:54:24.634687651 -0600
+@@ -35,7 +35,7 @@
+ #include <config.h>
+ #include <SWI-Prolog.h>
+ #include <SWI-Stream.h>
+-#include "libstemmer_c/include/libstemmer.h"
++#include <libstemmer.h>
+ #include <pthread.h>
+ #include <string.h>
+ #include <assert.h>