diff options
Diffstat (limited to 'ghc.spec.in')
-rw-r--r-- | ghc.spec.in | 146 |
1 files changed, 146 insertions, 0 deletions
diff --git a/ghc.spec.in b/ghc.spec.in new file mode 100644 index 0000000000..87dc6e905a --- /dev/null +++ b/ghc.spec.in @@ -0,0 +1,146 @@ +# RPM spec file for GHC -*-rpm-spec-*- +# +# Copyright [1998..2004] The GHC Team +# +# Thanks to Zoltan Vorosbaranyi <vbzoli@vbzo.li> for suggestions in +# earlier versions and Pixel <pixel@mandrakesoft.com> for coding tips. +# +# This file is subject to the same free software license as GHC. + +%define name ghc +%define version @ProjectVersion@ +%define release @release@ + +Name: %{name} +Version: %{version} +Release: %{release} +License: BSD-like +Group: Development/Languages/Haskell +URL: http://haskell.org/ghc/ +Source: http://haskell.org/ghc/dist/%{version}/ghc-%{version}-src.tar.bz2 +Packager: Sven Panne <sven.panne@aedion.de> +BuildRoot: %{_tmppath}/%{name}-%{version}-build +Prefix: %{_prefix} +Requires: gmp, readline +BuildRequires: alex >= 2.0, happy >= 1.15, ghc >= 5, haddock, docbook-dtd, docbook-xsl-stylesheets, libxslt, libxml2, fop, xmltex, dvips, gmp, readline-devel, mesaglut-devel +Provides: haskell +Summary: The Glasgow Haskell Compiler + +%description +Haskell is the standard lazy purely functional programming language. +The current language version is Haskell 98, agreed in December 1998, +with a revised version published in January 2003. + +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++, whatever). + +A wide variety of Haskell related resources (tutorials, libraries, +specifications, documentation, compilers, interpreters, references, +contact information, links to research groups) are available from the +Haskell home page at http://haskell.org/. + +Authors: +-------- + Krasimir Angelov <ka2_mail@yahoo.com> + Manuel Chakravarty <chak@cse.unsw.edu.au> + Koen Claessen <koen@cs.chalmers.se> + Robert Ennals <Robert.Ennals@cl.cam.ac.uk> + Sigbjorn Finne <sof@galconn.com> + Gabrielle Keller <keller@cvs.haskell.org> + Marcin Kowalczyk <qrczak@knm.org.pl> + Jeff Lewis <jeff@galconn.com> + Ian Lynagh <igloo@earth.li> + Simon Marlow <simonmar@microsoft.com> + Sven Panne <sven.panne@aedion.de> + Ross Paterson <ross@soi.city.ac.uk> + Simon Peyton Jones <simonpj@microsoft.com> + Don Stewart <dons@cse.unsw.edu.au> + Volker Stolz <stolz@i2.informatik.rwth-aachen.de> + Wolfgang Thaller <wolfgang.thaller@gmx.net> + Andrew Tolmach <apt@cs.pdx.edu> + Keith Wansbrough <Keith.Wansbrough@cl.cam.ac.uk> + Michael Weber <michael.weber@post.rwth-aachen.de> + plus a dozen helping hands... + +%package prof +Requires: ghc = %{version}-%{release} +Summary: Profiling libraries for GHC +Group: Development/Libraries + +%description prof +Profiling libraries for Glorious Glasgow Haskell Compilation System +(GHC). They should be installed when GHC's profiling subsystem is +needed. + +%prep +%setup + +%build +test -f configure || autoreconf +./configure --prefix=%{prefix} +make +make html +make -C ghc/docs/ext-core ps +make -C ghc/docs/storage-mgt ps + +%install +make prefix=${RPM_BUILD_ROOT}%{prefix} install +make datadir=`pwd` install-docs + +# generate the file list for lib/ _excluding_ all files needed for profiling +# only +# +# * generating file lists in a BUILD_ROOT spec is a bit tricky: the file list +# has to contain complete paths, _but_ without the BUILD_ROOT, we also do +# _not_ want have directory names in the list; furthermore, we have to make +# sure that any leading / is removed from %{prefix}/lib, as find has to +# interpret the argument as a relative path; however, we have to include the +# leading / again in the final file list (otherwise, rpm complains) +# * isn't there an easier way to do all this? +# +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/docbook-cheat-sheet/docbook-cheat-sheet +%doc ghc/ANNOUNCE +%doc ghc/LICENSE +%doc ghc/README +%doc ghc/docs/building/building +%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 +%doc ghc/docs/users_guide/users_guide +%doc hslibs/doc/hslibs +%doc html/* +%doc libraries/Cabal/doc/Cabal +%{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) |