[1664] | 1 | %define qualifier 201006080911 |
---|
[1563] | 2 | |
---|
| 3 | Summary: Eclipse Compiler for Java |
---|
| 4 | Name: ecj |
---|
[1664] | 5 | Version: 3.6 |
---|
[1563] | 6 | Release: 1%{?_dist_release} |
---|
[1664] | 7 | |
---|
[1563] | 8 | URL: http://www.eclipse.org |
---|
| 9 | License: EPL |
---|
| 10 | Group: Development/Languages |
---|
| 11 | |
---|
[1664] | 12 | #Source0: ftp://sourceware.org/pub/java/ecj-latest.jar |
---|
| 13 | #Source1: ecj-gij.sh.in |
---|
| 14 | Source0: http://download.eclipse.org/eclipse/downloads/drops/R-%{version}-%{qualifier}/%{name}src-%{version}.zip |
---|
| 15 | Source1: ecj.sh.in |
---|
| 16 | # Use ECJ for GCJ |
---|
| 17 | # cvs -d:pserver:anonymous@sourceware.org:/cvs/rhug co eclipse-gcj |
---|
| 18 | # tar cjf ecj-gcj.tar.bz2 eclipse-gcj |
---|
| 19 | Source2: %{name}-gcj.tar.bz2 |
---|
[1563] | 20 | |
---|
| 21 | BuildRoot: %{_tmppath}/%{name}-%{version}-root |
---|
[1664] | 22 | #BuildArch: noarch |
---|
[1563] | 23 | BuildRequires: jpackage-utils |
---|
[1664] | 24 | BuildRequires: gcc-java >= 4.0.0 |
---|
| 25 | BuildRequires: fastjar |
---|
| 26 | # for /usr/bin/aot-compile-rpm |
---|
| 27 | BuildRequires: java-gcj-compat-devel |
---|
[1563] | 28 | |
---|
[1664] | 29 | Requires: libgcj >= 4.0.0 |
---|
| 30 | # for /usr/bin/rebuild-gcj-db |
---|
| 31 | Requires(post): java-gcj-compat |
---|
| 32 | Requires(postun): java-gcj-compat |
---|
[1563] | 33 | |
---|
[1664] | 34 | Provides: eclipse-ecj = %{version}-%{release} |
---|
| 35 | #Obsoletes: eclipse-ecj < 3.4.2-4 |
---|
| 36 | |
---|
[1563] | 37 | %description |
---|
| 38 | ECJ is the Java bytecode compiler of the Eclipse Platform. It is also known as |
---|
| 39 | the JDT Core batch compiler. |
---|
| 40 | |
---|
| 41 | %prep |
---|
[1664] | 42 | %setup -q -c |
---|
[1563] | 43 | |
---|
[1664] | 44 | # Use ECJ for GCJ's bytecode compiler |
---|
| 45 | tar jxf %{SOURCE2} |
---|
| 46 | mv eclipse-gcj/org/eclipse/jdt/internal/compiler/batch/GCCMain.java \ |
---|
| 47 | org/eclipse/jdt/internal/compiler/batch/ |
---|
| 48 | cat eclipse-gcj/gcc.properties >> \ |
---|
| 49 | org/eclipse/jdt/internal/compiler/batch/messages.properties |
---|
| 50 | rm -rf eclipse-gcj |
---|
| 51 | |
---|
| 52 | # Remove bits of JDT Core we don't want to build |
---|
| 53 | rm -r org/eclipse/jdt/internal/compiler/tool |
---|
| 54 | rm -r org/eclipse/jdt/internal/compiler/apt |
---|
| 55 | |
---|
| 56 | # JDTCompilerAdapter isn't used by the batch compiler |
---|
| 57 | rm -f org/eclipse/jdt/core/JDTCompilerAdapter.java |
---|
| 58 | |
---|
| 59 | %build |
---|
| 60 | for f in `find -name '*.java' | cut -c 3- | LC_ALL=C sort`; do |
---|
| 61 | gcj -Wno-deprecated -C $f |
---|
| 62 | done |
---|
| 63 | |
---|
| 64 | find -name '*.class' -or -name '*.properties' -or -name '*.rsc' |\ |
---|
| 65 | xargs fastjar cf %{name}-%{version}.jar |
---|
| 66 | |
---|
[1563] | 67 | %install |
---|
| 68 | rm -rf $RPM_BUILD_ROOT |
---|
[1664] | 69 | rm -rf aot-compile-rpm |
---|
[1563] | 70 | |
---|
| 71 | mkdir -p $RPM_BUILD_ROOT%{_javadir} |
---|
[1664] | 72 | #install -m644 %{SOURCE0} $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar |
---|
| 73 | install -m644 *.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar |
---|
[1563] | 74 | pushd $RPM_BUILD_ROOT%{_javadir} |
---|
| 75 | ln -s %{name}-%{version}.jar %{name}.jar |
---|
| 76 | ln -s %{name}-%{version}.jar eclipse-%{name}-%{version}.jar |
---|
| 77 | ln -s eclipse-%{name}-%{version}.jar eclipse-%{name}.jar |
---|
| 78 | ln -s %{name}-%{version}.jar jdtcore.jar |
---|
| 79 | popd |
---|
| 80 | |
---|
| 81 | # Install the ecj wrapper script |
---|
| 82 | install -p -D -m0755 %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}/ecj |
---|
| 83 | sed --in-place "s:@JAVADIR@:%{_javadir}:" $RPM_BUILD_ROOT%{_bindir}/ecj |
---|
| 84 | |
---|
[1664] | 85 | aot-compile-rpm |
---|
| 86 | |
---|
| 87 | |
---|
[1563] | 88 | %clean |
---|
| 89 | rm -rf $RPM_BUILD_ROOT |
---|
| 90 | |
---|
[1664] | 91 | %post |
---|
| 92 | if [ -x %{_bindir}/rebuild-gcj-db ] |
---|
| 93 | then |
---|
| 94 | %{_bindir}/rebuild-gcj-db |
---|
| 95 | fi |
---|
| 96 | |
---|
| 97 | %postun |
---|
| 98 | if [ -x %{_bindir}/rebuild-gcj-db ] |
---|
| 99 | then |
---|
| 100 | %{_bindir}/rebuild-gcj-db |
---|
| 101 | fi |
---|
| 102 | |
---|
| 103 | |
---|
[1563] | 104 | %files |
---|
| 105 | %defattr(-,root,root,-) |
---|
| 106 | %{_bindir}/%{name} |
---|
| 107 | %{_javadir}/%{name}*.jar |
---|
| 108 | %{_javadir}/eclipse-%{name}*.jar |
---|
| 109 | %{_javadir}/jdtcore.jar |
---|
[1664] | 110 | %{_libdir}/gcj/%{name} |
---|
[1563] | 111 | |
---|
| 112 | %changelog |
---|
[1664] | 113 | * Tue Aug 24 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 3.6.0-1 |
---|
| 114 | - new upstream release |
---|
| 115 | - enabled AOT compile |
---|
| 116 | |
---|
[1563] | 117 | * Mon Apr 19 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 3.5.1-1 |
---|
| 118 | - initial build for Vine Linux |
---|