X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=java.spec;h=0ea9d7bd7669f608104cf98d97fb1bd3d0e8cb7a;hb=2f89de89a978d1a8bb6d369047a579ebda5e7854;hp=af2ba84c8eddb4f32612bf7b5892c57c7b7ab57f;hpb=69c9e90186e8167600d3e4bd01567ede9ca5676b;p=projects%2Ftemplate-specs.git diff --git a/java.spec b/java.spec index af2ba84..0ea9d7b 100644 --- a/java.spec +++ b/java.spec @@ -1,101 +1,212 @@ +# +# THIS IS TEMPLATE PACKAGE, CLEANUP UNUSED FRAGMENTS BEFORE SUBMITTING TO CVS +# +# Conditional build: +%bcond_without javadoc # don't build javadoc +%bcond_without source # don't build source jar +%bcond_without tests # don't build and run tests + +# To force building with specific JDK implementation +# without replacing currently installed /usr/bin/javac, etc. +#%%define use_jdk java-gcj-compat +#%%buildrequires_jdk +#BuildRequires: rpmbuild(macros) >= 1.556 + +# Name without java- prefix. If it is application, not a library, +# just do s/srcname/name/g +%define srcname - +%include /usr/lib/rpm/macros.java Summary: - -Name: - +Summary(pl.UTF-8): - +Name: java-%{srcname} Version: - Release: 0.1 License: - -Group: Development/Languages/Java +# for random java packages (applications?) +#Group: Development/Languages/Java +# for java-XXX packages +Group: Libraries/Java Source0: - # Source0-md5: - URL: - +# this is needed for the LC_ALL=en_US in build part dependency +%if %(locale -a | grep -q '^en_US$'; echo $?) +BuildRequires: glibc-localedb-all +%endif BuildRequires: jpackage-utils +BuildRequires: rpm-javaprov BuildRequires: rpmbuild(macros) >= 1.300 +# for %%undos macro +BuildRequires: rpmbuild(macros) >= 1.553 +%if %{with source} +BuildRequires: rpmbuild(macros) >= 1.555 +%endif +BuildRequires: sed >= 4.0 +# for %{_javadir} Requires: jpackage-utils BuildArch: noarch -ExclusiveArch: i586 i686 pentium3 pentium4 athlon %{x8664} noarch BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description +%description -l pl.UTF-8 + %package doc -Summary: Manual for %{name} -Summary(fr.UTF-8): Documentation pour %{name} -Summary(it.UTF-8): Documentazione di %{name} -Summary(pl.UTF-8): Podręcznik dla %{name}a -Group: Development/Languages/Java +Summary: Manual for %{srcname} +Summary(fr.UTF-8): Documentation pour %{srcname} +Summary(it.UTF-8): Documentazione di %{srcname} +Summary(pl.UTF-8): Podręcznik dla %{srcname} +Group: Documentation +# noarch subpackages only when building with rpm5 +%if "%{_rpmversion}" >= "5" +BuildArch: noarch +%endif %description doc -Documentation for %{name}. +Documentation for %{srcname}. %description doc -l fr.UTF-8 -Documentation pour %{name}. +Documentation pour %{srcname}. %description doc -l it.UTF-8 -Documentazione di %{name}. +Documentazione di %{srcname}. %description doc -l pl.UTF-8 -Dokumentacja do %{name}a. +Dokumentacja do %{srcname}. %package javadoc -Summary: Online manual for %{name} -Summary(pl.UTF-8): Dokumentacja online do %{name} +Summary: Online manual for %{srcname} +Summary(pl.UTF-8): Dokumentacja online do %{srcname} Group: Documentation Requires: jpackage-utils %description javadoc -Documentation for %{name} - +Documentation for %{srcname}. %description javadoc -l pl.UTF-8 -Dokumentacja do %{name}a - +Dokumentacja do %{srcname}. + +%description javadoc -l fr.UTF-8 +Javadoc pour %{srcname}. + +%package demo +Summary: Demo for %{srcname} +Summary(pl.UTF-8): Pliki demonstracyjne dla pakietu %{srcname} +Group: Documentation +Requires: %{name} = %{epoch}:%{version}-%{release} + +%description demo +Demonstrations and samples for %{srcname}. + +%description demo -l pl.UTF-8 +Pliki demonstracyjne i przykłady dla pakietu %{srcname}. + +%package manual +Summary: Tutorial for %{srcname} +Group: Documentation + +%description manual +Manual for %{srcname}. + +%package source +Summary: Source code of %{srcname} +Summary(pl.UTF-8): Kod źródłowy %{srcname} +Group: Documentation +Requires: jpackage-utils >= 1.7.5-2 + +%description source +Source code of %{srcname}. + +%description source -l pl.UTF-8 +Kod źródłowy %{srcname}. %prep -%setup -q +%setup -q -n %{srcname}-%{version} +#%%undos build.xml %build export JAVA_HOME="%{java_home}" required_jars="jaxp_parser_impl" -export CLASSPATH=$(/usr/bin/build-classpath $required_jars) +CLASSPATH=$(build-classpath $required_jars) +export CLASSPATH + +# source code not US-ASCII +export LC_ALL=en_US %ant + %{__make} +# if you need to assemble .jar yourself +cd src +%javac -cp $CLASSPATH $(find -name '*.java') +%jar cf ../%{srcname}.jar $(find -name '*.class') +%if %{with source} +%jar cf ../%{srcname}.src.jar $(find -name '*.java') +%endif +cd .. + %install rm -rf $RPM_BUILD_ROOT + +# jars install -d $RPM_BUILD_ROOT%{_javadir} -# install jar -cp -a dist/%{name}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar -ln -s %{name}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}.jar +cp -p dist/%{srcname}.jar $RPM_BUILD_ROOT%{_javadir}/%{srcname}-%{version}.jar +ln -s %{srcname}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{srcname}.jar # for jakarta packages: for a in dist/*.jar; do jar=${a##*/} - cp -a dist/$jar $RPM_BUILD_ROOT%{_javadir}/${jar%%.jar}-%{version}.jar + cp -p dist/$jar $RPM_BUILD_ROOT%{_javadir}/${jar%%.jar}-%{version}.jar ln -s ${jar%%.jar}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/$jar done # javadoc -install -d $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} -cp -pr build/javadocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} +%if %{with javadoc} +install -d $RPM_BUILD_ROOT%{_javadocdir}/%{srcname}-%{version} +cp -a dist/docs/api/* $RPM_BUILD_ROOT%{_javadocdir}/%{srcname}-%{version} +ln -s %{srcname}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{srcname} # ghost symlink +%endif + +# demo +install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} +cp -a demo/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} + +# source +install -d $RPM_BUILD_ROOT%{_javasrcdir} +cp -a %{srcname}.src.jar $RPM_BUILD_ROOT%{_javasrcdir}/%{srcname}.src.jar %clean rm -rf $RPM_BUILD_ROOT %post javadoc -rm -f %{_javadocdir}/%{name} -ln -s %{name}-%{version} %{_javadocdir}/%{name} - -%postun javadoc -if [ "$1" = "0" ]; then - rm -f %{_javadocdir}/%{name} -fi +ln -nfs %{srcname}-%{version} %{_javadocdir}/%{srcname} %files %defattr(644,root,root,755) +%{_javadir}/%{srcname}-%{version}.jar +%{_javadir}/%{srcname}.jar %files doc %defattr(644,root,root,755) %doc docs/* +%if 0 +%files demo +%defattr(644,root,root,755) +%{_examplesdir}/%{name}-%{version} +%endif + +%if %{with javadoc} %files javadoc %defattr(644,root,root,755) -%{_javadocdir}/%{name}-%{version} +%{_javadocdir}/%{srcname}-%{version} +%ghost %{_javadocdir}/%{srcname} +%endif + +%if %{with source} +%files source +%defattr(644,root,root,755) +%{_javasrcdir}/%{srcname}.src.jar +%endif