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

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

update: ecj

Line 
1%define qualifier 201102101200
2
3Summary: Eclipse Compiler for Java
4Name: ecj
5Version: 3.6.2
6Release: 1%{?_dist_release}
7
8URL: http://www.eclipse.org
9License: EPL
10Group: Development/Languages
11
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
20
21BuildRoot: %{_tmppath}/%{name}-%{version}-root
22#BuildArch: noarch
23BuildRequires: jpackage-utils
24BuildRequires: gcc-java >= 4.0.0
25BuildRequires: fastjar
26# for /usr/bin/aot-compile-rpm
27BuildRequires: java-gcj-compat-devel
28
29Requires: libgcj >= 4.0.0
30# for /usr/bin/rebuild-gcj-db
31Requires(post): java-gcj-compat
32Requires(postun): java-gcj-compat
33
34Provides: eclipse-ecj = %{version}-%{release}
35
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
41%setup -q -c
42
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
66%install
67rm -rf $RPM_BUILD_ROOT
68rm -rf aot-compile-rpm
69
70mkdir -p $RPM_BUILD_ROOT%{_javadir}
71#install -m644 %{SOURCE0} $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar
72install -m644 *.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar
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
84aot-compile-rpm
85
86
87%clean
88rm -rf $RPM_BUILD_ROOT
89
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
103%files
104%defattr(-,root,root,-)
105%{_bindir}/%{name}
106%{_javadir}/%{name}*.jar
107%{_javadir}/eclipse-%{name}*.jar
108%{_javadir}/jdtcore.jar
109%{_libdir}/gcj/%{name}
110
111%changelog
112* Sun Mar 20 2011 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 3.6.2-1
113- new upstream release
114
115* Tue Aug 24 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 3.6.0-1
116- new upstream release
117- enabled AOT compile
118
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.