Gentoo Archives: gentoo-commits

From: "Tim Harder (radhermit)" <radhermit@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-lang/fpc: ChangeLog fpc-2.6.0.ebuild
Date: Tue, 03 Jan 2012 06:10:02
Message-Id: 20120103060951.4858D2004B@flycatcher.gentoo.org
1 radhermit 12/01/03 06:09:51
2
3 Modified: ChangeLog
4 Added: fpc-2.6.0.ebuild
5 Log:
6 Version bump (bug #396695 by Merlijn Wajer). Add arm keyword.
7
8 (Portage version: 2.2.0_alpha84/cvs/Linux x86_64)
9
10 Revision Changes Path
11 1.57 dev-lang/fpc/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/fpc/ChangeLog?rev=1.57&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/fpc/ChangeLog?rev=1.57&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/fpc/ChangeLog?r1=1.56&r2=1.57
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/dev-lang/fpc/ChangeLog,v
20 retrieving revision 1.56
21 retrieving revision 1.57
22 diff -u -r1.56 -r1.57
23 --- ChangeLog 12 Dec 2011 23:40:50 -0000 1.56
24 +++ ChangeLog 3 Jan 2012 06:09:50 -0000 1.57
25 @@ -1,6 +1,11 @@
26 # ChangeLog for dev-lang/fpc
27 -# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/fpc/ChangeLog,v 1.56 2011/12/12 23:40:50 radhermit Exp $
29 +# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
30 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/fpc/ChangeLog,v 1.57 2012/01/03 06:09:50 radhermit Exp $
31 +
32 +*fpc-2.6.0 (03 Jan 2012)
33 +
34 + 03 Jan 2012; Tim Harder <radhermit@g.o> +fpc-2.6.0.ebuild:
35 + Version bump (bug #396695 by Merlijn Wajer). Add arm keyword.
36
37 12 Dec 2011; Tim Harder <radhermit@g.o> fpc-2.4.4.ebuild:
38 Remove deprecated external fpc-ide related setup (fixes bug #394475).
39
40
41
42 1.1 dev-lang/fpc/fpc-2.6.0.ebuild
43
44 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/fpc/fpc-2.6.0.ebuild?rev=1.1&view=markup
45 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/fpc/fpc-2.6.0.ebuild?rev=1.1&content-type=text/plain
46
47 Index: fpc-2.6.0.ebuild
48 ===================================================================
49 # Copyright 1999-2012 Gentoo Foundation
50 # Distributed under the terms of the GNU General Public License v2
51 # $Header: /var/cvsroot/gentoo-x86/dev-lang/fpc/fpc-2.6.0.ebuild,v 1.1 2012/01/03 06:09:50 radhermit Exp $
52
53 EAPI=4
54
55 HOMEPAGE="http://www.freepascal.org/"
56 DESCRIPTION="Free Pascal Compiler"
57 SRC_URI="mirror://sourceforge/freepascal/fpcbuild-${PV}.tar.gz
58 amd64? ( mirror://sourceforge/freepascal/${P}.x86_64-linux.tar )
59 arm? ( mirror://sourceforge/freepascal/${P}.arm-linux.tar )
60 ppc? ( mirror://sourceforge/freepascal/${P}.powerpc-linux.tar )
61 ppc64? ( mirror://sourceforge/freepascal/${P}.powerpc64-linux.tar )
62 sparc? ( mirror://sourceforge/freepascal/${PN}-2.2.4.sparc-linux.tar )
63 x86? ( mirror://sourceforge/freepascal/${P}.i386-linux.tar )
64 doc? ( mirror://sourceforge/freepascal/Documentation/${PV}/doc-html.tar.gz -> ${P}-doc-html.tar.gz
65 http://dev.gentoo.org/~radhermit/distfiles/${P}-fpctoc.htx.bz2 )"
66
67 SLOT="0"
68 LICENSE="GPL-2 LGPL-2.1 LGPL-2.1-FPC"
69 KEYWORDS="~amd64 ~arm ~ppc ~sparc ~x86"
70 IUSE="doc ide source"
71
72 RDEPEND="ide? ( !dev-lang/fpc-ide )"
73
74 RESTRICT="strip" #269221
75
76 S="${WORKDIR}/fpcbuild-${PV}/fpcsrc"
77
78 src_unpack() {
79 case ${ARCH} in
80 amd64) FPC_ARCH="x86_64" PV_BIN=${PV} ;;
81 arm) FPC_ARCH="arm" PV_BIN=${PV} ;;
82 ppc) FPC_ARCH="powerpc" PV_BIN=${PV} ;;
83 ppc64) FPC_ARCH="powerpc64" PV_BIN=${PV} ;;
84 sparc) FPC_ARCH="sparc" PV_BIN=2.2.4 ;;
85 x86) FPC_ARCH="i386" PV_BIN=${PV} ;;
86 *) die "This ebuild doesn't support ${ARCH}." ;;
87 esac
88
89 unpack ${A}
90
91 tar -xf ${P}.${FPC_ARCH}-linux/binary.${FPC_ARCH}-linux.tar || die "Unpacking binary.${FPC_ARCH}-linux.tar failed!"
92 tar -xzf base.${FPC_ARCH}-linux.tar.gz || die "Unpacking base.${FPC_ARCH}-linux.tar.gz failed!"
93 }
94
95 src_prepare() {
96 find "${WORKDIR}" -name Makefile -exec sed -i -e 's/ -Xs / /g' {} + || die
97 }
98
99 set_pp() {
100 case ${ARCH} in
101 amd64) FPC_ARCH="x64" ;;
102 arm) FPC_ARCH="arm" ;;
103 ppc) FPC_ARCH="ppc" ;;
104 ppc64) FPC_ARCH="ppc64" ;;
105 sparc) FPC_ARCH="sparc" ;;
106 x86) FPC_ARCH="386" ;;
107 *) die "This ebuild doesn't support ${ARCH}." ;;
108 esac
109
110 case ${1} in
111 bootstrap) pp="${WORKDIR}"/lib/fpc/${PV_BIN}/ppc${FPC_ARCH} ;;
112 new) pp="${S}"/compiler/ppc${FPC_ARCH} ;;
113 *) die "set_pp: unknown argument: ${1}" ;;
114 esac
115 }
116
117 src_compile() {
118 local pp
119
120 # Using the bootstrap compiler.
121 set_pp bootstrap
122
123 emake -j1 PP="${pp}" compiler_cycle
124
125 # Save new compiler from cleaning...
126 cp "${S}"/compiler/ppc${FPC_ARCH} "${S}"/ppc${FPC_ARCH}.new || die
127
128 # ...rebuild with current version...
129 emake -j1 PP="${S}"/ppc${FPC_ARCH}.new compiler_cycle
130
131 # ..and clean up afterwards
132 rm "${S}"/ppc${FPC_ARCH}.new || die
133
134 # Using the new compiler.
135 set_pp new
136
137 emake -j1 PP="${pp}" rtl_clean
138
139 emake -j1 PP="${pp}" rtl packages_all utils
140
141 if use ide ; then
142 cd "${S}"/ide || die
143 emake -j1 PP="${pp}"
144 fi
145 }
146
147 src_install() {
148 local pp
149 set_pp new
150
151 set -- PP="${pp}" FPCMAKE="${S}/utils/fpcm/fpcmake" \
152 INSTALL_PREFIX="${D}"usr \
153 INSTALL_DOCDIR="${D}"usr/share/doc/${PF} \
154 INSTALL_MANDIR="${D}"usr/share/man \
155 INSTALL_SOURCEDIR="${D}"usr/lib/fpc/${PV}/source
156
157 emake -j1 "$@" compiler_install rtl_install packages_install utils_install
158
159 dosym ../lib/fpc/${PV}/ppc${FPC_ARCH} /usr/bin/ppc${FPC_ARCH}
160
161 cd "${S}"/../install/doc || die
162 emake -j1 "$@" installdoc
163
164 cd "${S}"/../install/man || die
165 emake -j1 "$@" installman
166
167 if use doc ; then
168 cd "${S}"/../../doc || die
169 dodoc -r *
170 newdoc "${WORKDIR}"/${P}-fpctoc.htx fpctoc.htx
171 docompress -x /usr/share/doc/${PF}/fpctoc.htx
172 fi
173
174 if use ide ; then
175 cd "${S}"/ide
176 emake -j1 "$@" install
177 fi
178
179 if use source ; then
180 cd "${S}" || die
181 shift
182 emake -j1 PP="${D}"usr/bin/ppc${FPC_ARCH} "$@" sourceinstall
183 find "${D}"usr/lib/fpc/${PV}/source -name '*.o' -exec rm {} \;
184 fi
185
186 "${D}"usr/lib/fpc/${PV}/samplecfg "${D}"usr/lib/fpc/${PV} "${D}"etc || die
187 sed -i -e "s:${D}:/:g" "${D}"etc/fpc.cfg || die "sed fpc.cfg failed"
188
189 rm -r "${D}"usr/lib/fpc/lexyacc || die
190 }
191
192 pkg_postinst() {
193 if use ide ; then
194 einfo "To read the documentation in the fpc IDE, enable the doc USE flag"
195 einfo "and add /usr/share/doc/${PF}/fpctoc.htx to the Help Files list."
196 fi
197 }