summaryrefslogtreecommitdiff
path: root/ghc.spec.in
diff options
context:
space:
mode:
Diffstat (limited to 'ghc.spec.in')
-rw-r--r--ghc.spec.in146
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)