Hello community,
here is the log from the commit of package racket for openSUSE:Factory checked in at 2019-04-03 09:28:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/racket (Old)
and /work/SRC/openSUSE:Factory/.racket.new.25356 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "racket"
Wed Apr 3 09:28:12 2019 rev:7 rq:690640 version:7.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/racket/racket.changes 2018-12-04 20:54:23.992848179 +0100
+++ /work/SRC/openSUSE:Factory/.racket.new.25356/racket.changes 2019-04-03 09:28:14.751821762 +0200
@@ -1,0 +2,37 @@
+Mon Apr 1 11:32:05 UTC 2019 - Dr. Werner Fink
+
+- Add patch extflvector-length-inlined.patch from upstream commit
+ 80f84f21 to get extflvector-length work even on i586
+- Add patch racket-doc.patch to be able to split package into
+ main and doc pacakges
+
+-------------------------------------------------------------------
+Fri Mar 29 12:55:43 UTC 2019 - Dr. Werner Fink
+
+- Spec file clean up
+- Try to get it work on some ix86 CPU versions
+
+-------------------------------------------------------------------
+Wed Mar 27 18:12:23 UTC 2019 - Dr. Werner Fink
+
+- Require some missed libraries and certificates for build
+ as well as for installation even if rmplint cries
+- Update to racket 7.2
+ * The contract system supports collapsible contracts, which avoid
+ repeated wrappers in certain pathological situations. Thanks to Daniel
+ Feltey.
+ * Quickscript, a scripting tool for DrRacket, has become part of the
+ standard distribution. Thanks to Laurent Orseau.
+ * The web server's built-in configuration for serving static files
+ recognizes the ".mjs" extension for JavaScript modules.
+ * The `data/enumerate` library supports an additional form of
+ subtraction via `but-not/e`, following Yorgey and Foner's ICFP'18
+ paper. Thanks to Max New.
+ * The `letrec.rkt` example model in Redex has been changed to more
+ closely match Racket, which led to some bug fixes in Racket's
+ implementation of `letrec` and `set!`.
+ * The racklog library has seen a number of improvements, including fixes
+ to logic variable binding, logic variables containing predicates being
+ applicable, and the introduction of an `%andmap` higher-order predicate.
+
+-------------------------------------------------------------------
Old:
----
racket-6.10.1.rpmlintrc
racket-7.1-src.tgz
New:
----
extflvector-length-inlined.patch
racket-7.2-src.tgz
racket-doc.patch
racket-rpmlintrc
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ racket.spec ++++++
--- /var/tmp/diff_new_pack.XLddec/_old 2019-04-03 09:28:15.891822299 +0200
+++ /var/tmp/diff_new_pack.XLddec/_new 2019-04-03 09:28:15.891822299 +0200
@@ -1,7 +1,7 @@
#
# spec file for package racket
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2012, 2013 Togan Muftuoglu toganm@opensuse.org
#
# All modifications and additions to the file contributed by third parties
@@ -18,7 +18,7 @@
Name: racket
-Version: 7.1
+Version: 7.2
Release: 0
Summary: Scheme implementation with teaching tools
License: LGPL-2.1-or-later AND GPL-3.0-or-later
@@ -26,9 +26,12 @@
Url: http://racket-lang.org
Source0: http://download.racket-lang.org/installers/%version/%name-%version-src.tgz
Source2: racket-completion.bash
-Source3: racket-6.10.1.rpmlintrc
+Source3: racket-rpmlintrc
+Patch0: racket-doc.patch
+Patch1: extflvector-length-inlined.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: ImageMagick
+BuildRequires: ca-certificates
BuildRequires: chrpath
BuildRequires: fdupes
BuildRequires: gcc-c++
@@ -41,8 +44,10 @@
BuildRequires: pkgconfig(cairo)
BuildRequires: pkgconfig(fontconfig)
BuildRequires: pkgconfig(freetype2)
-BuildRequires: pkgconfig(gtk+-2.0)
+BuildRequires: pkgconfig(glib-2.0)
+BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(ice)
+BuildRequires: pkgconfig(libedit)
BuildRequires: pkgconfig(libffi)
BuildRequires: pkgconfig(libpng)
BuildRequires: pkgconfig(openssl)
@@ -58,9 +63,20 @@
BuildRequires: pkgconfig(xrender)
BuildRequires: pkgconfig(xt)
BuildRequires: pkgconfig(zlib)
+# The rpmbuild does not detect those!
+Requires: libcairo2
+Requires: libedit0
+Requires: libglib-2_0-0
+Requires: libgtk-3-0
+Requires: libpango-1_0-0
+Requires: libsqlite3-0
Provides: %name-drracket = %version-%release
Provides: %name-games = %version-%release
Provides: %name-webserver = %version-%release
+Recommends: racket-doc = %{version}-%{release}
+
+%define add_optflags(a:f:t:p:w:W:d:g:O:A:C:D:E:H:i:M:n:P:U:u:l:s:X:B:I:L:b:V:m:x:c:S:E:o:v:) \
+%global optflags %{optflags} %{**}
# maggia has this
# Disable the debug package since otherwise a build would create the following
@@ -81,6 +97,15 @@
such as classes or modules, and separate dialects of Racket enable different
semantics.
+%package doc
+Summary: Documentation HTML files for Racket
+Group: Development/Languages/Scheme
+Provides: %{name}:%{_docdir}/%{name}/docindex.sqlite
+BuildArch: noarch
+
+%description doc
+A local installation of the Racket documentation system.
+
%package devel
Summary: Development header files for Racket
Group: Development/Languages/Scheme
@@ -95,17 +120,23 @@
%prep
%setup -q
+%patch0 -p0
+%patch1 -p2
-cp %{S:2} src/.
+cp -p %{S:2} src/
%build
-cd src
+cd src/
+
+%add_optflags -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=500 -fno-gcse
+%configure --prefix="%_datadir" --docdir="%_defaultdocdir/%name" --enable-shared \
+ --disable-static --disable-strip --enable-places --enable-lt="%_bindir/libtool" \
+ --enable-pthread
-%configure --prefix="%_datadir" --docdir="%_defaultdocdir/%name" --enable-shared --disable-static --disable-strip --enable-places --enable-lt="%_bindir/libtool"
make %{?_smp_mflags} VERBOSE=1
%install
-cd src
+cd src/
# use the following if setting extra plt_setup options
# export LD_LIBRARY_PATH=%%buildroot%%_libdir
@@ -119,8 +150,37 @@
find %buildroot%_libdir -name "*.la" -delete
find %buildroot%_libdir -name "*.a" -delete
+find %buildroot%_datadir -name ".LOCKpkgs.rktd" -delete
-install -Dm 644 %{S:2} %buildroot%_sysconfdir/bash_completion.d/%name
+# make system clear
+for bin in mred mzscheme racket
+do
+ test -e $bin || continue
+ chrpath --delete %{buildroot}%{_bindir}/$bin || :
+done
+for bin in gracket starter
+do
+ test -e $bin || continue
+ chrpath --delete %{buildroot}%{_libdir}/$bin || :
+done
+for bin in c-printf crypt esd magick sndfile tcl xmmsctrl xosd
+do
+ bin=%{buildroot}%{_datadir}/%{name}/pkgs/racket-doc/ffi/examples/use-${bin}.rkt
+ test -e $bin || continue
+ sed -ri '1s@(/usr/bin/)env +@\1@p' $bin
+ chmod 755 $bin
+done
+chmod 755 %{buildroot}%{_datadir}/%{name}/pkgs/htdp-lib/2htdp/uchat/xrun
+
+for html in syntax/module-helpers rackunit/api reference/collects
+do
+ html=%{_docdir}/%{name}/${html}.html
+ test -e $html || continue
+ sed -ri 's@%{buildroot}@@g' $html
+done
+
+# Bash completion
+install -Dm 644 %{S:2} %buildroot%_datadir/bash_completion/completions/%name
install -Dm 644 %_builddir/%name-%version/share/pkgs/drracket/drracket/drracket.png %buildroot%_datadir/pixmaps/drracket.png
# rewrite path in .desktop files
@@ -128,6 +188,9 @@
%suse_update_desktop_file -c drracket "DrRacket" "DrRacket is an interactive, integrated, graphical programming environment for the Racket programming languages" "%_bindir/drracket" "drracket" Development IDE
%suse_update_desktop_file -c slideshow "Slideshow" "Slideshow is a Racket-based tool for writing slide presentations as programs" "%_bindir/slideshow" "drracket" Development Documentation
+# Due package split we do this explicit to support older rpm version as well
+install -m 0644 ../README %{buildroot}%{_docdir}/%{name}/README
+
%fdupes %buildroot%_prefix
%post
@@ -140,8 +203,8 @@
%files
%defattr(-,root,root,-)
-%doc README
-%doc %{_docdir}/%{name}
+%doc %dir %{_docdir}/%{name}
+%doc %{_docdir}/%{name}/README
%_bindir/drracket
%_bindir/gracket
%_bindir/gracket-text
@@ -164,7 +227,7 @@
%_bindir/slatex
%_bindir/slideshow
%_bindir/swindle
-%_libdir/*.so
+%_libdir/libracket3m-%{version}.so
%_libdir/%name/mzdyn3m.o
%_datadir/%name/*
%_libdir/%name/starter
@@ -181,19 +244,26 @@
%_mandir/man1/plt-help*
%dir %_libdir/%name
%dir %_datadir/%name
-%dir %_sysconfdir/bash_completion.d/
+%dir %_datadir/bash_completion
+%dir %_datadir/bash_completion/completions
%dir %_sysconfdir/%name
-%_sysconfdir/bash_completion.d/%name
+%_datadir/bash_completion/completions/%name
%config %_sysconfdir/%name/config.rktd
%_datadir/applications/drracket.desktop
%_datadir/applications/slideshow.desktop
%_datadir/pixmaps/drracket.png
%exclude %_datadir/%name/pkgs/mzscheme-lib/mzscheme/examples/*
+%files doc
+%defattr(-,root,root,-)
+%doc %{_docdir}/%{name}/*
+%exclude %{_docdir}/%{name}/README
+
%files devel
%defattr(-,root,root,-)
%_includedir/%name/*
%_libdir/%name/buildinfo
+%_libdir/libracket3m.so
%dir %_includedir/%name
%_datadir/%name/pkgs/mzscheme-lib/mzscheme/examples/*
++++++ _constraints ++++++
--- /var/tmp/diff_new_pack.XLddec/_old 2019-04-03 09:28:15.915822310 +0200
+++ /var/tmp/diff_new_pack.XLddec/_new 2019-04-03 09:28:15.915822310 +0200
@@ -1,9 +1,32 @@
<?xml version="1.0"?>
<constraints>
+ <sandbox>kvm</sandbox>
+ <hostlabel exclude="true">SLOW_CPU</hostlabel>
<hardware>
<processors>4</processors>
- <memory>
+ <physicalmemory>
<size unit="G">4</size>
+ </physicalmemory>
+ <memory>
+ <size unit="G">6</size>
</memory>
+ <disk>
+ <size unit="G">1</size>
+ </disk>
</hardware>
+ <overwrite>
+ <conditions>
+ <arch>i586</arch>
+ <arch>x86_64</arch>
+ </conditions>
+ <hardware>
+ <cpu>
+ <flag>mmx</flag>
+ <flag>sse</flag>
+ <flag>sse2</flag>
+ <flag>sse3</flag>
+ <flag>ssse3</flag>
+ </cpu>
+ </hardware>
+ </overwrite>
</constraints>
++++++ extflvector-length-inlined.patch ++++++
From 80f84f2132233f8bcba05273cc23414caff8bd9c Mon Sep 17 00:00:00 2001
From: Matthew Flatt
Date: Sat, 2 Feb 2019 19:38:41 -0700
Subject: [PATCH] fix extflvector-length for platforms where it's not inlined
---
racket/src/racket/src/number.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/racket/src/racket/src/number.c b/racket/src/racket/src/number.c
index 954efffbf1..e486ce265d 100644
--- a/racket/src/racket/src/number.c
+++ b/racket/src/racket/src/number.c
@@ -1083,7 +1083,11 @@ void scheme_init_extfl_number(Scheme_Startup_Env *env)
ADD_PRIM_W_ARITY("make-shared-extflvector", make_shared_extflvector, 1, 2, env);
p = scheme_make_immed_prim(extflvector_length, "extflvector-length", 1, 1);
- SCHEME_PRIM_PROC_FLAGS(p) |= scheme_intern_prim_opt_flags(SCHEME_PRIM_IS_UNARY_INLINED
+ if (MZ_LONG_DOUBLE_AVAIL_AND(1))
+ flags = SCHEME_PRIM_IS_BINARY_INLINED;
+ else
+ flags = SCHEME_PRIM_SOMETIMES_INLINED;
+ SCHEME_PRIM_PROC_FLAGS(p) |= scheme_intern_prim_opt_flags(flags
| SCHEME_PRIM_PRODUCES_FIXNUM);
scheme_addto_prim_instance("extflvector-length", p, env);
++++++ racket-7.1-src.tgz -> racket-7.2-src.tgz ++++++
/work/SRC/openSUSE:Factory/racket/racket-7.1-src.tgz /work/SRC/openSUSE:Factory/.racket.new.25356/racket-7.2-src.tgz differ: char 5, line 1
++++++ racket-doc.patch ++++++
---
share/pkgs/scribble-lib/help/search.rkt | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
--- share/pkgs/scribble-lib/help/search.rkt
+++ share/pkgs/scribble-lib/help/search.rkt 2019-03-28 07:38:19.695803840 +0000
@@ -43,7 +43,8 @@
(let* ([path (build-path (find-user-doc-dir) sub)]
[path (if (file-exists? path) path (build-path (find-doc-dir) sub))])
(notify path)
- (if (file-exists? path)
+ (if (and (file-exists? path)
+ (file-exists? (build-path (find-doc-dir) "docindex.sqlite")))
(send-url/file path #:fragment fragment #:query query)
(let ([part (lambda (pfx x) (if x (string-append pfx x) ""))])
(send-url (string-append
++++++ racket-rpmlintrc ++++++
addFilter(".*unexpanded-macro.*/usr/share/racket/collects/srfi/.*")
addFilter(".*W:.*explicit-lib-dependency.*lib.*")
addFilter(".*W:.*zero-length.*")
addFilter(".*W:.*pem-certificate.*/test\.pem.*")
addFilter(".*W:.*script-without-shebang.*/starter-sh.*")
addFilter(".*file-contains-buildroot.*/usr/share/doc/packages/racket/syntax/module-helpers.html.*")
addFilter(".*file-contains-buildroot.*/usr/share/doc/packages/racket/rackunit/api.html.*")
addFilter(".*file-contains-buildroot.*/usr/share/doc/packages/racket/reference/collects.html.*")