3 %bcond_without javadoc # don't build javadoc
4 %bcond_without source # don't build source jar
5 %bcond_without tests # don't build and run tests
7 %include /usr/lib/rpm/macros.java
9 # To force building with specific JDK implementation
10 # without replacing currently installed /usr/bin/javac, etc.
11 #%%define use_jdk java-gcj-compat
12 #BuildRequires: rpmbuild(macros) >= 1.556
14 # Name without java- prefix. If it is application, not a library,
15 # just do s/srcname/name/g
23 # for random java packages (applications?)
24 #Group: Development/Languages/Java
25 # for java-XXX packages
30 %if %(locale -a | grep -q '^en_US$'; echo $?)
31 BuildRequires: glibc-localedb-all
33 # allows building with alternate JDK
35 BuildRequires: jpackage-utils
36 BuildRequires: rpm-javaprov
37 BuildRequires: rpmbuild(macros) >= 1.300
39 BuildRequires: rpmbuild(macros) >= 1.553
41 BuildRequires: rpmbuild(macros) >= 1.555
43 BuildRequires: sed >= 4.0
45 Requires: jpackage-utils
47 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
51 %description -l pl.UTF-8
54 Summary: Manual for %{srcname}
55 Summary(fr.UTF-8): Documentation pour %{srcname}
56 Summary(it.UTF-8): Documentazione di %{srcname}
57 Summary(pl.UTF-8): Podręcznik dla %{srcname}
61 Documentation for %{srcname}.
63 %description doc -l fr.UTF-8
64 Documentation pour %{srcname}.
66 %description doc -l it.UTF-8
67 Documentazione di %{srcname}.
69 %description doc -l pl.UTF-8
70 Dokumentacja do %{srcname}.
73 Summary: Online manual for %{srcname}
74 Summary(pl.UTF-8): Dokumentacja online do %{srcname}
76 Requires: jpackage-utils
79 Documentation for %{srcname}.
81 %description javadoc -l pl.UTF-8
82 Dokumentacja do %{srcname}.
84 %description javadoc -l fr.UTF-8
85 Javadoc pour %{srcname}.
88 Summary: Demo for %{srcname}
89 Summary(pl.UTF-8): Pliki demonstracyjne dla pakietu %{srcname}
91 Requires: %{name} = %{epoch}:%{version}-%{release}
94 Demonstrations and samples for %{srcname}.
96 %description demo -l pl.UTF-8
97 Pliki demonstracyjne i przykłady dla pakietu %{srcname}.
100 Summary: Tutorial for %{srcname}
104 Manual for %{srcname}.
107 Summary: Source of %{srcname}
108 Summary(pl.UTF-8): Źródła %{srcname}
110 Requires: jpackage-utils >= 1.555
113 Source of %{srcname}.
115 %description source -l pl.UTF-8
119 %setup -q -n %{srcname}-%{version}
123 export JAVA_HOME="%{java_home}"
125 required_jars="jaxp_parser_impl"
126 CLASSPATH=$(build-classpath $required_jars)
129 export LC_ALL=en_US # source code not US-ASCII
136 %javac -cp $CLASSPATH $(find -name '*.java')
137 %jar cf ../%{srcname}.jar $(find -name '*.class')
139 %jar cf ../%{srcname}.src.jar $(find -name '*.java')
144 rm -rf $RPM_BUILD_ROOT
145 install -d $RPM_BUILD_ROOT%{_javadir}
148 cp -a dist/%{srcname}.jar $RPM_BUILD_ROOT%{_javadir}/%{srcname}-%{version}.jar
149 ln -s %{srcname}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{srcname}.jar
151 # for jakarta packages:
152 for a in dist/*.jar; do
154 cp -a dist/$jar $RPM_BUILD_ROOT%{_javadir}/${jar%%.jar}-%{version}.jar
155 ln -s ${jar%%.jar}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/$jar
160 install -d $RPM_BUILD_ROOT%{_javadocdir}/%{srcname}-%{version}
161 cp -a dist/docs/api/* $RPM_BUILD_ROOT%{_javadocdir}/%{srcname}-%{version}
162 ln -s %{srcname}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{srcname} # ghost symlink
166 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
167 cp -a demo/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
170 install -d $RPM_BUILD_ROOT%{_javasrcdir}
171 cp -a %{srcname}.src.jar $RPM_BUILD_ROOT%{_javasrcdir}/%{srcname}.src.jar
174 rm -rf $RPM_BUILD_ROOT
177 ln -nfs %{srcname}-%{version} %{_javadocdir}/%{srcname}
180 %defattr(644,root,root,755)
181 %{_javadir}/%{srcname}.jar
182 %{_javadir}/%{srcname}-%{version}.jar
185 %defattr(644,root,root,755)
190 %defattr(644,root,root,755)
191 %{_examplesdir}/%{name}-%{version}
196 %defattr(644,root,root,755)
197 %{_javadocdir}/%{srcname}-%{version}
198 %ghost %{_javadocdir}/%{srcname}
203 %defattr(644,root,root,755)
204 %{_javasrcdir}/%{srcname}.src.jar