]> git.pld-linux.org Git - projects/template-specs.git/blame - java.spec
- clarified (hope so) use of %buildrequires_jdk macro
[projects/template-specs.git] / java.spec
CommitLineData
fe29cf2a
ER
1#
2# Conditional build:
3%bcond_without javadoc # don't build javadoc
f9590397 4%bcond_without source # don't build source jar
fe29cf2a 5%bcond_without tests # don't build and run tests
2bb87ba0 6
e508410e 7%include /usr/lib/rpm/macros.java
2bb87ba0 8
b45ad539
JK
9# To force building with specific JDK implementation
10# without replacing currently installed /usr/bin/javac, etc.
11#%%define use_jdk java-gcj-compat
05bd1a5f 12#%%buildrequires_jdk
4e45fb88 13#BuildRequires: rpmbuild(macros) >= 1.556
b45ad539 14
ff22597d 15# Name without java- prefix. If it is application, not a library,
2bb87ba0 16# just do s/srcname/name/g
17%define srcname -
a66eeaf5 18Summary: -
ff810589 19Summary(pl.UTF-8): -
a66eeaf5
ER
20Name: -
21Version: -
22Release: 0.1
23License: -
2ff0a604
ER
24# for random java packages (applications?)
25#Group: Development/Languages/Java
26# for java-XXX packages
27Group: Libraries/Java
a66eeaf5
ER
28Source0: -
29# Source0-md5: -
30URL: -
fe29cf2a
ER
31%if %(locale -a | grep -q '^en_US$'; echo $?)
32BuildRequires: glibc-localedb-all
33%endif
a66eeaf5 34BuildRequires: jpackage-utils
e508410e 35BuildRequires: rpm-javaprov
a66eeaf5 36BuildRequires: rpmbuild(macros) >= 1.300
2d726deb 37# for %%undos macro
e504df83 38BuildRequires: rpmbuild(macros) >= 1.553
f9590397 39%if %{with source}
40BuildRequires: rpmbuild(macros) >= 1.555
41%endif
2d726deb 42BuildRequires: sed >= 4.0
f53b3a54 43# for %{_javadir}
a66eeaf5
ER
44Requires: jpackage-utils
45BuildArch: noarch
a66eeaf5
ER
46BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
47
48%description
49
ff810589 50%description -l pl.UTF-8
51
a66eeaf5 52%package doc
57c7d140
ER
53Summary: Manual for %{srcname}
54Summary(fr.UTF-8): Documentation pour %{srcname}
55Summary(it.UTF-8): Documentazione di %{srcname}
56Summary(pl.UTF-8): Podręcznik dla %{srcname}
e746d14f 57Group: Documentation
a66eeaf5
ER
58
59%description doc
57c7d140 60Documentation for %{srcname}.
a66eeaf5 61
9be49f18 62%description doc -l fr.UTF-8
57c7d140 63Documentation pour %{srcname}.
a66eeaf5 64
9be49f18 65%description doc -l it.UTF-8
57c7d140 66Documentazione di %{srcname}.
a66eeaf5 67
9be49f18 68%description doc -l pl.UTF-8
57c7d140 69Dokumentacja do %{srcname}.
a66eeaf5
ER
70
71%package javadoc
57c7d140
ER
72Summary: Online manual for %{srcname}
73Summary(pl.UTF-8): Dokumentacja online do %{srcname}
a66eeaf5
ER
74Group: Documentation
75Requires: jpackage-utils
76
77%description javadoc
57c7d140 78Documentation for %{srcname}.
a66eeaf5 79
9be49f18 80%description javadoc -l pl.UTF-8
57c7d140 81Dokumentacja do %{srcname}.
a66eeaf5 82
d8d734b3 83%description javadoc -l fr.UTF-8
57c7d140 84Javadoc pour %{srcname}.
fe29cf2a 85
e52ae96b 86%package demo
57c7d140
ER
87Summary: Demo for %{srcname}
88Summary(pl.UTF-8): Pliki demonstracyjne dla pakietu %{srcname}
e5571564 89Group: Documentation
e52ae96b
ER
90Requires: %{name} = %{epoch}:%{version}-%{release}
91
92%description demo
57c7d140 93Demonstrations and samples for %{srcname}.
e52ae96b
ER
94
95%description demo -l pl.UTF-8
57c7d140 96Pliki demonstracyjne i przykłady dla pakietu %{srcname}.
e52ae96b 97
8550e7db 98%package manual
57c7d140 99Summary: Tutorial for %{srcname}
8550e7db
ER
100Group: Documentation
101
102%description manual
57c7d140 103Manual for %{srcname}.
8550e7db 104
f9590397 105%package source
517b033e 106Summary: Source code of %{srcname}
107Summary(pl.UTF-8): Kod źródłowy %{srcname}
f9590397 108Group: Documentation
517b033e 109Requires: jpackage-utils >= 1.7.5-2
f9590397 110
111%description source
517b033e 112Source code of %{srcname}.
f9590397 113
114%description source -l pl.UTF-8
517b033e 115Kod źródłowy %{srcname}.
f9590397 116
a66eeaf5 117%prep
ba6b2d69 118%setup -q -n %{srcname}-%{version}
2d726deb 119#%%undos build.xml
a66eeaf5
ER
120
121%build
122export JAVA_HOME="%{java_home}"
123
124required_jars="jaxp_parser_impl"
7ed89187
ER
125CLASSPATH=$(build-classpath $required_jars)
126export CLASSPATH
a66eeaf5 127
fe29cf2a
ER
128export LC_ALL=en_US # source code not US-ASCII
129
a66eeaf5 130%ant
3c758008 131
a66eeaf5
ER
132%{__make}
133
3c758008 134cd src
135%javac -cp $CLASSPATH $(find -name '*.java')
136%jar cf ../%{srcname}.jar $(find -name '*.class')
f9590397 137%if %{with source}
138%jar cf ../%{srcname}.src.jar $(find -name '*.java')
139%endif
140cd ..
3c758008 141
a66eeaf5
ER
142%install
143rm -rf $RPM_BUILD_ROOT
144install -d $RPM_BUILD_ROOT%{_javadir}
a6aeca01
ER
145
146# jars
2bb87ba0 147cp -a dist/%{srcname}.jar $RPM_BUILD_ROOT%{_javadir}/%{srcname}-%{version}.jar
148ln -s %{srcname}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{srcname}.jar
2116b11c 149
69c9e901
ER
150# for jakarta packages:
151for a in dist/*.jar; do
152 jar=${a##*/}
153 cp -a dist/$jar $RPM_BUILD_ROOT%{_javadir}/${jar%%.jar}-%{version}.jar
154 ln -s ${jar%%.jar}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/$jar
155done
156
a66eeaf5 157# javadoc
fe29cf2a 158%if %{with javadoc}
2bb87ba0 159install -d $RPM_BUILD_ROOT%{_javadocdir}/%{srcname}-%{version}
160cp -a dist/docs/api/* $RPM_BUILD_ROOT%{_javadocdir}/%{srcname}-%{version}
161ln -s %{srcname}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{srcname} # ghost symlink
fe29cf2a 162%endif
a66eeaf5 163
faf64196
ER
164# demo
165install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
166cp -a demo/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
167
f9590397 168# source
169install -d $RPM_BUILD_ROOT%{_javasrcdir}
170cp -a %{srcname}.src.jar $RPM_BUILD_ROOT%{_javasrcdir}/%{srcname}.src.jar
171
a66eeaf5
ER
172%clean
173rm -rf $RPM_BUILD_ROOT
174
175%post javadoc
2bb87ba0 176ln -nfs %{srcname}-%{version} %{_javadocdir}/%{srcname}
a66eeaf5
ER
177
178%files
179%defattr(644,root,root,755)
d0b4e73c 180%{_javadir}/%{srcname}.jar
181%{_javadir}/%{srcname}-%{version}.jar
a66eeaf5
ER
182
183%files doc
184%defattr(644,root,root,755)
185%doc docs/*
186
fe29cf2a
ER
187%if 0
188%files demo
189%defattr(644,root,root,755)
190%{_examplesdir}/%{name}-%{version}
191%endif
d2d1af39 192
fe29cf2a 193%if %{with javadoc}
a66eeaf5
ER
194%files javadoc
195%defattr(644,root,root,755)
2bb87ba0 196%{_javadocdir}/%{srcname}-%{version}
197%ghost %{_javadocdir}/%{srcname}
fe29cf2a 198%endif
f9590397 199
200%if %{with source}
201%files source
202%defattr(644,root,root,755)
203%{_javasrcdir}/%{srcname}.src.jar
204%endif
This page took 0.080672 seconds and 4 git commands to generate.