%define name plt %define version 205 %define release 2mdk Name: %{name} Version: %{version} Release: %{release} Summary: PLT Scheme License: LGPL Group: Development/Other Source: %{name}-%{version}.src.x.tar.bz2 Url: http://www.plt-scheme.org BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot BuildRequires: XFree86-devel BuildRequires: XFree86 Obsoletes: drscheme Provides: drscheme %description PLT Scheme is an umbrella name for a family of implementations of the Scheme programming language. %package mzscheme Summary: PLT Scheme implementation Group: Development/Other %description mzscheme MzScheme is the PLT Scheme implementation. It implements the language as described in the Revised^5 Report on the Algorithmic Language Scheme and adds numerous extensions. %package mred Summary: PLT graphical Scheme implementation Group: Development/Other Requires: %{name}-mzscheme = %{version}-%{release} %description mred MrEd is the PLT's graphical Scheme implementation. It embeds and extends MzScheme with a graphical user interface (GUI) toolbox. %package drscheme Summary: PLT graphical development environment Group: Development/Other Requires: %{name}-mred = %{version}-%{release} %description drscheme DrScheme is the graphical development environment for creating MzScheme and MrEd applications. %package devel Summary: Development header files for %{name} Group: Development/C Requires: %{name}-mzscheme = %{version}-%{release} %description devel This package contains the symlinks, headers and object files needed to compile and link programs which use %{name}. %prep %setup -q -n %{name} %build cd src %configure %make %install rm -rf $RPM_BUILD_ROOT install -d -m 755 $RPM_BUILD_ROOT%{_bindir} install -m 755 bin/* $RPM_BUILD_ROOT%{_bindir} install -m 755 src/mzscheme/mzscheme $RPM_BUILD_ROOT%{_bindir} install -m 755 src/mred/mred $RPM_BUILD_ROOT%{_bindir} install -d -m 755 $RPM_BUILD_ROOT%{_includedir} install -m 644 include/* $RPM_BUILD_ROOT%{_includedir} install -d -m 755 $RPM_BUILD_ROOT%{_mandir}/man1 install -m 644 man/man1/* $RPM_BUILD_ROOT%{_mandir}/man1 install -d -m 755 $RPM_BUILD_ROOT%{_libdir} install -m 755 src/mzscheme/mzdyn.o $RPM_BUILD_ROOT%{_libdir} install -m 755 src/mzscheme/libmzgc.a $RPM_BUILD_ROOT%{_libdir} install -m 755 src/mzscheme/libmzscheme.a $RPM_BUILD_ROOT%{_libdir} install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{name} cp -p -r collects $RPM_BUILD_ROOT%{_libdir}/%{name} cp -p -r teachpack $RPM_BUILD_ROOT%{_libdir}/%{name} (cd $RPM_BUILD_ROOT%{_libdir}/%{name} && ln -s ../../bin .) # need to fetch buildinfo (cd src/mzscheme && make prefix=$RPM_BUILD_ROOT%{_prefix} install) # emulate setup procedure export PLTHOME=$RPM_BUILD_ROOT/%{_libdir}/%{name} (cd $RPM_BUILD_ROOT/%{_libdir}/%{name} && bin/mzscheme -qe "(dynamic-require '(lib \"setup.ss\" \"setup\") #f)") for script in drscheme help-desk mzc setup-plt tex2page; do perl -pi -e 's|PLTHOME=/usr/local/lib/plt|PLTHOME=%{_libdir}/%{name}|' $RPM_BUILD_ROOT%{_bindir}/$script done for file in `find $RPM_BUILD_ROOT/%{_libdir}/%{name}/collects -name *.dep`; do perl -pi -e 's|'$RPM_BUILD_ROOT'||' $file done # correct perms find $RPM_BUILD_ROOT/%{_libdir}/%{name}/collects -type d -name compiled -exec chmod 755 {} \; %clean rm -rf $RPM_BUILD_ROOT %files mzscheme %defattr(-,root,root) %doc notes/mzscheme/* %dir %{_libdir}/%{name} %{_libdir}/%{name}/bin %{_libdir}/%{name}/collects %{_bindir}/games %{_bindir}/help-desk %{_bindir}/mzscheme %{_bindir}/mzc %{_bindir}/setup-plt %{_bindir}/tex2page %{_bindir}/web-server %{_bindir}/web-server-monitor %{_bindir}/web-server-text %{_mandir}/man1/mzscheme.1* %{_mandir}/man1/help-desk.1* %{_mandir}/man1/tex2page.1* %exclude %{_libdir}/%{name}/collects/mred %exclude %{_libdir}/%{name}/collects/drscheme %files mred %defattr(-,root,root) %doc notes/mred/* %{_libdir}/%{name}/collects/mred %{_bindir}/mred %{_mandir}/man1/mred.1* %files drscheme %defattr(-,root,root) %doc notes/drscheme/* %{_libdir}/%{name}/collects/drscheme %{_libdir}/%{name}/teachpack %{_bindir}/drscheme %{_mandir}/man1/drscheme.1* %files devel %defattr(-,root,root) %{_libdir}/buildinfo %{_libdir}/*.a %{_libdir}/*.o %{_includedir}/* %changelog * Mon Jan 12 2004 Guillaume Rousse <guillomovitch@mandrake.org> 205-2mdk - buildrequires (slbd) * Tue Dec 30 2003 Guillaume Rousse <guillomovitch@mandrake.org> 205-1mdk - new version * Fri Apr 25 2003 Guillaume Rousse <g.rousse@linux-mandrake.com> 202-6mdk - fixed buildrequires (Stefan van der Eijk <stefan@eijk.nu>) - quiet setup * Sat Jan 04 2003 Guillaume Rousse <g.rousse@linux-mandrake.com> 202-5mdk - rebuild - fixed compiled code directory perms * Tue Oct 08 2002 Guillaume Rousse <g.rousse@linux-mandrake.com> 202-4mdk - fixed missing syntax collect * Mon Oct 07 2002 Guillaume Rousse <g.rousse@linux-mandrake.com> 202-3mdk - fixed missing bin symlink - fixed doc * Mon Oct 07 2002 Guillaume Rousse <g.rousse@linux-mandrake.com> 202-2mdk - changed name to %{name} - set PLT_HOME to %{_libdir}/%{name} - package split - corrected license and url tags - reworked descriptions * Sat Oct 05 2002 Guillaume Rousse <g.rousse@linux-mandrake.com> 202-1mdk - first mdk release