Hello community, here is the log from the commit of package swipl for openSUSE:Factory checked in at 2017-03-28 15:22:08 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/swipl (Old) and /work/SRC/openSUSE:Factory/.swipl.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "swipl" Tue Mar 28 15:22:08 2017 rev:20 rq:480947 version:7.4.1 Changes: -------- --- /work/SRC/openSUSE:Factory/swipl/swipl.changes 2015-09-11 09:04:42.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.swipl.new/swipl.changes 2017-03-28 15:22:11.941762954 +0200 @@ -1,0 +2,13 @@ +Tue Mar 14 15:30:32 UTC 2017 - [email protected] + +- Update to version 7.4.1 +- Removed PREPARE_PACKAGE as we can now use SourceURLs, + which is prefered. +- Removed now useless pl.patch +- Removed invalid internal_fix.patch (leads to failing tests) +- Added reproducible-builds.patch to allow build with fake time + use the SOURCE_DATE_EPOCH variable. +- Added fix-implicit-fortify-decl.patch to fix build with + new glibc on Factory, fixes boo#1023722. + +------------------------------------------------------------------- Old: ---- PREPARE_PACKAGE internal_fix.patch pl.patch swipl-7.2.2.tar.gz New: ---- fix-implicit-fortify-decl.patch reproducible-builds.patch swipl-7.4.1.tar.gz swipl-rpmlintrc ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ swipl.spec ++++++ --- /var/tmp/diff_new_pack.UuIfxy/_old 2017-03-28 15:22:13.317568104 +0200 +++ /var/tmp/diff_new_pack.UuIfxy/_new 2017-03-28 15:22:13.317568104 +0200 @@ -1,7 +1,7 @@ # # spec file for package swipl # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,39 +17,51 @@ Name: swipl -Version: 7.2.2 +Version: 7.4.1 Release: 0 Summary: Prolog Compiler License: GPL-2.0+ and LGPL-2.1+ Group: Development/Languages/Other Url: http://www.swi-prolog.org -# See PREPARE_PACKAGE for instructions on how to create archive. -Source0: swipl-%{version}.tar.gz -Source99: PREPARE_PACKAGE -# FIXME: these patches are undocumented. -Patch0: pl.patch +Source0: http://www.swi-prolog.org/download/stable/src/swipl-%{version}.tar.gz +Source98: swipl-rpmlintrc +# For SOURCE_DATE_EPOCH variable- reproducible builds +Source99: %{name}.changes +# PATCH-FIX-OPENSUSE swipl-ppc64.patch - Fix configure on PowerPC architecture +Patch0: swipl-ppc64.patch +# PATCH-FIX-UPSTREAM pkgconfig.patch - Fix location of include files in pkgconfig file Patch1: pkgconfig.patch -Patch2: internal_fix.patch -Patch3: swipl-ppc64.patch +# PATCH-FEATURE-UPSTREAM reproducible-builds.patch - https://github.com/SWI-Prolog/swipl-devel/pull/210 and https://github.com/SWI-Prolog/packages-table/pull/1 +Patch2: reproducible-builds.patch +# PATCH-FIX-UPSTREAM fix-implicit-fortify-decl.patch - https://github.com/SWI-Prolog/packages-xpce/pull/8 +Patch3: fix-implicit-fortify-decl.patch +BuildRequires: db-devel BuildRequires: fdupes BuildRequires: freetype2-devel BuildRequires: gcc-c++ BuildRequires: gmp-devel -BuildRequires: java-devel >= 1.6.0 +BuildRequires: java-devel >= 1.7.0 BuildRequires: libarchive-devel BuildRequires: libjpeg-devel -BuildRequires: libpng-devel BuildRequires: libunwind-devel -BuildRequires: mysql-devel -BuildRequires: openssl-devel -BuildRequires: postgresql-devel +BuildRequires: ncurses-devel +BuildRequires: pkgconfig BuildRequires: readline-devel -BuildRequires: texlive -BuildRequires: texlive-latex BuildRequires: unixODBC-devel -BuildRequires: xorg-x11 -BuildRequires: xorg-x11-Xvfb -BuildRequires: xorg-x11-devel +BuildRequires: pkgconfig(ice) +BuildRequires: pkgconfig(libedit) +BuildRequires: pkgconfig(libssl) +BuildRequires: pkgconfig(ossp-uuid) +BuildRequires: pkgconfig(sm) +BuildRequires: pkgconfig(x11) +BuildRequires: pkgconfig(xext) +BuildRequires: pkgconfig(xft) +BuildRequires: pkgconfig(xinerama) +BuildRequires: pkgconfig(xpm) +BuildRequires: pkgconfig(xrender) +BuildRequires: pkgconfig(xt) +# For %%check +BuildRequires: junit Provides: swi-prolog = %{version} Provides: swi_pl = %{version} Obsoletes: swi-prolog < %{version} @@ -59,45 +71,46 @@ %description Edinburgh-style Prolog compiler including modules, autoload, libraries, Garbage collector, stack expandor, C interface, GNU readline and GNU -Emacs interface, a very fast compiler,and an X11 interface using XPCE -(see http://www.swi.psy.uva.nl/projects/xpce). +Emacs interface, a very fast compiler,and an X11 interface using XPCE. %prep %setup -q -%patch0 -p 1 -%patch1 -p 1 -%patch2 -p 1 -%patch3 -p 1 +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 %build -cp -p build.templ build +export SOURCE_DATE_EPOCH="$(sed -n '/^----/n;s/ - .*$//;p;q' %{SOURCE99} | date -u -f - +%%s)" +%configure --with-world +make %{?_smp_mflags} -export COFLAGS="%{optflags} -fno-strict-aliasing" - -./build --prefix=%{_prefix} --config --libdir=%{_libdir} --enable-shared -./build --prefix=%{_prefix} --make %{?_smp_mflags} - -unset COFLAGS +%check +make %{?_smp_mflags} check %install +make DESTDIR=%{buildroot} install-world -DESTDIR=%{buildroot} ./build --prefix=%{_prefix} --install - -# Add another symlink -cd %{buildroot}/%{_prefix}/bin -ln -s ../%{_lib}/%{name}-%{version}/bin/*/swipl pl - -# Add a link to the documentation in docdir. -mkdir -p %{buildroot}/%{_docdir} -cd %{buildroot}/%{_docdir} -ln -s %{_libdir}/%{name}-%{version}/doc swipl +# Fix installation of documentation +mkdir -p %{buildroot}%{_docdir} +mv -v %{buildroot}%{_libdir}/%{name}-%{version}/doc %{buildroot}%{_docdir}/%{name}-%{version} +mv -v %{buildroot}%{_libdir}/%{name}-%{version}/demo %{buildroot}%{_docdir}/%{name}-%{version} +ln -s %{_docdir}/%{name}-%{version} %{buildroot}%{_libdir}/%{name}-%{version}/doc +ln -s %{_docdir}/%{name}-%{version} %{buildroot}%{_libdir}/%{name}-%{version}/demo + +# Fix script +chmod +x %{buildroot}%{_libdir}/swipl-%{version}/library/dialect/sicstus/swipl-lfr.pl +sed -i "s@%{_bindir}/../swipl.sh@%{_bindir}/swipl@" %{buildroot}%{_docdir}/%{name}-%{version}/packages/examples/pldoc/man_server.pl -chmod -x %{buildroot}/%{_libdir}/%{name}-%{version}/doc/packages/examples/pldoc/man_server.pl +# Create common symlink for "pl" +ln -s swipl %{buildroot}%{_bindir}/pl %fdupes %{buildroot}/%{_libdir}/%{name}-%{version} +%fdupes %{buildroot}/%{_docdir}/%{name}-%{version} %files %defattr(-,root,root,-) +%license LICENSE %{_bindir}/pl %{_bindir}/swipl %{_bindir}/swipl-ld @@ -105,10 +118,10 @@ %{_bindir}/xpce-client %{_libdir}/%{name}-%{version} %{_libdir}/pkgconfig/%{name}.pc -%{_docdir}/%{name} -%{_mandir}/man1/swipl-ld.1.gz -%{_mandir}/man1/swipl-rc.1.gz -%{_mandir}/man1/swipl.1.gz -%{_mandir}/man1/xpce-client.1.gz +%{_mandir}/man1/swipl-ld.1%{ext_man} +%{_mandir}/man1/swipl-rc.1%{ext_man} +%{_mandir}/man1/swipl.1%{ext_man} +%{_mandir}/man1/xpce-client.1%{ext_man} +%doc %{_docdir}/%{name}-%{version} %changelog ++++++ fix-implicit-fortify-decl.patch ++++++ diff -Nur swipl-7.4.1/packages/xpce/src/unx/process.c new/packages/xpce/src/unx/process.c --- swipl-7.4.1/packages/xpce/src/unx/process.c 2017-02-09 17:09:04.000000000 +0100 +++ new/packages/xpce/src/unx/process.c 2017-03-16 18:56:13.667146338 +0100 @@ -33,7 +33,8 @@ */ #if defined(__linux__) || defined(__GLIBC__) || defined(__GNU__) -#define _XOPEN_SOURCE /* GNU glibc grantpt() prototypes */ +#define _XOPEN_SOURCE 500/* GNU glibc grantpt() prototypes */ +#include <stdlib.h> /* ptsname */ #endif #include <h/kernel.h> ++++++ reproducible-builds.patch ++++++ diff -Nur swipl-7.4.1/packages/table/Makefile.in new/packages/table/Makefile.in --- swipl-7.4.1/packages/table/Makefile.in 2016-12-18 16:39:36.000000000 +0100 +++ new/packages/table/Makefile.in 2017-03-15 00:21:55.667370636 +0100 @@ -11,6 +11,12 @@ CFLAGS+= -I. LIBS=@LIBS@ +DATE_FMT = %Y-%m-%d +ifdef SOURCE_DATE_EPOCH + BUILD_DATE ?= $(shell date -u -d "@$(SOURCE_DATE_EPOCH)" "+$(DATE_FMT)" 2>/dev/null || date -u -r "$(SOURCE_DATE_EPOCH)" "+$(DATE_FMT)" 2>/dev/null || date -u "+$(DATE_FMT)") + CFLAGS += -DBUILD_DATE=\"${BUILD_DATE}\" +endif + LIBPL= table.pl table_util.pl TARGETS= table.@SO@ diff -Nur swipl-7.4.1/packages/table/table.c new/packages/table/table.c --- swipl-7.4.1/packages/table/table.c 2016-12-18 16:39:36.000000000 +0100 +++ new/packages/table/table.c 2017-03-15 00:30:04.822515400 +0100 @@ -38,6 +38,10 @@ #define O_ORDER /* include order.c package */ +#ifndef BUILD_DATE +#define BUILD_DATE __DATE__ +#endif + #include <SWI-Stream.h> #include "table.h" @@ -2198,7 +2202,7 @@ static foreign_t pl_table_version(term_t version, term_t date) { if ( PL_unify_atom_chars(version, TABLE_VERSION) && - PL_unify_atom_chars(date, __DATE__) ) + PL_unify_atom_chars(date, BUILD_DATE) ) return TRUE; return FALSE; diff -Nur swipl-7.4.1/src/Makefile.in new/src/Makefile.in --- swipl-7.4.1/src/Makefile.in 2017-03-02 21:37:35.000000000 +0100 +++ new/src/Makefile.in 2017-03-15 01:04:41.980399442 +0100 @@ -166,6 +166,15 @@ UNICODE=blocks.pl unicode_data.pl builddirs=../lib ../lib/$(PLARCH) os +# For reproducible builds +DATE_FMT = "%b %e %Y" +TIME_FMT = "%R" +ifdef SOURCE_DATE_EPOCH +BUILD_DATE ?= $(shell date -u -d "@$(SOURCE_DATE_EPOCH)" "+$(DATE_FMT)" 2>/dev/null || date -u -r "$(SOURCE_DATE_EPOCH)" "+$(DATE_FMT)" 2>/dev/null || date -u "+$(DATE_FMT)") +BUILD_TIME ?= $(shell date -u -d "@$(SOURCE_DATE_EPOCH)" "+$(TIME_FMT)" 2>/dev/null || date -u -r "$(SOURCE_DATE_EPOCH)" "+$(TIME_FMT)" 2>/dev/null || date -u "+$(DATE_FMT)") +CFLAGS += -DBUILD_DATE=\"${BUILD_DATE}\" -DBUILD_TIME=\"${BUILD_TIME}\" +endif + # OPTIMISE=noprof: normal build; prof: build twice, using profiling # information to optimise branches. Normally set through # configure --enable-useprofile diff -Nur swipl-7.4.1/src/os/pl-prologflag.c new/src/os/pl-prologflag.c --- swipl-7.4.1/src/os/pl-prologflag.c 2017-03-02 21:37:35.000000000 +0100 +++ new/src/os/pl-prologflag.c 2017-03-15 01:06:44.249304023 +0100 @@ -1396,7 +1396,9 @@ setPrologFlag("kernel_compile_mode", FT_ATOM|FF_READONLY, "debug"); #endif -#if defined(__DATE__) && defined(__TIME__) +#if defined(BUILD_TIME) && defined(BUILD_DATE) + setPrologFlag("compiled_at", FT_ATOM|FF_READONLY, BUILD_DATE ", " BUILD_TIME); +#elif defined(__DATE__) && defined(__TIME__) setPrologFlag("compiled_at", FT_ATOM|FF_READONLY, __DATE__ ", " __TIME__); #endif ++++++ swipl-7.2.2.tar.gz -> swipl-7.4.1.tar.gz ++++++ /work/SRC/openSUSE:Factory/swipl/swipl-7.2.2.tar.gz /work/SRC/openSUSE:Factory/.swipl.new/swipl-7.4.1.tar.gz differ: char 5, line 1 ++++++ swipl-rpmlintrc ++++++ # They are just for testing / examples needed addFilter("W: pem-certificate /usr/share/doc/packages/swipl-*") # They are needed for swipl / pl addFilter("E: devel-file-in-non-devel-package *") # Needed for own shared libraries addFilter("W: rpath-in-buildconfig *")
