]> git.pld-linux.org Git - projects/template-specs.git/blob - java.spec
- really stop including rpm macros everywhere
[projects/template-specs.git] / java.spec
1 #
2 # THIS IS TEMPLATE PACKAGE, CLEANUP UNUSED FRAGMENTS BEFORE SUBMITTING TO CVS
3 #
4 # Conditional build:
5 %bcond_without  javadoc         # don't build javadoc
6 %bcond_without  source          # don't build source jar
7 %bcond_without  tests           # don't build and run tests
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_jdk
13 #BuildRequires: rpmbuild(macros) >= 1.556
14
15 # Name without java- prefix. If it is application, not a library,
16 # just do s/srcname/name/g
17 %define         srcname         -
18 Summary:        -
19 Summary(pl.UTF-8):      -
20 Name:           java-%{srcname}
21 Version:        -
22 Release:        0.1
23 License:        -
24 # for random java packages (applications?)
25 #Group:         Development/Languages/Java
26 # for java-XXX packages
27 Group:          Libraries/Java
28 Source0:        -
29 # Source0-md5:  -
30 URL:            -
31 # this is needed for the LC_ALL=en_US in build part dependency
32 %if %(locale -a | grep -q '^en_US$'; echo $?)
33 BuildRequires:  glibc-localedb-all
34 %endif
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 # noarch subpackages only when supported by rpm
60 %if "%{_rpmversion}" >= "4.6"
61 BuildArch:      noarch
62 %endif
63
64 %description doc
65 Documentation for %{srcname}.
66
67 %description doc -l fr.UTF-8
68 Documentation pour %{srcname}.
69
70 %description doc -l it.UTF-8
71 Documentazione di %{srcname}.
72
73 %description doc -l pl.UTF-8
74 Dokumentacja do %{srcname}.
75
76 %package javadoc
77 Summary:        Online manual for %{srcname}
78 Summary(pl.UTF-8):      Dokumentacja online do %{srcname}
79 Group:          Documentation
80 Requires:       jpackage-utils
81
82 %description javadoc
83 Documentation for %{srcname}.
84
85 %description javadoc -l pl.UTF-8
86 Dokumentacja do %{srcname}.
87
88 %description javadoc -l fr.UTF-8
89 Javadoc pour %{srcname}.
90
91 %package demo
92 Summary:        Demo for %{srcname}
93 Summary(pl.UTF-8):      Pliki demonstracyjne dla pakietu %{srcname}
94 Group:          Documentation
95 Requires:       %{name} = %{epoch}:%{version}-%{release}
96
97 %description demo
98 Demonstrations and samples for %{srcname}.
99
100 %description demo -l pl.UTF-8
101 Pliki demonstracyjne i przykłady dla pakietu %{srcname}.
102
103 %package manual
104 Summary:        Tutorial for %{srcname}
105 Group:          Documentation
106
107 %description manual
108 Manual for %{srcname}.
109
110 %package source
111 Summary:        Source code of %{srcname}
112 Summary(pl.UTF-8):      Kod źródłowy %{srcname}
113 Group:          Documentation
114 Requires:       jpackage-utils >= 1.7.5-2
115
116 %description source
117 Source code of %{srcname}.
118
119 %description source -l pl.UTF-8
120 Kod źródłowy %{srcname}.
121
122 %prep
123 %setup -q -n %{srcname}-%{version}
124 #%%undos build.xml
125
126 %build
127 export JAVA_HOME="%{java_home}"
128
129 required_jars="jaxp_parser_impl"
130 CLASSPATH=$(build-classpath $required_jars)
131 export CLASSPATH
132
133 # source code not US-ASCII
134 export LC_ALL=en_US
135
136 %ant
137
138 %{__make}
139
140 # if you need to assemble .jar yourself
141 cd src
142 %javac -cp $CLASSPATH $(find -name '*.java')
143 %jar cf ../%{srcname}.jar $(find -name '*.class')
144 %if %{with source}
145 %jar cf ../%{srcname}.src.jar $(find -name '*.java')
146 %endif
147 cd ..
148
149 %install
150 rm -rf $RPM_BUILD_ROOT
151
152 # jars
153 install -d $RPM_BUILD_ROOT%{_javadir}
154 cp -p dist/%{srcname}.jar $RPM_BUILD_ROOT%{_javadir}/%{srcname}-%{version}.jar
155 ln -s %{srcname}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{srcname}.jar
156
157 # for jakarta packages:
158 for a in dist/*.jar; do
159         jar=${a##*/}
160         cp -p dist/$jar $RPM_BUILD_ROOT%{_javadir}/${jar%%.jar}-%{version}.jar
161         ln -s ${jar%%.jar}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/$jar
162 done
163
164 # javadoc
165 %if %{with javadoc}
166 install -d $RPM_BUILD_ROOT%{_javadocdir}/%{srcname}-%{version}
167 cp -a dist/docs/api/* $RPM_BUILD_ROOT%{_javadocdir}/%{srcname}-%{version}
168 ln -s %{srcname}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{srcname} # ghost symlink
169 %endif
170
171 # demo
172 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
173 cp -a demo/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
174
175 # source
176 install -d $RPM_BUILD_ROOT%{_javasrcdir}
177 cp -a %{srcname}.src.jar $RPM_BUILD_ROOT%{_javasrcdir}/%{srcname}.src.jar
178
179 %clean
180 rm -rf $RPM_BUILD_ROOT
181
182 %post javadoc
183 ln -nfs %{srcname}-%{version} %{_javadocdir}/%{srcname}
184
185 %files
186 %defattr(644,root,root,755)
187 %{_javadir}/%{srcname}-%{version}.jar
188 %{_javadir}/%{srcname}.jar
189
190 %files doc
191 %defattr(644,root,root,755)
192 %doc docs/*
193
194 %if 0
195 %files demo
196 %defattr(644,root,root,755)
197 %{_examplesdir}/%{name}-%{version}
198 %endif
199
200 %if %{with javadoc}
201 %files javadoc
202 %defattr(644,root,root,755)
203 %{_javadocdir}/%{srcname}-%{version}
204 %ghost %{_javadocdir}/%{srcname}
205 %endif
206
207 %if %{with source}
208 %files source
209 %defattr(644,root,root,755)
210 %{_javasrcdir}/%{srcname}.src.jar
211 %endif
This page took 0.070944 seconds and 4 git commands to generate.