From 73dab3d3e021049701ccdc9fef243240cec4a872333ed1d6a0a6a31c5dfa7d80 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20Mail=C3=A4nder?= Date: Mon, 25 Jul 2016 06:43:18 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/devel:languages:misc/racket?expand=0&rev=17 --- ...ix-install-path-for-doc-and-collects.patch | 50 +++++++++++++++ 0001-pkg-collects-path.patch | 33 ---------- libpng16-adjustment.patch | 30 +++++++++ libpng16.patch | 52 +++++++++++++++ racket-5.3.3-src-unix.tgz | 3 - racket-5.3.6-src-unix.tgz | 3 + racket.changes | 64 +++++++++++++++++++ racket.spec | 61 ++++++++++-------- 8 files changed, 235 insertions(+), 61 deletions(-) create mode 100644 0001-Fix-install-path-for-doc-and-collects.patch delete mode 100644 0001-pkg-collects-path.patch create mode 100644 libpng16-adjustment.patch create mode 100644 libpng16.patch delete mode 100644 racket-5.3.3-src-unix.tgz create mode 100644 racket-5.3.6-src-unix.tgz diff --git a/0001-Fix-install-path-for-doc-and-collects.patch b/0001-Fix-install-path-for-doc-and-collects.patch new file mode 100644 index 0000000..f3567a4 --- /dev/null +++ b/0001-Fix-install-path-for-doc-and-collects.patch @@ -0,0 +1,50 @@ +From 2d3b04e8248d6d97323ef5ac30c48ba9ea967080 Mon Sep 17 00:00:00 2001 +From: madanyang +Date: Fri, 3 May 2013 19:55:08 +0200 +Subject: [PATCH] Fix install path for doc and collects + +docdir is hardcoded for /usr/share/doc but in openSUSE +/usr/share/doc/packages is used the base for documentations + +collectsdir is hardcoded to ${libdir}/collects in the configure +script, but we want to install the collects (which are mostly +arch-independent) into /usr/share, and symlink the small number of +exceptions into /usr/lib/racket/collects/$foo + +Signed-off-by: madanyang +--- + src/configure | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +--- a/src/configure ++++ b/src/configure +@@ -813,7 +813,7 @@ sharedstatedir='${prefix}/com' + localstatedir='${prefix}/var' + includedir='${prefix}/include' + oldincludedir='/usr/include' +-docdir='${datarootdir}/doc/${PACKAGE}' ++docdir='${datarootdir}/doc/packages/${PACKAGE}' + infodir='${datarootdir}/info' + htmldir='${docdir}' + dvidir='${docdir}' +@@ -1317,7 +1317,7 @@ Fine tuning of the installation director + --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] + --datadir=DIR read-only architecture-independent data [DATAROOTDIR] + --mandir=DIR man documentation [DATAROOTDIR/man] +- --docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE] ++ --docdir=DIR documentation root [DATAROOTDIR/doc/packages/PACKAGE] + _ACEOF + + cat <<\_ACEOF +@@ -2299,9 +2299,9 @@ else + prefix="${ac_default_prefix}" + fi + libpltdir="${libdir}/racket" +- collectsdir="${libdir}/racket/collects" ++ collectsdir="${datadir}/racket/collects" + includepltdir="${includedir}/racket" +- docdir="${datadir}/doc/racket" ++ docdir="${datadir}/doc/packages/racket" + MAKE_COPYTREE=copytree + COLLECTS_PATH='${collectsdir}' + INSTALL_ORIG_TREE=no diff --git a/0001-pkg-collects-path.patch b/0001-pkg-collects-path.patch deleted file mode 100644 index 3825a74..0000000 --- a/0001-pkg-collects-path.patch +++ /dev/null @@ -1,33 +0,0 @@ -From bb3373b08eef415cb3533a6a9b8e1b8c54c79e4e Mon Sep 17 00:00:00 2001 -From: David Bremner -Date: Mon, 25 Apr 2011 07:32:21 -0300 -Subject: [PATCH] pkg/collects-path - -Patch configure script to set collectsdir to /usr/share/racket/collects. - -collectsdir is hardcoded to ${libdir}/collects in the configure -script, but we want to install the collects (which are mostly -arch-independent) into /usr/share, and symlink the small number of -exceptions into /usr/lib/racket/collects/$foo - -Signed-off-by: David Bremner ---- - src/configure | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/configure b/src/configure -index 64a8fef..6861d54 100755 ---- a/src/configure -+++ b/src/configure -@@ -2264,7 +2264,7 @@ else - prefix="${ac_default_prefix}" - fi - libpltdir="${libdir}/racket" -- collectsdir="${libdir}/racket/collects" -+ collectsdir="${datadir}/racket/collects" - includepltdir="${includedir}/racket" - docdir="${datadir}/racket/doc" - MAKE_COPYTREE=copytree --- -1.7.10 - diff --git a/libpng16-adjustment.patch b/libpng16-adjustment.patch new file mode 100644 index 0000000..c2c6b01 --- /dev/null +++ b/libpng16-adjustment.patch @@ -0,0 +1,30 @@ +From f97a7cf1778b74e9f38d97db61e91956565180c3 Mon Sep 17 00:00:00 2001 +From: Matthew Flatt +Date: Wed, 15 May 2013 20:38:40 -0600 +Subject: [PATCH] libpng adjustment + +Keep error if no "libpng" is found. +--- + collects/racket/draw/unsafe/png.rkt | 5 ++--- + 1 file changed, 2 insertions(+), 3 deletions(-) + +diff --git a/collects/racket/draw/unsafe/png.rkt b/collects/racket/draw/unsafe/png.rkt +index a6b028d..f57de38 100644 +--- a/collects/racket/draw/unsafe/png.rkt ++++ b/collects/racket/draw/unsafe/png.rkt +@@ -12,10 +12,9 @@ + ;; variants often have just "libpng", etc. + (let loop ([alts '(("libpng16" ("16" "")) + ("libpng15" ("15" "")) +- ("libpng12" ("0" "")) +- ("libpng"))]) ++ ("libpng12" ("0" "")))]) + (cond +- [(null? alts) #f] ++ [(null? alts) (ffi-lib "libpng")] + [else (apply ffi-lib (car alts) + #:fail (lambda () + (loop (cdr alts))))]))] +-- +1.8.2.3 + diff --git a/libpng16.patch b/libpng16.patch new file mode 100644 index 0000000..998905f --- /dev/null +++ b/libpng16.patch @@ -0,0 +1,52 @@ +From 5629a6156a5720e51a277849f75b3135cb93664f Mon Sep 17 00:00:00 2001 +From: Matthew Flatt +Date: Wed, 15 May 2013 20:28:05 -0600 +Subject: [PATCH] support libpng16 + +--- + collects/racket/draw/unsafe/png.rkt | 21 ++++++++++++++------- + 1 file changed, 14 insertions(+), 7 deletions(-) + +diff --git a/collects/racket/draw/unsafe/png.rkt b/collects/racket/draw/unsafe/png.rkt +index 596fcb4..a6b028d 100644 +--- a/collects/racket/draw/unsafe/png.rkt ++++ b/collects/racket/draw/unsafe/png.rkt +@@ -10,11 +10,15 @@ + [(unix) + ;; Most Linux distros supply "libpng12", while other Unix + ;; variants often have just "libpng", etc. +- (ffi-lib "libpng15" '("15" "") +- #:fail (lambda () +- (ffi-lib "libpng12" '("0" "") +- #:fail (lambda () +- (ffi-lib "libpng")))))] ++ (let loop ([alts '(("libpng16" ("16" "")) ++ ("libpng15" ("15" "")) ++ ("libpng12" ("0" "")) ++ ("libpng"))]) ++ (cond ++ [(null? alts) #f] ++ [else (apply ffi-lib (car alts) ++ #:fail (lambda () ++ (loop (cdr alts))))]))] + [(macosx) (ffi-lib "libpng15.15.dylib")] + [(windows) + (ffi-lib "zlib1.dll") +@@ -29,9 +33,12 @@ + ;; assume that other versions are also ok + (define PNG_LIBPNG_VER_STRING (string->bytes/latin-1 + (let ([v (png_access_version_number)]) +- (format "~s.~s" ++ (format "~s.~s~a" + (quotient v 10000) +- (quotient (remainder v 10000) 100))))) ++ (quotient (remainder v 10000) 100) ++ (if (zero? (remainder v 100)) ++ "" ++ (format ".~a" (remainder v 100))))))) + + (define _png_structp (_cpointer 'png_structp)) + (define _png_infop (_cpointer 'png_infop)) +-- +1.8.2.3 + diff --git a/racket-5.3.3-src-unix.tgz b/racket-5.3.3-src-unix.tgz deleted file mode 100644 index ec3094d..0000000 --- a/racket-5.3.3-src-unix.tgz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4772a01c0d1db32827b390b3239263f2a44a1c6bdcf63224dd7d36027575e0e2 -size 18903284 diff --git a/racket-5.3.6-src-unix.tgz b/racket-5.3.6-src-unix.tgz new file mode 100644 index 0000000..ed483bb --- /dev/null +++ b/racket-5.3.6-src-unix.tgz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fe0ffc1231f888cd481f175e428f0217257dd136d2513bde73954af5a7cfb8a +size 19278914 diff --git a/racket.changes b/racket.changes index c74c438..5bf4ac1 100644 --- a/racket.changes +++ b/racket.changes @@ -1,3 +1,67 @@ +------------------------------------------------------------------- +Sat May 3 01:37:00 UTC 2014 - MihailJP + +- Spec changes + * Collection 'config' should be included in main package + +------------------------------------------------------------------- +Sat Aug 10 13:58:09 UTC 2013 - toganm@opensuse.org + +- Update to Racket 5.3.6 + * This is a bug fix release. It eliminates errors from v5.3.5 + that people have found over the summer. +- Spec changes + * remove libpng16.patch and libpng16-adjustment.patch + * rather then use of mirrors for source downloads use the main + site as mirrors are not uptodate + +------------------------------------------------------------------- +Tue Jun 18 12:13:38 UTC 2013 - toganm@opensuse.org + +- Update to Racket v5.3.5 + + * This is a special-purpose release to match the arrival of "Realm of + Racket" in bookstores. Racket v.5.3.5 adds a single `realm' + collection to the v5.3.4 release. The new collection contains the + source code that readers of Realm may wish to use for experiments. + +- Add racket to the requires of webserver subpackage + +------------------------------------------------------------------- +Fri May 17 06:16:25 UTC 2013 - toganm@opensuse.org + +- Added backported patches libpn16.patch and libpng16-adjustment.patch + correcting libpn16 +- Fix randomly generated mode 666 documentation files + +------------------------------------------------------------------- +Tue May 14 14:33:37 UTC 2013 - toganm@opensuse.org + +- Update to 5.3.4 release for details see changelog.txt and News + + * Extflonums (80-bit floating-point numbers) are supported on some + x86/x86_64 platforms -- including Windows, and including platforms + where Racket is compiled to use SSE instructions for flonum + arithmetic. Thanks to Michael Filonenko. + * Tally Maze: a new game based an enumeration of 2d mazes. + * The Optimization Coach, a DrRacket plugin, has been moved from the + Racket distribution to the Racket package repository. Install it + with: raco pkg install optimization-coach + * Redex: `define-union-language' now merges productions when + languages define the same nonterminals. Thanks to William Bowman. + * The `srfi/19' library is now compatible with the date structure + type exported by `racket/base'. + +- Packaging changes + * 0001-Fix-install-path-for-doc-and-collects.patch based on debian + patch but correct doc install directory as well, this patch also + enable the removal of 0001-pkg-collects-path.patch + * For Factory use libpng12 as racket is not compatible with + libpng16 + * Include libtools to BuildRequires, not to depend on bundled software + in the source package + * Include full URL for the source package + ------------------------------------------------------------------- Fri Mar 15 15:04:42 UTC 2013 - cfarrell@suse.com diff --git a/racket.spec b/racket.spec index c864847..59b80d0 100644 --- a/racket.spec +++ b/racket.spec @@ -1,6 +1,7 @@ # # spec file for package racket # +# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. # Copyright (c) 2012, 2013 Togan Muftuoglu toganm@opensuse.org # # All modifications and additions to the file contributed by third parties @@ -17,37 +18,41 @@ Name: racket -Version: 5.3.3 +Version: 5.3.6 Release: 0 Summary: Scheme implementation with teaching tools License: LGPL-2.1+ and GPL-3.0+ Group: Development/Languages/Scheme Url: http://racket-lang.org -Source0: %name-%version-src-unix.tgz +Source0: http://download.racket-lang.org/installers/%version/%name/%name-%version-src-unix.tgz Source1: drracket.desktop Source2: racket-completion.bash Source3: racket-5.3.rpmlintrc Source4: drracket.png -# PATCH-FIX-OPENSUSE taken from debian package author David Bremner -Patch0: 0001-pkg-collects-path.patch +# PATCH-FIX-OPENSUSE based on debian package toganm@opensuse.org +Patch0: 0001-Fix-install-path-for-doc-and-collects.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildRequires: ImageMagick BuildRequires: chrpath BuildRequires: desktop-file-utils BuildRequires: fdupes BuildRequires: gcc-c++ +BuildRequires: ghostscript-fonts-std +BuildRequires: libexpat1 BuildRequires: libjpeg-devel +BuildRequires: librsvg-devel +BuildRequires: libtool BuildRequires: update-desktop-files -BuildRequires: ImageMagick BuildRequires: pkgconfig(cairo) BuildRequires: pkgconfig(fontconfig) BuildRequires: pkgconfig(freetype2) BuildRequires: pkgconfig(gtk+-2.0) BuildRequires: pkgconfig(ice) BuildRequires: pkgconfig(libffi) -BuildRequires: libpng-devel -BuildRequires: librsvg-devel -BuildRequires: pkgconfig(pango) +BuildRequires: pkgconfig(libpng) BuildRequires: pkgconfig(openssl) +BuildRequires: pkgconfig(pango) +BuildRequires: pkgconfig(pixman-1) >= 0.22.0 BuildRequires: pkgconfig(sm) BuildRequires: pkgconfig(sqlite3) BuildRequires: pkgconfig(x11) @@ -58,11 +63,6 @@ BuildRequires: pkgconfig(xmu) BuildRequires: pkgconfig(xrender) BuildRequires: pkgconfig(xt) BuildRequires: pkgconfig(zlib) -BuildRequires: pkgconfig(pixman-1) >= 0.22.0 -BuildRequires: ghostscript-fonts-std -%if 0%{?suse_version} == 1220 -BuildRequires: libexpat1 -%endif # maggia has this # Disable the debug package since otherwise a build would create the following @@ -105,6 +105,7 @@ This package contains sample games from Racket project. %package webserver Summary: Webserver from Racket Group: Productivity/Networking/Web/Servers +Requires: %{name} = %{version}-%{release} %description webserver Webserver from Racket Scheme. @@ -176,19 +177,20 @@ find collects/*/examples -name *.cxx | xargs rm -rf %build cd src -%configure --enable-shared --disable-static --docdir=%_defaultdocdir/%name -%{__make} %{?_smp_mflags} VERBOSE=1 STRIP_DEBUG=/bin/true +%configure --enable-shared --disable-static --docdir=%_defaultdocdir/%name --disable-strip --enable-places --enable-lt="/usr/bin/libtool" + +%{__make} %{?_smp_mflags} VERBOSE=1 %install cd src -export LD_LIBRARY_PATH=%buildroot%{_libdir} -export PLT_SETUP_OPTIONS="-j 1 " +# use the following if setting extra plt_setup options +# export LD_LIBRARY_PATH=%%buildroot%%{_libdir} +# export PLT_SETUP_OPTIONS="-j 1 " -# let obs do the stripping - -%make_install STRIP_DEBUG=/bin/true +install -d %buildroot/%_datadir/doc/%name/ +%make_install # Fix the rpath error. chrpath --delete %buildroot%{_bindir}/gracket @@ -203,15 +205,25 @@ find %{buildroot}%{_libdir} -name "*.a" -delete install -d %buildroot/etc/bash_completion.d/ install -m 644 %{S:2} %buildroot/etc/bash_completion.d/%name +# somehow some files are installed with mode 666 +find %buildroot%_defaultdocdir/%name -perm 666 -type f -exec chmod 644 {} \; + +chmod -x %buildroot/%_datadir/%name/collects/2htdp/utest/xrun + %suse_update_desktop_file -i drracket %fdupes -s %buildroot/%_datadir/%name/ %fdupes -s %buildroot%_bindir/ +%fdupes -s %buildroot/%_defaultdocdir/%name %post -p /sbin/ldconfig %postun -p /sbin/ldconfig +# +# TODO with racket 5.6 files section will need reorganization +# + %files %defattr(-,root,root,-) %doc README @@ -231,6 +243,7 @@ install -m 644 %{S:2} %buildroot/etc/bash_completion.d/%name %_datadir/%name/collects/at-exp %_datadir/%name/collects/compatibility %_datadir/%name/collects/compiler +%_datadir/%name/collects/config %_datadir/%name/collects/data %_datadir/%name/collects/db %_datadir/%name/collects/dynext @@ -248,8 +261,8 @@ install -m 644 %{S:2} %buildroot/etc/bash_completion.d/%name %_datadir/%name/collects/net %_datadir/%name/collects/openssl %_datadir/%name/collects/parser-tools +%_datadir/%name/collects/pkg %_datadir/%name/collects/planet -%_datadir/%name/collects/planet2 %_datadir/%name/collects/preprocessor %_datadir/%name/collects/profile %_datadir/%name/collects/r5rs @@ -257,6 +270,7 @@ install -m 644 %{S:2} %buildroot/etc/bash_completion.d/%name %_datadir/%name/collects/racket %_datadir/%name/collects/raco %_datadir/%name/collects/reader +%_datadir/%name/collects/realm %_datadir/%name/collects/readline %_datadir/%name/collects/rnrs %_datadir/%name/collects/s-exp @@ -286,10 +300,8 @@ install -m 644 %{S:2} %buildroot/etc/bash_completion.d/%name %{_mandir}/man1/racket* %{_mandir}/man1/raco* %{_mandir}/man1/setup-plt* -%_datadir/%name/doc/* %dir %_libdir/%name %dir %_datadir/%name -%dir %_datadir/%name/doc %dir %_sysconfdir/bash_completion.d/ %_sysconfdir/bash_completion.d/%name @@ -311,7 +323,6 @@ install -m 644 %{S:2} %buildroot/etc/bash_completion.d/%name %{_libdir}/%{name}/buildinfo %dir %_includedir/%name - %files -n drracket %defattr(-,root,root,-) %_bindir/drracket @@ -331,7 +342,6 @@ install -m 644 %{S:2} %buildroot/etc/bash_completion.d/%name %_datadir/%name/collects/2htdp %_datadir/%name/collects/algol60 %_datadir/%name/collects/browser -%_datadir/%name/collects/config %_datadir/%name/collects/datalog %_datadir/%name/collects/defaults %_datadir/%name/collects/deinprogramm @@ -377,4 +387,5 @@ install -m 644 %{S:2} %buildroot/etc/bash_completion.d/%name %_datadir/%name/collects/typed %_datadir/applications/drracket.desktop %_datadir/pixmaps/drracket.png + %changelog