1 |
voyageur 10/10/06 09:17:40 |
2 |
|
3 |
Modified: ChangeLog |
4 |
Added: llvm-gcc-2.8.ebuild |
5 |
Removed: llvm-gcc-2.6.ebuild |
6 |
Log: |
7 |
2.8 version bump |
8 |
|
9 |
(Portage version: 2.2_rc88/cvs/Linux x86_64) |
10 |
|
11 |
Revision Changes Path |
12 |
1.9 sys-devel/llvm-gcc/ChangeLog |
13 |
|
14 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm-gcc/ChangeLog?rev=1.9&view=markup |
15 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm-gcc/ChangeLog?rev=1.9&content-type=text/plain |
16 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm-gcc/ChangeLog?r1=1.8&r2=1.9 |
17 |
|
18 |
Index: ChangeLog |
19 |
=================================================================== |
20 |
RCS file: /var/cvsroot/gentoo-x86/sys-devel/llvm-gcc/ChangeLog,v |
21 |
retrieving revision 1.8 |
22 |
retrieving revision 1.9 |
23 |
diff -u -r1.8 -r1.9 |
24 |
--- ChangeLog 26 Aug 2010 07:04:40 -0000 1.8 |
25 |
+++ ChangeLog 6 Oct 2010 09:17:40 -0000 1.9 |
26 |
@@ -1,6 +1,12 @@ |
27 |
# ChangeLog for sys-devel/llvm-gcc |
28 |
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 |
29 |
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm-gcc/ChangeLog,v 1.8 2010/08/26 07:04:40 grobian Exp $ |
30 |
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm-gcc/ChangeLog,v 1.9 2010/10/06 09:17:40 voyageur Exp $ |
31 |
+ |
32 |
+*llvm-gcc-2.8 (06 Oct 2010) |
33 |
+ |
34 |
+ 06 Oct 2010; Bernard Cafarelli <voyageur@g.o> -llvm-gcc-2.6.ebuild, |
35 |
+ +llvm-gcc-2.8.ebuild: |
36 |
+ 2.8 version bump |
37 |
|
38 |
26 Aug 2010; Fabian Groffen <grobian@g.o> llvm-gcc-2.7-r1.ebuild, |
39 |
llvm-gcc-9999.ebuild: |
40 |
|
41 |
|
42 |
|
43 |
1.1 sys-devel/llvm-gcc/llvm-gcc-2.8.ebuild |
44 |
|
45 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm-gcc/llvm-gcc-2.8.ebuild?rev=1.1&view=markup |
46 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm-gcc/llvm-gcc-2.8.ebuild?rev=1.1&content-type=text/plain |
47 |
|
48 |
Index: llvm-gcc-2.8.ebuild |
49 |
=================================================================== |
50 |
# Copyright 1999-2010 Gentoo Foundation |
51 |
# Distributed under the terms of the GNU General Public License v2 |
52 |
# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm-gcc/llvm-gcc-2.8.ebuild,v 1.1 2010/10/06 09:17:40 voyageur Exp $ |
53 |
|
54 |
EAPI=3 |
55 |
inherit libtool flag-o-matic gnuconfig multilib |
56 |
|
57 |
LLVM_GCC_VERSION=4.2 |
58 |
MY_PV=${LLVM_GCC_VERSION}-${PV/_pre*} |
59 |
|
60 |
DESCRIPTION="LLVM C front-end" |
61 |
HOMEPAGE="http://llvm.org" |
62 |
SRC_URI="http://llvm.org/releases/${PV}/${PN}-${MY_PV}.source.tgz" |
63 |
|
64 |
LICENSE="GPL-2" |
65 |
SLOT=0 |
66 |
KEYWORDS="~amd64 ~ppc ~x86 ~ppc-macos" |
67 |
IUSE="bootstrap fortran multilib nls objc objc++ test" |
68 |
|
69 |
RDEPEND=">=sys-devel/llvm-$PV" |
70 |
DEPEND="${RDEPEND} |
71 |
>=sys-apps/texinfo-4.2-r4 |
72 |
|| ( >=sys-devel/binutils-2.18 >=sys-devel/binutils-apple-3.2.3 ) |
73 |
>=sys-devel/bison-1.875 |
74 |
test? ( dev-util/dejagnu |
75 |
sys-devel/autogen )" |
76 |
|
77 |
S=${WORKDIR}/llvm-gcc-${MY_PV}.source |
78 |
|
79 |
src_prepare() { |
80 |
#we keep the directory structure suggested by README.LLVM, |
81 |
mkdir -p "${S}"/obj |
82 |
|
83 |
# From toolchain eclass |
84 |
elibtoolize --portage --shallow --no-uclibc |
85 |
gnuconfig_update |
86 |
|
87 |
# update configure files |
88 |
local f |
89 |
for f in $(grep -l 'autoconf version 2.13' $(find "${S}" -name configure)) ; do |
90 |
#ebegin " Updating ${f/${S}\/} [LANG]" |
91 |
ebegin " Updating \"${f/${S}\/}\" [LANG]" |
92 |
patch "${f}" "${FILESDIR}"/gcc-configure-LANG.patch >& "${T}"/configure-patch.log \ |
93 |
|| eerror "Please file a bug about this" |
94 |
eend $? |
95 |
done |
96 |
sed -i 's|A-Za-z0-9|[:alnum:]|g' gcc/*.awk #215828 |
97 |
|
98 |
if [[ -x contrib/gcc_update ]] ; then |
99 |
einfo "Touching generated files" |
100 |
./contrib/gcc_update --touch | \ |
101 |
while read f ; do |
102 |
einfo " ${f%%...}" |
103 |
done |
104 |
fi |
105 |
} |
106 |
|
107 |
src_configure() { |
108 |
gcc_do_filter_flags |
109 |
# Target options are handled by econf |
110 |
|
111 |
cd "${S}"/obj |
112 |
EXTRALANGS="" |
113 |
use fortran && EXTRALANGS="${EXTRALANGS},fortran" |
114 |
use objc && EXTRALANGS="${EXTRALANGS},objc" |
115 |
use objc++ && EXTRALANGS="${EXTRALANGS},obj-c++" |
116 |
|
117 |
ECONF_SOURCE="${S}" econf --prefix="${EPREFIX}"/usr/$(get_libdir)/${PN}-${MY_PV} \ |
118 |
$(use_enable multilib) \ |
119 |
--program-prefix=${PN}-${MY_PV}- \ |
120 |
--enable-llvm="${EPREFIX}"/usr --enable-languages=c,c++${EXTRALANGS} \ |
121 |
$(use prefix && echo "--with-local-prefix=${EPREFIX}/usr") \ |
122 |
|| die "configure failed" |
123 |
} |
124 |
|
125 |
src_compile() { |
126 |
gcc_do_filter_flags |
127 |
cd "${S}"/obj |
128 |
BUILDOPTIONS="LLVM_VERSION_INFO=${MY_PV}" |
129 |
use bootstrap && BUILDOPTIONS="${BUILDOPTIONS} bootstrap" |
130 |
emake ${BUILDOPTIONS} || die "emake failed" |
131 |
} |
132 |
|
133 |
src_test() { |
134 |
cd "${S}"/obj |
135 |
emake -j1 -k check || ewarn "check failed and that sucks :(" |
136 |
} |
137 |
|
138 |
src_install() { |
139 |
cd "${S}"/obj |
140 |
|
141 |
# Do allow symlinks in private gcc include dir as this can break the build |
142 |
find gcc/include*/ -type l -print0 | xargs -0 rm -f |
143 |
# Remove generated headers, as they can cause things to break |
144 |
# (ncurses, openssl, etc). |
145 |
for x in $(find gcc/include*/ -name '*.h') ; do |
146 |
grep -q 'It has been auto-edited by fixincludes from' "${x}" \ |
147 |
&& rm -f "${x}" |
148 |
done |
149 |
|
150 |
emake DESTDIR="${D}" install || die "installation failed" |
151 |
rm -rf "${ED}"/usr/share/man/man7 |
152 |
if ! use nls; then |
153 |
einfo "nls USE flag disabled, not installing locale files" |
154 |
rm -rf "${ED}"/usr/share/locale |
155 |
fi |
156 |
|
157 |
# Add some symlinks |
158 |
dodir /usr/bin |
159 |
cd "${ED}/usr/bin" |
160 |
for X in c++ g++ cpp gcc gcov gccbug ; do |
161 |
ln -s "${EPREFIX}"/usr/$(get_libdir)/${PN}-${MY_PV}/bin/${PN}-${MY_PV}-${X} llvm-${X} |
162 |
done |
163 |
use fortran && \ |
164 |
ln -s "${EPREFIX}"/usr/$(get_libdir)/${PN}-${MY_PV}/bin/${PN}-${MY_PV}-gfortran llvm-gfortran |
165 |
|
166 |
# Fix install_names on Darwin. The build system is too complicated |
167 |
# to just fix this, so we correct it post-install |
168 |
if [[ ${CHOST} == *-darwin* ]] ; then |
169 |
local f=$(echo "${ED}"usr/$(get_libdir)/${PN}-${MY_PV}/lib/gcc/${CHOST}/${LLVM_GCC_VERSION}*/libstdc++.dylib) |
170 |
install_name_tool -id "/${f#${D}}" "${f}" |
171 |
fi |
172 |
} |
173 |
|
174 |
gcc_do_filter_flags() { |
175 |
strip-flags |
176 |
|
177 |
# In general gcc does not like optimization, and add -O2 where |
178 |
# it is safe. This is especially true for gcc 3.3 + 3.4 |
179 |
replace-flags -O? -O2 |
180 |
|
181 |
# ... sure, why not? |
182 |
strip-unsupported-flags |
183 |
|
184 |
# dont want to funk ourselves |
185 |
filter-flags '-mabi*' -m31 -m32 -m64 |
186 |
|
187 |
filter-flags '-mcpu=*' |
188 |
} |