diff options
author | Robert Schuster <thebohemian@gmx.net> | 2008-09-23 05:10:26 +0000 |
---|---|---|
committer | Robert Schuster <thebohemian@gmx.net> | 2008-09-23 05:10:26 +0000 |
commit | 7afb7925a28564351334c1faac834ae490c32888 (patch) | |
tree | d8ce608964e1539c5ebfeb6ccd0034afd47274cf /packages/ecj/libecj-bootstrap.inc | |
parent | b18add6e1ca17aba2a5ee987c6ee14fa4f5db1a0 (diff) |
Part 2 (last one) of ecj rework
ecj-bootstrap-native: New recipe (ommitted version by purpose).
ecj-initial: New recipe (ommitted version by purpose).
libecj-boostrap: New recipes (3.3, 3.3.2, 3.4)
Diffstat (limited to 'packages/ecj/libecj-bootstrap.inc')
-rw-r--r-- | packages/ecj/libecj-bootstrap.inc | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/packages/ecj/libecj-bootstrap.inc b/packages/ecj/libecj-bootstrap.inc new file mode 100644 index 0000000000..c24c1af5ca --- /dev/null +++ b/packages/ecj/libecj-bootstrap.inc @@ -0,0 +1,67 @@ +# This package compiles and stages only the Jar. + +DESCRIPTION = "JDT Core Batch Compiler - Jar only" +HOMEPAGE = "http://www.eclipse.org/" +LICENSE = "EPL" + +DEPENDS = "fastjar-native jikes-initial virtual/java-initial" + +inherit native java + +S = "${WORKDIR}" + +JAR = "ecj-bootstrap-${PV}.jar" + +do_unpackpost() { + if [ ! -d source ]; then + mkdir source + fi + + if [ ! -d build ]; then + mkdir build + fi + + # Remove crap. + rm about.html build.xml + rm -rf META-INF + + # Move source into separate subdir. + mv org source/ + + # Remove stuff unneeded for the bootstrap compiler. + rm -rf source/org/eclipse/jdt/internal/compiler/apt + rm -rf source/org/eclipse/jdt/internal/compiler/tool + rm -rf source/org/eclipse/jdt/internal/antadapter + rm source/org/eclipse/jdt/core/JDTCompilerAdapter.java + + # Make a copy of the remaining source to get the embedded + # resources. + cp -r source/org build/ + + # Remove source code and other stuff. + find build -name '*.java' -exec rm -f {} \; + find build -name '*.html' -exec rm -f {} \; +} + +addtask unpackpost after do_unpack before do_patch + +do_compile() { + find source -name '*.java' > sourcefiles + split -l 25 sourcefiles ecj-sources. + + # Compiling in place is done because the sources contain + # property files which need to be available at runtime. + for list in `find . -name 'ecj-sources.*'`; do + echo "building files in $list ..."; + echo jikes-initial -d build -source 1.4 -sourcepath source `cat $list`; + jikes-initial \ + -d build -source 1.4 -sourcepath source `cat $list`; + done + + fastjar -c -C build . -f ${JAR} +} + +do_stage() { + oe_jarinstall -s ${JAR} ecj-bootstrap.jar +} + |