Group :: Development/Other
RPM: plt2
Main Changelog Spec Patches Sources Download Gear Bugs and FR Repocop
Name: plt2
Version: 360
#%define subv p1
Release: alt0.1
#.%subv
%define fullname %name
%set_compress_method gzip
License: LGPL
Group: Development/Other
Url: http://www.plt-scheme.org/
#Source: plt-%version%subv-src-unix.tgz
Packager: Vitaly Lipatov <lav at altlinux.ru>
Source: http://download.plt-scheme.org/bundles/360/mz/mz-%version-src-unix.tar.bz2
# Patch: plt-locale-patch.diff
Source1: plt-drscheme.menu
Source2: plt-drscheme.png
Summary: PLT MzScheme
Summary(ru_RU.KOI8-R): PLT MzScheme
PreReq: alternatives >= 0.0.6
%add_findreq_skiplist %_libdir/%fullname/collects/games/paint-by-numbers/*.ss
%add_findreq_skiplist %_libdir/%fullname/install
Provides: %_bindir/mred
Provides: %_bindir/mzscheme
# Automatically added by buildreq on Sat Dec 09 2006
BuildRequires: gcc-c++
%description
MzScheme -- R5RS-compilant version of Scheme language.
%description -l ru_RU.KOI8-R
MzScheme -- реализации языка Scheme, соответствующей R5RS.
%prep
%setup -q -n mz-%version
# %patch -p1
%build
cd src
export CFLAGS="%optflags"
export CXXFLAGS="%optflags"
./configure --prefix=%_libdir/%fullname
make
cd ..
%install
cd src
mkdir -p %buildroot%_libdir/%fullname
RPM_OPT_FLAGS="%optflags" ; export RPM_OPT_FLAGS
RPM_INSTALL_PREFIX="%buildroot" ; export RPM_INSTALL_PREFIX
make prefix=%buildroot%_libdir/%fullname install
# cp -Rf install include collects bin teachpack notes %buildroot%_libdir/%fullname
# install -m 755 src/mzscheme/mzscheme %buildroot%_libdir/%fullname/bin/
# install -m 755 src/mred/mred %buildroot%_libdir/%fullname/bin/
# mkdir %buildroot%_libdir/%fullname/lib/
# install -m 755 src/mzscheme/mzdyn.o %buildroot%_libdir/%fullname/lib/
# install -m 755 src/mzscheme/libmzgc.a %buildroot%_libdir/%fullname/lib/
# install -m 755 src/mzscheme/libmzscheme.a %buildroot%_libdir/%fullname/lib/
cd ..
mkdir -p %buildroot%_man1dir
for i in man/man1/* ; do
install -m 644 $i %buildroot%_man1dir/`basename $i .1`-2.1
done
RPM_OPT_FLAGS="%optflags" ; export RPM_OPT_FLAGS
mkdir -p %buildroot/%_menudir
install -m 644 %SOURCE1 %buildroot/%_menudir/drscheme-2
mkdir -p %buildroot/%_datadir/icons
install -m 644 %SOURCE2 %buildroot/%_datadir/icons/drscheme-2.png
# install symlinks
mkdir -p %buildroot%_bindir
cd %buildroot%_libdir/%fullname/bin
for i in drscheme help-desk mred mzc mzscheme tex2page web-server web-server-monitor; do
ln -sf %_libdir/%fullname/bin/$i ../../../bin/$i-2
done
cd $OLDWD
#setup alternatives
install -d %buildroot%_altdir
cat >%buildroot%_altdir/%name<<EOF
<group name="candidate">
<option name="link">%_bindir/mzscheme</option>
<option name="real">%_bindir/mzscheme-2</option>
<option name="weight" type="number">20</option>
EOF
#append slaves
for i in drscheme help-desk mred mzc
do
cat >>%buildroot%_altdir/%name<<EOF
<group name="slave">
<option name="link">%_bindir/$i</option>
<option name="real">%_bindir/$i-2</option>
</group>
EOF
done
#append man-pages for slaves
for i in mred mzscheme drscheme
do
cat >>%buildroot%_altdir/%name<<EOF
<group name="slave">
<option name="link">%_man1dir/$i.1.gz</option>
<option name="real">%_man1dir/$i-2.1.gz</option>
</group>
EOF
done
#append end-tag
cat >>%buildroot%_altdir/%name<<EOF
</group>
EOF
%post
## reconfigure plt
PLTHOME="%_libdir/%fullname" ; export PLTHOME
PLTCOLLECTS="" ; export PLTCOLLECTS
RPM_INSTALL_PREFIX="" ; export RPM_INSTALL_PREFIX
cd %_libdir/%fullname
./install
## install menus
%update_menus
%register_alternatives %name -- mzscheme drscheme help-desk mred mzc mred.1.gz mzscheme.1.gz drscheme.1.gz
%preun
%clean_menus
%unregister_alternatives %name
# [ $1 = 0 ] || exit 0
# for i in drscheme help-desk mred mzc mzscheme tex2page web-server web-server-monitor; do
# rm -f %_bindir/$i-2
# done
# %postun
# [ $1 = 0 ] || exit 0
# rm -rf %_libdir/%fullname
#try to fix a big bug in package
%triggerun -- plt2 < 203-alt2.1
mv %_libdir/%fullname %_libdir/%fullname.save
%triggerpostun -- plt2 < 203-alt2.1
mv %_libdir/%fullname.save %_libdir/%fullname
%files
%_altdir/%name
%_bindir/*
%dir %_libdir/%fullname/
%_libdir/%fullname/
%_man1dir/*
%_menudir/*
%_datadir/icons/*
%changelog
…
Full changelog you can see here
Version: 360
#%define subv p1
Release: alt0.1
#.%subv
%define fullname %name
%set_compress_method gzip
License: LGPL
Group: Development/Other
Url: http://www.plt-scheme.org/
#Source: plt-%version%subv-src-unix.tgz
Packager: Vitaly Lipatov <lav at altlinux.ru>
Source: http://download.plt-scheme.org/bundles/360/mz/mz-%version-src-unix.tar.bz2
# Patch: plt-locale-patch.diff
Source1: plt-drscheme.menu
Source2: plt-drscheme.png
Summary: PLT MzScheme
Summary(ru_RU.KOI8-R): PLT MzScheme
PreReq: alternatives >= 0.0.6
%add_findreq_skiplist %_libdir/%fullname/collects/games/paint-by-numbers/*.ss
%add_findreq_skiplist %_libdir/%fullname/install
Provides: %_bindir/mred
Provides: %_bindir/mzscheme
# Automatically added by buildreq on Sat Dec 09 2006
BuildRequires: gcc-c++
%description
MzScheme -- R5RS-compilant version of Scheme language.
%description -l ru_RU.KOI8-R
MzScheme -- реализации языка Scheme, соответствующей R5RS.
%prep
%setup -q -n mz-%version
# %patch -p1
%build
cd src
export CFLAGS="%optflags"
export CXXFLAGS="%optflags"
./configure --prefix=%_libdir/%fullname
make
cd ..
%install
cd src
mkdir -p %buildroot%_libdir/%fullname
RPM_OPT_FLAGS="%optflags" ; export RPM_OPT_FLAGS
RPM_INSTALL_PREFIX="%buildroot" ; export RPM_INSTALL_PREFIX
make prefix=%buildroot%_libdir/%fullname install
# cp -Rf install include collects bin teachpack notes %buildroot%_libdir/%fullname
# install -m 755 src/mzscheme/mzscheme %buildroot%_libdir/%fullname/bin/
# install -m 755 src/mred/mred %buildroot%_libdir/%fullname/bin/
# mkdir %buildroot%_libdir/%fullname/lib/
# install -m 755 src/mzscheme/mzdyn.o %buildroot%_libdir/%fullname/lib/
# install -m 755 src/mzscheme/libmzgc.a %buildroot%_libdir/%fullname/lib/
# install -m 755 src/mzscheme/libmzscheme.a %buildroot%_libdir/%fullname/lib/
cd ..
mkdir -p %buildroot%_man1dir
for i in man/man1/* ; do
install -m 644 $i %buildroot%_man1dir/`basename $i .1`-2.1
done
RPM_OPT_FLAGS="%optflags" ; export RPM_OPT_FLAGS
mkdir -p %buildroot/%_menudir
install -m 644 %SOURCE1 %buildroot/%_menudir/drscheme-2
mkdir -p %buildroot/%_datadir/icons
install -m 644 %SOURCE2 %buildroot/%_datadir/icons/drscheme-2.png
# install symlinks
mkdir -p %buildroot%_bindir
cd %buildroot%_libdir/%fullname/bin
for i in drscheme help-desk mred mzc mzscheme tex2page web-server web-server-monitor; do
ln -sf %_libdir/%fullname/bin/$i ../../../bin/$i-2
done
cd $OLDWD
#setup alternatives
install -d %buildroot%_altdir
cat >%buildroot%_altdir/%name<<EOF
<group name="candidate">
<option name="link">%_bindir/mzscheme</option>
<option name="real">%_bindir/mzscheme-2</option>
<option name="weight" type="number">20</option>
EOF
#append slaves
for i in drscheme help-desk mred mzc
do
cat >>%buildroot%_altdir/%name<<EOF
<group name="slave">
<option name="link">%_bindir/$i</option>
<option name="real">%_bindir/$i-2</option>
</group>
EOF
done
#append man-pages for slaves
for i in mred mzscheme drscheme
do
cat >>%buildroot%_altdir/%name<<EOF
<group name="slave">
<option name="link">%_man1dir/$i.1.gz</option>
<option name="real">%_man1dir/$i-2.1.gz</option>
</group>
EOF
done
#append end-tag
cat >>%buildroot%_altdir/%name<<EOF
</group>
EOF
%post
## reconfigure plt
PLTHOME="%_libdir/%fullname" ; export PLTHOME
PLTCOLLECTS="" ; export PLTCOLLECTS
RPM_INSTALL_PREFIX="" ; export RPM_INSTALL_PREFIX
cd %_libdir/%fullname
./install
## install menus
%update_menus
%register_alternatives %name -- mzscheme drscheme help-desk mred mzc mred.1.gz mzscheme.1.gz drscheme.1.gz
%preun
%clean_menus
%unregister_alternatives %name
# [ $1 = 0 ] || exit 0
# for i in drscheme help-desk mred mzc mzscheme tex2page web-server web-server-monitor; do
# rm -f %_bindir/$i-2
# done
# %postun
# [ $1 = 0 ] || exit 0
# rm -rf %_libdir/%fullname
#try to fix a big bug in package
%triggerun -- plt2 < 203-alt2.1
mv %_libdir/%fullname %_libdir/%fullname.save
%triggerpostun -- plt2 < 203-alt2.1
mv %_libdir/%fullname.save %_libdir/%fullname
%files
%_altdir/%name
%_bindir/*
%dir %_libdir/%fullname/
%_libdir/%fullname/
%_man1dir/*
%_menudir/*
%_datadir/icons/*
%changelog
…
Full changelog you can see here