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 <[email protected]>
+
+- 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 <[email protected]>
+
+- 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 <[email protected]>
+
+- 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 [email protected]
 #
 # 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 <[email protected]>
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.*")

Reply via email to