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