Gentoo Archives: gentoo-commits

From: "Alexis Ballier (aballier)" <aballier@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-lang/ocaml: ChangeLog ocaml-3.10.2.ebuild ocaml-3.10.2_rc1.ebuild
Date: Fri, 29 Feb 2008 16:46:30
Message-Id: E1JV8NP-0005lM-3N@stork.gentoo.org
1 aballier 08/02/29 16:46:27
2
3 Modified: ChangeLog
4 Added: ocaml-3.10.2.ebuild
5 Removed: ocaml-3.10.2_rc1.ebuild
6 Log:
7 bump to release 3.10.2, remove the rc
8 (Portage version: 2.1.4.4)
9
10 Revision Changes Path
11 1.137 dev-lang/ocaml/ChangeLog
12
13 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/ocaml/ChangeLog?rev=1.137&view=markup
14 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/ocaml/ChangeLog?rev=1.137&content-type=text/plain
15 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/ocaml/ChangeLog?r1=1.136&r2=1.137
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/dev-lang/ocaml/ChangeLog,v
20 retrieving revision 1.136
21 retrieving revision 1.137
22 diff -u -r1.136 -r1.137
23 --- ChangeLog 24 Feb 2008 16:39:14 -0000 1.136
24 +++ ChangeLog 29 Feb 2008 16:46:26 -0000 1.137
25 @@ -1,6 +1,12 @@
26 # ChangeLog for dev-lang/ocaml
27 # Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/ocaml/ChangeLog,v 1.136 2008/02/24 16:39:14 aballier Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/ocaml/ChangeLog,v 1.137 2008/02/29 16:46:26 aballier Exp $
30 +
31 +*ocaml-3.10.2 (29 Feb 2008)
32 +
33 + 29 Feb 2008; Alexis Ballier <aballier@g.o>
34 + -ocaml-3.10.2_rc1.ebuild, +ocaml-3.10.2.ebuild:
35 + bump to release 3.10.2, remove the rc
36
37 *ocaml-3.10.2_rc1 (24 Feb 2008)
38
39
40
41
42 1.1 dev-lang/ocaml/ocaml-3.10.2.ebuild
43
44 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/ocaml/ocaml-3.10.2.ebuild?rev=1.1&view=markup
45 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/ocaml/ocaml-3.10.2.ebuild?rev=1.1&content-type=text/plain
46
47 Index: ocaml-3.10.2.ebuild
48 ===================================================================
49 # Copyright 1999-2008 Gentoo Foundation
50 # Distributed under the terms of the GNU General Public License v2
51 # $Header: /var/cvsroot/gentoo-x86/dev-lang/ocaml/ocaml-3.10.2.ebuild,v 1.1 2008/02/29 16:46:26 aballier Exp $
52
53 inherit flag-o-matic eutils multilib versionator toolchain-funcs
54
55 EAPI="1"
56
57 MY_P="${P/_rc/+rc}"
58 DESCRIPTION="fast modern type-inferring functional programming language descended from the ML (Meta Language) family"
59 HOMEPAGE="http://www.ocaml.org/"
60 SRC_URI="http://caml.inria.fr/distrib/ocaml-$( get_version_component_range 1-2)/${MY_P}.tar.bz2"
61
62 LICENSE="QPL-1.0 LGPL-2"
63 SLOT="0"
64 KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
65 IUSE="emacs gdbm latex ncurses +ocamlopt tk X xemacs"
66
67 DEPEND="tk? ( >=dev-lang/tk-3.3.3 )
68 ncurses? ( sys-libs/ncurses )
69 X? ( x11-libs/libX11 x11-proto/xproto )
70 gdbm? ( sys-libs/gdbm )"
71
72 PDEPEND="emacs? ( app-emacs/ocaml-mode )
73 xemacs? ( app-xemacs/ocaml )"
74
75 S="${WORKDIR}/${MY_P}"
76 pkg_setup() {
77 # dev-lang/ocaml creates its own objects but calls gcc for linking, which will
78 # results in relocations if gcc wants to create a PIE executable
79 if gcc-specs-pie ; then
80 append-ldflags -nopie
81 ewarn "Ocaml generates its own native asm, you're using a PIE compiler"
82 ewarn "We have appended -nopie to ocaml build options"
83 ewarn "because linking an executable with pie while the objects are not pic will not work"
84 fi
85 }
86
87 src_unpack() {
88 unpack ${A}
89 cd "${S}"
90
91 # Fix the EXEC_STACK in ocaml compiled binaries (#153382)
92 epatch "${FILESDIR}"/${PN}-3.10.0-exec-stack-fixes.patch
93
94 # The configure script doesn't inherit previous defined variables,
95 # overwriting previous declarations of bytecccompopts, bytecclinkopts,
96 # nativecccompopts and nativecclinkopts. Reported upstream as issue 0004267.
97 epatch "${FILESDIR}"/${PN}-3.10.0-configure.patch
98
99 # ocaml has automagics on libX11 and gdbm
100 # http://caml.inria.fr/mantis/view.php?id=4278
101 epatch "${FILESDIR}/${PN}-3.10.0-automagic.patch"
102
103 # Call ld with proper flags, different from gcc ones
104 # This happens when calling ocamlc -pack
105 # See comment in the patch
106 epatch "${FILESDIR}/${PN}-3.10.0-call-ld-with-proper-ldflags.patch"
107
108 }
109
110 src_compile() {
111 local myconf="--host ${CHOST}"
112
113 # dev-lang/ocaml tends to break/give unexpected results with "unsafe" CFLAGS.
114 strip-flags
115 replace-flags "-O?" -O2
116
117 # It doesn't compile on alpha without this LDFLAGS
118 use alpha && append-ldflags "-Wl,--no-relax"
119
120 use tk || myconf="${myconf} -no-tk"
121 use ncurses || myconf="${myconf} -no-curses"
122 use X || myconf="${myconf} -no-graph"
123 use gdbm || myconf="${myconf} -no-dbm"
124
125 # ocaml uses a home-brewn configure script, preventing it to use econf.
126 ./configure -prefix /usr \
127 --bindir /usr/bin \
128 --libdir /usr/$(get_libdir)/ocaml \
129 --mandir /usr/share/man \
130 --with-pthread ${myconf} || die "configure failed!"
131
132 make world || die "make world failed!"
133
134 # Native code generation can be disabled now
135 if use ocamlopt ; then
136 make opt || die "make opt failed!"
137 make opt.opt || die "make opt.opt failed!"
138 fi
139 }
140
141 src_install() {
142 make BINDIR="${D}"/usr/bin \
143 LIBDIR="${D}"/usr/$(get_libdir)/ocaml \
144 MANDIR="${D}"/usr/share/man \
145 install || die "make install failed!"
146
147 # Install the compiler libs
148 dodir /usr/$(get_libdir)/ocaml/compiler-libs
149 insinto /usr/$(get_libdir)/ocaml/compiler-libs
150 doins {utils,typing,parsing}/*.{mli,cmi,cmo,cmx,o}
151
152 # Symlink the headers to the right place
153 dodir /usr/include
154 dosym /usr/$(get_libdir)/ocaml/caml /usr/include/
155
156 # Remove ${D} from ld.conf, as the buildsystem isn't $(DESTDIR) aware
157 dosed "s:${D}::g" /usr/$(get_libdir)/ocaml/ld.conf
158
159 dodoc Changes INSTALL README Upgrading
160
161 # Create and envd entry for latex input files (this definitely belongs into
162 # CONTENT and not in pkg_postinst.
163 if use latex ; then
164 echo "TEXINPUTS=/usr/$(get_libdir)/ocaml/ocamldoc:" > "${T}"/99ocamldoc
165 doenvd "${T}"/99ocamldoc
166 fi
167
168 # Install ocaml-rebuild.sh script rather than keeping it in $PORTDIR
169 dosbin "${FILESDIR}/ocaml-rebuild.sh"
170 }
171
172 pkg_postinst() {
173 echo
174 ewarn "OCaml is not binary compatible from version to version, so you"
175 ewarn "need to rebuild all packages depending on it, that are actually"
176 ewarn "installed on your system. To do so, you can run:"
177 ewarn "/usr/sbin/ocaml-rebuild.sh [-h | emerge options]"
178 ewarn "Which will call emerge on all old packages with the given options"
179 echo
180 }
181
182
183
184 --
185 gentoo-commits@l.g.o mailing list