]> git.pld-linux.org Git - projects/template-specs.git/blob - java.spec
96f3a0251360a100d236acc66c835d92b336dc1a
[projects/template-specs.git] / java.spec
1 #
2 # Conditional build:
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
6
7 %include        /usr/lib/rpm/macros.java
8
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
13
14 # Name without java- prefix. If it is application, not a library,
15 # just do s/srcname/name/g
16 %define         srcname         -
17 Summary:        -
18 Summary(pl.UTF-8):      -
19 Name:           -
20 Version:        -
21 Release:        0.1
22 License:        -
23 # for random java packages (applications?)
24 #Group:         Development/Languages/Java
25 # for java-XXX packages
26 Group:          Libraries/Java
27 Source0:        -
28 # Source0-md5:  -
29 URL:            -
30 %if %(locale -a | grep -q '^en_US$'; echo $?)
31 BuildRequires:  glibc-localedb-all
32 %endif
33 # allows building with alternate JDK
34 %buildrequires_jdk
35 BuildRequires:  jpackage-utils
36 BuildRequires:  rpm-javaprov
37 BuildRequires:  rpmbuild(macros) >= 1.300
38 # for %%undos macro
39 BuildRequires:  rpmbuild(macros) >= 1.553
40 %if %{with source}
41 BuildRequires:  rpmbuild(macros) >= 1.555
42 %endif
43 BuildRequires:  sed >= 4.0
44 # for %{_javadir}
45 Requires:       jpackage-utils
46 BuildArch:      noarch
47 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
48
49 %description
50
51 %description -l pl.UTF-8
52
53 %package doc
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}
58 Group:          Documentation
59
60 %description doc
61 Documentation for %{srcname}.
62
63 %description doc -l fr.UTF-8
64 Documentation pour %{srcname}.
65
66 %description doc -l it.UTF-8
67 Documentazione di %{srcname}.
68
69 %description doc -l pl.UTF-8
70 Dokumentacja do %{srcname}.
71
72 %package javadoc
73 Summary:        Online manual for %{srcname}
74 Summary(pl.UTF-8):      Dokumentacja online do %{srcname}
75 Group:          Documentation
76 Requires:       jpackage-utils
77
78 %description javadoc
79 Documentation for %{srcname}.
80
81 %description javadoc -l pl.UTF-8
82 Dokumentacja do %{srcname}.
83
84 %description javadoc -l fr.UTF-8
85 Javadoc pour %{srcname}.
86
87 %package demo
88 Summary:        Demo for %{srcname}
89 Summary(pl.UTF-8):      Pliki demonstracyjne dla pakietu %{srcname}
90 Group:          Documentation
91 Requires:       %{name} = %{epoch}:%{version}-%{release}
92
93 %description demo
94 Demonstrations and samples for %{srcname}.
95
96 %description demo -l pl.UTF-8
97 Pliki demonstracyjne i przykłady dla pakietu %{srcname}.
98
99 %package manual
100 Summary:        Tutorial for %{srcname}
101 Group:          Documentation
102
103 %description manual
104 Manual for %{srcname}.
105
106 %package source
107 Summary:        Source of %{srcname}
108 Summary(pl.UTF-8):      Źródła %{srcname}
109 Group:          Documentation
110 Requires:       jpackage-utils >= 1.555
111
112 %description source
113 Source of %{srcname}.
114
115 %description source -l pl.UTF-8
116 Źródła %{srcname}.
117
118 %prep
119 %setup -q -n %{srcname}-%{version}
120 #%%undos build.xml
121
122 %build
123 export JAVA_HOME="%{java_home}"
124
125 required_jars="jaxp_parser_impl"
126 CLASSPATH=$(build-classpath $required_jars)
127 export CLASSPATH
128
129 export LC_ALL=en_US # source code not US-ASCII
130
131 %ant
132
133 %{__make}
134
135 cd src
136 %javac -cp $CLASSPATH $(find -name '*.java')
137 %jar cf ../%{srcname}.jar $(find -name '*.class')
138 %if %{with source}
139 %jar cf ../%{srcname}.src.jar $(find -name '*.java')
140 %endif
141 cd ..
142
143 %install
144 rm -rf $RPM_BUILD_ROOT
145 install -d $RPM_BUILD_ROOT%{_javadir}
146
147 # jars
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
150
151 # for jakarta packages:
152 for a in dist/*.jar; do
153         jar=${a##*/}
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
156 done
157
158 # javadoc
159 %if %{with javadoc}
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
163 %endif
164
165 # demo
166 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
167 cp -a demo/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
168
169 # source
170 install -d $RPM_BUILD_ROOT%{_javasrcdir}
171 cp -a %{srcname}.src.jar $RPM_BUILD_ROOT%{_javasrcdir}/%{srcname}.src.jar
172
173 %clean
174 rm -rf $RPM_BUILD_ROOT
175
176 %post javadoc
177 ln -nfs %{srcname}-%{version} %{_javadocdir}/%{srcname}
178
179 %files
180 %defattr(644,root,root,755)
181 %{_javadir}/%{srcname}.jar
182 %{_javadir}/%{srcname}-%{version}.jar
183
184 %files doc
185 %defattr(644,root,root,755)
186 %doc docs/*
187
188 %if 0
189 %files demo
190 %defattr(644,root,root,755)
191 %{_examplesdir}/%{name}-%{version}
192 %endif
193
194 %if %{with javadoc}
195 %files javadoc
196 %defattr(644,root,root,755)
197 %{_javadocdir}/%{srcname}-%{version}
198 %ghost %{_javadocdir}/%{srcname}
199 %endif
200
201 %if %{with source}
202 %files source
203 %defattr(644,root,root,755)
204 %{_javasrcdir}/%{srcname}.src.jar
205 %endif
This page took 0.031165 seconds and 2 git commands to generate.