diff --git a/.cvsignore b/.cvsignore index 52d4805..7d6c829 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,4 +1,4 @@ java_cup_v10k-RHCLEAN.tar.bz2 java_cup-0.10 -noarch +i386 *.src.rpm diff --git a/java_cup.spec b/java_cup.spec index 9a8ffa9..3794af0 100644 --- a/java_cup.spec +++ b/java_cup.spec @@ -1,7 +1,7 @@ %define name java_cup %define version 0.10 %define pkg_version v10k -%define release 0.k.1jpp_3fc +%define release 0.k.1jpp_4fc %define section free Name: %{name} @@ -16,10 +16,14 @@ Source1: %{name}-build.xml BuildRequires: ant BuildRequires: jpackage-utils >= 0:1.5 Group: Development/Java -Buildarch: noarch Buildroot: %{_tmppath}/%{name}-%{version}-buildroot # RHEL3 and FC2 Obsoletes: cup <= 0:v10k +# libgcj aot-compiled native libraries +BuildRequires: gcc-java >= 4.0.0-0.43 +BuildRequires: java-1.4.2-gcj-compat >= 1.4.2.0-40jpp_16rh +Requires(post,postun): java-1.4.2-gcj-compat >= 1.4.2.0-40jpp_16rh +ExclusiveArch: %{ix86} x86_64 ppc alpha %description java_cup is a LALR Parser Generator for Java @@ -49,6 +53,18 @@ find . -name "*.class" -exec rm -f {} \; ant ant javadoc +gcj-dbtool -n dist/lib/%{name}-%{version}.db 64 +for jar in %{name} %{name}-runtime; do + aot-compile \ + dist/lib/$jar.jar \ + dist/lib/lib$jar-%{version}.jar.so \ + "$RPM_OPT_FLAGS -fPIC" + gcj-dbtool -f \ + dist/lib/%{name}-%{version}.db \ + dist/lib/$jar.jar \ + %{_libdir}/lib$jar-%{version}.jar.so +done + %install # jar install -d -m 755 $RPM_BUILD_ROOT%{_javadir} @@ -57,6 +73,15 @@ install -m 644 dist/lib/%{name}-runtime.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-r (cd $RPM_BUILD_ROOT%{_javadir} && for jar in *-%{version}*; do \ ln -sf ${jar} ${jar/-%{version}/}; done) +# solibs +install -d -m 755 $RPM_BUILD_ROOT%{_libdir} +install -m 755 dist/lib/lib*.jar.so $RPM_BUILD_ROOT%{_libdir} + +# gcjdb +gcjdbdir=`gcj-dbtool -p %{_libdir}`.d +install -d -m 755 $RPM_BUILD_ROOT$gcjdbdir +install -m 644 dist/lib/%{name}-%{version}.db $RPM_BUILD_ROOT$gcjdbdir + # javadoc install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} cp -pr dist/javadoc/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} @@ -65,6 +90,12 @@ cp -pr dist/javadoc/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} %clean rm -rf $RPM_BUILD_ROOT +%post +/usr/bin/rebuild-gcj-db %{_libdir} + +%postun +/usr/bin/rebuild-gcj-db %{_libdir} + %post javadoc rm -f %{_javadocdir}/%{name} ln -s %{name}-%{version} %{_javadocdir}/%{name} @@ -78,6 +109,8 @@ fi %defattr(0644,root,root,0755) %doc README LICENSE CHANGELOG %{_javadir}/* +%attr(0755,root,root) %{_libdir}/lib*.jar.so +%{_libdir}/*/*/%{name}-%{version}.db %files manual %defattr(0644,root,root,0755) @@ -89,6 +122,9 @@ fi %ghost %doc %{_javadocdir}/%{name} %changelog +* Tue Jun 28 2005 Gary Benson 1:0.10-0.k.1jpp_4fc +- BC-compile. + * Tue Jun 21 2005 Gary Benson 1:0.10-0.k.1jpp_3fc - Remove classes from the tarball.