source: projects/specs/trunk/e/ecj/ecj-vl.spec @ 3068

Revision 3068, 3.1 KB checked in by inagaki, 13 years ago (diff)

update: ecj

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