1 |
caster 10/10/31 17:29:23 |
2 |
|
3 |
Added: metadata.xml ChangeLog ecj-gcj-3.5.2-r2.ebuild |
4 |
Log: |
5 |
Move from java-overlay. |
6 |
|
7 |
(Portage version: 2.2.0_alpha2/cvs/Linux x86_64) |
8 |
|
9 |
Revision Changes Path |
10 |
1.1 dev-java/ecj-gcj/metadata.xml |
11 |
|
12 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/ecj-gcj/metadata.xml?rev=1.1&view=markup |
13 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/ecj-gcj/metadata.xml?rev=1.1&content-type=text/plain |
14 |
|
15 |
Index: metadata.xml |
16 |
=================================================================== |
17 |
<?xml version="1.0" encoding="UTF-8"?> |
18 |
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
19 |
<pkgmetadata> |
20 |
<herd>java</herd> |
21 |
<use> |
22 |
<flag name="native">Build a native binary along with the jar. Provides faster execution time, but needs about 1G memory and some patience to compile.</flag> |
23 |
</use> |
24 |
</pkgmetadata> |
25 |
|
26 |
|
27 |
|
28 |
1.1 dev-java/ecj-gcj/ChangeLog |
29 |
|
30 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/ecj-gcj/ChangeLog?rev=1.1&view=markup |
31 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/ecj-gcj/ChangeLog?rev=1.1&content-type=text/plain |
32 |
|
33 |
Index: ChangeLog |
34 |
=================================================================== |
35 |
# ChangeLog for dev-java/ecj-gcj |
36 |
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 |
37 |
# $Header: /var/cvsroot/gentoo-x86/dev-java/ecj-gcj/ChangeLog,v 1.1 2010/10/31 17:29:23 caster Exp $ |
38 |
|
39 |
*ecj-gcj-3.5.2-r2 (31 Oct 2010) |
40 |
|
41 |
31 Oct 2010; Vlastimil Babka <caster@g.o> +files/ecj-gcj-3.5, |
42 |
+ecj-gcj-3.5.2-r2.ebuild, +metadata.xml: |
43 |
Move from java-overlay. |
44 |
|
45 |
14 Sep 2010; Vlastimil Babka <caster@g.o> +files/ecj-gcj-3.5-r1, |
46 |
+ecj-gcj-3.5.2-r2.ebuild: |
47 |
Revbump to fix CLASSPATH handling, fixes e.g. build of ant-core. |
48 |
|
49 |
01 Apr 2010; Vlastimil Babka <caster@g.o> ecj-gcj-3.5.2-r1.ebuild: |
50 |
Block the former eclipse-ecj:3.5[gcj] ebuild to prevent file collisions. |
51 |
Downgrade eclipse-ecj:3.5 to the main tree version if you hit the block. |
52 |
|
53 |
01 Apr 2010; Vlastimil Babka <caster@g.o> +ecj-gcj-3.5.2-r1.ebuild: |
54 |
Revbump to ensure everyone gets the changes. Remove dependencies on jdk/jre |
55 |
and use gcj manually to compile, to break circular deps. Put back the native |
56 |
flag (enabled by default) for troubleshooting / low memory cases. |
57 |
|
58 |
01 Apr 2010; Andrew John Hughes <andrew@g.o> -ecj-gcj-3.5.2.ebuild: |
59 |
Use new ecj-3.5 ebuild as basis, not old native binary version. |
60 |
|
61 |
22 Mar 2010; Vlastimil Babka <caster@g.o> +ecj-gcj-3.5.2.ebuild, |
62 |
+files/ecj-gcj, +metadata.xml: |
63 |
New package, a subset of eclipse-ecj that can be compiled and used with |
64 |
gcj-jdk. |
65 |
|
66 |
|
67 |
|
68 |
|
69 |
1.1 dev-java/ecj-gcj/ecj-gcj-3.5.2-r2.ebuild |
70 |
|
71 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/ecj-gcj/ecj-gcj-3.5.2-r2.ebuild?rev=1.1&view=markup |
72 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-java/ecj-gcj/ecj-gcj-3.5.2-r2.ebuild?rev=1.1&content-type=text/plain |
73 |
|
74 |
Index: ecj-gcj-3.5.2-r2.ebuild |
75 |
=================================================================== |
76 |
# Copyright 1999-2010 Gentoo Foundation |
77 |
# Distributed under the terms of the GNU General Public License v2 |
78 |
# $Header: /var/cvsroot/gentoo-x86/dev-java/ecj-gcj/ecj-gcj-3.5.2-r2.ebuild,v 1.1 2010/10/31 17:29:23 caster Exp $ |
79 |
|
80 |
EAPI=2 |
81 |
|
82 |
inherit java-pkg-2 toolchain-funcs |
83 |
|
84 |
MY_PN="ecj" |
85 |
DMF="R-${PV}-201002111343" |
86 |
S="${WORKDIR}" |
87 |
|
88 |
DESCRIPTION="A subset of Eclipse Compiler for Java compiled by gcj, serving as javac in gcj-jdk" |
89 |
HOMEPAGE="http://www.eclipse.org/" |
90 |
SRC_URI="http://download.eclipse.org/eclipse/downloads/drops/${DMF}/${MY_PN}src-${PV}.zip" |
91 |
|
92 |
IUSE="+native userland_GNU" |
93 |
|
94 |
LICENSE="EPL-1.0" |
95 |
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" |
96 |
SLOT="3.5" |
97 |
|
98 |
MY_PS="${MY_PN}-${SLOT}" |
99 |
|
100 |
# for compatibility with java eclass functions |
101 |
JAVA_PKG_WANT_SOURCE=1.4 |
102 |
JAVA_PKG_WANT_TARGET=1.4 |
103 |
|
104 |
CDEPEND="sys-devel/gcc[gcj] |
105 |
>=app-admin/eselect-ecj-0.6" |
106 |
DEPEND="${CDEPEND} |
107 |
app-arch/unzip |
108 |
userland_GNU? ( sys-apps/findutils ) |
109 |
!dev-java/eclipse-ecj:3.5[gcj]" |
110 |
RDEPEND="${CDEPEND}" |
111 |
|
112 |
src_unpack() { |
113 |
unpack ${A} |
114 |
cd "${S}" |
115 |
|
116 |
# We don't need the ant adapter here |
117 |
rm -f org/eclipse/jdt/core/JDTCompilerAdapter.java || die |
118 |
rm -fr org/eclipse/jdt/internal/antadapter || die |
119 |
|
120 |
# upstream build.xml excludes this |
121 |
rm -f META-INF/eclipse.inf || die |
122 |
|
123 |
# these java6 specific classes cannot compile with ecj |
124 |
rm -fr org/eclipse/jdt/internal/compiler/{apt,tool}/ || die |
125 |
} |
126 |
|
127 |
src_compile() { |
128 |
local javac_opts javac java jar |
129 |
|
130 |
local gccbin=$(gcc-config -B) |
131 |
local gccver=$(gcc-fullversion) |
132 |
|
133 |
local gcj="${gccbin}/gcj" |
134 |
javac="${gcj} -C" |
135 |
jar="${gccbin}/gjar" |
136 |
java="${gccbin}/gij" |
137 |
|
138 |
mkdir -p bootstrap || die |
139 |
cp -pPR org bootstrap || die |
140 |
cd "${S}/bootstrap" || die |
141 |
|
142 |
einfo "bootstrapping ${MY_PN} with ${javac} ..." |
143 |
${javac} ${javac_opts} $(find org/ -name '*.java') || die |
144 |
find org/ -name '*.class' -o -name '*.properties' -o -name '*.rsc' |\ |
145 |
xargs ${jar} cf ${MY_PN}.jar |
146 |
|
147 |
cd "${S}" || die |
148 |
|
149 |
einfo "building ${MY_PN} with bootstrapped ${MY_PN} ..." |
150 |
${java} -classpath bootstrap/${MY_PN}.jar \ |
151 |
org.eclipse.jdt.internal.compiler.batch.Main \ |
152 |
${javac_opts} -nowarn org || die |
153 |
find org/ -name '*.class' -o -name '*.properties' -o -name '*.rsc' |\ |
154 |
xargs ${jar} cf ${MY_PN}.jar |
155 |
|
156 |
if use native; then |
157 |
einfo "Building native ${MY_PS} library, patience needed ..." |
158 |
${gcj} ${CFLAGS} -findirect-dispatch -shared -fPIC -Wl,-Bsymbolic \ |
159 |
-o ${MY_PS}.so ${MY_PN}.jar || die |
160 |
fi |
161 |
} |
162 |
|
163 |
src_install() { |
164 |
java-pkg_dojar ${MY_PN}.jar |
165 |
dobin "${FILESDIR}/${PN}-${SLOT}" |
166 |
use native && dolib.so ${MY_PS}.so |
167 |
} |
168 |
|
169 |
pkg_postinst() { |
170 |
if use native; then |
171 |
$(gcc-config -B)/gcj-dbtool -a $(gcj-dbtool -p) \ |
172 |
/usr/share/${PN}-${SLOT}/lib/ecj.jar \ |
173 |
/usr/$(get_libdir)/${MY_PN}-${SLOT}.so |
174 |
fi |
175 |
|
176 |
einfo "To select between slots of ECJ..." |
177 |
einfo " # eselect ecj" |
178 |
|
179 |
eselect ecj update ${PN}-${SLOT} |
180 |
} |
181 |
|
182 |
pkg_postrm() { |
183 |
eselect ecj update |
184 |
} |