ghc/ghc.spec

189 lines
5.5 KiB
RPMSpec

%define with_html_docs 1
%define with_ps_docs 0
Name: ghc
Version: 6.4.2
Release: 0
Summary: The Glasgow Haskell Compilation system
Summary(de): Das Glasgow-Haskell-Compilation-System
License: BSD style w/o adv. clause
Group: Development/Languages/Haskell
Packager: Herbert Graeber <herbert@graeber-clan.de>
Source: http://haskell.org/ghc/dist/%{version}/ghc-%{version}-src.tar.bz2
URL: http://haskell.org/ghc/
%if %suse_version > 1000
Requires: gmp-devel
%endif
BuildRequires: ghc
BuildRequires: happy
BuildRequires: alex
BuildRequires: ncurses-devel
%if %suse_version > 1000
BuildRequires: gmp-devel
%else
BuildRequires: gmp
%endif
BuildRequires: readline-devel
BuildRequires: xorg-x11-Mesa-devel
BuildRequires: freeglut-devel
BuildRequires: te_latex
%if %{with_html_docs}
BuildRequires: haddock
BuildRequires: libxslt
BuildRequires: docbook-xsl-stylesheets
BuildRequires: docbook-utils
%if %{with_ps_docs}
BuildRequires: fop
BuildRequires: xmltex
%endif
%endif
Provides: haskell_compiler
BuildRoot: /var/tmp/%{name}-%{version}-root
Prefix: /usr
%description
Haskell is the standard purely functional programming language; the
current language version is Haskell 98, agreed in December 1998.
GHC is a state-of-the-art programming suite for Haskell. Included is
an optimising compiler generating good code for a variety of
platforms, together with an interactive system for convenient, quick
development. The distribution includes space and time profiling
facilities, a large collection of libraries, and support for various
language extensions, including concurrency, exceptions, and foreign
language interfaces (C, C++, etc).
A wide variety of Haskell related resources (tutorials, libraries,
specifications, documentation, compilers, interprbeters, references,
contact information, links to research groups) are available from the
Haskell home page at <http://www.haskell.org/>.
%package prof
Summary: Profiling libraries for GHC
Summary(de): Profiling-Libraries für GHC
Group: Development/Libraries/Haskell
Requires: %{name} = %{version}-%{release}
Provides: GHC-prof = %{version}
%description prof
Profiling libraries for Glorious Glasgow Haskell Compilation System (GHC).
They should be installed when GHC's profiling subsystem is needed.
%package doc
Summary: Documentation for GHC
Summary(de): Dokumentation für GHC
Group: Development/Languages/Haskell
%description doc
Preformatted documentation for the Glorious Glasgow Haskell Compilation System
(GHC) and its libraries. It should be installed if you like to have local
access to the documentation in PostScript and HTML format. Alternatively,
the documentation is available online at
http://haskell.org/ghc/documentation.html
# the debuginfo subpackage is currently empty anyway, so don't generate it
%define debug_package %{nil}
%define __spec_install_post /usr/lib/rpm/brp-compress
%prep
rm -rf $RPM_BUILD_ROOT
%setup -q
%build
export CFLAGS="$RPM_OPT_FLAGS"
test -f configure || autoreconf
./configure --prefix=%{prefix} --libdir=%{_libdir} --disable-openal --disable-alut \
%ifarch x86_64 amd64 ia32e
--enable-libsuffix=64
%endif
make
%if %{with_html_docs}
make html
%if %{with_ps_docs}
make -C ghc/docs/ext-core ps
make -C ghc/docs/storage-mgt ps
%endif
%endif
%install
make prefix=$RPM_BUILD_ROOT%{_prefix} libdir=$RPM_BUILD_ROOT%{_libdir}/%{name}-%{version} install
make prefix=$RPM_BUILD_ROOT%{_prefix} libdir=$RPM_BUILD_ROOT%{_libdir}/%{name}-%{version} datadir=`pwd` install-docs
dir=`pwd`
cd ${RPM_BUILD_ROOT}
libdir=`echo %{prefix}/%{_lib} | sed 's|^/||'`
find $libdir ! -type d ! -name '*.p_hi' ! -name '*_p.a' -print | sed 's|^|/|' > $dir/rpm-noprof-lib-files
find $libdir ! -type d \( -name '*.p_hi' -or -name '*_p.a' \) -print | sed 's|^|/|' > $dir/rpm-prof-lib-files
cd $dir
%clean
rm -rf $RPM_BUILD_ROOT
%files -f rpm-noprof-lib-files
%defattr(-,root,root)
%doc docs/building/building
%doc docs/docbook-cheat-sheet/docbook-cheat-sheet
%doc ghc/ANNOUNCE
%doc ghc/LICENSE
%doc ghc/README
%{prefix}/bin/ghc
%{prefix}/bin/ghc-%{version}
%{prefix}/bin/ghc-pkg
%{prefix}/bin/ghc-pkg-%{version}
%{prefix}/bin/ghci
%{prefix}/bin/ghci-%{version}
%{prefix}/bin/ghcprof
%{prefix}/bin/hasktags
%{prefix}/bin/hp2ps
%{prefix}/bin/hsc2hs
%{prefix}/bin/runghc
%{prefix}/bin/runhaskell
%{prefix}/bin/stat2resid
%files prof -f rpm-prof-lib-files
%defattr(-,root,root)
%files doc
%defattr(-,root,root)
%if %{with_html_docs}
%doc ghc/docs/users_guide/users_guide
%doc hslibs/doc/hslibs
%doc html/*
%if %{with_ps_docs}
%doc ghc/docs/ext-core/core.ps
%doc ghc/docs/storage-mgt/ldv.ps
%doc ghc/docs/storage-mgt/rp.ps
%doc ghc/docs/storage-mgt/sm.ps
%endif
%endif
%changelog
* Mon Sep 04 2006 Herbert Graeber <herbert@links2linux.de>
- Use docbook-utils for html documentation
* Tue Aug 29 2006 Herbert Graeber <herbert@links2linux.de>
- Disabled ps documentation (no fop without java)
* Mon Aug 28 2006 Herbert Graeber <herbert@links2linux.de>
- Move to the SUSE Build Service
* Tue Apr 18 2006 Herbert Graeber <herbert@links2linux.de>
- Update to version 6.4.2
- Removed openal/alut support (Does not work with SUSEs openal)
* Wed Apr 12 2006 Herbert Graeber <herbert@links2linux.de>
- SUSE 10.1 needs gmp-devel
- Added patch for gcc 4.1 compatibility on x86_64
* Wed Sep 21 2005 Herbert Graeber <herbert@links2linux.de>
- Update to version 6.4.1
* Tue Apr 19 2005 Herbert Graeber <herbert@links2linux.de>
- Disabled object uplitting and ghci for x86_64
* Sun Mar 13 2005 Herbert Graeber <herbert@links2linux.de>
- Update to version 6.4