Sophie

Sophie

distrib > Mandriva > 10.0-com > i586 > by-pkgid > 70f971260e0ae103e0220c42da75c427 > files > 2

plt-205-2mdk.src.rpm

%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