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