]> git.pld-linux.org Git - packages/icedtea8.git/blob - icedtea8.spec
cefa5fbd236bbceac2d174b85df6c0f4a2ebd931
[packages/icedtea8.git] / icedtea8.spec
1 #
2 # IMPORTANT:
3 #       when upgrading remember to redownload all sources from the upstream
4 #       URLs and update MD5 sums, as there is no change in the file names
5 #       and distfiles would provide outdated files
6 #
7
8 # TODO:
9 # - install .ttf fonts (same as in sun-java-base-jre-X11 package) or configure
10 #   it to use system fonts (is it possible?).
11 # - desktop files, icons, etc. Some of these are included in the source root dir
12 # - maybe build Shark VM, at least on i486, as the zero-assembly VM is very slow
13 # - pass %{rpmcflags} to build
14
15 %bcond_with bootstrap   # build a bootstrap version, using icedtea6
16 %bcond_without nss      # don't use NSS
17 %bcond_without cacerts  # don't include the default CA certificates
18 %bcond_without sunec    # enable Sun EC crypt lib
19
20 %if %{with bootstrap}
21 %define         use_jdk openjdk8
22 %else
23 %define         use_jdk icedtea8
24 %endif
25
26 # class data version seen with file(1) that this jvm is able to load
27 %define         _classdataversion 52.0
28 # JDK/JRE version, as returned with `java -version`, '_' replaced with '.'
29 %define         _jdkversion 1.8.0.151
30
31 Summary:        OpenJDK and GNU Classpath code
32 Summary(pl.UTF-8):      Kod OpenJDK i GNU Classpath
33 Name:           icedtea8
34 Version:        3.6.0
35 Release:        2
36 License:        GPL v2
37 Group:          Development/Languages/Java
38 Source0:        http://icedtea.wildebeest.org/download/source/icedtea-%{version}.tar.gz
39 # Source0-md5:  9e806e6f724fb5aa74cf7c981a8f3dc9
40 Source1:        http://icedtea.wildebeest.org/download/drops/icedtea8/%{version}/openjdk.tar.xz
41 # Source1-md5:  37bc76dcf76855ae20cdea8b4b3eaf34
42 Source2:        http://icedtea.wildebeest.org/download/drops/icedtea8/%{version}/corba.tar.xz
43 # Source2-md5:  a7fbb5da0c62ba76fa931e21165ea5b1
44 Source3:        http://icedtea.wildebeest.org/download/drops/icedtea8/%{version}/jaxp.tar.xz
45 # Source3-md5:  897c3588947c5310028505485111bd87
46 Source4:        http://icedtea.wildebeest.org/download/drops/icedtea8/%{version}/jaxws.tar.xz
47 # Source4-md5:  d335e7198f15134d9a6f05e5325d41ae
48 Source5:        http://icedtea.wildebeest.org/download/drops/icedtea8/%{version}/jdk.tar.xz
49 # Source5-md5:  4ad0e6370c59d85c2b4578334a6a2c62
50 Source6:        http://icedtea.wildebeest.org/download/drops/icedtea8/%{version}/langtools.tar.xz
51 # Source6-md5:  45d8775e1eaf78f422591bde7e459c38
52 Source7:        http://icedtea.wildebeest.org/download/drops/icedtea8/%{version}/hotspot.tar.xz
53 # Source7-md5:  7f9248ac4155b3dd134ecf34f7fe359c
54 Source8:        http://icedtea.wildebeest.org/download/drops/icedtea8/%{version}/nashorn.tar.xz
55 # Source8-md5:  90ec301be3b9c016abc5e6804f7efbeb
56 Source10:       make-cacerts.sh
57 # 0-99 patches for the IcedTea files
58 Patch0:         %{name}-x32-ac.patch
59 Patch1:         %{name}-heimdal.patch
60 # 100-... patches applied to the extracted sources
61 Patch100:       %{name}-libpath.patch
62 Patch101:       %{name}-x32.patch
63 Patch102:       openjdk-heimdal.patch
64 URL:            http://icedtea.classpath.org/wiki/Main_Page
65 BuildRequires:  alsa-lib-devel
66 BuildRequires:  ant
67 BuildRequires:  autoconf
68 BuildRequires:  automake
69 BuildRequires:  bash
70 %{?with_cacerts:BuildRequires:  ca-certificates-update}
71 BuildRequires:  cups-devel
72 BuildRequires:  /usr/bin/jar
73 BuildRequires:  freetype-devel >= 2.3
74 BuildRequires:  gawk
75 BuildRequires:  giflib-devel >= 5.1
76 BuildRequires:  glib2-devel
77 BuildRequires:  glibc-misc
78 BuildRequires:  gtk+2-devel
79 BuildRequires:  heimdal-devel
80 BuildRequires:  java-rhino
81 BuildRequires:  java-xalan
82 %buildrequires_jdk
83 BuildRequires:  lcms2-devel
84 BuildRequires:  libffi-devel
85 BuildRequires:  libjpeg-devel >= 6b
86 BuildRequires:  pcsc-lite-devel
87 BuildRequires:  libpng-devel
88 BuildRequires:  libsctp-devel
89 BuildRequires:  libstdc++-static
90 BuildRequires:  lsb-release
91 %{?with_nss:BuildRequires:      nss-devel >= 1:3.17.2-5}
92 BuildRequires:  paxctl
93 BuildRequires:  pkgconfig
94 BuildRequires:  rpmbuild(macros) >= 1.557
95 BuildRequires:  systemtap-sdt-devel >= 3.2
96 BuildRequires:  unzip
97 BuildRequires:  util-linux
98 BuildRequires:  xorg-lib-libX11-devel
99 BuildRequires:  xorg-lib-libXau-devel
100 BuildRequires:  xorg-lib-libXcomposite-devel
101 BuildRequires:  xorg-lib-libXdmcp-devel
102 BuildRequires:  xorg-lib-libXext-devel
103 BuildRequires:  xorg-lib-libXi-devel
104 BuildRequires:  xorg-lib-libXinerama-devel
105 BuildRequires:  xorg-lib-libXp-devel
106 BuildRequires:  xorg-lib-libXrender-devel
107 BuildRequires:  xorg-lib-libXt-devel
108 BuildRequires:  xorg-lib-libXtst-devel
109 BuildRequires:  xorg-proto-printproto-devel
110 BuildRequires:  xorg-proto-xproto-devel
111 BuildRequires:  zip
112 BuildRequires:  zlib-devel
113 Requires:       %{name}-appletviewer = %{version}-%{release}
114 Requires:       %{name}-jdk = %{version}-%{release}
115 Suggests:       %{name}-jre-X11
116 Suggests:       icedtea-web
117 Obsoletes:      icedtea6
118 Obsoletes:      icedtea7
119 Obsoletes:      java5-sun
120 Obsoletes:      java5-sun-jre
121 Obsoletes:      java5-sun-jre-jdbc
122 Obsoletes:      java5-sun-jre-X11
123 Obsoletes:      java5-sun-tools
124 Obsoletes:      java-gcj-compat
125 Obsoletes:      java-gcj-compat-devel
126 Obsoletes:      java-sun
127 Obsoletes:      java-sun-demos
128 Obsoletes:      java-sun-jre
129 Obsoletes:      java-sun-jre-alsa
130 Obsoletes:      java-sun-jre-jdbc
131 Obsoletes:      java-sun-jre-X11
132 Obsoletes:      java-sun-tools
133 Obsoletes:      openjdk8
134 Obsoletes:      oracle-java7
135 Obsoletes:      oracle-java7-jre
136 Obsoletes:      oracle-java7-jre-alsa
137 Obsoletes:      oracle-java7-jre-jdbc
138 Obsoletes:      oracle-java7-jre-X11
139 Obsoletes:      oracle-java7-tools
140 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
141
142 %define         dstreldir       %{name}-%{version}
143 %define         dstdir          %{_jvmdir}/%{dstreldir}
144 %define         jrereldir       %{dstreldir}/jre
145 %define         jredir          %{_jvmdir}/%{jrereldir}
146 %define         jvmjardir       %{_jvmjardir}/%{name}-%{version}
147
148 %ifarch %{x8664}
149 %define         jre_arch        amd64
150 %endif
151 %ifarch %{ix86}
152 %define         jre_arch        i386
153 %endif
154 %ifarch x32
155 %define         jre_arch        x32
156 %endif
157
158 # to break artificial subpackage dependency loops
159 %define         _noautoreq      'libmawt.so' java\\\\(ClassDataVersion\\\\)
160
161 %description
162 The IcedTea project provides a harness to build the source code from
163 http://openjdk.java.net/ using Free Software build tools and provides
164 replacements libraries for the binary plugs with code from the GNU
165 Classpath project.
166
167 This is a meta-package which provides, by its dependencies, all the
168 IcedTea6 components including the OpenJDK, Java 6 developement kit and
169 runtime environment.
170
171 %description -l pl.UTF-8
172 Projekt IcedTea daje możliwość kompilacji kodu źródłowego z
173 http://openjdk.java.net/ przy użyciu wolnodostępnych narzędzi oraz
174 dostarcza zamienniki biblioteczne binarnych wtyczek pochodzące z
175 projektu GNU Classpath.
176
177 To jest meta-pakiet, który, za pośrednictwem zależności, dostarcza
178 wszystkie komponenty IcedTea7, w tym środowisko programistyczne
179 (OpenJDK) i uruchomieniowe (JRE).
180
181 %package jdk
182 Summary:        OpenJDK and GNU Classpath code - software development kit
183 Summary(pl.UTF-8):      Kod OpenJDK i GNU Classpath - środowisko programistyczne
184 Group:          Development/Languages/Java
185 Requires:       %{name}-jar = %{version}-%{release}
186 Requires:       %{name}-jdk-base = %{version}-%{release}
187 Requires:       %{name}-jre = %{version}-%{release}
188 Provides:       j2sdk = %{_jdkversion}
189 Provides:       jdk = %{_jdkversion}
190 Obsoletes:      blackdown-java-sdk
191 Obsoletes:      ibm-java
192 Obsoletes:      icedtea6-jdk
193 Obsoletes:      icedtea7-jdk
194 Obsoletes:      java-blackdown
195 Obsoletes:      java-gcj-compat-devel
196 Obsoletes:      java-sun
197 Obsoletes:      java5-sun
198 Obsoletes:      openjdk8-jdk
199 Obsoletes:      oracle-java7
200 Obsoletes:      jdk
201 Obsoletes:      kaffe
202
203 %description jdk
204 This package symlinks OpenJDK development tools provided by
205 %{name}-jdk-base to system-wide directories like %{_bindir}, making
206 IcedTea6 default JDK.
207
208 %description jdk -l pl.UTF-8
209 Ten pakiet tworzy symboliczne dowiązania do narzędzi programistycznych
210 OpenJDK, dostarczanych przez pakiet %{name}-jdk-base, w standardowych
211 systemowych ścieżkach takich jak %{_bindir}, sprawiając tym samym, że
212 IcedTea6 staje się domyślnym JDK w systemie.
213
214 %package jdk-base
215 Summary:        OpenJDK and GNU Classpath code - software development kit
216 Summary(pl.UTF-8):      Kod OpenJDK i GNU Classpath - środowisko programistyczne
217 Group:          Development/Languages/Java
218 Requires:       %{name}-jre-base = %{version}-%{release}
219 Requires:       jpackage-utils >= 0:1.7.5-4
220 Provides:       jdk(%{name})
221
222 %description jdk-base
223 OpenJDK development tools built using free software only.
224
225 %description jdk-base -l pl.UTF-8
226 OpenJDK skompilowane wyłącznie przy użyciu wolnego oprogramowania.
227
228 %package jre
229 Summary:        OpenJDK and GNU Classpath code - runtime environment
230 Summary(pl.UTF-8):      Kod OpenJDK i GNU Classpath - środowisko uruchomieniowe
231 Group:          Development/Languages/Java
232 Requires:       %{name}-jre-base = %{version}-%{release}
233 Requires:       nss >= 1:3.13.4
234 # Require zoneinfo data provided by java-tzdata subpackage.
235 Requires:       java-tzdata
236 Provides:       java
237 Provides:       java(ClassDataVersion) = %{_classdataversion}
238 Provides:       java(jaas) = %{version}
239 Provides:       java(jaf) = 1.1.1
240 Provides:       java(jaxp) = 1.3
241 Provides:       java(jaxp_parser_impl)
242 Provides:       java(jce) = %{version}
243 Provides:       java(jdbc-stdext) = %{version}
244 Provides:       java(jdbc-stdext) = 3.0
245 Provides:       java(jmx) = 1.4
246 Provides:       java(jndi) = %{version}
247 Provides:       java(jsse) = %{version}
248 Provides:       java1.4
249 Provides:       jre = %{_jdkversion}
250 Obsoletes:      icedtea6-jre
251 Obsoletes:      icedtea7-jre
252 Obsoletes:      java(jaas)
253 Obsoletes:      java(jaf)
254 Obsoletes:      java(jaxp)
255 Obsoletes:      java(jce)
256 Obsoletes:      java(jdbc-stdext)
257 Obsoletes:      java(jdbc-stdext)
258 Obsoletes:      java(jmx)
259 Obsoletes:      java(jndi)
260 Obsoletes:      java(jsse)
261 Obsoletes:      java-gcj-compat
262 Obsoletes:      java-sun-jre
263 Obsoletes:      java5-sun-jre
264 Obsoletes:      openjdk8-jre
265 Obsoletes:      oracle-java7-jre
266 Obsoletes:      jre
267
268 %description jre
269 This package symlinks OpenJDK runtime environment tools provided by
270 %{name}-jre-base to system-wide directories like %{_bindir}, making
271 IcedTea6 default JRE.
272
273 %description jre -l pl.UTF-8
274 Ten pakiet tworzy symboliczne dowiązania do środowiska
275 uruchomieniowego OpenJDK, dostarczanych przez pakiet %{name}-jre-base,
276 w standardowych systemowych ścieżkach takich jak %{_bindir},
277 sprawiając tym samym, że IcedTea7 staje się domyślnym JRE w systemie.
278
279 %package jre-X11
280 Summary:        IcedTea7 OpenJDK - runtime environment - X11 support
281 Summary(pl.UTF-8):      IcedTea7 OpenJDK - środowisko uruchomieniowe - obsługa X11
282 Group:          Development/Languages/Java
283 Requires:       %{name}-jre = %{version}-%{release}
284 Requires:       %{name}-jre-base-X11 = %{version}-%{release}
285 Provides:       jre-X11 = %{_jdkversion}
286 Obsoletes:      icedtea6-jre-X11
287 Obsoletes:      java-sun-jre-X11
288 Obsoletes:      openjdk8-jre-X11
289 Obsoletes:      oracle-java7-jre-X11
290
291 %description jre-X11
292 X11 support for OpenJDK runtime environment built using free software
293 only.
294
295 %description jre-X11 -l pl.UTF-8
296 Biblioteki X11 dla środowiska OpenJDK zbudowany wyłocznie przy uzyciu
297 wolnego oprogramowania.
298
299 %package jre-base
300 Summary:        OpenJDK and GNU Classpath code - runtime environment
301 Summary(pl.UTF-8):      Kod OpenJDK i GNU Classpath - środowisko uruchomieniowe
302 Group:          Development/Languages/Java
303 Requires:       jpackage-utils >= 0:1.7.5-4
304 Provides:       jre(%{name})
305
306 %description jre-base
307 OpenJDK runtime environment built using free software only.
308
309 %description jre-base -l pl.UTF-8
310 Środowisko uruchomieniowe OpenJDK zbudowany wyłącznie przy użyciu
311 wolnego oprogramowania.
312
313 %package jre-base-X11
314 Summary:        IcedTea7 OpenJDK - runtime environment - X11 support
315 Summary(pl.UTF-8):      IcedTea7 OpenJDK - środowisko uruchomieniowe - obsługa X11
316 Group:          Development/Languages/Java
317 Requires:       %{name}-jre-base = %{version}-%{release}
318 Requires:       %{name}-jre-base-freetype = %{version}-%{release}
319
320 %description jre-base-X11
321 X11 support for OpenJDK runtime environment built using free software
322 only.
323
324 %description jre-base-X11 -l pl.UTF-8
325 Biblioteki X11 dla środowiska OpenJDK zbudowany wyłocznie przy uzyciu
326 wolnego oprogramowania.
327
328 %package jre-base-alsa
329 Summary:        IcedTea7 OpenJDK - runtime environment - ALSA support
330 Summary(pl.UTF-8):      IcedTea7 OpenJDK - środowisko uruchomieniowe - obsługa ALSA
331 Group:          Development/Languages/Java
332 Requires:       %{name}-jre-base = %{version}-%{release}
333
334 %description jre-base-alsa
335 ALSA sound support for OpenJDK runtime environment build using free
336 software only.
337
338 %description jre-base-alsa -l pl.UTF-8
339 Biblioteki ALSA rozszerzające środowisko OpenJDK o obsługę dźwięku
340 zbudowane przy uzyciu wyłącznie wolnego oprogramowania.
341
342 %package jre-base-freetype
343 Summary:        IcedTea7 OpenJDK - runtime environment - font support
344 Summary(pl.UTF-8):      IcedTea7 OpenJDK - środowisko uruchomieniowe - obsługa fontów
345 Group:          Development/Languages/Java
346 Requires:       %{name}-jre-base = %{version}-%{release}
347
348 %description jre-base-freetype
349 Font handling library for OpenJDK runtime environment built using free
350 software only.
351
352 %description jre-base-freetype -l pl.UTF-8
353 Biblioteki obsługi czcionek dla OpenJDK zbudowane wyłącznie przy
354 użyciu wolnego oprogramowania.
355
356 %package jre-base-gtk
357 Summary:        IcedTea7 OpenJDK - runtime environment - GTK support
358 Summary(pl.UTF-8):      IcedTea7 OpenJDK - środowisko uruchomieniowe - obsługa GTK
359 Group:          Development/Languages/Java
360 Requires:       %{name}-jre-base = %{version}-%{release}
361
362 %description jre-base-gtk
363 GTK support for OpenJDK runtime environment.
364
365 %description jre-base-gtk -l pl.UTF-8
366 Biblioteki GTK dla OpenJDK.
367
368 %package jar
369 Summary:        OpenJDK and GNU Classpath code - JAR tool
370 Summary(pl.UTF-8):      Kod OpenJDK i GNU Classpath - narzędzie JAR
371 Group:          Development/Languages/Java
372 Requires:       %{name}-jdk-base = %{version}-%{release}
373 Provides:       jar
374 Obsoletes:      fastjar
375 Obsoletes:      icedtea6-jar
376 Obsoletes:      icedtea7-jar
377 Obsoletes:      openjdk8-jar
378 Obsoletes:      jar
379
380 %description jar
381 JAR tool from OpenJDK built using free software only.
382
383 JAR is an archiver used to merge Java classes into a single library.
384
385 %description jar -l pl.UTF-8
386 Narzędzie jar z OpenJDK zbudowane przy uzyciu wyłącznie wolnego
387 oprogramowania.
388
389 JAR jest narzędziem pozwalającym wykonywać podstawowe operacje na
390 archiwach javy .jar takie jak na przykład tworzenie lub rozpakowywanie
391 archiwów.
392
393 %package appletviewer
394 Summary:        OpenJDK and GNU Classpath code - appletviewer tool
395 Summary(pl.UTF-8):      Kod OpenJDK i GNU Classpath - narzędzie appletviewer
396 Group:          Development/Languages/Java
397 Requires:       %{name}-jdk-base = %{version}-%{release}
398 Requires:       %{name}-jre-X11 = %{version}-%{release}
399 Obsoletes:      icedtea6-appletviewer
400 Obsoletes:      icedtea7-appletviewer
401 Obsoletes:      java-sun-appletviewer
402 Obsoletes:      openjdk8-appletviewer
403 Obsoletes:      oracle-java7-appletviewer
404
405 %description appletviewer
406 Appletviewer from OpenJDK build using free software only.
407
408 %description appletviewer -l pl.UTF-8
409 Appletviewer pozwala uruchamiać aplety javy niezależnie od
410 przeglądarki www. Ten appletviewer pochodzi z zestawu narzędzi OpenJDK
411 i został zbudowany wyłącznie przy użyciu wolnego oprogramowania.
412
413 %package jdk-sources
414 Summary:        OpenJDK and GNU Classpath code - sources
415 Summary(pl.UTF-8):      Kod OpenJDK i GNU Classpath - kod źródłowy
416 Group:          Documentation
417 %if "%{_rpmversion}" >= "5"
418 BuildArch:      noarch
419 %endif
420
421 %description jdk-sources
422 Source code for the OpenJDK development kit and Java standard library.
423
424 %description jdk-sources -l pl.UTF-8
425 Kod źródłowy narzędzi programistycznych OpenJDK oraz standardowej
426 biblioteki Javy.
427
428 %package examples
429 Summary:        OpenJDK and GNU Classpath code - examples
430 Summary(pl.UTF-8):      Kod OpenJDK i GNU Classpath - przykłady
431 Group:          Documentation
432 %if "%{_rpmversion}" >= "5"
433 BuildArch:      noarch
434 %endif
435
436 %description examples
437 Code examples for OpenJDK.
438
439 %description examples -l pl.UTF-8
440 Przykłady dla OpenJDK.
441
442 %prep
443 %setup -qn icedtea-%{version}
444 %patch0 -p1
445 %patch1 -p1
446
447 # patches to applied to the extracted sources
448 install -d pld-patches
449 cp -p %{PATCH100} pld-patches
450 %ifarch x32
451 cp -p %{PATCH101} pld-patches
452 %endif
453 cp -p %{PATCH102} pld-patches
454
455 # let the build system extract the sources where it wants them
456 install -d drops
457 ln -s %{SOURCE1} openjdk.tar.xz
458 ln -s %{SOURCE2} corba.tar.xz
459 ln -s %{SOURCE3} jaxp.tar.xz
460 ln -s %{SOURCE4} jaxws.tar.xz
461 ln -s %{SOURCE5} jdk.tar.xz
462 ln -s %{SOURCE6} langtools.tar.xz
463 ln -s %{SOURCE7} hotspot.tar.xz
464 ln -s %{SOURCE8} nashorn.tar.xz
465
466 %build
467 # Make sure we have /proc mounted - otherwise idlc will fail later.
468 if [ ! -f /proc/self/stat ]; then
469         echo "You need to have /proc mounted in order to build this package!"
470         exit 1
471 fi
472
473 unset JAVA_HOME
474
475 mkdir -p build-bin
476 export PATH="$(pwd)/build-bin:$PATH"
477
478 # our /usr/bin/ant is quite broken and won't run properly
479 # in the bootstrap JDK environment prepared by IcedTea build process
480 cat >>build-bin/ant <<'EOF'
481 #!/bin/sh
482
483 exec java \
484         -classpath /usr/share/java/ant-launcher.jar \
485         -Dant.home=/usr/share/ant \
486         -Dant.lib=/usr/share/ant/lib \
487         org.apache.tools.ant.launch.Launcher \
488         "$@"
489 EOF
490 chmod a+x build-bin/ant
491
492 %{__aclocal}
493 %{__autoconf}
494 %{__automake}
495
496 # NOTE: the weird '--disable-bootstrap' is how it is supposed to be
497 # http://icedtea.classpath.org/wiki/CommonIssues#IcedTea7_building_on_systems_with_JDK_5_or_JDK_6
498 %configure \
499         WGET=%{_bindir}/wget \
500 %ifarch x32
501         --enable-zero \
502 %endif
503         --disable-downloading \
504         --with-jdk-home=%{java_home} \
505         --disable-bootstrap \
506         --enable-system-kerberos \
507         --enable-system-pcsc \
508         --enable-system-sctp \
509         --%{!?with_nss:dis}%{?with_nss:en}able-nss \
510         --%{!?with_sunec:dis}%{?with_sunec:en}able-sunec
511
512 %{__make} extract \
513         SHELL=/bin/bash \
514         DISTRIBUTION_PATCHES="$(echo pld-patches/*.patch)"
515
516 %{__make} patch \
517         SHELL=/bin/bash \
518         DISTRIBUTION_PATCHES="$(echo pld-patches/*.patch)"
519
520 # break here to prepare openjdk patches
521 #exit 1
522
523 cd openjdk/common/autoconf
524 sh autogen.sh
525 cd ../../..
526
527 %{__make} -j1 \
528         SHELL=/bin/bash \
529         DISABLE_HOTSPOT_OS_VERSION_CHECK=ok \
530         DISTRIBUTION_PATCHES="$(echo pld-patches/*.patch)" \
531         PRINTF=/bin/printf \
532         MAX_VM_MEMORY=1024
533
534 # smoke test
535 openjdk.build/jdk/bin/java -version
536
537 # _jdkversion check
538 JDKVER=$(openjdk.build/jdk/bin/java -version 2>&1 | gawk -F'"' '/openjdk version/ { s=$2; gsub("_", ".", s); print s; } ')
539 if [ "$JDKVER" != "%{_jdkversion}" ]; then
540         echo "Please update _jdkversion macro to $JDKVER" >&2
541         exit 1
542 fi
543
544 %{?with_cacerts:%{__sh} %{SOURCE10}}
545
546 %install
547 rm -rf $RPM_BUILD_ROOT
548
549 install -d $RPM_BUILD_ROOT{%{_bindir},%{dstdir},%{_mandir}/ja} \
550         $RPM_BUILD_ROOT{%{jvmjardir},%{_examplesdir}/%{name}-%{version},%{_javasrcdir}} \
551         $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
552
553 # install the 'JDK image', it contains the JRE too
554 cp -a openjdk.build/images/j2sdk-image/* $RPM_BUILD_ROOT%{dstdir}
555
556 # convenience symlinks without version number
557 ln -s %{dstreldir} $RPM_BUILD_ROOT%{_jvmdir}/%{name}
558 ln -s %{jrereldir} $RPM_BUILD_ROOT%{_jvmdir}/%{name}-jre
559
560 ln -s %{dstreldir} $RPM_BUILD_ROOT%{_jvmdir}/java
561
562 # move JDK sources and demo to /usr/src
563 mv $RPM_BUILD_ROOT%{dstdir}/demo $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
564 mv $RPM_BUILD_ROOT%{dstdir}/sample $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
565 mv $RPM_BUILD_ROOT%{dstdir}/src.zip $RPM_BUILD_ROOT%{_javasrcdir}/%{name}-jdk.zip
566
567 # move manual pages to its place
568 mv $RPM_BUILD_ROOT%{dstdir}/man/ja_JP.UTF-8/man1 $RPM_BUILD_ROOT%{_mandir}/ja/man1
569 rmdir $RPM_BUILD_ROOT%{dstdir}/man/ja_JP.UTF-8
570 rm $RPM_BUILD_ROOT%{dstdir}/man/ja
571 mv $RPM_BUILD_ROOT%{dstdir}/man/man1 $RPM_BUILD_ROOT%{_mandir}/man1
572 rmdir $RPM_BUILD_ROOT%{dstdir}/man
573
574 # replace duplicates with symlinks, link to %{_bindir}
575 for path in $RPM_BUILD_ROOT%{dstdir}/bin/*; do
576         filename=$(basename $path)
577         if diff -q "$path" "$RPM_BUILD_ROOT%{jredir}/bin/$filename" > /dev/null; then
578                 ln -sf "../jre/bin/$filename" "$path"
579                 ln -sf "%{jredir}/bin/$filename" $RPM_BUILD_ROOT%{_bindir}
580         else
581                 ln -sf "%{dstdir}/bin/$filename" $RPM_BUILD_ROOT%{_bindir}
582         fi
583 done
584 ln -sf ../jre/lib/jexec $RPM_BUILD_ROOT%{dstdir}/lib/jexec
585
586 # keep configuration in /etc (not all *.properties go there)
587 for config in management security content-types.properties \
588                 logging.properties net.properties sound.properties; do
589
590         mv $RPM_BUILD_ROOT%{jredir}/lib/$config $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/$config
591         ln -s %{_sysconfdir}/%{name}/$config $RPM_BUILD_ROOT%{jredir}/lib/$config
592 done
593
594 ln -sf %{jredir}/lib/jsse.jar $RPM_BUILD_ROOT%{jvmjardir}/jsse.jar
595 ln -sf %{jredir}/lib/jsse.jar $RPM_BUILD_ROOT%{jvmjardir}/jcert.jar
596 ln -sf %{jredir}/lib/jsse.jar $RPM_BUILD_ROOT%{jvmjardir}/jnet.jar
597 ln -sf %{jredir}/lib/jce.jar $RPM_BUILD_ROOT%{jvmjardir}/jce.jar
598 for f in jndi jndi-ldap jndi-cos jndi-rmi jaas jdbc-stdext jdbc-stdext-3.0 \
599         sasl jaxp_parser_impl jaxp_transform_impl jaxp jmx activation xml-commons-apis \
600         jndi-dns jndi-rmi; do
601         ln -sf %{jredir}/lib/rt.jar $RPM_BUILD_ROOT%{jvmjardir}/$f.jar
602 done
603
604 # some apps (like opera) looks for it in different place
605 ln -s server/libjvm.so $RPM_BUILD_ROOT%{jredir}/lib/%{jre_arch}/libjvm.so
606
607 %{__rm} $RPM_BUILD_ROOT%{dstdir}/{,jre/}{ASSEMBLY_EXCEPTION,LICENSE,THIRD_PARTY_README}
608
609 %{?with_cacerts:install cacerts $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/security}
610
611 %clean
612 rm -rf $RPM_BUILD_ROOT
613
614 %files
615 %defattr(644,root,root,755)
616 %doc AUTHORS ChangeLog HACKING NEWS README
617
618 %files jdk
619 %defattr(644,root,root,755)
620 %attr(755,root,root) %{_bindir}/extcheck
621 %attr(755,root,root) %{_bindir}/idlj
622 %attr(755,root,root) %{_bindir}/jarsigner
623 %attr(755,root,root) %{_bindir}/java-rmi.cgi
624 %attr(755,root,root) %{_bindir}/javac
625 %attr(755,root,root) %{_bindir}/javadoc
626 %attr(755,root,root) %{_bindir}/javah
627 %attr(755,root,root) %{_bindir}/javap
628 %attr(755,root,root) %{_bindir}/jcmd
629 %attr(755,root,root) %{_bindir}/jconsole
630 %attr(755,root,root) %{_bindir}/jdb
631 %attr(755,root,root) %{_bindir}/jdeps
632 %attr(755,root,root) %{_bindir}/jhat
633 %attr(755,root,root) %{_bindir}/jinfo
634 %attr(755,root,root) %{_bindir}/jjs
635 %attr(755,root,root) %{_bindir}/jmap
636 %attr(755,root,root) %{_bindir}/jps
637 %attr(755,root,root) %{_bindir}/jrunscript
638 %attr(755,root,root) %{_bindir}/jsadebugd
639 %attr(755,root,root) %{_bindir}/jstack
640 %attr(755,root,root) %{_bindir}/jstat
641 %attr(755,root,root) %{_bindir}/jstatd
642 %attr(755,root,root) %{_bindir}/native2ascii
643 %attr(755,root,root) %{_bindir}/rmic
644 %attr(755,root,root) %{_bindir}/schemagen
645 %attr(755,root,root) %{_bindir}/serialver
646 %attr(755,root,root) %{_bindir}/wsgen
647 %attr(755,root,root) %{_bindir}/wsimport
648 %attr(755,root,root) %{_bindir}/xjc
649 %{_mandir}/man1/extcheck.1*
650 %{_mandir}/man1/idlj.1*
651 %{_mandir}/man1/jarsigner.1*
652 %{_mandir}/man1/javac.1*
653 %{_mandir}/man1/javadoc.1*
654 %{_mandir}/man1/javah.1*
655 %{_mandir}/man1/javap.1*
656 %{_mandir}/man1/jcmd.1*
657 %{_mandir}/man1/jconsole.1*
658 %{_mandir}/man1/jdb.1*
659 %{_mandir}/man1/jdeps.1*
660 %{_mandir}/man1/jhat.1*
661 %{_mandir}/man1/jinfo.1*
662 %{_mandir}/man1/jjs.1*
663 %{_mandir}/man1/jmap.1*
664 %{_mandir}/man1/jps.1*
665 %{_mandir}/man1/jrunscript.1*
666 %{_mandir}/man1/jsadebugd.1*
667 %{_mandir}/man1/jstack.1*
668 %{_mandir}/man1/jstat.1*
669 %{_mandir}/man1/jstatd.1*
670 %{_mandir}/man1/native2ascii.1*
671 %{_mandir}/man1/schemagen.1*
672 %{_mandir}/man1/serialver.1*
673 %{_mandir}/man1/rmic.1*
674 %{_mandir}/man1/wsgen.1*
675 %{_mandir}/man1/wsimport.1*
676 %{_mandir}/man1/xjc.1*
677 %lang(ja) %{_mandir}/ja/man1/extcheck.1*
678 %lang(ja) %{_mandir}/ja/man1/idlj.1*
679 %lang(ja) %{_mandir}/ja/man1/jarsigner.1*
680 %lang(ja) %{_mandir}/ja/man1/javac.1*
681 %lang(ja) %{_mandir}/ja/man1/javadoc.1*
682 %lang(ja) %{_mandir}/ja/man1/javah.1*
683 %lang(ja) %{_mandir}/ja/man1/javap.1*
684 %lang(ja) %{_mandir}/ja/man1/jcmd.1*
685 %lang(ja) %{_mandir}/ja/man1/jconsole.1*
686 %lang(ja) %{_mandir}/ja/man1/jdb.1*
687 %lang(ja) %{_mandir}/ja/man1/jdeps.1*
688 %lang(ja) %{_mandir}/ja/man1/jhat.1*
689 %lang(ja) %{_mandir}/ja/man1/jinfo.1*
690 %lang(ja) %{_mandir}/ja/man1/jjs.1*
691 %lang(ja) %{_mandir}/ja/man1/jmap.1*
692 %lang(ja) %{_mandir}/ja/man1/jps.1*
693 %lang(ja) %{_mandir}/ja/man1/jrunscript.1*
694 %lang(ja) %{_mandir}/ja/man1/jsadebugd.1*
695 %lang(ja) %{_mandir}/ja/man1/jstack.1*
696 %lang(ja) %{_mandir}/ja/man1/jstat.1*
697 %lang(ja) %{_mandir}/ja/man1/jstatd.1*
698 %lang(ja) %{_mandir}/ja/man1/native2ascii.1*
699 %lang(ja) %{_mandir}/ja/man1/schemagen.1*
700 %lang(ja) %{_mandir}/ja/man1/serialver.1*
701 %lang(ja) %{_mandir}/ja/man1/rmic.1*
702 %lang(ja) %{_mandir}/ja/man1/wsgen.1*
703 %lang(ja) %{_mandir}/ja/man1/wsimport.1*
704 %lang(ja) %{_mandir}/ja/man1/xjc.1*
705
706 %files jdk-base
707 %defattr(644,root,root,755)
708 %doc openjdk.build/images/j2sdk-image/THIRD_PARTY_README
709 %doc openjdk.build/images/j2sdk-image/ASSEMBLY_EXCEPTION
710 %dir %{dstdir}
711 %{_jvmdir}/%{name}
712 %dir %{dstdir}/bin
713 %attr(755,root,root) %{dstdir}/bin/appletviewer
714 %attr(755,root,root) %{dstdir}/bin/extcheck
715 %attr(755,root,root) %{dstdir}/bin/idlj
716 %attr(755,root,root) %{dstdir}/bin/jar
717 %attr(755,root,root) %{dstdir}/bin/jarsigner
718 %attr(755,root,root) %{dstdir}/bin/java-rmi.cgi
719 %attr(755,root,root) %{dstdir}/bin/javac
720 %attr(755,root,root) %{dstdir}/bin/javadoc
721 %attr(755,root,root) %{dstdir}/bin/javah
722 %attr(755,root,root) %{dstdir}/bin/javap
723 %attr(755,root,root) %{dstdir}/bin/jconsole
724 %attr(755,root,root) %{dstdir}/bin/jcmd
725 %attr(755,root,root) %{dstdir}/bin/jdb
726 %attr(755,root,root) %{dstdir}/bin/jdeps
727 %attr(755,root,root) %{dstdir}/bin/jhat
728 %attr(755,root,root) %{dstdir}/bin/jinfo
729 %attr(755,root,root) %{dstdir}/bin/jmap
730 %attr(755,root,root) %{dstdir}/bin/jps
731 %attr(755,root,root) %{dstdir}/bin/jrunscript
732 %attr(755,root,root) %{dstdir}/bin/jsadebugd
733 %attr(755,root,root) %{dstdir}/bin/jstack
734 %attr(755,root,root) %{dstdir}/bin/jstat
735 %attr(755,root,root) %{dstdir}/bin/jstatd
736 %attr(755,root,root) %{dstdir}/bin/native2ascii
737 %attr(755,root,root) %{dstdir}/bin/rmic
738 %attr(755,root,root) %{dstdir}/bin/schemagen
739 %attr(755,root,root) %{dstdir}/bin/serialver
740 %attr(755,root,root) %{dstdir}/bin/wsgen
741 %attr(755,root,root) %{dstdir}/bin/wsimport
742 %attr(755,root,root) %{dstdir}/bin/xjc
743 %{dstdir}/include
744 %dir %{dstdir}/lib
745 %{dstdir}/lib/ct.sym
746 %{dstdir}/lib/dt.jar
747 %{dstdir}/lib/ir.idl
748 %{dstdir}/lib/jconsole.jar
749 %attr(755,root,root) %{dstdir}/lib/jexec
750 %{dstdir}/lib/orb.idl
751 %ifnarch x32
752 %{dstdir}/lib/sa-jdi.jar
753 %endif
754 %{dstdir}/lib/tools.jar
755 %dir %{dstdir}/lib/%{jre_arch}
756 %dir %{dstdir}/lib/%{jre_arch}/jli
757 %attr(755,root,root) %{dstdir}/lib/%{jre_arch}/jli/*.so
758 %{dstdir}/tapset
759
760 %files jre
761 %defattr(644,root,root,755)
762 %attr(755,root,root) %{_bindir}/java
763 %attr(755,root,root) %{_bindir}/keytool
764 %attr(755,root,root) %{_bindir}/orbd
765 %attr(755,root,root) %{_bindir}/pack200
766 %attr(755,root,root) %{_bindir}/rmid
767 %attr(755,root,root) %{_bindir}/rmiregistry
768 %attr(755,root,root) %{_bindir}/servertool
769 %attr(755,root,root) %{_bindir}/tnameserv
770 %attr(755,root,root) %{_bindir}/unpack200
771 %{_mandir}/man1/java.1*
772 %{_mandir}/man1/keytool.1*
773 %{_mandir}/man1/orbd.1*
774 %{_mandir}/man1/pack200.1*
775 %{_mandir}/man1/rmid.1*
776 %{_mandir}/man1/rmiregistry.1*
777 %{_mandir}/man1/servertool.1*
778 %{_mandir}/man1/tnameserv.1*
779 %{_mandir}/man1/unpack200.1*
780 %lang(ja) %{_mandir}/ja/man1/java.1*
781 %lang(ja) %{_mandir}/ja/man1/keytool.1*
782 %lang(ja) %{_mandir}/ja/man1/orbd.1*
783 %lang(ja) %{_mandir}/ja/man1/pack200.1*
784 %lang(ja) %{_mandir}/ja/man1/rmid.1*
785 %lang(ja) %{_mandir}/ja/man1/rmiregistry.1*
786 %lang(ja) %{_mandir}/ja/man1/servertool.1*
787 %lang(ja) %{_mandir}/ja/man1/tnameserv.1*
788 %lang(ja) %{_mandir}/ja/man1/unpack200.1*
789 %{_jvmdir}/java
790
791 %files jre-base
792 %defattr(644,root,root,755)
793 %doc openjdk.build/images/j2sdk-image/THIRD_PARTY_README
794 %doc openjdk.build/images/j2sdk-image/ASSEMBLY_EXCEPTION
795 %dir %{_sysconfdir}/%{name}
796 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/*
797 %dir %{dstdir}
798 %{dstdir}/release
799 %dir %{jredir}
800 %{_jvmdir}/%{name}-jre
801 %dir %{jredir}/bin
802 %dir %{dstdir}/bin
803 %attr(755,root,root) %{jredir}/bin/java
804 %attr(755,root,root) %{dstdir}/bin/java
805 %attr(755,root,root) %{jredir}/bin/jjs
806 %attr(755,root,root) %{dstdir}/bin/jjs
807 %attr(755,root,root) %{jredir}/bin/keytool
808 %attr(755,root,root) %{dstdir}/bin/keytool
809 %attr(755,root,root) %{jredir}/bin/orbd
810 %attr(755,root,root) %{dstdir}/bin/orbd
811 %attr(755,root,root) %{jredir}/bin/pack200
812 %attr(755,root,root) %{dstdir}/bin/pack200
813 %attr(755,root,root) %{jredir}/bin/rmid
814 %attr(755,root,root) %{dstdir}/bin/rmid
815 %attr(755,root,root) %{jredir}/bin/rmiregistry
816 %attr(755,root,root) %{dstdir}/bin/rmiregistry
817 %attr(755,root,root) %{jredir}/bin/servertool
818 %attr(755,root,root) %{dstdir}/bin/servertool
819 %attr(755,root,root) %{jredir}/bin/tnameserv
820 %attr(755,root,root) %{dstdir}/bin/tnameserv
821 %attr(755,root,root) %{jredir}/bin/unpack200
822 %attr(755,root,root) %{dstdir}/bin/unpack200
823 %dir %{jredir}/lib
824 %dir %{jredir}/lib/applet
825 %{jredir}/lib/cmm
826 %{jredir}/lib/ext
827 %dir %{jredir}/lib/%{jre_arch}
828 %dir %{jredir}/lib/%{jre_arch}/jli
829 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/jli/*.so
830 %dir %{jredir}/lib/%{jre_arch}/server
831 %{jredir}/lib/%{jre_arch}/server/Xusage.txt
832 %ifnarch x32
833 %{jredir}/lib/%{jre_arch}/server/classes.jsa
834 %endif
835 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/server/*.so
836 %{jredir}/lib/%{jre_arch}/jvm.cfg
837 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libattach.so
838 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libawt.so
839 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libawt_headless.so
840 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libdt_socket.so
841 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libhprof.so
842 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libinstrument.so
843 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libj2gss.so
844 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libj2krb5.so
845 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libj2pcsc.so
846 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libj2pkcs11.so
847 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libj2sctp.so
848 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjaas_unix.so
849 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjava.so
850 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjavajpeg.so
851 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjavalcms.so
852 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjava_crw_demo.so
853 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjdwp.so
854 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjsdt.so
855 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjsig.so
856 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjsound.so
857 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjvm.so
858 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libmanagement.so
859 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libmlib_image.so
860 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libnet.so
861 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libnio.so
862 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libnpt.so
863 %ifnarch x32
864 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libsaproc.so
865 %endif
866 %{?with_sunec:%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libsunec.so}
867 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libunpack.so
868 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libverify.so
869 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libzip.so
870 %{jredir}/lib/images
871 %{jredir}/lib/management
872 %{jredir}/lib/security
873 %{jredir}/lib/hijrah-config-umalqura.properties
874 %{jredir}/lib/tzdb.dat
875 %{jredir}/lib/tz.properties
876
877 %if %{with webstart}
878 %{jredir}/lib/about.jar
879 %{jredir}/lib/about.jnlp
880 %endif
881 %{jredir}/lib/calendars.properties
882 %{jredir}/lib/charsets.jar
883 %{jredir}/lib/classlist
884 %{jredir}/lib/content-types.properties
885 %{jredir}/lib/currency.data
886 %{jredir}/lib/flavormap.properties
887 %{jredir}/lib/jce.jar
888 %attr(755, root, root) %{jredir}/lib/jexec
889 %{jredir}/lib/jsse.jar
890 %{jredir}/lib/jvm.hprof.txt
891 %{jredir}/lib/logging.properties
892 %{jredir}/lib/management-agent.jar
893 %{jredir}/lib/meta-index
894 %{jredir}/lib/net.properties
895 %{jredir}/lib/psfont.properties.ja
896 %{jredir}/lib/psfontj2d.properties
897 %{jredir}/lib/resources.jar
898 %{jredir}/lib/rt.jar
899 %{jredir}/lib/sound.properties
900 %{jvmjardir}
901
902 %files jre-X11
903 %defattr(644,root,root,755)
904 %attr(755,root,root) %{_bindir}/policytool
905 %{_mandir}/man1/policytool.1*
906 %lang(ja) %{_mandir}/ja/man1/policytool.1*
907
908 %files jre-base-X11
909 %defattr(644,root,root,755)
910 %attr(755,root,root) %{jredir}/bin/policytool
911 %attr(755,root,root) %{dstdir}/bin/policytool
912 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libawt_xawt.so
913 %attr(755,root,root) %{dstdir}/lib/%{jre_arch}/libjawt.so
914 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjawt.so
915 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libsplashscreen.so
916
917 %files jre-base-alsa
918 %defattr(644,root,root,755)
919 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjsoundalsa.so
920
921 %files jre-base-freetype
922 %defattr(644,root,root,755)
923 %attr(755,root,root) %{jredir}/lib/%{jre_arch}/libfontmanager.so
924
925 %files jre-base-gtk
926 %defattr(644,root,root,755)
927
928 %files jar
929 %defattr(644,root,root,755)
930 %attr(755,root,root) %{_bindir}/jar
931 %{_mandir}/man1/jar.1*
932 %lang(ja) %{_mandir}/ja/man1/jar.1*
933
934 %files appletviewer
935 %defattr(644,root,root,755)
936 %attr(755,root,root) %{_bindir}/appletviewer
937 %{_mandir}/man1/appletviewer.1*
938 %lang(ja) %{_mandir}/ja/man1/appletviewer.1*
939
940 %files jdk-sources
941 %defattr(644,root,root,755)
942 %{_javasrcdir}/%{name}-jdk.zip
943
944 %files examples
945 %defattr(644,root,root,755)
946 %{_examplesdir}/%{name}-%{version}
This page took 0.152465 seconds and 3 git commands to generate.