2a66e01b0d
Racket is Lisp/scheme like language comes with lots goodies with packages helping to learn programming or develop applications. The intention is to submit Racket to Factory, so it can be part of the next release after 12.3 Thanks Togan OBS-URL: https://build.opensuse.org/request/show/151137 OBS-URL: https://build.opensuse.org/package/show/devel:languages:misc/racket?expand=0&rev=1
381 lines
11 KiB
RPMSpec
381 lines
11 KiB
RPMSpec
#
|
|
# spec file for package racket
|
|
#
|
|
# Copyright (c) 2012, 2013 Togan Muftuoglu toganm@opensuse.org
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
Name: racket
|
|
Version: 5.3.2
|
|
Release: 0
|
|
Summary: Scheme implementation with teaching tools
|
|
License: LGPL-2.1+
|
|
Group: Development/Languages/Scheme
|
|
Url: http://racket-lang.org
|
|
Source0: %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 <bremner@unb.ca>
|
|
Patch0: 0001-pkg-collects-path.patch
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
BuildRequires: chrpath
|
|
BuildRequires: desktop-file-utils
|
|
BuildRequires: fdupes
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: libjpeg-devel
|
|
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(openssl)
|
|
BuildRequires: pkgconfig(sm)
|
|
BuildRequires: pkgconfig(sqlite3)
|
|
BuildRequires: pkgconfig(x11)
|
|
BuildRequires: pkgconfig(xaw7)
|
|
BuildRequires: pkgconfig(xext)
|
|
BuildRequires: pkgconfig(xft)
|
|
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
|
|
# error message:
|
|
# *** ERROR: same build ID in nonidentical files!
|
|
# /usr/bin/mzscheme
|
|
# and /usr/bin/mred
|
|
# this should be set from the obs
|
|
#%%define debug_package %%{nil}
|
|
|
|
%description
|
|
Racket (formerly called PLT Scheme) is a multi-paradigm programming language
|
|
in the Lisp/Scheme family, that also serves as a platform for language
|
|
creation, design, and implementation.
|
|
|
|
The programming language is known for its powerful macro system which enables
|
|
the creation of embedded and domain-specific languages, language constructs
|
|
such as classes or modules, and separate dialects of Racket enable different
|
|
semantics.
|
|
|
|
|
|
%package -n drracket
|
|
Summary: Racket Scheme graphical development environment
|
|
Group: Development/Languages/Scheme
|
|
Requires: %{name} = %{version}-%{release}
|
|
|
|
%description -n drracket
|
|
DrRacket is the graphical development environment for creating
|
|
Racket applications.
|
|
|
|
%package games
|
|
Summary: Sample games from Racket Scheme
|
|
Group: Amusements/Games/Other
|
|
Requires: %{name} = %{version}-%{release}
|
|
|
|
%description games
|
|
This package contains sample games from Racket project.
|
|
|
|
|
|
%package webserver
|
|
Summary: Webserver from Racket
|
|
Group: Productivity/Networking/Web/Servers
|
|
|
|
%description webserver
|
|
Webserver from Racket Scheme.
|
|
|
|
|
|
%package devel
|
|
Summary: Development header files for PLT
|
|
Group: Development/Languages/Scheme
|
|
Requires: %{name} = %{version}-%{release}
|
|
Requires: glibc-devel
|
|
Requires: libffi-devel
|
|
|
|
%description devel
|
|
This package contains the symlinks, headers and object files needed to
|
|
compile and link programs which use PLT.
|
|
|
|
|
|
%prep
|
|
%setup -q
|
|
%patch0 -p1
|
|
|
|
cp %{S:1} src/.
|
|
cp %{S:2} src/.
|
|
cp %{S:4} src/.
|
|
|
|
## debian had licence isssue before enabling these check
|
|
|
|
# ( while read -r name ; do
|
|
# rm -r $name
|
|
# done ) <<EOF
|
|
# collects/tests/racket/benchmarks/common/psyntax-input.txt
|
|
# collects/tests/xml/clark-tests
|
|
# collects/tests/racket/benchmarks/common/maze.sch
|
|
# collects/tests/racket/benchmarks/common/maze2.sch
|
|
# collects/tests/racket/benchmarks/common/typed/maze2.rktl
|
|
# collects/tests/racket/testing.rktl
|
|
# collects/tests/utils/mz-testing.rkt
|
|
# EOF
|
|
|
|
## cancel test removal for testing
|
|
rm -rf collects/tests
|
|
rm -rf collects/{mysterx,mzcom}
|
|
rm -rf collects/2htdp/tests
|
|
rm -rf collects/htdp/tests
|
|
rm -rf collects/browser/tests
|
|
rm -rf collects/data/tests
|
|
rm -rf collects/file/tests
|
|
rm -rf collects/games/tests
|
|
rm -rf collects/help/tests
|
|
rm -rf collects/images/tests
|
|
rm -rf collects/json/tests
|
|
rm -rf collects/launcher/tests
|
|
rm -rf collects/macro-debugger/tests
|
|
rm -rf collects/picturing-programs/tests
|
|
rm -rf collects/plot/tests
|
|
rm -rf collects/redex/tests
|
|
rm -rf collects/r6rs/tests
|
|
rm -rf collects/slatex/tests
|
|
rm -rf collects/string-constants/tests
|
|
rm -rf collects/teachpack/tests
|
|
rm -rf collects/typed/tests
|
|
rm -rf collects/unstable/tests
|
|
|
|
find collects/*/examples -name *.c | xargs rm -rf
|
|
find collects/*/examples -name *.cxx | xargs rm -rf
|
|
find collects/*/examples -name *.c | xargs rm -rf
|
|
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
|
|
|
|
%install
|
|
cd src
|
|
|
|
export LD_LIBRARY_PATH=%buildroot%{_libdir}
|
|
export PLT_SETUP_OPTIONS="-j 1 "
|
|
|
|
# let obs do the stripping
|
|
|
|
%make_install STRIP_DEBUG=/bin/true
|
|
|
|
|
|
# Fix the rpath error.
|
|
chrpath --delete %buildroot%{_bindir}/gracket
|
|
chrpath --delete %buildroot%{_bindir}/racket
|
|
|
|
find %buildroot -size 0 | xargs rm -f
|
|
# we do not need *.la and *.a files
|
|
|
|
find %{buildroot}%{_libdir} -name "*.la" -delete
|
|
find %{buildroot}%{_libdir} -name "*.a" -delete
|
|
|
|
install -d %buildroot/etc/bash_completion.d/
|
|
install -m 644 %{S:2} %buildroot/etc/bash_completion.d/%name
|
|
|
|
%suse_update_desktop_file -i drracket
|
|
|
|
%fdupes -s %buildroot/%_datadir/%name/
|
|
%fdupes -s %buildroot%_bindir/
|
|
|
|
%post -p /sbin/ldconfig
|
|
|
|
%postun -p /sbin/ldconfig
|
|
|
|
%files
|
|
%defattr(-,root,root,-)
|
|
%doc README
|
|
%_bindir/mzc
|
|
%_bindir/mzpp
|
|
%_bindir/mzscheme
|
|
%_bindir/mztext
|
|
%_bindir/plt-r5rs
|
|
%_bindir/plt-r6rs
|
|
%_bindir/racket
|
|
%_bindir/raco
|
|
%_bindir/scribble
|
|
%_bindir/setup-plt
|
|
%_bindir/swindle
|
|
%_libdir/*.so
|
|
%_libdir/%name/mzdyn3m.o
|
|
%_datadir/%name/collects/at-exp
|
|
%_datadir/%name/collects/compatibility
|
|
%_datadir/%name/collects/compiler
|
|
%_datadir/%name/collects/data
|
|
%_datadir/%name/collects/db
|
|
%_datadir/%name/collects/dynext
|
|
%_datadir/%name/collects/errortrace
|
|
%_datadir/%name/collects/ffi
|
|
%_datadir/%name/collects/file
|
|
%_datadir/%name/collects/html
|
|
%_datadir/%name/collects/info-domain
|
|
%_datadir/%name/collects/json
|
|
%_datadir/%name/collects/launcher
|
|
%_datadir/%name/collects/make
|
|
%_datadir/%name/collects/math
|
|
%_datadir/%name/collects/mzlib
|
|
%_datadir/%name/collects/mzscheme
|
|
%_datadir/%name/collects/net
|
|
%_datadir/%name/collects/openssl
|
|
%_datadir/%name/collects/parser-tools
|
|
%_datadir/%name/collects/planet
|
|
%_datadir/%name/collects/planet2
|
|
%_datadir/%name/collects/preprocessor
|
|
%_datadir/%name/collects/profile
|
|
%_datadir/%name/collects/r5rs
|
|
%_datadir/%name/collects/r6rs
|
|
%_datadir/%name/collects/racket
|
|
%_datadir/%name/collects/raco
|
|
%_datadir/%name/collects/reader
|
|
%_datadir/%name/collects/readline
|
|
%_datadir/%name/collects/rnrs
|
|
%_datadir/%name/collects/s-exp
|
|
%_datadir/%name/collects/scheme
|
|
%_datadir/%name/collects/scribble
|
|
%_datadir/%name/collects/setup
|
|
%_datadir/%name/collects/srfi
|
|
%_datadir/%name/collects/swindle
|
|
%_datadir/%name/collects/syntax
|
|
%_datadir/%name/collects/trace
|
|
%_datadir/%name/collects/unstable
|
|
%_datadir/%name/collects/version
|
|
%_datadir/%name/collects/wxme
|
|
%_datadir/%name/collects/xml
|
|
%_datadir/%name/collects/xrepl
|
|
%exclude %_bindir/plt-games
|
|
%exclude %_datadir/%name/collects/games
|
|
%exclude %_bindir/slideshow
|
|
%exclude %_datadir/%name/collects/slideshow
|
|
%exclude %_bindir/plt-web-server
|
|
%exclude %_datadir/%name/collects/web-server
|
|
%dir %_datadir/%name/collects
|
|
%_libdir/%name/starter
|
|
|
|
%{_mandir}/man1/mz*
|
|
|
|
%{_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
|
|
|
|
%files games
|
|
%defattr(-,root,root,-)
|
|
%_bindir/plt-games
|
|
%_datadir/%name/collects/games
|
|
%dir %_datadir/%name/collects/games
|
|
|
|
%files webserver
|
|
%defattr(-,root,root,-)
|
|
%_bindir/plt-web-server
|
|
%_datadir/%name/collects/web-server
|
|
%dir %_datadir/%name/collects/web-server
|
|
|
|
%files devel
|
|
%defattr(-,root,root,-)
|
|
%_includedir/%name/*
|
|
%{_libdir}/%{name}/buildinfo
|
|
%dir %_includedir/%name
|
|
|
|
|
|
%files -n drracket
|
|
%defattr(-,root,root,-)
|
|
%_bindir/drracket
|
|
%_bindir/gracket
|
|
%_bindir/gracket-text
|
|
%_bindir/mred
|
|
%_bindir/mred-text
|
|
%_bindir/pdf-slatex
|
|
%_bindir/plt-help
|
|
%_bindir/slatex
|
|
%_bindir/slideshow
|
|
|
|
%_mandir/man1/drracket*
|
|
%_mandir/man1/gracket*
|
|
%_mandir/man1/mred*
|
|
%_mandir/man1/plt-help*
|
|
%_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
|
|
%_datadir/%name/collects/drracket
|
|
%_datadir/%name/collects/drscheme
|
|
%_datadir/%name/collects/embedded-gui
|
|
%_datadir/%name/collects/eopl
|
|
%_datadir/%name/collects/framework
|
|
%_datadir/%name/collects/frtime
|
|
%_datadir/%name/collects/future-visualizer
|
|
%_datadir/%name/collects/graphics
|
|
%_datadir/%name/collects/gui-debugger
|
|
%_datadir/%name/collects/help
|
|
%_datadir/%name/collects/hierlist
|
|
%_datadir/%name/collects/htdp
|
|
%_datadir/%name/collects/icons
|
|
%_datadir/%name/collects/images
|
|
%_datadir/%name/collects/lang
|
|
%_datadir/%name/collects/lazy
|
|
%_datadir/%name/collects/macro-debugger
|
|
%_datadir/%name/collects/mred
|
|
%_datadir/%name/collects/mrlib
|
|
%_datadir/%name/collects/picturing-programs
|
|
%_datadir/%name/collects/plai
|
|
%_datadir/%name/collects/plot
|
|
%_datadir/%name/collects/racklog
|
|
%_datadir/%name/collects/rackunit
|
|
%_datadir/%name/collects/redex
|
|
%_datadir/%name/collects/schemeunit
|
|
%_datadir/%name/collects/scriblib
|
|
%_datadir/%name/collects/scribblings
|
|
%_datadir/%name/collects/sgl
|
|
%_datadir/%name/collects/slatex
|
|
%_datadir/%name/collects/slideshow
|
|
%_datadir/%name/collects/stepper
|
|
%_datadir/%name/collects/string-constants
|
|
%_datadir/%name/collects/syntax-color
|
|
%_datadir/%name/collects/teachpack
|
|
%_datadir/%name/collects/test-engine
|
|
%_datadir/%name/collects/texpict
|
|
%_datadir/%name/collects/typed-racket
|
|
%_datadir/%name/collects/typed-scheme
|
|
%_datadir/%name/collects/typed
|
|
%_datadir/applications/drracket.desktop
|
|
%_datadir/pixmaps/drracket.png
|
|
%changelog
|