Sophie

Sophie

distrib > Mandriva > 2006.0 > x86_64 > by-pkgid > 560807a3c650a49c2780cafae7a202a8 > files > 2

plt-209-1mdk.src.rpm

%define	name 	plt
%define version 209
%define release 1mdk
%define major	%{version}
%define libname %mklibname %{name} %{major}

Name:		%{name}
Version:	%{version}
Release:	%{release}
Summary:	PLT Scheme
License:	LGPL
Group:		Development/Other
Source:		http://download.plt-scheme.org/bundles/%{version}/plt/%{name}-%{version}-src-unix.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 -n %{libname}
Summary:	Main library for %{name}
Group:		System/Libraries
Provides:	%{name} = %{version}-%{release}

%description -n %{libname}
This package contains the library needed to run programs dynamically
linked with %{name}.

%package -n %{libname}-devel
Summary:	Headers for developing programs that will use %{name}
Group:		Development/Other
Requires:	%{libname} = %{version}
Provides:	lib%{name}-devel = %{version}-%{release}
Provides:	%{name}-devel = %{version}-%{release}

%description -n %{libname}-devel
This package contains the headers that programmers will need to develop
applications which will use %{name}.

%package mzscheme
Summary:        PLT Scheme implementation
Group:          Development/Other
Requires:	%{libname} = %{version}-%{release}

%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.

%prep
%setup -q -n %{name}

%build
cd src
%configure2_5x --enable-shared CFLAGS="$CFLAGS -DDONT_INLINE_NZERO_TEST"
%make

%install
rm -rf $RPM_BUILD_ROOT
mkdir $RPM_BUILD_ROOT
cd src
export LD_LIBRARY_PATH=$RPM_BUILD_ROOT%{_libdir}
%makeinstall

# correct installation
install -d -m 755 $RPM_BUILD_ROOT%{_datadir}
install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{name}
install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{name}/bin
mv $RPM_BUILD_ROOT%{_prefix}/man $RPM_BUILD_ROOT%{_datadir}
mv $RPM_BUILD_ROOT%{_prefix}/collects $RPM_BUILD_ROOT%{_libdir}/%{name} 
mv $RPM_BUILD_ROOT%{_prefix}/teachpack $RPM_BUILD_ROOT%{_libdir}/%{name} 
mv $RPM_BUILD_ROOT%{_bindir}/mred $RPM_BUILD_ROOT%{_libdir}/%{name}/bin 
mv $RPM_BUILD_ROOT%{_bindir}/mzscheme $RPM_BUILD_ROOT%{_libdir}/%{name}/bin 
rm -rf $RPM_BUILD_ROOT%{_prefix}/notes
rm -f $RPM_BUILD_ROOT%{_prefix}/install

# install wrappers
cat > $RPM_BUILD_ROOT%{_bindir}/mzscheme <<EOF
#!/bin/sh
# mzscheme wrapper

if [ "$PLTHOME" = '' ] ; then
  PLTHOME="/usr/lib/plt"
  export PLTHOME
fi

exec \${PLTHOME}/bin/mzscheme
EOF
chmod 755 $RPM_BUILD_ROOT%{_bindir}/mzscheme

cat > $RPM_BUILD_ROOT%{_bindir}/mred <<EOF
#!/bin/sh
# mred wrapper

if [ "$PLTHOME" = '' ] ; then
  PLTHOME="/usr/lib/plt"
  export PLTHOME
fi

exec \${PLTHOME}/bin/mred
EOF
chmod 755 $RPM_BUILD_ROOT%{_bindir}/mred

# correct path in scripts
perl -pi -e 's|PLTHOME=".*"|PLTHOME="%{_libdir}/%{name}"|' $RPM_BUILD_ROOT%{_bindir}/*
#perl -pi -e 's|\${PLTHOME}/bin|%{_bindir}|' $RPM_BUILD_ROOT%{_bindir}/*

# correct perms
find $RPM_BUILD_ROOT%{_libdir}/%{name}/collects -type d -exec chmod 755 {} \;

%clean
rm -rf $RPM_BUILD_ROOT

%post -n %{libname} -p /sbin/ldconfig
%postun -n %{libname} -p /sbin/ldconfig

%files mzscheme
%defattr(-,root,root)
%doc notes/mzscheme/*
%{_libdir}/%{name}
%{_bindir}/*
%{_mandir}/man1/*
%exclude %{_bindir}/mred
%exclude %{_bindir}/drscheme
%exclude %{_mandir}/man1/mred.1*
%exclude %{_mandir}/man1/drscheme.1*
%exclude %{_libdir}/%{name}/collects/mred
%exclude %{_libdir}/%{name}/collects/drscheme
%exclude %{_libdir}/%{name}/teachpack
%exclude %{_libdir}/%{name}/bin/mred

%files -n %{libname}
%defattr(-,root,root)
%{_libdir}/libmzscheme-%{version}.so
%{_libdir}/libmzgc-%{version}.so
%{_libdir}/libmred-%{version}.so

%files -n %{libname}-devel
%defattr(-,root,root)
%{_libdir}/libmzscheme.so
%{_libdir}/libmzgc.so
%{_libdir}/libmred.so
%{_libdir}/*.la
%{_libdir}/*.o
%{_libdir}/buildinfo
%{_includedir}/*

%files mred
%defattr(-,root,root)
%doc notes/mred/*
%{_libdir}/%{name}/collects/mred
%{_libdir}/%{name}/bin/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*

%changelog
* Sun Jan 16 2005 Guillaume Rousse <guillomovitch@mandrake.org> 209-1mdk
- New release 209

* Thu Aug  5 2004 Guillaume Rousse <guillomovitch@mandrakesoft.com> 208-1mdk
- New release 208

* Wed Jul 14 2004 Guillaume Rousse <guillomovitch@mandrake.org> 207-3mdk 
- rebuild

* Fri Jun 04 2004 Guillaume Rousse <guillomovitch@mandrake.org> 207-2mdk 
- binaries in %{_libdir}/%{name}/bin, wrappers in %{_bindir}

* Tue Jun 01 2004 Guillaume Rousse <guillomovitch@mandrake.org> 207-1mdk
- new version
- libification
- fixed scripts (Bruno T Santos <bluey@netcabo.pt>)
- rpmbuildupdate aware

* 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