forked from pool/racket
392 lines
11 KiB
RPMSpec
392 lines
11 KiB
RPMSpec
#
|
|
# 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
|
|
# 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.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: 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 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: pkgconfig(cairo)
|
|
BuildRequires: pkgconfig(fontconfig)
|
|
BuildRequires: pkgconfig(freetype2)
|
|
BuildRequires: pkgconfig(gtk+-2.0)
|
|
BuildRequires: pkgconfig(ice)
|
|
BuildRequires: pkgconfig(libffi)
|
|
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)
|
|
BuildRequires: pkgconfig(xaw7)
|
|
BuildRequires: pkgconfig(xext)
|
|
BuildRequires: pkgconfig(xft)
|
|
BuildRequires: pkgconfig(xmu)
|
|
BuildRequires: pkgconfig(xrender)
|
|
BuildRequires: pkgconfig(xt)
|
|
BuildRequires: pkgconfig(zlib)
|
|
|
|
# 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
|
|
Requires: %{name} = %{version}-%{release}
|
|
|
|
%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 --disable-strip --enable-places --enable-lt="/usr/bin/libtool"
|
|
|
|
%{__make} %{?_smp_mflags} VERBOSE=1
|
|
|
|
%install
|
|
cd src
|
|
|
|
# use the following if setting extra plt_setup options
|
|
# export LD_LIBRARY_PATH=%%buildroot%%{_libdir}
|
|
# export PLT_SETUP_OPTIONS="-j 1 "
|
|
|
|
install -d %buildroot/%_datadir/doc/%name/
|
|
|
|
%make_install
|
|
|
|
# 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
|
|
|
|
# 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
|
|
%_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/config
|
|
%_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/pkg
|
|
%_datadir/%name/collects/planet
|
|
%_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/realm
|
|
%_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*
|
|
%dir %_libdir/%name
|
|
%dir %_datadir/%name
|
|
%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/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
|