Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37571954
en ru br
Репозитории ALT
5.1: 6.10.1-alt1
4.1: 6.8.2-alt2
4.0: 6.4.2-alt2
3.0: 6.2.2-alt1
www.altlinux.org/Changes

Группа :: Разработка/Haskell
Пакет: ghc

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

# RPM spec file for GHC
#
# Copyright [1998..2002] Manuel M. T. Chakravarty <chak at acm.org>
# Thanks to Zoltan Vorosbaranyi <vbzoli at vbzo.li> for suggestions in
# earlier versions and Pixel <pixel at mandrakesoft.com> for coding tips.
#
# This file is subject to the same free software license as GHC.

# Values for 5.02 are set by the `configure' script.  

# SNAP releases are CVS snapshots.  Official releases should replace SNAP by
# an appropriate release numbers (they are usually numbered starting from 1).

%define version    6.2.2
%define release    alt1
%define prefix     /usr

Summary: Glasgow Haskell Compilation system
Name: ghc
Version: %{version}
Release: %{release}
Copyright: BSD style w/o adv. clause
Group: Development/Haskell
Source: http://haskell.org/ghc/dist/%{version}/ghc-%{version}-src.tar.bz2
URL: http://haskell.org/ghc/
Patch1: ghc-%{version}-docbook.patch
Patch2: ghc-%{version}-arinput.patch
Requires: gmp-devel
Obsoletes: happy

BuildRequires: XFree86-devel docbook-utils-print docbook-dtds docbook-style-dsssl flex ghc gtk+-devel jadetex libGLU-devel libelf-devel libglut-devel libgmp-devel libncurses-devel libreadline-devel openjade sgml-common tetex-core tetex-dvips tetex-latex time urw-tex xml-common

BuildRequires: ghc >= 6.2.1.20040316-alt3, docbook-utils, gmp, gmp-devel, libreadline-devel
BuildRequires: libncurses-devel, jadetex

%description
Haskell is a standard lazy 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++, 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://www.haskell.org/>.

%package prof
Summary: Profiling libraries for GHC
Group: Development/Haskell
Requires: ghc = %{PACKAGE_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
Group: Development/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


%prep
%setup
%patch1 -p1
%patch2 -p1

# generate our own `build.mk'

#
# * this is a kludge (is it still needed?)
#
cat >mk/build.mk <<END
GhcLibWays = p
SRC_HAPPY_OPTS += -agc
#GhcWithInterpreter=NO
GhcWithInterpreter=YES
END

# run autoconf if necessary

#
[ ! -x configure ] && autoconf && cd ghc && autoconf

%build
./configure --prefix=%{prefix}
make boot
make -C glafp-utils sgmlverb
make all
make -C docs html
make -C ghc/docs html

%install
# compress the non-html docs
#
for j in docs ghc/docs; do
 dir=`pwd`
 cd $j
 for i in ps dvi sgml verb idx; do
   find . -name '*.'$i -exec gzip -9 '{}' ';' -print
 done
 cd $dir
done
rm -rf $RPM_BUILD_ROOT

# FIXME: this is necessary due to brokenness in ghc-5.00/mk/target.mk

make prefix=$RPM_BUILD_ROOT%{prefix} install-dirs

make prefix=$RPM_BUILD_ROOT%{prefix} install

# 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' -print | sed 's|^|/|'\
    >$dir/rpm-prof-lib-files
find $libdir ! -type d -name '*_p.a' -print | sed 's|^|/|'\
    >>$dir/rpm-prof-lib-files
cd $dir

%files -f rpm-noprof-lib-files
%doc ghc/ANNOUNCE ghc/README
%{prefix}/bin/*

%files prof -f rpm-prof-lib-files

%files doc
%doc docs/
%doc ghc/docs/


%changelog

Полный changelog можно просмотреть здесь

 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin