Magellan Linux

Annotation of /trunk/extras/ghc/ghc-6.6.1-r2.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2 - (hide annotations) (download)
Fri Oct 10 13:29:42 2008 UTC (15 years, 8 months ago) by niro
File size: 3791 byte(s)
import repo
1 niro 2 # $Header: /magellan-cvs/smage/ghc/ghc-6.6.1-r2.smage2,v 1.3 2008/02/07 14:23:37 niro Exp $
2    
3     PNAME="ghc"
4     PVER="6.6.1"
5     PBUILD="r2"
6    
7     PCATEGORIE="dev-lang"
8     STATE="testing"
9    
10     DESCRIPTION="Glasgow Haskell Compiler."
11     HOMEPAGE="http://www.haskell.org/ghc/"
12    
13     DEPEND=">= dev-lang/perl-5.8.8
14     >= sys-dev/gcc-4.1
15     >= dev-libs/gmp-4.2
16     >= sys-libs/readline-5.2"
17    
18     SRCFILE="${PNAME}-${PVER}-src.tar.bz2"
19     SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
20    
21     # all ghc extralibs, such as quickcheck, mtl, html and co
22     SRCFILE_EXTRALIBS="${PNAME}-${PVER}-src-extralibs.tar.bz2"
23    
24     # binary sources
25     SRCFILE_BIN_x86="${PNAME}-${PVER}-i386-unknown-linux.tar.bz2"
26     SRCFILE_BIN_x86_64="${PNAME}-${PVER}-x86_64-unknown-linux.tar.bz2"
27     SRCFILE_BIN="$(eval echo \$SRCFILE_BIN_${ARCH/i*86/x86})"
28     SRCDIR_BIN="${BUILDDIR}/binary/${PNAME}-${PVER}"
29    
30     READLINE_SRCFILE="readline-4.3.tar.gz"
31     READLINE_SRCDIR="${BUILDDIR}/readline-4.3"
32    
33     SRC_URI=(
34     http://www.haskell.org/ghc/dist/${PVER}/${SRCFILE}
35     http://www.haskell.org/ghc/dist/${PVER}/${SRCFILE_EXTRALIBS}
36     http://www.haskell.org/ghc/dist/${PVER}/${SRCFILE_BIN_x86}
37     http://www.haskell.org/ghc/dist/${PVER}/${SRCFILE_BIN_x86_64}
38     gnu://readline/${READLINE_SRCFILE}
39     gnu://readline/readline-4.3-patches/readline43-001
40     gnu://readline/readline-4.3-patches/readline43-002
41     gnu://readline/readline-4.3-patches/readline43-003
42     gnu://readline/readline-4.3-patches/readline43-004
43     gnu://readline/readline-4.3-patches/readline43-005
44     mirror://${PNAME}/${SRCFILE}
45     mirror://${PNAME}/${SRCFILE_BIN_x86}
46     mirror://${PNAME}/${SRCFILE_BIN_x86_64}
47     mirror://${PNAME}/${READLINE_SRCFILE}
48     mirror://${PNAME}/readline43-001
49     mirror://${PNAME}/readline43-002
50     mirror://${PNAME}/readline43-003
51     mirror://${PNAME}/readline43-004
52     mirror://${PNAME}/readline43-005
53     )
54    
55     src_prepare()
56     {
57     munpack ${SRCFILE} || die
58     munpack ${SRCFILE_EXTRALIBS} || die
59    
60     install -d ${BUILDDIR}/binary || die
61     munpack ${SRCFILE_BIN} ${BUILDDIR}/binary || die
62    
63     munpack ${READLINE_SRCFILE} || die
64     cd ${READLINE_SRCDIR}
65    
66     mpatch readline43-001 || die
67     mpatch readline43-002 || die
68     mpatch readline43-003 || die
69     mpatch readline43-004 || die
70     mpatch readline43-005 || die
71     }
72    
73     src_compile()
74     {
75     # build a runtime compat readline lib
76     cd ${READLINE_SRCDIR}
77     mconfigure || die
78     mmake SHLIB_XLDFLAGS=-lncurses || die
79     # set it up
80     ln -snf libreadline.so.4.3 ${READLINE_SRCDIR}/shlib/libreadline.so.4 || die
81     export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${READLINE_SRCDIR}/shlib"
82    
83     # first setup the binary compiler to bootstrap ghc
84     cd ${SRCDIR_BIN}
85     mconfigure || die
86     make in-place || die
87    
88     # setup the path to ghc
89     local myarch="${ARCH}"
90     [[ ${ARCH} = i*86 ]] && myarch="i386"
91     export PATH="${PATH}:${SRCDIR_BIN}/bin/${myarch}-unknown-linux"
92    
93     # now bootstrap ghc
94     cd ${SRCDIR}
95    
96     # disable the build of docs
97     echo NO_HADDOCK_DOCS=YES > mk/build.mk || die
98     echo XMLDocWays="" >> mk/build.mk || die
99    
100     # from gentoo:
101     # force the config variable ArSupportsInput to be unset;
102     # ar in binutils >= 2.14.90.0.8-r1 seems to be classified
103     # incorrectly by the configure script
104     echo "ArSupportsInput:=" >> mk/build.mk || die
105    
106     # no x11 and co needed
107     mconfigure \
108     --disable-x11 \
109     --disable-hgl \
110     --disable-opengl \
111     --disable-glut \
112     --disable-openal \
113     || die
114    
115     # the explicit datadir is required to make the haddock entries
116     # in the package.conf file point to the right place ...
117     mmake -j1 all datadir="/usr/share/doc/${PNAME}-${PVER}" || die
118     }
119    
120     src_install()
121     {
122     cd ${SRCDIR}
123    
124     make prefix="${BINDIR}/usr" \
125     datadir="${BINDIR}/usr/share/doc/${PNAME}-${PVER}" \
126     infodir="${BINDIR}/usr/share/info" \
127     mandir="${BINDIR}/usr/share/man" \
128     install || die
129    
130     # remove ${BINDIR} from ghcprof
131     sed -i 's:$FPTOOLS_TOP_ABS:#$FPTOOLS_TOP_ABS:' ${BINDIR}/usr/bin/ghcprof || die
132    
133     minstalldocs ANNOUNCE HACKING LICENSE README VERSION || die
134     }

Properties

Name Value
svn:keywords Id