224 lines
6.9 KiB
RPMSpec
224 lines
6.9 KiB
RPMSpec
%define with_ps_docs 0
|
|
|
|
Name: ghc
|
|
Version: 6.6.1
|
|
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>
|
|
Source0: http://haskell.org/ghc/dist/%{version}/%{name}-%{version}-src.tar.bz2
|
|
Source1: http://haskell.org/ghc/dist/%{version}/%{name}-%{version}-src-extralibs.tar.bz2
|
|
URL: http://haskell.org/ghc/
|
|
Patch1: toplevel-reorder.patch
|
|
%if %suse_version > 1000
|
|
Requires: gmp-devel
|
|
%endif
|
|
BuildRequires: ghc >= 5.0
|
|
BuildRequires: happy >= 1.15
|
|
BuildRequires: alex >= 2.0
|
|
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
|
|
%if %suse_version > 1020
|
|
BuildRequires: texlive-latex
|
|
%else
|
|
BuildRequires: te_latex
|
|
%endif
|
|
BuildRequires: haddock
|
|
BuildRequires: libxslt
|
|
BuildRequires: sgml-skel
|
|
BuildRequires: docbook-xsl-stylesheets
|
|
BuildRequires: docbook-utils
|
|
%if %suse_version >= 1020
|
|
BuildRequires: openal
|
|
BuildRequires: freealut
|
|
%endif
|
|
%if %with_ps_docs
|
|
BuildRequires: fop
|
|
BuildRequires: xmltex
|
|
%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 -b 1
|
|
%patch1
|
|
|
|
%build
|
|
export CFLAGS="$RPM_OPT_FLAGS"
|
|
./configure --prefix=%{prefix} --libdir=%{_libdir} --mandir=%{_mandir} \
|
|
%if %suse_version < 1020
|
|
--disable-openal --disable-alut \
|
|
%endif
|
|
%ifarch x86_64 amd64 ia32e
|
|
--enable-libsuffix=64
|
|
%endif
|
|
|
|
make
|
|
make html
|
|
%if %{with_ps_docs}
|
|
make -C docs/ext-core ps
|
|
make -C docs/storage-mgt ps
|
|
%endif
|
|
|
|
%install
|
|
make prefix=%{buildroot}%{_prefix} libdir=%{buildroot}%{_libdir}/%{name}-%{version} \
|
|
mandir=%{buildroot}%{_mandir} install
|
|
make prefix=%{buildroot}%{_prefix} libdir=%{buildroot}%{_libdir}/%{name}-%{version} \
|
|
mandir=%{buildroot}%{_mandir} 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 ANNOUNCE
|
|
%doc HACKING
|
|
%doc LICENSE
|
|
%doc README
|
|
%{_bindir}/ghc
|
|
%{_bindir}/ghc-%{version}
|
|
%{_bindir}/ghc-pkg
|
|
%{_bindir}/ghc-pkg-%{version}
|
|
%{_bindir}/ghci
|
|
%{_bindir}/ghci-%{version}
|
|
%{_bindir}/ghcprof
|
|
%{_bindir}/hasktags
|
|
%{_bindir}/hp2ps
|
|
%{_bindir}/hsc2hs
|
|
%{_bindir}/runghc
|
|
%{_bindir}/runhaskell
|
|
%{_mandir}/man1/ghc.1.gz
|
|
|
|
%files prof -f rpm-prof-lib-files
|
|
%defattr(-,root,root)
|
|
|
|
%files doc
|
|
%defattr(-,root,root)
|
|
%doc docs/docbook-cheat-sheet/docbook-cheat-sheet
|
|
%doc docs/users_guide/users_guide
|
|
%doc libraries/Cabal/doc/Cabal
|
|
%doc html/*
|
|
%if %{with_ps_docs}
|
|
%doc docs/ext-core/core.ps
|
|
%doc docs/storage-mgt/ldv.ps
|
|
%doc docs/storage-mgt/rp.ps
|
|
%doc docs/storage-mgt/sm.ps
|
|
%endif
|
|
|
|
%changelog
|
|
* Mon Sep 3 2007 Herbert Graeber <herbert@links2linux.de>
|
|
- fixed compilation for gcc 4.2 (used by openSUSE 10.3)
|
|
|
|
* Wed Apr 25 2007 Herbert Graeber <herbert@links2linux.de>
|
|
- update to version 6.6.1
|
|
* Many, many bugs have been fixed relative to 6.6. Far too many to list here.
|
|
* GHC can now be used to compile C++ files.
|
|
* There is an --install-signal-handlers=<yes|no> RTS flag. The main use is
|
|
to stop GHC installing signal handlers when you are putting your code in a DLL.
|
|
* Newtypes can now be defined using GADT syntax.
|
|
* Linear implicit parameters are no longer accepted.
|
|
* There is a manpage for ghc and ghci.
|
|
* The building guide has been moved to the wiki.
|
|
* GHC now comes with the filepath library.
|
|
* The base, cabal, regex-base, pretty-printer and unix packages have various bug fixes,
|
|
as well as a couple of interface changes that shouldn't affect most users. The version
|
|
numbers have been bumped.
|
|
* There are newer versions of all of the extralibs.
|
|
|
|
* Thu Oct 25 2006 Herbert Graeber <herbert@links2linux.de>
|
|
- enable openal and freealut support for openSUSE 10.2
|
|
|
|
* Mon Oct 16 2006 Herbert Graeber <herbert@links2linux.de>
|
|
- update to version 6.6
|
|
|
|
* Mon Sep 04 2006 Herbert Graeber <herbert@links2linux.de>
|
|
- Use docbook-utils for html documentation
|
|
- Require sgml-skel for build
|
|
|
|
* 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
|