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