Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 5347 - (show annotations) (download)
Wed May 5 14:52:36 2010 UTC (13 years, 11 months ago) by niro
File size: 3791 byte(s)
-moved to 'extras'
1 # $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