/[packages]/updates/8/java-1.8.0-openjdk/current/SPECS/java-1.8.0-openjdk.spec
ViewVC logotype

Annotation of /updates/8/java-1.8.0-openjdk/current/SPECS/java-1.8.0-openjdk.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1254928 - (hide annotations) (download)
Mon Aug 27 14:24:10 2018 UTC (5 years, 7 months ago) by ns80
Original Path: cauldron/java-1.8.0-openjdk/current/SPECS/java-1.8.0-openjdk.spec
File size: 78177 byte(s)
- sync with fedora as of 2018-07-23, update to u181b13 (mga#23343)

1 luigiwalser 1237287 # note, parametrised macros are order-senisitve (unlike not-parametrized) even with normal macros
2     # also necessary when passing it as parameter other macros. If not macro, then it is considered as switch
3     %global debug_suffix_unquoted -debug
4 luigiwalser 795869 # quoted one for shell operations
5     %global debug_suffix "%{debug_suffix_unquoted}"
6     %global normal_suffix ""
7 dmorgan 463625
8 luigiwalser 1237287 #if you wont only debug build, but providing java, build only normal build, but set normalbuild_parameter
9     %global debugbuild_parameter slowdebug
10     %global normalbuild_parameter release
11     %global debug_warning This package have full debug on. Install only in need, and remove asap.
12 luigiwalser 795869 %global debug_on with full debug on
13     %global for_debug for packages with debug on
14 dmorgan 463625
15 luigiwalser 1237287 # by default we build normal build always.
16 luigiwalser 795869 %global include_normal_build 1
17     %if %{include_normal_build}
18     %global build_loop1 %{normal_suffix}
19     %else
20     %global build_loop1 %{nil}
21     %endif
22    
23 luigiwalser 1062734 %global aarch64 aarch64 arm64 armv8
24 luigiwalser 1237287 # sometimes we need to distinguish big and little endian PPC64
25 luigiwalser 1062734 %global ppc64le ppc64le
26     %global ppc64be ppc64 ppc64p7
27     %global multilib_arches %{power64} sparc64 x86_64
28     %global jit_arches %{ix86} x86_64 sparcv9 sparc64 %{aarch64} %{power64}
29    
30     # By default, we build a debug build during main build on JIT architectures
31     %ifarch %{jit_arches}
32 luigiwalser 814952 %global include_debug_build 0
33 luigiwalser 795869 %else
34     %global include_debug_build 0
35     %endif
36    
37 luigiwalser 1097090 # On x86_64 and AArch64, we use the Shenandoah HotSpot
38     %ifarch x86_64 %{aarch64}
39 luigiwalser 1043833 %global use_shenandoah_hotspot 1
40     %else
41     %global use_shenandoah_hotspot 0
42     %endif
43    
44 luigiwalser 795869 %if %{include_debug_build}
45     %global build_loop2 %{debug_suffix}
46     %else
47     %global build_loop2 %{nil}
48     %endif
49    
50 luigiwalser 1237287 # if you disable both builds, then build fails
51 luigiwalser 795869 %global build_loop %{build_loop1} %{build_loop2}
52 luigiwalser 1237287 # note, that order normal_suffix debug_suffix, in case of both enabled,
53     # is expected in one single case at the end of build
54     %global rev_build_loop %{build_loop2} %{build_loop1}
55 luigiwalser 795869
56 luigiwalser 1004176 %ifarch %{jit_arches}
57     %global bootstrap_build 1
58     %else
59 luigiwalser 1083674 %global bootstrap_build 1
60 luigiwalser 1004176 %endif
61 luigiwalser 795869
62 luigiwalser 926380 %if %{bootstrap_build}
63     %global targets bootcycle-images docs
64     %else
65     %global targets all
66     %endif
67    
68     # Filter out flags from the optflags macro that cause problems with the OpenJDK build
69     # We filter out -O flags so that the optimisation of HotSpot is not lowered from O3 to O2
70     # We filter out -Wall which will otherwise cause HotSpot to produce hundreds of thousands of warnings (100+mb logs)
71     # We replace it with -Wformat (required by -Werror=format-security) and -Wno-cpp to avoid FORTIFY_SOURCE warnings
72     # We filter out -fexceptions as the HotSpot build explicitly does -fno-exceptions and it's otherwise the default for C++
73 luigiwalser 926389 %global ourflags %(echo %optflags | sed -e 's|-Wformat|-Wformat -Wno-cpp|')
74 luigiwalser 926380 %global ourcppflags %(echo %ourflags | sed -e 's|-fexceptions||')
75 luigiwalser 927997 %global ourldflags %(echo %{ldflags} | sed -e 's|-Wl,--no-undefined||')
76 luigiwalser 926380
77 luigiwalser 1237287 # With diabled nss is NSS deactivated, so in NSS_LIBDIR can be wrong path
78     # the initialisation must be here. LAter the pkg-connfig have bugy behaviour
79     #looks liekopenjdk RPM specific bug
80 luigiwalser 671715 # Always set this so the nss.cfg file is not broken
81     %global NSS_LIBDIR %(pkg-config --variable=libdir nss)
82 dmorgan 463625
83 luigiwalser 795869 # fix for https://bugzilla.redhat.com/show_bug.cgi?id=1111349
84 ns80 1237701 %global _privatelibs libmawt[.]so.*
85 luigiwalser 671715 %global __provides_exclude ^(%{_privatelibs})$
86     %global __requires_exclude ^(%{_privatelibs})$
87    
88 luigiwalser 1097090 # In some cases, the arch used by the JDK does
89     # not match _arch.
90     # Also, in some cases, the machine name used by SystemTap
91     # does not match that given by _build_cpu
92 dmorgan 463625 %ifarch x86_64
93     %global archinstall amd64
94 luigiwalser 1237287 %global stapinstall x86_64
95 dmorgan 463625 %endif
96     %ifarch ppc
97     %global archinstall ppc
98 luigiwalser 1237287 %global stapinstall powerpc
99 dmorgan 463625 %endif
100 luigiwalser 821647 %ifarch %{ppc64be}
101 dmorgan 463625 %global archinstall ppc64
102 luigiwalser 1237287 %global stapinstall powerpc
103 dmorgan 463625 %endif
104 luigiwalser 821647 %ifarch %{ppc64le}
105     %global archinstall ppc64le
106 luigiwalser 1237287 %global stapinstall powerpc
107 luigiwalser 821647 %endif
108 dmorgan 463625 %ifarch %{ix86}
109     %global archinstall i386
110 luigiwalser 1237287 %global stapinstall i386
111 dmorgan 463625 %endif
112     %ifarch ia64
113     %global archinstall ia64
114 luigiwalser 1237287 %global stapinstall ia64
115 dmorgan 463625 %endif
116     %ifarch s390
117     %global archinstall s390
118 luigiwalser 1237287 %global stapinstall s390
119 dmorgan 463625 %endif
120     %ifarch s390x
121     %global archinstall s390x
122 luigiwalser 1237287 %global stapinstall s390
123 dmorgan 463625 %endif
124     %ifarch %{arm}
125     %global archinstall arm
126 luigiwalser 1237287 %global stapinstall arm
127 dmorgan 463625 %endif
128     %ifarch %{aarch64}
129     %global archinstall aarch64
130 luigiwalser 1237287 %global stapinstall arm64
131 dmorgan 463625 %endif
132     # 32 bit sparc, optimized for v9
133     %ifarch sparcv9
134     %global archinstall sparc
135 luigiwalser 1237287 %global stapinstall %{_build_cpu}
136 dmorgan 463625 %endif
137     # 64 bit sparc
138     %ifarch sparc64
139     %global archinstall sparcv9
140 luigiwalser 1237287 %global stapinstall %{_build_cpu}
141 dmorgan 463625 %endif
142     %ifnarch %{jit_arches}
143     %global archinstall %{_arch}
144     %endif
145    
146     %ifarch %{jit_arches}
147 ns80 1238280 %global with_systemtap 1
148 dmorgan 463625 %else
149     %global with_systemtap 0
150     %endif
151    
152 luigiwalser 1128408 %ifarch %{ix86} x86_64
153 luigiwalser 1130405 # disable in mageia, packaged separately
154     %global with_openjfx_binding 0
155 luigiwalser 1128408 %global openjfx_path %{_jvmdir}/openjfx
156     # links src directories
157     %global jfx_jre_libs_dir %{openjfx_path}/rt/lib
158     %global jfx_jre_native_dir %{jfx_jre_libs_dir}/%{archinstall}
159     %global jfx_sdk_libs_dir %{openjfx_path}/lib
160     %global jfx_sdk_bins_dir %{openjfx_path}/bin
161     %global jfx_jre_exts_dir %{jfx_jre_libs_dir}/ext
162     # links src files
163     # maybe depend on jfx and generate the lists in build time? Yes, bad idea to inlcude cyclic depndenci, but this list is aweful
164     %global jfx_jre_libs jfxswt.jar javafx.properties
165     %global jfx_jre_native libprism_es2.so libprism_common.so libjavafx_font.so libdecora_sse.so libjavafx_font_freetype.so libprism_sw.so libjavafx_font_pango.so libglass.so libjavafx_iio.so
166     %global jfx_sdk_libs javafx-mx.jar packager.jar ant-javafx.jar
167     %global jfx_sdk_bins javafxpackager javapackager
168     %global jfx_jre_exts jfxrt.jar
169     %else
170     %global with_openjfx_binding 0
171     %endif
172    
173 luigiwalser 1237287 # Convert an absolute path to a relative path. Each symbolic link is
174     # specified relative to the directory in which it is installed so that
175     # it will resolve properly within chrooted installations.
176     %global script 'use File::Spec; print File::Spec->abs2rel($ARGV[0], $ARGV[1])'
177     %global abs2rel %{__perl} -e %{script}
178    
179    
180 dmorgan 463625 # Standard JPackage naming and versioning defines.
181     %global origin openjdk
182 luigiwalser 926380 # note, following three variables are sedded from update_sources if used correctly. Hardcode them rather there.
183 luigiwalser 1097090 %global project aarch64-port
184     %global repo jdk8u
185 ns80 1254928 %global revision aarch64-jdk8u181-b13
186 luigiwalser 926380 # eg # jdk8u60-b27 -> jdk8u60 or # aarch64-jdk8u60-b27 -> aarch64-jdk8u60 (dont forget spec escape % by %%)
187     %global whole_update %(VERSION=%{revision}; echo ${VERSION%%-*})
188     # eg jdk8u60 -> 60 or aarch64-jdk8u60 -> 60
189     %global updatever %(VERSION=%{whole_update}; echo ${VERSION##*u})
190     # eg jdk8u60-b27 -> b27
191     %global buildver %(VERSION=%{revision}; echo ${VERSION##*-})
192     # priority must be 7 digits in total. The expression is workarounding tip
193 luigiwalser 1043833 %global priority %(TIP=1800%{updatever}; echo ${TIP/tip/999})
194 luigiwalser 926380
195 luigiwalser 1237287 %global javaver 1.8.0
196 dmorgan 463625
197 luigiwalser 795869 # parametrized macros are order-sensitive
198 luigiwalser 1237287 %global fullversion %{name}-%{version}-%{release}
199     #images stub
200     %global j2sdkimage j2sdk-image
201 luigiwalser 811816 # output dir stub
202 ns80 1183461 %define buildoutputdir() %{expand:openjdk/build/jdk8.build%{?1}}
203 luigiwalser 1237287 #we can copy the javadoc to not arched dir, or made it not noarch
204 ns80 1183461 %define uniquejavadocdir() %{expand:%{fullversion}%{?1}}
205 luigiwalser 1237287 #main id and dir of this jdk
206 ns80 1183461 %define uniquesuffix() %{expand:%{fullversion}.%{_arch}%{?1}}
207 luigiwalser 795869
208 dmorgan 463625 # Standard JPackage directories and symbolic links.
209 ns80 1183461 %define sdkdir() %{expand:%{uniquesuffix -- %{?1}}}
210     %define jrelnk() %{expand:jre-%{javaver}-%{origin}-%{version}-%{release}.%{_arch}%{?1}}
211 luigiwalser 671715
212 ns80 1183461 %define jredir() %{expand:%{sdkdir -- %{?1}}/jre}
213     %define sdkbindir() %{expand:%{_jvmdir}/%{sdkdir -- %{?1}}/bin}
214     %define jrebindir() %{expand:%{_jvmdir}/%{jredir -- %{?1}}/bin}
215 ns80 1183465
216     # The macro _jvmjardir was removed from /usr/lib/rpm/macros.d/macros.jpackage
217 ns80 1183466 %define _jvmjardir %{_prefix}/lib/jvm-exports
218 ns80 1183461 %define jvmjardir() %{expand:%{_jvmjardir}/%{uniquesuffix -- %{?1}}}
219 dmorgan 463625
220 luigiwalser 926380 %global rpm_state_dir %{_localstatedir}/lib/rpm-state/
221    
222 dmorgan 489356 %if %{with_systemtap}
223 dmorgan 463625 # Where to install systemtap tapset (links)
224     # We would like these to be in a package specific subdir,
225     # but currently systemtap doesn't support that, so we have to
226     # use the root tapset dir for now. To distinquish between 64
227     # and 32 bit architectures we place the tapsets under the arch
228     # specific dir (note that systemtap will only pickup the tapset
229     # for the primary arch for now). Systemtap uses the machine name
230     # aka build_cpu as architecture specific directory name.
231     %global tapsetroot /usr/share/systemtap
232 luigiwalser 1237287 %global tapsetdir %{tapsetroot}/tapset/%{stapinstall}
233 dmorgan 463625 %endif
234    
235 luigiwalser 1237287 # not-duplicated scriplets for normal/debug packages
236 luigiwalser 795869 %global update_desktop_icons /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
237    
238 luigiwalser 1051353
239 ns80 1183461 %define post_script() %{expand:
240 luigiwalser 795869 update-desktop-database %{_datadir}/applications &> /dev/null || :
241     /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
242     exit 0
243     }
244    
245    
246 ns80 1183461 %define post_headless() %{expand:
247 luigiwalser 795869 %ifarch %{jit_arches}
248 luigiwalser 821647 # MetaspaceShared::generate_vtable_methods not implemented for PPC JIT
249     %ifnarch %{power64}
250 luigiwalser 1237287 #see https://bugzilla.redhat.com/show_bug.cgi?id=513605
251 ns80 1183461 %{jrebindir -- %{?1}}/java -Xshare:dump >/dev/null 2>/dev/null
252 luigiwalser 795869 %endif
253     %endif
254    
255 luigiwalser 926380 PRIORITY=%{priority}
256 ns80 1183461 if [ "%{?1}" == %{debug_suffix} ]; then
257 luigiwalser 926380 let PRIORITY=PRIORITY-1
258     fi
259    
260 luigiwalser 795869 ext=%{_extension}
261     alternatives \\
262 luigiwalser 1237287 --install %{_bindir}/java java %{jrebindir -- %{?1}}/java $PRIORITY --family %{name}.%{_arch} \\
263 ns80 1183461 --slave %{_jvmdir}/jre jre %{_jvmdir}/%{jredir -- %{?1}} \\
264     --slave %{_jvmjardir}/jre jre_exports %{_jvmjardir}/%{jrelnk -- %{?1}} \\
265     --slave %{_bindir}/jjs jjs %{jrebindir -- %{?1}}/jjs \\
266     --slave %{_bindir}/keytool keytool %{jrebindir -- %{?1}}/keytool \\
267     --slave %{_bindir}/orbd orbd %{jrebindir -- %{?1}}/orbd \\
268     --slave %{_bindir}/pack200 pack200 %{jrebindir -- %{?1}}/pack200 \\
269     --slave %{_bindir}/rmid rmid %{jrebindir -- %{?1}}/rmid \\
270     --slave %{_bindir}/rmiregistry rmiregistry %{jrebindir -- %{?1}}/rmiregistry \\
271     --slave %{_bindir}/servertool servertool %{jrebindir -- %{?1}}/servertool \\
272     --slave %{_bindir}/tnameserv tnameserv %{jrebindir -- %{?1}}/tnameserv \\
273     --slave %{_bindir}/policytool policytool %{jrebindir -- %{?1}}/policytool \\
274     --slave %{_bindir}/unpack200 unpack200 %{jrebindir -- %{?1}}/unpack200 \\
275 luigiwalser 795869 --slave %{_mandir}/man1/java.1$ext java.1$ext \\
276 ns80 1183461 %{_mandir}/man1/java-%{uniquesuffix -- %{?1}}.1$ext \\
277 luigiwalser 795869 --slave %{_mandir}/man1/jjs.1$ext jjs.1$ext \\
278 ns80 1183461 %{_mandir}/man1/jjs-%{uniquesuffix -- %{?1}}.1$ext \\
279 luigiwalser 795869 --slave %{_mandir}/man1/keytool.1$ext keytool.1$ext \\
280 ns80 1183461 %{_mandir}/man1/keytool-%{uniquesuffix -- %{?1}}.1$ext \\
281 luigiwalser 795869 --slave %{_mandir}/man1/orbd.1$ext orbd.1$ext \\
282 ns80 1183461 %{_mandir}/man1/orbd-%{uniquesuffix -- %{?1}}.1$ext \\
283 luigiwalser 795869 --slave %{_mandir}/man1/pack200.1$ext pack200.1$ext \\
284 ns80 1183461 %{_mandir}/man1/pack200-%{uniquesuffix -- %{?1}}.1$ext \\
285 luigiwalser 795869 --slave %{_mandir}/man1/rmid.1$ext rmid.1$ext \\
286 ns80 1183461 %{_mandir}/man1/rmid-%{uniquesuffix -- %{?1}}.1$ext \\
287 luigiwalser 795869 --slave %{_mandir}/man1/rmiregistry.1$ext rmiregistry.1$ext \\
288 ns80 1183461 %{_mandir}/man1/rmiregistry-%{uniquesuffix -- %{?1}}.1$ext \\
289 luigiwalser 795869 --slave %{_mandir}/man1/servertool.1$ext servertool.1$ext \\
290 ns80 1183461 %{_mandir}/man1/servertool-%{uniquesuffix -- %{?1}}.1$ext \\
291 luigiwalser 795869 --slave %{_mandir}/man1/tnameserv.1$ext tnameserv.1$ext \\
292 ns80 1183461 %{_mandir}/man1/tnameserv-%{uniquesuffix -- %{?1}}.1$ext \\
293 luigiwalser 926380 --slave %{_mandir}/man1/policytool.1$ext policytool.1$ext \\
294 ns80 1183461 %{_mandir}/man1/policytool-%{uniquesuffix -- %{?1}}.1$ext \\
295 luigiwalser 795869 --slave %{_mandir}/man1/unpack200.1$ext unpack200.1$ext \\
296 ns80 1183461 %{_mandir}/man1/unpack200-%{uniquesuffix -- %{?1}}.1$ext
297 luigiwalser 795869
298     for X in %{origin} %{javaver} ; do
299     alternatives \\
300     --install %{_jvmdir}/jre-"$X" \\
301 ns80 1183461 jre_"$X" %{_jvmdir}/%{jredir -- %{?1}} $PRIORITY --family %{name}.%{_arch} \\
302 luigiwalser 795869 --slave %{_jvmjardir}/jre-"$X" \\
303 ns80 1183461 jre_"$X"_exports %{_jvmdir}/%{jredir -- %{?1}}
304 luigiwalser 795869 done
305    
306 ns80 1183461 update-alternatives --install %{_jvmdir}/jre-%{javaver}-%{origin} jre_%{javaver}_%{origin} %{_jvmdir}/%{jrelnk -- %{?1}} $PRIORITY --family %{name}.%{_arch} \\
307     --slave %{_jvmjardir}/jre-%{javaver} jre_%{javaver}_%{origin}_exports %{jvmjardir -- %{?1}}
308 luigiwalser 795869
309     update-desktop-database %{_datadir}/applications &> /dev/null || :
310     /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
311 luigiwalser 1088711
312     # see pretrans where this file is declared
313     # also see that pretrans is only for nondebug
314 ns80 1183461 if [ ! "%{?1}" == %{debug_suffix} ]; then
315 luigiwalser 1088711 if [ -f %{_libexecdir}/copy_jdk_configs_fixFiles.sh ] ; then
316 ns80 1183461 sh %{_libexecdir}/copy_jdk_configs_fixFiles.sh %{rpm_state_dir}/%{name}.%{_arch} %{_jvmdir}/%{sdkdir -- %{?1}}
317 luigiwalser 1088711 fi
318     fi
319    
320 luigiwalser 795869 exit 0
321     }
322    
323 ns80 1183461 %define postun_script() %{expand:
324 luigiwalser 795869 update-desktop-database %{_datadir}/applications &> /dev/null || :
325     if [ $1 -eq 0 ] ; then
326     /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
327     %{update_desktop_icons}
328     fi
329     exit 0
330     }
331    
332    
333 ns80 1183461 %define postun_headless() %{expand:
334     alternatives --remove java %{jrebindir -- %{?1}}/java
335     alternatives --remove jre_%{origin} %{_jvmdir}/%{jredir -- %{?1}}
336     alternatives --remove jre_%{javaver} %{_jvmdir}/%{jredir -- %{?1}}
337     alternatives --remove jre_%{javaver}_%{origin} %{_jvmdir}/%{jrelnk -- %{?1}}
338 luigiwalser 795869 }
339    
340 ns80 1183461 %define posttrans_script() %{expand:
341 luigiwalser 795869 %{update_desktop_icons}
342     }
343    
344 ns80 1183461 %define post_devel() %{expand:
345 luigiwalser 926380
346     PRIORITY=%{priority}
347 ns80 1183461 if [ "%{?1}" == %{debug_suffix} ]; then
348 luigiwalser 926380 let PRIORITY=PRIORITY-1
349     fi
350    
351 luigiwalser 795869 ext=%{_extension}
352     alternatives \\
353 luigiwalser 1237287 --install %{_bindir}/javac javac %{sdkbindir -- %{?1}}/javac $PRIORITY --family %{name}.%{_arch} \\
354 ns80 1183461 --slave %{_jvmdir}/java java_sdk %{_jvmdir}/%{sdkdir -- %{?1}} \\
355     --slave %{_jvmjardir}/java java_sdk_exports %{_jvmjardir}/%{sdkdir -- %{?1}} \\
356     --slave %{_bindir}/appletviewer appletviewer %{sdkbindir -- %{?1}}/appletviewer \\
357     --slave %{_bindir}/extcheck extcheck %{sdkbindir -- %{?1}}/extcheck \\
358     --slave %{_bindir}/idlj idlj %{sdkbindir -- %{?1}}/idlj \\
359     --slave %{_bindir}/jar jar %{sdkbindir -- %{?1}}/jar \\
360     --slave %{_bindir}/jarsigner jarsigner %{sdkbindir -- %{?1}}/jarsigner \\
361     --slave %{_bindir}/javadoc javadoc %{sdkbindir -- %{?1}}/javadoc \\
362     --slave %{_bindir}/javah javah %{sdkbindir -- %{?1}}/javah \\
363     --slave %{_bindir}/javap javap %{sdkbindir -- %{?1}}/javap \\
364     --slave %{_bindir}/jcmd jcmd %{sdkbindir -- %{?1}}/jcmd \\
365     --slave %{_bindir}/jconsole jconsole %{sdkbindir -- %{?1}}/jconsole \\
366     --slave %{_bindir}/jdb jdb %{sdkbindir -- %{?1}}/jdb \\
367     --slave %{_bindir}/jdeps jdeps %{sdkbindir -- %{?1}}/jdeps \\
368     --slave %{_bindir}/jhat jhat %{sdkbindir -- %{?1}}/jhat \\
369     --slave %{_bindir}/jinfo jinfo %{sdkbindir -- %{?1}}/jinfo \\
370     --slave %{_bindir}/jmap jmap %{sdkbindir -- %{?1}}/jmap \\
371     --slave %{_bindir}/jps jps %{sdkbindir -- %{?1}}/jps \\
372     --slave %{_bindir}/jrunscript jrunscript %{sdkbindir -- %{?1}}/jrunscript \\
373     --slave %{_bindir}/jsadebugd jsadebugd %{sdkbindir -- %{?1}}/jsadebugd \\
374     --slave %{_bindir}/jstack jstack %{sdkbindir -- %{?1}}/jstack \\
375     --slave %{_bindir}/jstat jstat %{sdkbindir -- %{?1}}/jstat \\
376     --slave %{_bindir}/jstatd jstatd %{sdkbindir -- %{?1}}/jstatd \\
377     --slave %{_bindir}/native2ascii native2ascii %{sdkbindir -- %{?1}}/native2ascii \\
378     --slave %{_bindir}/rmic rmic %{sdkbindir -- %{?1}}/rmic \\
379     --slave %{_bindir}/schemagen schemagen %{sdkbindir -- %{?1}}/schemagen \\
380     --slave %{_bindir}/serialver serialver %{sdkbindir -- %{?1}}/serialver \\
381     --slave %{_bindir}/wsgen wsgen %{sdkbindir -- %{?1}}/wsgen \\
382     --slave %{_bindir}/wsimport wsimport %{sdkbindir -- %{?1}}/wsimport \\
383     --slave %{_bindir}/xjc xjc %{sdkbindir -- %{?1}}/xjc \\
384 luigiwalser 795869 --slave %{_mandir}/man1/appletviewer.1$ext appletviewer.1$ext \\
385 ns80 1183461 %{_mandir}/man1/appletviewer-%{uniquesuffix -- %{?1}}.1$ext \\
386 luigiwalser 795869 --slave %{_mandir}/man1/extcheck.1$ext extcheck.1$ext \\
387 ns80 1183461 %{_mandir}/man1/extcheck-%{uniquesuffix -- %{?1}}.1$ext \\
388 luigiwalser 795869 --slave %{_mandir}/man1/idlj.1$ext idlj.1$ext \\
389 ns80 1183461 %{_mandir}/man1/idlj-%{uniquesuffix -- %{?1}}.1$ext \\
390 luigiwalser 795869 --slave %{_mandir}/man1/jar.1$ext jar.1$ext \\
391 ns80 1183461 %{_mandir}/man1/jar-%{uniquesuffix -- %{?1}}.1$ext \\
392 luigiwalser 795869 --slave %{_mandir}/man1/jarsigner.1$ext jarsigner.1$ext \\
393 ns80 1183461 %{_mandir}/man1/jarsigner-%{uniquesuffix -- %{?1}}.1$ext \\
394 luigiwalser 795869 --slave %{_mandir}/man1/javac.1$ext javac.1$ext \\
395 ns80 1183461 %{_mandir}/man1/javac-%{uniquesuffix -- %{?1}}.1$ext \\
396 luigiwalser 795869 --slave %{_mandir}/man1/javadoc.1$ext javadoc.1$ext \\
397 ns80 1183461 %{_mandir}/man1/javadoc-%{uniquesuffix -- %{?1}}.1$ext \\
398 luigiwalser 795869 --slave %{_mandir}/man1/javah.1$ext javah.1$ext \\
399 ns80 1183461 %{_mandir}/man1/javah-%{uniquesuffix -- %{?1}}.1$ext \\
400 luigiwalser 795869 --slave %{_mandir}/man1/javap.1$ext javap.1$ext \\
401 ns80 1183461 %{_mandir}/man1/javap-%{uniquesuffix -- %{?1}}.1$ext \\
402 luigiwalser 795869 --slave %{_mandir}/man1/jcmd.1$ext jcmd.1$ext \\
403 ns80 1183461 %{_mandir}/man1/jcmd-%{uniquesuffix -- %{?1}}.1$ext \\
404 luigiwalser 795869 --slave %{_mandir}/man1/jconsole.1$ext jconsole.1$ext \\
405 ns80 1183461 %{_mandir}/man1/jconsole-%{uniquesuffix -- %{?1}}.1$ext \\
406 luigiwalser 795869 --slave %{_mandir}/man1/jdb.1$ext jdb.1$ext \\
407 ns80 1183461 %{_mandir}/man1/jdb-%{uniquesuffix -- %{?1}}.1$ext \\
408 luigiwalser 795869 --slave %{_mandir}/man1/jdeps.1$ext jdeps.1$ext \\
409 ns80 1183461 %{_mandir}/man1/jdeps-%{uniquesuffix -- %{?1}}.1$ext \\
410 luigiwalser 795869 --slave %{_mandir}/man1/jhat.1$ext jhat.1$ext \\
411 ns80 1183461 %{_mandir}/man1/jhat-%{uniquesuffix -- %{?1}}.1$ext \\
412 luigiwalser 795869 --slave %{_mandir}/man1/jinfo.1$ext jinfo.1$ext \\
413 ns80 1183461 %{_mandir}/man1/jinfo-%{uniquesuffix -- %{?1}}.1$ext \\
414 luigiwalser 795869 --slave %{_mandir}/man1/jmap.1$ext jmap.1$ext \\
415 ns80 1183461 %{_mandir}/man1/jmap-%{uniquesuffix -- %{?1}}.1$ext \\
416 luigiwalser 795869 --slave %{_mandir}/man1/jps.1$ext jps.1$ext \\
417 ns80 1183461 %{_mandir}/man1/jps-%{uniquesuffix -- %{?1}}.1$ext \\
418 luigiwalser 795869 --slave %{_mandir}/man1/jrunscript.1$ext jrunscript.1$ext \\
419 ns80 1183461 %{_mandir}/man1/jrunscript-%{uniquesuffix -- %{?1}}.1$ext \\
420 luigiwalser 795869 --slave %{_mandir}/man1/jsadebugd.1$ext jsadebugd.1$ext \\
421 ns80 1183461 %{_mandir}/man1/jsadebugd-%{uniquesuffix -- %{?1}}.1$ext \\
422 luigiwalser 795869 --slave %{_mandir}/man1/jstack.1$ext jstack.1$ext \\
423 ns80 1183461 %{_mandir}/man1/jstack-%{uniquesuffix -- %{?1}}.1$ext \\
424 luigiwalser 795869 --slave %{_mandir}/man1/jstat.1$ext jstat.1$ext \\
425 ns80 1183461 %{_mandir}/man1/jstat-%{uniquesuffix -- %{?1}}.1$ext \\
426 luigiwalser 795869 --slave %{_mandir}/man1/jstatd.1$ext jstatd.1$ext \\
427 ns80 1183461 %{_mandir}/man1/jstatd-%{uniquesuffix -- %{?1}}.1$ext \\
428 luigiwalser 795869 --slave %{_mandir}/man1/native2ascii.1$ext native2ascii.1$ext \\
429 ns80 1183461 %{_mandir}/man1/native2ascii-%{uniquesuffix -- %{?1}}.1$ext \\
430 luigiwalser 795869 --slave %{_mandir}/man1/rmic.1$ext rmic.1$ext \\
431 ns80 1183461 %{_mandir}/man1/rmic-%{uniquesuffix -- %{?1}}.1$ext \\
432 luigiwalser 795869 --slave %{_mandir}/man1/schemagen.1$ext schemagen.1$ext \\
433 ns80 1183461 %{_mandir}/man1/schemagen-%{uniquesuffix -- %{?1}}.1$ext \\
434 luigiwalser 795869 --slave %{_mandir}/man1/serialver.1$ext serialver.1$ext \\
435 ns80 1183461 %{_mandir}/man1/serialver-%{uniquesuffix -- %{?1}}.1$ext \\
436 luigiwalser 795869 --slave %{_mandir}/man1/wsgen.1$ext wsgen.1$ext \\
437 ns80 1183461 %{_mandir}/man1/wsgen-%{uniquesuffix -- %{?1}}.1$ext \\
438 luigiwalser 795869 --slave %{_mandir}/man1/wsimport.1$ext wsimport.1$ext \\
439 ns80 1183461 %{_mandir}/man1/wsimport-%{uniquesuffix -- %{?1}}.1$ext \\
440 luigiwalser 795869 --slave %{_mandir}/man1/xjc.1$ext xjc.1$ext \\
441 ns80 1183461 %{_mandir}/man1/xjc-%{uniquesuffix -- %{?1}}.1$ext
442 luigiwalser 795869
443     for X in %{origin} %{javaver} ; do
444     alternatives \\
445     --install %{_jvmdir}/java-"$X" \\
446 ns80 1183461 java_sdk_"$X" %{_jvmdir}/%{sdkdir -- %{?1}} $PRIORITY --family %{name}.%{_arch} \\
447 luigiwalser 795869 --slave %{_jvmjardir}/java-"$X" \\
448 ns80 1183461 java_sdk_"$X"_exports %{_jvmjardir}/%{sdkdir -- %{?1}}
449 luigiwalser 795869 done
450    
451 ns80 1183461 update-alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} java_sdk_%{javaver}_%{origin} %{_jvmdir}/%{sdkdir -- %{?1}} $PRIORITY --family %{name}.%{_arch} \\
452     --slave %{_jvmjardir}/java-%{javaver}-%{origin} java_sdk_%{javaver}_%{origin}_exports %{_jvmjardir}/%{sdkdir -- %{?1}}
453 luigiwalser 795869
454     update-desktop-database %{_datadir}/applications &> /dev/null || :
455     /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
456    
457     exit 0
458     }
459    
460 ns80 1183461 %define postun_devel() %{expand:
461     alternatives --remove javac %{sdkbindir -- %{?1}}/javac
462     alternatives --remove java_sdk_%{origin} %{_jvmdir}/%{sdkdir -- %{?1}}
463     alternatives --remove java_sdk_%{javaver} %{_jvmdir}/%{sdkdir -- %{?1}}
464     alternatives --remove java_sdk_%{javaver}_%{origin} %{_jvmdir}/%{sdkdir -- %{?1}}
465 luigiwalser 795869
466     update-desktop-database %{_datadir}/applications &> /dev/null || :
467    
468     if [ $1 -eq 0 ] ; then
469     /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
470     %{update_desktop_icons}
471     fi
472     exit 0
473     }
474    
475 ns80 1183461 %define posttrans_devel() %{expand:
476 luigiwalser 795869 %{update_desktop_icons}
477     }
478    
479 ns80 1183461 %define post_javadoc() %{expand:
480 luigiwalser 926380
481     PRIORITY=%{priority}
482 ns80 1183461 if [ "%{?1}" == %{debug_suffix} ]; then
483 luigiwalser 926380 let PRIORITY=PRIORITY-1
484     fi
485    
486 luigiwalser 795869 alternatives \\
487 ns80 1183461 --install %{_javadocdir}/java javadocdir %{_javadocdir}/%{uniquejavadocdir -- %{?1}}/api \\
488 luigiwalser 1237287 $PRIORITY --family %{name}
489 luigiwalser 795869 exit 0
490     }
491    
492 ns80 1183461 %define postun_javadoc() %{expand:
493     alternatives --remove javadocdir %{_javadocdir}/%{uniquejavadocdir -- %{?1}}/api
494 luigiwalser 795869 exit 0
495     }
496    
497 ns80 1183461 %define post_javadoc_zip() %{expand:
498 luigiwalser 1004176
499     PRIORITY=%{priority}
500 ns80 1183461 if [ "%{?1}" == %{debug_suffix} ]; then
501 luigiwalser 1004176 let PRIORITY=PRIORITY-1
502     fi
503    
504     alternatives \\
505 ns80 1183461 --install %{_javadocdir}/java-zip javadoczip %{_javadocdir}/%{uniquejavadocdir -- %{?1}}.zip \\
506 luigiwalser 1004176 $PRIORITY --family %{name}
507     exit 0
508     }
509    
510 ns80 1183461 %define postun_javadoc_zip() %{expand:
511     alternatives --remove javadoczip %{_javadocdir}/%{uniquejavadocdir -- %{?1}}.zip
512 luigiwalser 1004176 exit 0
513     }
514    
515 ns80 1183461 %define files_jre() %{expand:
516 luigiwalser 1237287 %{_datadir}/icons/hicolor/*x*/apps/java-%{javaver}.png
517 ns80 1183461 %{_datadir}/applications/*policytool%{?1}.desktop
518     %{_jvmdir}/%{sdkdir -- %{?1}}/jre/lib/%{archinstall}/libjsoundalsa.so
519     %{_jvmdir}/%{sdkdir -- %{?1}}/jre/lib/%{archinstall}/libsplashscreen.so
520     %{_jvmdir}/%{sdkdir -- %{?1}}/jre/lib/%{archinstall}/libawt_xawt.so
521     %{_jvmdir}/%{sdkdir -- %{?1}}/jre/lib/%{archinstall}/libjawt.so
522     %{_jvmdir}/%{sdkdir -- %{?1}}/jre/bin/policytool
523 luigiwalser 795869 }
524    
525    
526 ns80 1183461 %define files_jre_headless() %{expand:
527 luigiwalser 795869 %defattr(-,root,root,-)
528 luigiwalser 1237287 %license %{buildoutputdir -- %{?1}}/images/%{j2sdkimage}/jre/ASSEMBLY_EXCEPTION
529     %license %{buildoutputdir -- %{?1}}/images/%{j2sdkimage}/jre/LICENSE
530     %license %{buildoutputdir -- %{?1}}/images/%{j2sdkimage}/jre/THIRD_PARTY_README
531 ns80 1183461 %dir %{_jvmdir}/%{sdkdir -- %{?1}}
532     %{_jvmdir}/%{jrelnk -- %{?1}}
533     %{_jvmjardir}/%{jrelnk -- %{?1}}
534     %{jvmjardir -- %{?1}}
535 luigiwalser 795869 %{_jvmprivdir}/*
536 ns80 1183461 %dir %{_jvmdir}/%{jredir -- %{?1}}/lib/security
537     %{_jvmdir}/%{jredir -- %{?1}}/lib/security/cacerts
538     %dir %{_jvmdir}/%{jredir -- %{?1}}
539     %dir %{_jvmdir}/%{jredir -- %{?1}}/bin
540     %dir %{_jvmdir}/%{jredir -- %{?1}}/lib
541     %{_jvmdir}/%{jredir -- %{?1}}/bin/java
542     %{_jvmdir}/%{jredir -- %{?1}}/bin/jjs
543     %{_jvmdir}/%{jredir -- %{?1}}/bin/keytool
544     %{_jvmdir}/%{jredir -- %{?1}}/bin/orbd
545     %{_jvmdir}/%{jredir -- %{?1}}/bin/pack200
546     %{_jvmdir}/%{jredir -- %{?1}}/bin/rmid
547     %{_jvmdir}/%{jredir -- %{?1}}/bin/rmiregistry
548     %{_jvmdir}/%{jredir -- %{?1}}/bin/servertool
549     %{_jvmdir}/%{jredir -- %{?1}}/bin/tnameserv
550     %{_jvmdir}/%{jredir -- %{?1}}/bin/unpack200
551 ns80 1223836 %dir %{_jvmdir}/%{jredir -- %{?1}}/lib/security/policy/unlimited/
552     %dir %{_jvmdir}/%{jredir -- %{?1}}/lib/security/policy/limited/
553     %dir %{_jvmdir}/%{jredir -- %{?1}}/lib/security/policy/
554 ns80 1183461 %config(noreplace) %{_jvmdir}/%{jredir -- %{?1}}/lib/security/policy/unlimited/US_export_policy.jar
555     %config(noreplace) %{_jvmdir}/%{jredir -- %{?1}}/lib/security/policy/unlimited/local_policy.jar
556     %config(noreplace) %{_jvmdir}/%{jredir -- %{?1}}/lib/security/policy/limited/US_export_policy.jar
557     %config(noreplace) %{_jvmdir}/%{jredir -- %{?1}}/lib/security/policy/limited/local_policy.jar
558     %config(noreplace) %{_jvmdir}/%{jredir -- %{?1}}/lib/security/java.policy
559     %config(noreplace) %{_jvmdir}/%{jredir -- %{?1}}/lib/security/java.security
560     %config(noreplace) %{_jvmdir}/%{jredir -- %{?1}}/lib/security/blacklisted.certs
561     %config(noreplace) %{_jvmdir}/%{jredir -- %{?1}}/lib/logging.properties
562     %config(noreplace) %{_jvmdir}/%{jredir -- %{?1}}/lib/calendars.properties
563     %{_mandir}/man1/java-%{uniquesuffix -- %{?1}}.1*
564     %{_mandir}/man1/jjs-%{uniquesuffix -- %{?1}}.1*
565     %{_mandir}/man1/keytool-%{uniquesuffix -- %{?1}}.1*
566     %{_mandir}/man1/orbd-%{uniquesuffix -- %{?1}}.1*
567     %{_mandir}/man1/pack200-%{uniquesuffix -- %{?1}}.1*
568     %{_mandir}/man1/rmid-%{uniquesuffix -- %{?1}}.1*
569     %{_mandir}/man1/rmiregistry-%{uniquesuffix -- %{?1}}.1*
570     %{_mandir}/man1/servertool-%{uniquesuffix -- %{?1}}.1*
571     %{_mandir}/man1/tnameserv-%{uniquesuffix -- %{?1}}.1*
572     %{_mandir}/man1/unpack200-%{uniquesuffix -- %{?1}}.1*
573     %{_mandir}/man1/policytool-%{uniquesuffix -- %{?1}}.1*
574     %config(noreplace) %{_jvmdir}/%{jredir -- %{?1}}/lib/security/nss.cfg
575 luigiwalser 795869 %ifarch %{jit_arches}
576 luigiwalser 821647 %ifnarch %{power64}
577 ns80 1238532 %ghost %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/server/classes.jsa
578     %ghost %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/client/classes.jsa
579 luigiwalser 795869 %endif
580 luigiwalser 821647 %endif
581 ns80 1183461 %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/server/
582     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/client/
583     %dir %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}
584     %dir %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/jli
585     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/jli/libjli.so
586     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/jvm.cfg
587     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libattach.so
588     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libawt.so
589     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libawt_headless.so
590     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libdt_socket.so
591     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libfontmanager.so
592     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libhprof.so
593     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libinstrument.so
594     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libj2gss.so
595     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libj2pcsc.so
596     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libj2pkcs11.so
597     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libjaas_unix.so
598     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libjava.so
599     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libjava_crw_demo.so
600     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libjavajpeg.so
601     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libjdwp.so
602     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libjsdt.so
603     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libjsig.so
604     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libjsound.so
605     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/liblcms.so
606     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libmanagement.so
607     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libmlib_image.so
608     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libnet.so
609     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libnio.so
610     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libnpt.so
611 luigiwalser 1176046 %ifarch x86_64 %{ix86} %{aarch64}
612 ns80 1183461 %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libsaproc.so
613 luigiwalser 1176046 %endif
614 ns80 1183461 %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libsctp.so
615     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libsunec.so
616     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libunpack.so
617     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libverify.so
618     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libzip.so
619     %{_jvmdir}/%{jredir -- %{?1}}/lib/charsets.jar
620     %{_jvmdir}/%{jredir -- %{?1}}/lib/classlist
621     %{_jvmdir}/%{jredir -- %{?1}}/lib/content-types.properties
622     %{_jvmdir}/%{jredir -- %{?1}}/lib/currency.data
623     %{_jvmdir}/%{jredir -- %{?1}}/lib/flavormap.properties
624     %{_jvmdir}/%{jredir -- %{?1}}/lib/hijrah-config-umalqura.properties
625     %{_jvmdir}/%{jredir -- %{?1}}/lib/images/cursors/*
626     %{_jvmdir}/%{jredir -- %{?1}}/lib/jce.jar
627     %{_jvmdir}/%{jredir -- %{?1}}/lib/jexec
628     %{_jvmdir}/%{jredir -- %{?1}}/lib/jsse.jar
629     %{_jvmdir}/%{jredir -- %{?1}}/lib/jvm.hprof.txt
630     %{_jvmdir}/%{jredir -- %{?1}}/lib/meta-index
631     %{_jvmdir}/%{jredir -- %{?1}}/lib/net.properties
632     %{_jvmdir}/%{jredir -- %{?1}}/lib/psfont.properties.ja
633     %{_jvmdir}/%{jredir -- %{?1}}/lib/psfontj2d.properties
634     %{_jvmdir}/%{jredir -- %{?1}}/lib/resources.jar
635     %{_jvmdir}/%{jredir -- %{?1}}/lib/rt.jar
636     %{_jvmdir}/%{jredir -- %{?1}}/lib/sound.properties
637     %{_jvmdir}/%{jredir -- %{?1}}/lib/tzdb.dat
638     %{_jvmdir}/%{jredir -- %{?1}}/lib/management-agent.jar
639     %{_jvmdir}/%{jredir -- %{?1}}/lib/management/*
640     %{_jvmdir}/%{jredir -- %{?1}}/lib/cmm/*
641 luigiwalser 1237287 %{_jvmdir}/%{jredir -- %{?1}}/lib/ext/*
642 ns80 1183461 %dir %{_jvmdir}/%{jredir -- %{?1}}/lib/images
643     %dir %{_jvmdir}/%{jredir -- %{?1}}/lib/images/cursors
644     %dir %{_jvmdir}/%{jredir -- %{?1}}/lib/management
645     %dir %{_jvmdir}/%{jredir -- %{?1}}/lib/cmm
646     %dir %{_jvmdir}/%{jredir -- %{?1}}/lib/ext
647 luigiwalser 795869 }
648    
649 ns80 1183461 %define files_devel() %{expand:
650 luigiwalser 795869 %defattr(-,root,root,-)
651 luigiwalser 1237287 %license %{buildoutputdir -- %{?1}}/images/%{j2sdkimage}/ASSEMBLY_EXCEPTION
652     %license %{buildoutputdir -- %{?1}}/images/%{j2sdkimage}/LICENSE
653     %license %{buildoutputdir -- %{?1}}/images/%{j2sdkimage}/THIRD_PARTY_README
654 ns80 1183461 %dir %{_jvmdir}/%{sdkdir -- %{?1}}/bin
655     %dir %{_jvmdir}/%{sdkdir -- %{?1}}/include
656     %dir %{_jvmdir}/%{sdkdir -- %{?1}}/lib
657     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/appletviewer
658     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/extcheck
659     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/idlj
660     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jar
661     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jarsigner
662     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/java
663     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/javac
664     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/javadoc
665     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/javah
666     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/javap
667     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/java-rmi.cgi
668     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jcmd
669     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jconsole
670     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jdb
671     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jdeps
672     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jhat
673     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jinfo
674     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jjs
675     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jmap
676     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jps
677     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jrunscript
678     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jsadebugd
679     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jstack
680     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jstat
681     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/jstatd
682     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/keytool
683     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/native2ascii
684     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/orbd
685     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/pack200
686     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/policytool
687     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/rmic
688     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/rmid
689     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/rmiregistry
690     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/schemagen
691     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/serialver
692     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/servertool
693     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/tnameserv
694     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/unpack200
695     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/wsgen
696     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/wsimport
697     %{_jvmdir}/%{sdkdir -- %{?1}}/bin/xjc
698     %{_jvmdir}/%{sdkdir -- %{?1}}/include/*
699     %{_jvmdir}/%{sdkdir -- %{?1}}/lib/%{archinstall}
700     %{_jvmdir}/%{sdkdir -- %{?1}}/lib/ct.sym
701     %{_jvmdir}/%{sdkdir -- %{?1}}/lib/ir.idl
702     %{_jvmdir}/%{sdkdir -- %{?1}}/lib/jconsole.jar
703     %{_jvmdir}/%{sdkdir -- %{?1}}/lib/orb.idl
704 luigiwalser 1176046 %ifarch x86_64 %{ix86}
705 ns80 1183461 %{_jvmdir}/%{sdkdir -- %{?1}}/lib/sa-jdi.jar
706 luigiwalser 1176046 %endif
707 ns80 1183461 %{_jvmdir}/%{sdkdir -- %{?1}}/lib/dt.jar
708     %{_jvmdir}/%{sdkdir -- %{?1}}/lib/jexec
709     %{_jvmdir}/%{sdkdir -- %{?1}}/lib/tools.jar
710     %{_jvmjardir}/%{sdkdir -- %{?1}}
711     %{_datadir}/applications/*jconsole%{?1}.desktop
712     %{_mandir}/man1/appletviewer-%{uniquesuffix -- %{?1}}.1*
713     %{_mandir}/man1/extcheck-%{uniquesuffix -- %{?1}}.1*
714     %{_mandir}/man1/idlj-%{uniquesuffix -- %{?1}}.1*
715     %{_mandir}/man1/jar-%{uniquesuffix -- %{?1}}.1*
716     %{_mandir}/man1/jarsigner-%{uniquesuffix -- %{?1}}.1*
717     %{_mandir}/man1/javac-%{uniquesuffix -- %{?1}}.1*
718     %{_mandir}/man1/javadoc-%{uniquesuffix -- %{?1}}.1*
719     %{_mandir}/man1/javah-%{uniquesuffix -- %{?1}}.1*
720     %{_mandir}/man1/javap-%{uniquesuffix -- %{?1}}.1*
721     %{_mandir}/man1/jconsole-%{uniquesuffix -- %{?1}}.1*
722     %{_mandir}/man1/jcmd-%{uniquesuffix -- %{?1}}.1*
723     %{_mandir}/man1/jdb-%{uniquesuffix -- %{?1}}.1*
724     %{_mandir}/man1/jdeps-%{uniquesuffix -- %{?1}}.1*
725     %{_mandir}/man1/jhat-%{uniquesuffix -- %{?1}}.1*
726     %{_mandir}/man1/jinfo-%{uniquesuffix -- %{?1}}.1*
727     %{_mandir}/man1/jmap-%{uniquesuffix -- %{?1}}.1*
728     %{_mandir}/man1/jps-%{uniquesuffix -- %{?1}}.1*
729     %{_mandir}/man1/jrunscript-%{uniquesuffix -- %{?1}}.1*
730     %{_mandir}/man1/jsadebugd-%{uniquesuffix -- %{?1}}.1*
731     %{_mandir}/man1/jstack-%{uniquesuffix -- %{?1}}.1*
732     %{_mandir}/man1/jstat-%{uniquesuffix -- %{?1}}.1*
733     %{_mandir}/man1/jstatd-%{uniquesuffix -- %{?1}}.1*
734     %{_mandir}/man1/native2ascii-%{uniquesuffix -- %{?1}}.1*
735     %{_mandir}/man1/rmic-%{uniquesuffix -- %{?1}}.1*
736     %{_mandir}/man1/schemagen-%{uniquesuffix -- %{?1}}.1*
737     %{_mandir}/man1/serialver-%{uniquesuffix -- %{?1}}.1*
738     %{_mandir}/man1/wsgen-%{uniquesuffix -- %{?1}}.1*
739     %{_mandir}/man1/wsimport-%{uniquesuffix -- %{?1}}.1*
740     %{_mandir}/man1/xjc-%{uniquesuffix -- %{?1}}.1*
741 luigiwalser 795869 %if %{with_systemtap}
742 luigiwalser 820279 %dir %{tapsetroot}
743     %dir %{tapsetdir}
744 luigiwalser 1237287 %{tapsetdir}/*%{version}-%{release}.%{_arch}%{?1}.stp
745     %dir %{_jvmdir}/%{sdkdir -- %{?1}}/tapset
746     %{_jvmdir}/%{sdkdir -- %{?1}}/tapset/*.stp
747 luigiwalser 795869 %endif
748     }
749    
750 ns80 1183461 %define files_demo() %{expand:
751 luigiwalser 795869 %defattr(-,root,root,-)
752 luigiwalser 1237287 %license %{buildoutputdir -- %{?1}}/images/%{j2sdkimage}/jre/LICENSE
753 luigiwalser 795869 }
754    
755 ns80 1183461 %define files_src() %{expand:
756 luigiwalser 795869 %defattr(-,root,root,-)
757 luigiwalser 1237287 %doc README.src
758 ns80 1183461 %{_jvmdir}/%{sdkdir -- %{?1}}/src.zip
759 luigiwalser 795869 }
760    
761 ns80 1183461 %define files_javadoc() %{expand:
762 luigiwalser 795869 %defattr(-,root,root,-)
763 ns80 1183461 %doc %{_javadocdir}/%{uniquejavadocdir -- %{?1}}
764 luigiwalser 1237287 %license %{buildoutputdir -- %{?1}}/images/%{j2sdkimage}/jre/LICENSE
765 luigiwalser 795869 }
766    
767 ns80 1183461 %define files_javadoc_zip() %{expand:
768 luigiwalser 1004176 %defattr(-,root,root,-)
769 ns80 1183461 %doc %{_javadocdir}/%{uniquejavadocdir -- %{?1}}.zip
770 luigiwalser 1237287 %license %{buildoutputdir -- %{?1}}/images/%{j2sdkimage}/jre/LICENSE
771 luigiwalser 1004176 }
772    
773 ns80 1183461 %define files_accessibility() %{expand:
774     %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libatk-wrapper.so
775     %{_jvmdir}/%{jredir -- %{?1}}/lib/ext/java-atk-wrapper.jar
776     %{_jvmdir}/%{jredir -- %{?1}}/lib/accessibility.properties
777 luigiwalser 795869 }
778    
779 luigiwalser 1237287 # not-duplicated requires/provides/obsolate for normal/debug packages
780 ns80 1183461 %define java_rpo() %{expand:
781 luigiwalser 795869 Requires: fontconfig
782     Requires: x11-font-type1
783    
784     # Requires rest of java
785 ns80 1183461 Requires: %{name}-headless%{?1} = %{epoch}:%{version}-%{release}
786     #OrderWithRequires: %{name}-headless%{?1} = %{epoch}:%{version}-%{release}
787 luigiwalser 795869
788    
789 luigiwalser 1237287 # Standard JPackage base provides.
790     Provides: jre-%{javaver}-%{origin}%{?1} = %{epoch}:%{version}-%{release}
791 ns80 1183461 Provides: jre-%{origin}%{?1} = %{epoch}:%{version}-%{release}
792     Provides: jre-%{javaver}%{?1} = %{epoch}:%{version}-%{release}
793     Provides: java-%{javaver}%{?1} = %{epoch}:%{version}-%{release}
794 luigiwalser 1237287 Provides: jre = %{javaver}%{?1}
795 ns80 1183461 Provides: java-%{origin}%{?1} = %{epoch}:%{version}-%{release}
796     Provides: java%{?1} = %{epoch}:%{javaver}
797 luigiwalser 795869 # Standard JPackage extensions provides.
798 ns80 1183461 Provides: java-fonts%{?1} = %{epoch}:%{version}
799 luigiwalser 795869
800 ns80 1183461 Obsoletes: java-1.7.0-openjdk%{?1}
801 luigiwalser 795869 }
802    
803 ns80 1183461 %define java_headless_rpo() %{expand:
804 luigiwalser 1237287 # Require /etc/pki/java/cacerts.
805 luigiwalser 795902 #Requires: ca-certificates
806     Requires: rootcerts-java
807 luigiwalser 795869 # Require jpackage-utils for ownership of /usr/lib/jvm/
808     Requires: jpackage-utils
809     # Require zoneinfo data provided by tzdata-java subpackage.
810 luigiwalser 822753 Requires: timezone-java >= 2015d
811 luigiwalser 855971 # libsctp.so.1 is being `dlopen`ed on demand
812     Requires: lksctp-tools
813 luigiwalser 926380 # tool to copy jdk's configs - should be Recommends only, but then only dnf/yum eforce it, not rpm transaction and so no configs are persisted when pure rpm -u is run. I t may be consiedered as regression
814 luigiwalser 1176046 Requires: copy-jdk-configs >= 3.3
815 luigiwalser 926380 #OrderWithRequires: copy-jdk-configs
816 luigiwalser 1237287 # Post requires alternatives to install tool alternatives.
817 lmenut 1039032 Requires(post): update-alternatives
818 luigiwalser 926380 # in version 1.7 and higher for --family switch
819 luigiwalser 928577 Requires(post): chkconfig >= 1.7-3
820 luigiwalser 1237287 # Postun requires alternatives to uninstall tool alternatives.
821 lmenut 1039032 Requires(postun): update-alternatives
822 luigiwalser 926380 # in version 1.7 and higher for --family switch
823 luigiwalser 928577 Requires(postun): chkconfig >= 1.7-3
824 luigiwalser 795869
825 luigiwalser 1237287 # Standard JPackage base provides.
826 ns80 1183461 Provides: jre-%{javaver}-%{origin}-headless%{?1} = %{epoch}:%{version}-%{release}
827     Provides: jre-%{origin}-headless%{?1} = %{epoch}:%{version}-%{release}
828     Provides: jre-%{javaver}-headless%{?1} = %{epoch}:%{version}-%{release}
829     Provides: java-%{javaver}-headless%{?1} = %{epoch}:%{version}-%{release}
830 luigiwalser 1237287 Provides: jre-headless%{?1} = %{epoch}:%{javaver}
831 ns80 1183461 Provides: java-%{origin}-headless%{?1} = %{epoch}:%{version}-%{release}
832     Provides: java-headless%{?1} = %{epoch}:%{javaver}
833 luigiwalser 795869 # Standard JPackage extensions provides.
834 ns80 1183461 Provides: jndi%{?1} = %{epoch}:%{version}
835     Provides: jndi-ldap%{?1} = %{epoch}:%{version}
836     Provides: jndi-cos%{?1} = %{epoch}:%{version}
837     Provides: jndi-rmi%{?1} = %{epoch}:%{version}
838     Provides: jndi-dns%{?1} = %{epoch}:%{version}
839     Provides: jaas%{?1} = %{epoch}:%{version}
840     Provides: jsse%{?1} = %{epoch}:%{version}
841     Provides: jce%{?1} = %{epoch}:%{version}
842     Provides: jdbc-stdext%{?1} = 4.1
843     Provides: java-sasl%{?1} = %{epoch}:%{version}
844 luigiwalser 795869
845 ns80 1183461 Obsoletes: java-1.7.0-openjdk-headless%{?1}
846 luigiwalser 795869 }
847    
848 ns80 1183461 %define java_devel_rpo() %{expand:
849 luigiwalser 795869 # Require base package.
850 ns80 1183461 Requires: %{name}%{?1} = %{epoch}:%{version}-%{release}
851     #OrderWithRequires: %{name}-headless%{?1} = %{epoch}:%{version}-%{release}
852 luigiwalser 1237287 # Post requires alternatives to install tool alternatives.
853 lmenut 1039032 Requires(post): update-alternatives
854 luigiwalser 926380 # in version 1.7 and higher for --family switch
855 luigiwalser 928577 Requires(post): chkconfig >= 1.7-3
856 luigiwalser 1237287 # Postun requires alternatives to uninstall tool alternatives.
857 lmenut 1039032 Requires(postun): update-alternatives
858 luigiwalser 926380 # in version 1.7 and higher for --family switch
859 luigiwalser 928577 Requires(postun): chkconfig >= 1.7-3
860 luigiwalser 795869
861 luigiwalser 1237287 # Standard JPackage devel provides.
862 ns80 1183461 Provides: java-sdk-%{javaver}-%{origin}%{?1} = %{epoch}:%{version}
863     Provides: java-sdk-%{javaver}%{?1} = %{epoch}:%{version}
864     Provides: java-sdk-%{origin}%{?1} = %{epoch}:%{version}
865     Provides: java-sdk%{?1} = %{epoch}:%{javaver}
866     Provides: java-%{javaver}-devel%{?1} = %{epoch}:%{version}
867     Provides: java-devel-%{origin}%{?1} = %{epoch}:%{version}
868     Provides: java-devel%{?1} = %{epoch}:%{javaver}
869 luigiwalser 795869
870 ns80 1183461 Obsoletes: java-1.7.0-openjdk-devel%{?1}
871 luigiwalser 795869 }
872    
873    
874 ns80 1183461 %define java_demo_rpo() %{expand:
875     Requires: %{name}%{?1} = %{epoch}:%{version}-%{release}
876     #OrderWithRequires: %{name}-headless%{?1} = %{epoch}:%{version}-%{release}
877 luigiwalser 795869
878 luigiwalser 1097090 Provides: java-%{javaver}-%{origin}-demo = %{epoch}:%{version}-%{release}
879    
880 ns80 1238532 Obsoletes: java-1.7.0-openjdk-demo%{?1}
881 luigiwalser 795869 }
882    
883 ns80 1183461 %define java_javadoc_rpo() %{expand:
884     #OrderWithRequires: %{name}-headless%{?1} = %{epoch}:%{version}-%{release}
885 luigiwalser 1237287 # Post requires alternatives to install javadoc alternative.
886 lmenut 1039032 Requires(post): update-alternatives
887 luigiwalser 926380 # in version 1.7 and higher for --family switch
888 luigiwalser 928577 Requires(post): chkconfig >= 1.7-3
889 luigiwalser 1237287 # Postun requires alternatives to uninstall javadoc alternative.
890 lmenut 1039032 Requires(postun): update-alternatives
891 luigiwalser 926380 # in version 1.7 and higher for --family switch
892 luigiwalser 928577 Requires(postun): chkconfig >= 1.7-3
893 luigiwalser 795869
894 luigiwalser 1237287 # Standard JPackage javadoc provides.
895 ns80 1183461 Provides: java-javadoc%{?1} = %{epoch}:%{version}-%{release}
896     Provides: java-%{javaver}-javadoc%{?1} = %{epoch}:%{version}-%{release}
897 luigiwalser 1237287 Provides: java-%{javaver}-%{origin}-javadoc = %{epoch}:%{version}-%{release}
898 luigiwalser 795869
899 ns80 1183461 Obsoletes: java-1.7.0-openjdk-javadoc%{?1}
900 luigiwalser 795869
901     }
902    
903 ns80 1183461 %define java_src_rpo() %{expand:
904     Requires: %{name}-headless%{?1} = %{epoch}:%{version}-%{release}
905 luigiwalser 795869
906 luigiwalser 1237287 # Standard JPackage javadoc provides.
907 ns80 1183461 Provides: java-src%{?1} = %{epoch}:%{version}-%{release}
908     Provides: java-%{javaver}-src%{?1} = %{epoch}:%{version}-%{release}
909 luigiwalser 1237287 Provides: java-%{javaver}-%{origin}-src = %{epoch}:%{version}-%{release}
910 ns80 1183461 Obsoletes: java-1.7.0-openjdk-src%{?1}
911 luigiwalser 795869 }
912    
913 ns80 1183461 %define java_accessibility_rpo() %{expand:
914 luigiwalser 795869 Requires: java-atk-wrapper
915 ns80 1183461 Requires: %{name}%{?1} = %{epoch}:%{version}-%{release}
916     #OrderWithRequires: %{name}-headless%{?1} = %{epoch}:%{version}-%{release}
917 luigiwalser 795869
918 luigiwalser 1176046 Provides: java-%{javaver}-%{origin}-accessibility = %{epoch}:%{version}-%{release}
919 luigiwalser 1097090
920 ns80 1183461 Obsoletes: java-1.7.0-openjdk-accessibility%{?1}
921 luigiwalser 795869 }
922    
923 luigiwalser 1237287 # Prevent brp-java-repack-jars from being run.
924 dmorgan 463625 %global __jar_repack 0
925    
926     Name: java-%{javaver}-%{origin}
927 dmorgan 623672 Version: %{javaver}.%{updatever}
928 ns80 1254928 Release: %mkrel 1.%{buildver}.1
929 dmorgan 463625 # java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons,
930     # and this change was brought into RHEL-4. java-1.5.0-ibm packages
931     # also included the epoch in their virtual provides. This created a
932     # situation where in-the-wild java-1.5.0-ibm packages provided "java =
933     # 1:1.5.0". In RPM terms, "1.6.0 < 1:1.5.0" since 1.6.0 is
934     # interpreted as 0:1.6.0. So the "java >= 1.6.0" requirement would be
935     # satisfied by the 1:1.5.0 packages. Thus we need to set the epoch in
936     # JDK package >= 1.6.0 to 1, and packages referring to JDK virtual
937     # provides >= 1.6.0 must specify the epoch, "java >= 1:1.6.0".
938     Epoch: 1
939 luigiwalser 1237287 Summary: OpenJDK Runtime Environment
940 dmorgan 463625 Group: Development/Java
941    
942     License: ASL 1.1 and ASL 2.0 and GPL+ and GPLv2 and GPLv2 with exceptions and LGPL+ and LGPLv2 and MPLv1.0 and MPLv1.1 and Public Domain and W3C
943     URL: http://openjdk.java.net/
944    
945 luigiwalser 926380 # aarch64-port now contains integration forest of both aarch64 and normal jdk
946     # Source from upstream OpenJDK8 project. To regenerate, use
947 luigiwalser 1097090 # VERSION=%%{revision} FILE_NAME_ROOT=%%{project}-%%{repo}-${VERSION}
948 luigiwalser 926380 # REPO_ROOT=<path to checked-out repository> generate_source_tarball.sh
949 luigiwalser 995481 # where the source is obtained from http://hg.openjdk.java.net/%%{project}/%%{repo}
950 luigiwalser 1237287 Source0: %{project}-%{repo}-%{revision}.tar.xz
951 dmorgan 463625
952 luigiwalser 1128408 # Shenandoah HotSpot
953 ns80 1254928 Source1: aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u181-b13.tar.xz
954 ns80 1005189
955 dmorgan 463625 # Custom README for -src subpackage
956 luigiwalser 1237287 Source2: README.src
957 dmorgan 463625
958 luigiwalser 1128408 # Script to generate Source4 (requires mercurial)
959 luigiwalser 1051398 Source3: mga-add-missing-files.sh
960    
961 luigiwalser 1128408 # Additional source needed to build under Mageia
962 ns80 1254928 Source4: ecd5644a5ebe.tar.bz2
963 luigiwalser 1128408
964 dmorgan 463625 # Use 'generate_tarballs.sh' to generate the following tarballs
965 luigiwalser 1237287 # They are based on code contained in the IcedTea project (3.x).
966 dmorgan 463625
967 luigiwalser 1237287 # Systemtap tapsets. Zipped up to keep it small.
968 luigiwalser 1176046 Source8: systemtap-tapset-3.6.0pre02.tar.xz
969 dmorgan 463625
970 luigiwalser 1237287 # Desktop files. Adapated from IcedTea.
971 dmorgan 623672 Source9: jconsole.desktop.in
972     Source10: policytool.desktop.in
973    
974 dmorgan 463625 # nss configuration file
975 luigiwalser 1097090 Source11: nss.cfg.in
976 dmorgan 463625
977     # Removed libraries that we link instead
978 luigiwalser 820279 Source12: %{name}-remove-intree-libraries.sh
979 dmorgan 463625
980     # Ensure we aren't using the limited crypto policy
981     Source13: TestCryptoLevel.java
982    
983 luigiwalser 1004176 # Ensure ECDSA is working
984     Source14: TestECDSA.java
985    
986 luigiwalser 814784 Source20: repackReproduciblePolycies.sh
987    
988 dmorgan 623672 # New versions of config files with aarch64 support. This is not upstream yet.
989 dmorgan 463625 Source100: config.guess
990     Source101: config.sub
991    
992     # RPM/distribution specific patches
993    
994 luigiwalser 995481 # Accessibility patches
995 dmorgan 463625 # Ignore AWTError when assistive technologies are loaded
996     Patch1: %{name}-accessible-toolkit.patch
997 dmorgan 623672 # Restrict access to java-atk-wrapper classes
998     Patch3: java-atk-wrapper-security.patch
999 luigiwalser 926380 # Upstreamable patches
1000     # PR2737: Allow multiple initialization of PKCS11 libraries
1001 dmorgan 623672 Patch5: multiple-pkcs11-library-init.patch
1002 luigiwalser 926380 # PR2095, RH1163501: 2048-bit DH upper bound too small for Fedora infrastructure (sync with IcedTea 2.x)
1003     Patch504: rh1163501.patch
1004 luigiwalser 995481 # S4890063, PR2304, RH1214835: HPROF: default text truncated when using doe=n option
1005 luigiwalser 926380 Patch511: rh1214835.patch
1006     # Turn off strict overflow on IndicRearrangementProcessor{,2}.cpp following 8140543: Arrange font actions
1007     Patch512: no_strict_overflow.patch
1008 luigiwalser 995481 # Support for building the SunEC provider with the system NSS installation
1009     # PR1983: Support using the system installation of NSS with the SunEC provider
1010     # PR2127: SunEC provider crashes when built using system NSS
1011     # PR2815: Race condition in SunEC provider with system NSS
1012 luigiwalser 1004176 # PR2899: Don't use WithSeed versions of NSS functions as they don't fully process the seed
1013 luigiwalser 1043833 # PR2934: SunEC provider throwing KeyException with current NSS
1014 luigiwalser 1176046 # PR3479, RH1486025: ECC and NSS JVM crash
1015 luigiwalser 995481 Patch513: pr1983-jdk.patch
1016     Patch514: pr1983-root.patch
1017     Patch515: pr2127.patch
1018     Patch516: pr2815.patch
1019 luigiwalser 1004176 Patch517: pr2899.patch
1020 luigiwalser 1043833 Patch518: pr2934.patch
1021 luigiwalser 1176046 Patch519: pr3479-rh1486025.patch
1022 luigiwalser 1043833 # S8150954, RH1176206, PR2866: Taking screenshots on x11 composite desktop produces wrong result
1023     # In progress: http://mail.openjdk.java.net/pipermail/awt-dev/2016-March/010742.html
1024     Patch508: rh1176206-jdk.patch
1025     Patch509: rh1176206-root.patch
1026     # RH1337583, PR2974: PKCS#10 certificate requests now use CRLF line endings rather than system line endings
1027     Patch523: pr2974-rh1337583.patch
1028     # PR3083, RH1346460: Regression in SSL debug output without an ECC provider
1029     Patch528: pr3083-rh1346460.patch
1030 luigiwalser 1237287 # RH1566890: CVE-2018-3639
1031     Patch529: rh1566890_embargoed20180521.patch
1032 ns80 1254928 # PR3601: Fix additional -Wreturn-type issues introduced by 8061651
1033     Patch530: pr3601.patch
1034 luigiwalser 1220776 # 8196516, RH1538767: libfontmanager.so needs to be built with LDFLAGS so as to allow
1035     # linking with unresolved symbols.
1036 ns80 1254928 Patch531: rhbz_1538767_fix_linking.patch
1037 luigiwalser 1220776
1038     # Upstreamable debugging patches
1039 luigiwalser 1097090 # Patches 204 and 205 stop the build adding .gnu_debuglink sections to unstripped files
1040 ns80 1254928 # 8207234: More libraries with .gnu_debuglink sections added unconditionally
1041     Patch205: 8207234-dont-add-unnecessary-debug-links.patch
1042 dmorgan 623672
1043 luigiwalser 926380 # Arch-specific upstreamable patches
1044 luigiwalser 1237287 # s390: PR2415: JVM -Xmx requirement is too high on s390
1045 luigiwalser 659708 Patch100: %{name}-s390-java-opts.patch
1046 luigiwalser 1237287 # s390: Type fixing for s390
1047 dmorgan 463625 Patch102: %{name}-size_t.patch
1048 luigiwalser 1237287 # s390: PR3593: Use "%z" for size_t on s390 as size_t != intptr_t
1049     Patch103: pr3593-s390-size_t_format_flags.patch
1050     # x86: S8199936, PR3533: HotSpot generates code with unaligned stack, crashes on SSE operations (-mstackrealign workaround)
1051     Patch105: 8199936-pr3533-workaround.patch
1052 ns80 1254928 # AArch64: PR3519: Fix further functions with a missing return value (AArch64)
1053     Patch106: pr3519.patch
1054 dmorgan 463625
1055 luigiwalser 926380 # Patches which need backporting to 8u
1056     # S8073139, RH1191652; fix name of ppc64le architecture
1057     Patch601: %{name}-rh1191652-root.patch
1058     Patch602: %{name}-rh1191652-jdk.patch
1059     Patch603: %{name}-rh1191652-hotspot-aarch64.patch
1060     # Include all sources in src.zip
1061     Patch7: include-all-srcs.patch
1062     # 8035341: Allow using a system installed libpng
1063 dmorgan 463625 Patch202: system-libpng.patch
1064 luigiwalser 926380 # 8042159: Allow using a system-installed lcms2
1065 dmorgan 463625 Patch203: system-lcms.patch
1066 ns80 1254928 # S8074839, PR2462: Resolve disabled warnings for libunpack and the unpack200 binary
1067 luigiwalser 926380 # This fixes printf warnings that lead to build failure with -Werror=format-security from optflags
1068 luigiwalser 995481 Patch502: pr2462.patch
1069 ns80 1254928 # S8154313: Generated javadoc scattered all over the place
1070     Patch400: 8154313.patch
1071     # 8197429, PR3546, RH153662{2,3}: 32 bit java app started via JNI crashes with larger stack sizes
1072     Patch561: 8197429-pr3546-rh1536622.patch
1073     # 8171000, PR3542, RH1402819: Robot.createScreenCapture() crashes in wayland mode
1074     Patch563: 8171000-pr3542-rh1402819.patch
1075     # 8197546, PR3542, RH1402819: Fix for 8171000 breaks Solaris + Linux builds
1076     Patch564: 8197546-pr3542-rh1402819.patch
1077     # PR3559: Use ldrexd for atomic reads on ARMv7.
1078     Patch567: pr3559.patch
1079     # PR3591: Fix for bug 3533 doesn't add -mstackrealign to JDK code
1080     Patch571: pr3591.patch
1081     # 8184309, PR3596: Build warnings from GCC 7.1 on Fedora 26
1082     Patch572: 8184309-pr3596.patch
1083     # 8141570, PR3548: Fix Zero interpreter build for --disable-precompiled-headers
1084     Patch573: 8141570-pr3548.patch
1085     # 8143245, PR3548: Zero build requires disabled warnings
1086     Patch574: 8143245-pr3548.patch
1087     # 8197981, PR3548: Missing return statement in __sync_val_compare_and_swap_8
1088     Patch575: 8197981-pr3548.patch
1089     # 8064786, PR3599: Fix debug build after 8062808: Turn on the -Wreturn-type warning
1090     Patch576: 8064786-pr3599.patch
1091     # 8062808, PR3548: Turn on the -Wreturn-type warning
1092     Patch577: 8062808-pr3548.patch
1093     # 8207057, PR3613: Enable debug information for assembly code files
1094     Patch206: 8207057-pr3613-hotspot-assembler-debuginfo.patch
1095    
1096     # Patches appearing in 8u192
1097     # S8031668, PR2842: TOOLCHAIN_FIND_COMPILER unexpectedly resolves symbolic links
1098     Patch506: pr2842-01.patch
1099 luigiwalser 995481 # S8148351, PR2842: Only display resolved symlink for compiler, do not change path
1100     Patch507: pr2842-02.patch
1101 luigiwalser 1043833 # S6260348, PR3066: GTK+ L&F JTextComponent not respecting desktop caret blink rate
1102     Patch526: 6260348-pr3066.patch
1103 luigiwalser 1097090 # 8061305, PR3335, RH1423421: Javadoc crashes when method name ends with "Property"
1104     Patch538: 8061305-pr3335-rh1423421.patch
1105 luigiwalser 1220776 # 8188030, PR3459, RH1484079: AWT java apps fail to start when some minimal fonts are present
1106     Patch560: 8188030-pr3459-rh1484079.patch
1107 ns80 1254928 # 8205104, PR3539, RH1548475: Pass EXTRA_LDFLAGS to HotSpot build
1108 luigiwalser 1237287 Patch562: pr3539-rh1548475.patch
1109     # 8185723, PR3553: Zero: segfaults on Power PC 32-bit
1110     Patch565: 8185723-pr3553.patch
1111     # 8186461, PR3557: Zero's atomic_copy64() should use SPE instructions on linux-powerpcspe
1112     Patch566: 8186461-pr3557.patch
1113     # 8201509, PR3579: Zero: S390 31bit atomic_copy64 inline assembler is wrong
1114     Patch569: 8201509-pr3579.patch
1115     # 8165489, PR3589: Missing G1 barrier in Unsafe_GetObjectVolatile
1116     Patch570: 8165489-pr3589.patch
1117 ns80 1254928 # 8075942, PR3602: ArrayIndexOutOfBoundsException in sun.java2d.pisces.Dasher.goTo
1118     Patch578: 8075942-pr3602-rh1582032.patch
1119     # 8203182, PR3603: Release session if initialization of SunPKCS11 Signature fails
1120     Patch579: 8203182-pr3603-rh1568033.patch
1121     # 8206406, PR3610, RH1597825: StubCodeDesc constructor publishes partially-constructed objects on StubCodeDesc::_list
1122     Patch580: 8206406-pr3610-rh1597825.patch
1123     # 8146115, PR3508, RH1463098: Improve docker container detection and resource configuration usage
1124     Patch581: 8146115-pr3508-rh1463098.patch
1125     # 8206425: .gnu_debuglink sections added unconditionally when no debuginfo is stripped
1126     Patch204: 8206425-hotspot-remove-debuglink.patch
1127 dmorgan 463625
1128 luigiwalser 926380 # Patches ineligible for 8u
1129     # 8043805: Allow using a system-installed libjpeg
1130     Patch201: system-libjpeg.patch
1131 luigiwalser 1176046 Patch210: suse_linuxfilestore.patch
1132 luigiwalser 1220776 # custom securities
1133     Patch300: PR3183.patch
1134 luigiwalser 820279
1135 luigiwalser 926380 # Local fixes
1136 luigiwalser 1043833 # PR1834, RH1022017: Reduce curves reported by SSL to those in NSS
1137     Patch525: pr1834-rh1022017.patch
1138 luigiwalser 1062734 # Turn on AssumeMP by default on RHEL systems
1139     Patch534: always_assumemp.patch
1140 luigiwalser 1097090 # PR2888: OpenJDK should check for system cacerts database (e.g. /etc/pki/java/cacerts)
1141     Patch539: pr2888.patch
1142 luigiwalser 1237287 # PR3575, RH1567204: System cacerts database handling should not affect jssecacerts
1143     Patch540: pr3575-rh1567204.patch
1144 luigiwalser 820279
1145 luigiwalser 1237287 # Shenandoah fixes
1146    
1147 luigiwalser 926380 # Non-OpenJDK fixes
1148 dmorgan 623706
1149 dmorgan 463625 BuildRequires: autoconf
1150     BuildRequires: automake
1151 luigiwalser 1176045 BuildRequires: alsa-lib-devel
1152 luigiwalser 659708 BuildRequires: binutils
1153 dmorgan 463625 BuildRequires: cups-devel
1154     BuildRequires: desktop-file-utils
1155 luigiwalser 1237287 BuildRequires: elfutils
1156 dmorgan 463625 BuildRequires: fontconfig
1157     BuildRequires: freetype-devel
1158     BuildRequires: giflib-devel
1159     BuildRequires: gcc-c++
1160 luigiwalser 1080788 BuildRequires: gdb
1161 dmorgan 463625 BuildRequires: gtk2-devel
1162 luigiwalser 1176045 BuildRequires: lcms2-devel
1163     BuildRequires: libjpeg-devel
1164     BuildRequires: libpng-devel
1165     BuildRequires: libxslt-devel
1166     BuildRequires: libx11-devel
1167     BuildRequires: libxi-devel
1168     BuildRequires: libxinerama-devel
1169     BuildRequires: libxt-devel
1170     BuildRequires: libxtst-devel
1171 luigiwalser 671715 # Requirements for setting up the nss.cfg
1172 luigiwalser 1176045 BuildRequires: nss-devel
1173 dmorgan 463625 BuildRequires: pkgconfig
1174 dmorgan 623673 BuildRequires: x11-proto-devel
1175 dmorgan 463625 BuildRequires: zip
1176 luigiwalser 659708 BuildRequires: java-1.8.0-openjdk-devel
1177 luigiwalser 1237287 # Zero-assembler build requirement.
1178 dmorgan 463625 %ifnarch %{jit_arches}
1179     BuildRequires: libffi-devel
1180     %endif
1181 luigiwalser 822753 BuildRequires: timezone-java >= 2015d
1182 luigiwalser 926380 BuildRequires: patch >= 2.7.5
1183 luigiwalser 995481 # Earlier versions have a bug in tree vectorization on PPC
1184     BuildRequires: gcc >= 4.8.3-8
1185 dmorgan 463625
1186 dmorgan 489356 %if %{with_systemtap}
1187 dmorgan 623674 BuildRequires: systemtap
1188 dmorgan 463625 %endif
1189    
1190 luigiwalser 1237287 # this is built always, also during debug-only build
1191     # when it is built in debug-only, then this package is just placeholder
1192 luigiwalser 795869 %{java_rpo %{nil}}
1193 dmorgan 623672
1194 luigiwalser 795869 %description
1195 luigiwalser 1237287 The OpenJDK runtime environment.
1196 luigiwalser 671715
1197 luigiwalser 795869 %if %{include_debug_build}
1198 luigiwalser 1237287 %package debug
1199     Summary: OpenJDK Runtime Environment %{debug_on}
1200 luigiwalser 795869 Group: Development/Java
1201 dmorgan 623672
1202 ns80 1183461 %{java_rpo -- %{debug_suffix_unquoted}}
1203 luigiwalser 1237287 %description debug
1204     The OpenJDK runtime environment.
1205 luigiwalser 795869 %{debug_warning}
1206     %endif
1207 dmorgan 623672
1208 luigiwalser 795869 %if %{include_normal_build}
1209 dmorgan 623672 %package headless
1210 luigiwalser 1237287 Summary: OpenJDK Runtime Environment
1211 dmorgan 623672 Group: Development/Java
1212    
1213 luigiwalser 795869 %{java_headless_rpo %{nil}}
1214 dmorgan 463625
1215 luigiwalser 795869 %description headless
1216 luigiwalser 1237287 The OpenJDK runtime environment without audio and video support.
1217 luigiwalser 795869 %endif
1218 dmorgan 463625
1219 luigiwalser 795869 %if %{include_debug_build}
1220 luigiwalser 1237287 %package headless-debug
1221     Summary: OpenJDK Runtime Environment %{debug_on}
1222 luigiwalser 795869 Group: Development/Java
1223 luigiwalser 659708
1224 ns80 1183461 %{java_headless_rpo -- %{debug_suffix_unquoted}}
1225 luigiwalser 795869
1226 luigiwalser 1237287 %description headless-debug
1227     The OpenJDK runtime environment without audio and video support.
1228 luigiwalser 795869 %{debug_warning}
1229     %endif
1230 dmorgan 463625
1231 luigiwalser 795869 %if %{include_normal_build}
1232 dmorgan 463625 %package devel
1233 luigiwalser 1237287 Summary: OpenJDK Development Environment
1234 dmorgan 463625 Group: Development/Java
1235    
1236 luigiwalser 795869 %{java_devel_rpo %{nil}}
1237 dmorgan 463625
1238 luigiwalser 795869 %description devel
1239 luigiwalser 1237287 The OpenJDK development tools.
1240 luigiwalser 795869 %endif
1241 dmorgan 463625
1242 luigiwalser 795869 %if %{include_debug_build}
1243 luigiwalser 1237287 %package devel-debug
1244     Summary: OpenJDK Development Environment %{debug_on}
1245 luigiwalser 795869 Group: Development/Tools
1246 dmorgan 463625
1247 ns80 1183461 %{java_devel_rpo -- %{debug_suffix_unquoted}}
1248 luigiwalser 795869
1249 luigiwalser 1237287 %description devel-debug
1250     The OpenJDK development tools.
1251 luigiwalser 795869 %{debug_warning}
1252     %endif
1253 dmorgan 463625
1254 luigiwalser 795869 %if %{include_normal_build}
1255 dmorgan 463625 %package demo
1256 luigiwalser 1237287 Summary: OpenJDK Demos
1257 dmorgan 463625 Group: Development/Java
1258    
1259 luigiwalser 795869 %{java_demo_rpo %{nil}}
1260 dmorgan 463625
1261     %description demo
1262 luigiwalser 1237287 The OpenJDK demos.
1263 luigiwalser 795869 %endif
1264 dmorgan 463625
1265 luigiwalser 795869 %if %{include_debug_build}
1266 luigiwalser 1237287 %package demo-debug
1267     Summary: OpenJDK Demos %{debug_on}
1268 luigiwalser 795869 Group: Development/Java
1269    
1270 ns80 1183461 %{java_demo_rpo -- %{debug_suffix_unquoted}}
1271 luigiwalser 795869
1272 luigiwalser 1237287 %description demo-debug
1273     The OpenJDK demos.
1274 luigiwalser 795869 %{debug_warning}
1275     %endif
1276    
1277     %if %{include_normal_build}
1278 dmorgan 463625 %package src
1279 luigiwalser 1237287 Summary: OpenJDK Source Bundle
1280 dmorgan 463625 Group: Development/Java
1281 dmorgan 489356
1282 luigiwalser 795869 %{java_src_rpo %{nil}}
1283 dmorgan 463625
1284     %description src
1285 luigiwalser 1237287 The OpenJDK source bundle.
1286 luigiwalser 795869 %endif
1287 dmorgan 463625
1288 luigiwalser 795869 %if %{include_debug_build}
1289 luigiwalser 1237287 %package src-debug
1290     Summary: OpenJDK Source Bundle %{for_debug}
1291 luigiwalser 795869 Group: Development/Java
1292    
1293 ns80 1183461 %{java_src_rpo -- %{debug_suffix_unquoted}}
1294 luigiwalser 795869
1295 luigiwalser 1237287 %description src-debug
1296     The OpenJDK source bundle %{for_debug}.
1297 luigiwalser 795869 %endif
1298    
1299     %if %{include_normal_build}
1300 dmorgan 463625 %package javadoc
1301 luigiwalser 1237287 Summary: OpenJDK API Documentation
1302 dmorgan 463625 Group: Documentation
1303     Requires: jpackage-utils
1304     BuildArch: noarch
1305    
1306 luigiwalser 795869 %{java_javadoc_rpo %{nil}}
1307 dmorgan 463625
1308     %description javadoc
1309 luigiwalser 1237287 The OpenJDK API documentation.
1310 luigiwalser 795869 %endif
1311 dmorgan 463625
1312 luigiwalser 1004176 %if %{include_normal_build}
1313     %package javadoc-zip
1314 luigiwalser 1237287 Summary: OpenJDK API Documentation compressed in single archive
1315 luigiwalser 1004176 Group: Documentation
1316     Requires: javapackages-tools
1317     BuildArch: noarch
1318    
1319     %{java_javadoc_rpo %{nil}}
1320    
1321     %description javadoc-zip
1322 luigiwalser 1237287 The OpenJDK API documentation compressed in single archive.
1323 luigiwalser 1004176 %endif
1324    
1325 luigiwalser 795869 %if %{include_debug_build}
1326 luigiwalser 1237287 %package javadoc-debug
1327     Summary: OpenJDK API Documentation %{for_debug}
1328 luigiwalser 795869 Group: Documentation
1329     Requires: jpackage-utils
1330     BuildArch: noarch
1331    
1332 ns80 1183461 %{java_javadoc_rpo -- %{debug_suffix_unquoted}}
1333 luigiwalser 795869
1334 luigiwalser 1237287 %description javadoc-debug
1335     The OpenJDK API documentation %{for_debug}.
1336 luigiwalser 795869 %endif
1337    
1338 luigiwalser 1004176 %if %{include_debug_build}
1339 luigiwalser 1237287 %package javadoc-zip-debug
1340     Summary: OpenJDK API Documentation compressed in single archive %{for_debug}
1341 luigiwalser 1004176 Group: Documentation
1342     Requires: javapackages-tools
1343     BuildArch: noarch
1344    
1345 ns80 1183461 %{java_javadoc_rpo -- %{debug_suffix_unquoted}}
1346 luigiwalser 1004176
1347 luigiwalser 1237287 %description javadoc-zip-debug
1348     The OpenJDK API documentation compressed in single archive %{for_debug}.
1349 luigiwalser 1004176 %endif
1350    
1351    
1352 luigiwalser 795869 %if %{include_normal_build}
1353 dmorgan 623672 %package accessibility
1354 luigiwalser 1237287 Summary: OpenJDK accessibility connector
1355 dmorgan 623672
1356 luigiwalser 795869 %{java_accessibility_rpo %{nil}}
1357 luigiwalser 659708
1358 dmorgan 623672 %description accessibility
1359 luigiwalser 1237287 Enables accessibility support in OpenJDK by using java-atk-wrapper. This allows
1360 dmorgan 623672 compatible at-spi2 based accessibility programs to work for AWT and Swing-based
1361     programs.
1362    
1363 luigiwalser 1237287 Please note, the java-atk-wrapper is still in beta, and OpenJDK itself is still
1364 dmorgan 623672 being tuned to be working with accessibility features. There are known issues
1365     with accessibility on, so please do not install this package unless you really
1366     need to.
1367 luigiwalser 795869 %endif
1368 dmorgan 623672
1369 luigiwalser 795869 %if %{include_debug_build}
1370 luigiwalser 1237287 %package accessibility-debug
1371     Summary: OpenJDK accessibility connector %{for_debug}
1372 dmorgan 623672
1373 ns80 1183461 %{java_accessibility_rpo -- %{debug_suffix_unquoted}}
1374 luigiwalser 795869
1375 luigiwalser 1237287 %description accessibility-debug
1376 luigiwalser 795869 See normal java-%{version}-openjdk-accessibility description.
1377     %endif
1378    
1379 luigiwalser 1128408
1380     %if %{with_openjfx_binding}
1381     %package openjfx
1382     Summary: OpenJDK x OpenJFX connector. This package adds symliks finishing Java FX integration to %{name}
1383     Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
1384     Requires: openjfx%{?_isa}
1385     Provides: javafx = %{epoch}:%{version}-%{release}
1386     %description openjfx
1387     Set of links from OpenJDK (jre) to OpenJFX
1388    
1389     %package openjfx-devel
1390     Summary: OpenJDK x OpenJFX connector for FX developers. This package adds symliks finishing Java FX integration to %{name}-devel
1391     Requires: %{name}-devel%{?_isa} = %{epoch}:%{version}-%{release}
1392     Requires: openjfx-devel%{?_isa}
1393     Provides: javafx-devel = %{epoch}:%{version}-%{release}
1394     %description openjfx-devel
1395     Set of links from OpenJDK (sdk) to OpenJFX
1396    
1397     %if %{include_debug_build}
1398 luigiwalser 1237287 %package openjfx-debug
1399     Summary: OpenJDK x OpenJFX connector %{for_debug}. his package adds symliks finishing Java FX integration to %{name}-debug
1400     Requires: %{name}-debug%{?_isa} = %{epoch}:%{version}-%{release}
1401 luigiwalser 1128408 Requires: openjfx%{?_isa}
1402 luigiwalser 1237287 Provides: javafx-debug = %{epoch}:%{version}-%{release}
1403     %description openjfx-debug
1404     Set of links from OpenJDK-debug (jre) to normal OpenJFX. OpenJFX do not support debug buuilds of itself
1405 luigiwalser 1128408
1406 luigiwalser 1237287 %package openjfx-devel-debug
1407     Summary: OpenJDK x OpenJFX connector for FX developers %{for_debug}. This package adds symliks finishing Java FX integration to %{name}-devel-debug
1408     Requires: %{name}-devel-debug%{?_isa} = %{epoch}:%{version}-%{release}
1409 luigiwalser 1128408 Requires: openjfx-devel%{?_isa}
1410 luigiwalser 1237287 Provides: javafx-devel-debug = %{epoch}:%{version}-%{release}
1411     %description openjfx-devel-debug
1412     Set of links from OpenJDK-debug (sdk) to normal OpenJFX. OpenJFX do not support debug buuilds of itself
1413 luigiwalser 1128408 %endif
1414     %endif
1415    
1416 dmorgan 463625 %prep
1417 luigiwalser 795869 if [ %{include_normal_build} -eq 0 -o %{include_normal_build} -eq 1 ] ; then
1418     echo "include_normal_build is %{include_normal_build}"
1419     else
1420     echo "include_normal_build is %{include_normal_build}, thats invalid. Use 1 for yes or 0 for no"
1421     exit 11
1422     fi
1423     if [ %{include_debug_build} -eq 0 -o %{include_debug_build} -eq 1 ] ; then
1424     echo "include_debug_build is %{include_debug_build}"
1425     else
1426     echo "include_debug_build is %{include_debug_build}, thats invalid. Use 1 for yes or 0 for no"
1427     exit 12
1428     fi
1429     if [ %{include_debug_build} -eq 0 -a %{include_normal_build} -eq 0 ] ; then
1430 luigiwalser 1237287 echo "you have disabled both include_debug_build and include_debug_build. no go."
1431 luigiwalser 795869 exit 13
1432     fi
1433 luigiwalser 926380 %setup -q -c -n %{uniquesuffix ""} -T -a 0
1434 ns80 1005189 # Add the missing files to be able to build under Mageia
1435 luigiwalser 1128408 tar xjf %{SOURCE4} -C openjdk/jdk --strip-components=1 --overwrite
1436 luigiwalser 814843 # https://bugzilla.redhat.com/show_bug.cgi?id=1189084
1437 luigiwalser 814784 prioritylength=`expr length %{priority}`
1438     if [ $prioritylength -ne 7 ] ; then
1439     echo "priority must be 7 digits in total, violated"
1440     exit 14
1441     fi
1442 luigiwalser 926380 # For old patches
1443 luigiwalser 882500 ln -s openjdk jdk8
1444 luigiwalser 1043833 %if %{use_shenandoah_hotspot}
1445 luigiwalser 1097090 # On Shenandoah-supported architectures, replace HotSpot with
1446     # the Shenandoah version
1447 luigiwalser 1043833 pushd openjdk
1448 luigiwalser 1128408 tar -xf %{SOURCE1}
1449 luigiwalser 1043833 rm -rf hotspot
1450 luigiwalser 1097090 mv openjdk/hotspot .
1451 luigiwalser 1043833 rm -rf openjdk
1452     popd
1453     %endif
1454 luigiwalser 882500
1455 dmorgan 463625 cp %{SOURCE2} .
1456    
1457 dmorgan 623672 # replace outdated configure guess script
1458     #
1459     # the configure macro will do this too, but it also passes a few flags not
1460     # supported by openjdk configure script
1461 luigiwalser 855971 cp %{SOURCE100} openjdk/common/autoconf/build-aux/
1462     cp %{SOURCE101} openjdk/common/autoconf/build-aux/
1463 dmorgan 463625
1464     # OpenJDK patches
1465    
1466     # Remove libraries that are linked
1467     sh %{SOURCE12}
1468    
1469 luigiwalser 1097090 # System library fixes
1470 dmorgan 463625 %patch201
1471     %patch202
1472     %patch203
1473 luigiwalser 1097090
1474     # Debugging fixes
1475 luigiwalser 1080788 %patch204
1476     %patch205
1477     %patch206
1478 luigiwalser 1176046 %patch210
1479 luigiwalser 882500
1480 luigiwalser 1220776 %patch300
1481    
1482 dmorgan 463625 %patch1
1483 dmorgan 623672 %patch3
1484     %patch5
1485 luigiwalser 659708 %patch7
1486 dmorgan 463625
1487 luigiwalser 659708 # s390 build fixes
1488 dmorgan 463625 %patch100
1489     %patch102
1490 luigiwalser 926380 %patch103
1491 dmorgan 463625
1492 ns80 1254928 %patch106
1493 luigiwalser 1220776
1494 luigiwalser 1237287 # x86 fixes
1495     %patch105
1496    
1497 luigiwalser 1043833 # ppc64le fixes
1498 luigiwalser 855971 %patch603
1499     %patch601
1500     %patch602
1501    
1502 luigiwalser 1097090 # Upstreamable fixes
1503 luigiwalser 926380 %patch502
1504 luigiwalser 822753 %patch504
1505 luigiwalser 995481 %patch506
1506     %patch507
1507     %patch508
1508     %patch509
1509 luigiwalser 855971 %patch511
1510 luigiwalser 926380 %patch512
1511 luigiwalser 995489 #patch513
1512 luigiwalser 995524 #patch514
1513     #patch515
1514     #patch516
1515 luigiwalser 1004176 #patch517
1516 luigiwalser 1176046 #patch518
1517     #patch519
1518 ns80 1005270 %patch400
1519 luigiwalser 1043833 %patch523
1520     %patch526
1521     %patch528
1522 luigiwalser 1237287 %patch529
1523 luigiwalser 1088711 %patch538
1524 luigiwalser 1176046 %patch560
1525 luigiwalser 1237287 pushd openjdk/jdk
1526 ns80 1254928 %patch531 -p1
1527 luigiwalser 1237287 popd
1528 luigiwalser 1220776 %patch561
1529 luigiwalser 1237287 %patch562
1530     %patch563
1531     %patch564
1532     %patch565
1533     %patch566
1534     %patch567
1535     %patch569
1536     %patch571
1537     %patch572
1538 ns80 1254928 %patch573
1539     %patch574
1540     %patch575
1541     %patch576
1542     %patch577
1543     %patch578
1544     %patch579
1545     %patch580
1546     %patch581
1547 luigiwalser 822753
1548 luigiwalser 1097090 # RPM-only fixes
1549     %patch525
1550     %patch539
1551 luigiwalser 1237287 %patch540
1552 luigiwalser 1097090
1553 luigiwalser 1062734 # RHEL-only patches
1554     %if 0%{?rhel}
1555     %patch534
1556     %endif
1557    
1558 luigiwalser 1237287 # Shenandoah-only patches
1559     %if %{use_shenandoah_hotspot}
1560     %else
1561     %patch568
1562     %patch570
1563     %endif
1564    
1565 dmorgan 463625 # Extract systemtap tapsets
1566     %if %{with_systemtap}
1567 luigiwalser 1051353 tar -x -I xz -f %{SOURCE8}
1568 luigiwalser 795869 %if %{include_debug_build}
1569     cp -r tapset tapset%{debug_suffix}
1570     %endif
1571 dmorgan 463625
1572 luigiwalser 795869
1573     for suffix in %{build_loop} ; do
1574     for file in "tapset"$suffix/*.in; do
1575 luigiwalser 1237287 OUTPUT_FILE=`echo $file | sed -e s:%{javaver}\.stp\.in$:%{version}-%{release}.%{_arch}.stp:g`
1576     sed -e s:@ABS_SERVER_LIBJVM_SO@:%{_jvmdir}/%{sdkdir -- $suffix}/jre/lib/%{archinstall}/server/libjvm.so:g $file > $file.1
1577 luigiwalser 671715 # TODO find out which architectures other than i686 have a client vm
1578 dmorgan 623672 %ifarch %{ix86}
1579 luigiwalser 1237287 sed -e s:@ABS_CLIENT_LIBJVM_SO@:%{_jvmdir}/%{sdkdir -- $suffix}/jre/lib/%{archinstall}/client/libjvm.so:g $file.1 > $OUTPUT_FILE
1580 dmorgan 623672 %else
1581 luigiwalser 1237287 sed -e '/@ABS_CLIENT_LIBJVM_SO@/d' $file.1 > $OUTPUT_FILE
1582 dmorgan 623672 %endif
1583 luigiwalser 1237287 sed -i -e s:@ABS_JAVA_HOME_DIR@:%{_jvmdir}/%{sdkdir -- $suffix}:g $OUTPUT_FILE
1584     sed -i -e s:@INSTALL_ARCH_DIR@:%{archinstall}:g $OUTPUT_FILE
1585     sed -i -e s:@prefix@:%{_jvmdir}/%{sdkdir -- $suffix}/:g $OUTPUT_FILE
1586 luigiwalser 795869 done
1587 dmorgan 463625 done
1588 luigiwalser 795869 # systemtap tapsets ends
1589 luigiwalser 820279 %endif
1590 dmorgan 463625
1591 dmorgan 623672 # Prepare desktop files
1592 luigiwalser 795869 for suffix in %{build_loop} ; do
1593 dmorgan 623672 for file in %{SOURCE9} %{SOURCE10} ; do
1594 luigiwalser 795869 FILE=`basename $file | sed -e s:\.in$::g`
1595     EXT="${FILE##*.}"
1596     NAME="${FILE%.*}"
1597     OUTPUT_FILE=$NAME$suffix.$EXT
1598 luigiwalser 1237287 sed -e s:#JAVA_HOME#:%{sdkbindir -- $suffix}:g $file > $OUTPUT_FILE
1599     sed -i -e s:#JRE_HOME#:%{jrebindir -- $suffix}:g $OUTPUT_FILE
1600     sed -i -e s:#ARCH#:%{version}-%{release}.%{_arch}$suffix:g $OUTPUT_FILE
1601 dmorgan 623672 done
1602 luigiwalser 795869 done
1603 dmorgan 463625
1604 luigiwalser 1097090 # Setup nss.cfg
1605 luigiwalser 1237287 sed -e s:@NSS_LIBDIR@:%{NSS_LIBDIR}:g %{SOURCE11} > nss.cfg
1606 luigiwalser 1051353
1607 dmorgan 463625 %build
1608     # How many cpu's do we have?
1609 luigiwalser 926380 export NUM_PROC=%(/usr/bin/getconf _NPROCESSORS_ONLN 2> /dev/null || :)
1610 dmorgan 463625 export NUM_PROC=${NUM_PROC:-1}
1611 luigiwalser 926380 %if 0%{?_smp_ncpus_max}
1612     # Honor %%_smp_ncpus_max
1613     [ ${NUM_PROC} -gt %{?_smp_ncpus_max} ] && export NUM_PROC=%{?_smp_ncpus_max}
1614     %endif
1615 dmorgan 463625
1616 luigiwalser 1237287 # Build IcedTea and OpenJDK.
1617 luigiwalser 671715 %ifarch s390x sparc64 alpha %{power64} %{aarch64}
1618 dmorgan 463625 export ARCH_DATA_MODEL=64
1619     %endif
1620     %ifarch alpha
1621     export CFLAGS="$CFLAGS -mieee"
1622     %endif
1623    
1624 luigiwalser 926380 # We use ourcppflags because the OpenJDK build seems to
1625 luigiwalser 995481 # pass EXTRA_CFLAGS to the HotSpot C++ compiler...
1626     # Explicitly set the C++ standard as the default has changed on GCC >= 6
1627     EXTRA_CFLAGS="%ourcppflags -std=gnu++98 -Wno-error -fno-delete-null-pointer-checks -fno-lifetime-dse"
1628     EXTRA_CPP_FLAGS="%ourcppflags -std=gnu++98 -fno-delete-null-pointer-checks -fno-lifetime-dse"
1629 luigiwalser 757128 %ifarch %{power64} ppc
1630     # fix rpmlint warnings
1631     EXTRA_CFLAGS="$EXTRA_CFLAGS -fno-strict-aliasing"
1632     %endif
1633     export EXTRA_CFLAGS
1634 luigiwalser 671715
1635 luigiwalser 1237287 (cd openjdk/common/autoconf
1636 dmorgan 463625 bash ./autogen.sh
1637     )
1638    
1639 luigiwalser 795869 for suffix in %{build_loop} ; do
1640 luigiwalser 1237287 if [ "$suffix" = "%{debug_suffix}" ] ; then
1641     debugbuild=%{debugbuild_parameter}
1642 luigiwalser 795869 else
1643 luigiwalser 1237287 debugbuild=%{normalbuild_parameter}
1644 luigiwalser 795869 fi
1645    
1646 neoclust 1176302 mkdir -p %{buildoutputdir -- $suffix}
1647     pushd %{buildoutputdir -- $suffix}
1648 dmorgan 463625
1649     bash ../../configure \
1650     %ifnarch %{jit_arches}
1651     --with-jvm-variants=zero \
1652     %endif
1653 dmorgan 489356 --disable-zip-debug-info \
1654 dmorgan 623672 --with-milestone="fcs" \
1655 luigiwalser 659708 --with-update-version=%{updatever} \
1656 dmorgan 463625 --with-build-number=%{buildver} \
1657     --with-boot-jdk=/usr/lib/jvm/java-openjdk \
1658 luigiwalser 795869 --with-debug-level=$debugbuild \
1659 dmorgan 463625 --enable-unlimited-crypto \
1660 luigiwalser 1082028 --with-zlib=system \
1661 dmorgan 623672 --with-libjpeg=system \
1662 dmorgan 463625 --with-giflib=system \
1663     --with-libpng=system \
1664 luigiwalser 1237287 --with-lcms=bundled \
1665 dmorgan 463625 --with-stdc++lib=dynamic \
1666 luigiwalser 757128 --with-extra-cxxflags="$EXTRA_CPP_FLAGS" \
1667     --with-extra-cflags="$EXTRA_CFLAGS" \
1668 luigiwalser 926380 --with-extra-ldflags="%{ourldflags}" \
1669 luigiwalser 757128 --with-num-cores="$NUM_PROC"
1670 dmorgan 463625
1671 luigiwalser 820279 cat spec.gmk
1672     cat hotspot-spec.gmk
1673    
1674 dmorgan 623672 # The combination of FULL_DEBUG_SYMBOLS=0 and ALT_OBJCOPY=/does_not_exist
1675     # disables FDS for all build configs and reverts to pre-FDS make logic.
1676     # STRIP_POLICY=none says don't do any stripping. DEBUG_BINARIES=true says
1677     # ignore all the other logic about which debug options and just do '-g'.
1678 dmorgan 463625
1679 dmorgan 623672 make \
1680     DEBUG_BINARIES=true \
1681 luigiwalser 814801 JAVAC_FLAGS=-g \
1682 luigiwalser 659708 STRIP_POLICY=no_strip \
1683     POST_STRIP_CMD="" \
1684 dmorgan 623672 LOG=trace \
1685 luigiwalser 995481 SCTP_WERROR= \
1686 luigiwalser 926380 %{targets}
1687 dmorgan 623672
1688 luigiwalser 1004176 make zip-docs
1689    
1690 dmorgan 463625 # the build (erroneously) removes read permissions from some jars
1691     # this is a regression in OpenJDK 7 (our compiler):
1692     # http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1437
1693 luigiwalser 1237287 find images/%{j2sdkimage} -iname '*.jar' -exec chmod ugo+r {} \;
1694     chmod ugo+r images/%{j2sdkimage}/lib/ct.sym
1695 dmorgan 463625
1696 dmorgan 623672 # remove redundant *diz and *debuginfo files
1697 luigiwalser 1237287 find images/%{j2sdkimage} -iname '*.diz' -exec rm {} \;
1698     find images/%{j2sdkimage} -iname '*.debuginfo' -exec rm {} \;
1699 dmorgan 623672
1700 dmorgan 463625 popd >& /dev/null
1701    
1702 luigiwalser 671715 # Install nss.cfg right away as we will be using the JRE above
1703 luigiwalser 1237287 export JAVA_HOME=$(pwd)/%{buildoutputdir -- $suffix}/images/%{j2sdkimage}
1704 dmorgan 463625
1705 luigiwalser 671715 # Install nss.cfg right away as we will be using the JRE above
1706 luigiwalser 1097090 install -m 644 nss.cfg $JAVA_HOME/jre/lib/security/
1707 dmorgan 623672
1708 luigiwalser 659882 # Use system-wide tzdata
1709 luigiwalser 659877 rm $JAVA_HOME/jre/lib/tzdb.dat
1710     ln -s %{_datadir}/javazi-1.8/tzdb.dat $JAVA_HOME/jre/lib/tzdb.dat
1711 dmorgan 463625
1712 luigiwalser 1237287 #build cycles
1713 luigiwalser 995481 done
1714    
1715     %check
1716    
1717     # We test debug first as it will give better diagnostics on a crash
1718     for suffix in %{rev_build_loop} ; do
1719    
1720 luigiwalser 1237287 export JAVA_HOME=$(pwd)/%{buildoutputdir -- $suffix}/images/%{j2sdkimage}
1721 luigiwalser 995481
1722 dmorgan 463625 # Check unlimited policy has been used
1723     $JAVA_HOME/bin/javac -d . %{SOURCE13}
1724     $JAVA_HOME/bin/java TestCryptoLevel
1725    
1726 luigiwalser 1004176 # Check ECC is working
1727     $JAVA_HOME/bin/javac -d . %{SOURCE14}
1728 luigiwalser 1043833 $JAVA_HOME/bin/java $(echo $(basename %{SOURCE14})|sed "s|\.java||")
1729 luigiwalser 1004176
1730 luigiwalser 659708 # Check debug symbols are present and can identify code
1731 luigiwalser 1080788 find "$JAVA_HOME" -iname '*.so' -print0 | while read -d $'\0' lib
1732     do
1733     if [ -f "$lib" ] ; then
1734     echo "Testing $lib for debug symbols"
1735     # All these tests rely on RPM failing the build if the exit code of any set
1736     # of piped commands is non-zero.
1737 luigiwalser 659708
1738 luigiwalser 1237287 # Test for .debug_* sections in the shared object. This is the main test.
1739     # Stripped objects will not contain these.
1740 luigiwalser 1080788 eu-readelf -S "$lib" | grep "] .debug_"
1741 luigiwalser 1097090 test $(eu-readelf -S "$lib" | grep -E "\]\ .debug_(info|abbrev)" | wc --lines) == 2
1742 luigiwalser 1080788
1743 luigiwalser 1237287 # Test FILE symbols. These will most likely be removed by anyting that
1744 luigiwalser 1080788 # manipulates symbol tables because it's generally useless. So a nice test
1745 luigiwalser 1237287 # that nothing has messed with symbols.
1746 luigiwalser 1080788 old_IFS="$IFS"
1747     IFS=$'\n'
1748     for line in $(eu-readelf -s "$lib" | grep "00000000 0 FILE LOCAL DEFAULT")
1749     do
1750     # We expect to see .cpp files, except for architectures like aarch64 and
1751     # s390 where we expect .o and .oS files
1752 luigiwalser 1097090 echo "$line" | grep -E "ABS ((.*/)?[-_a-zA-Z0-9]+\.(c|cc|cpp|cxx|o|oS))?$"
1753 luigiwalser 1080788 done
1754     IFS="$old_IFS"
1755    
1756 luigiwalser 1237287 # If this is the JVM, look for javaCalls.(cpp|o) in FILEs, for extra sanity checking.
1757 luigiwalser 1080788 if [ "`basename $lib`" = "libjvm.so" ]; then
1758     eu-readelf -s "$lib" | \
1759 luigiwalser 1097109 grep -E "00000000 0 FILE LOCAL DEFAULT ABS javaCalls.(cpp|o)$"
1760 luigiwalser 1080788 fi
1761    
1762     # Test that there are no .gnu_debuglink sections pointing to another
1763     # debuginfo file. There shouldn't be any debuginfo files, so the link makes
1764 luigiwalser 1237287 # no sense either.
1765 luigiwalser 1080788 eu-readelf -S "$lib" | grep 'gnu'
1766     if eu-readelf -S "$lib" | grep '] .gnu_debuglink' | grep PROGBITS; then
1767     echo "bad .gnu_debuglink section."
1768     eu-readelf -x .gnu_debuglink "$lib"
1769     false
1770     fi
1771     fi
1772     done
1773    
1774     # Make sure gdb can do a backtrace based on line numbers on libjvm.so
1775 luigiwalser 1220776 # javaCalls.cpp:58 should map to:
1776     # http://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/file/ff3b27e6bcc2/src/share/vm/runtime/javaCalls.cpp#l58
1777     # Using line number 1 might cause build problems. See:
1778     # https://bugzilla.redhat.com/show_bug.cgi?id=1539664
1779     # https://bugzilla.redhat.com/show_bug.cgi?id=1538767
1780 luigiwalser 1080788 gdb -q "$JAVA_HOME/bin/java" <<EOF | tee gdb.out
1781     handle SIGSEGV pass nostop noprint
1782 luigiwalser 1088711 handle SIGILL pass nostop noprint
1783 luigiwalser 1080788 set breakpoint pending on
1784 luigiwalser 1220776 break javaCalls.cpp:58
1785 luigiwalser 1080788 commands 1
1786     backtrace
1787     quit
1788     end
1789     run -version
1790     EOF
1791     grep 'JavaCallWrapper::JavaCallWrapper' gdb.out
1792    
1793 luigiwalser 792977 # Check src.zip has all sources. See RHBZ#1130490
1794 luigiwalser 814801 jar -tf $JAVA_HOME/src.zip | grep 'sun.misc.Unsafe'
1795 luigiwalser 792977
1796 luigiwalser 814801 # Check class files include useful debugging information
1797     $JAVA_HOME/bin/javap -l java.lang.Object | grep "Compiled from"
1798     $JAVA_HOME/bin/javap -l java.lang.Object | grep LineNumberTable
1799     $JAVA_HOME/bin/javap -l java.lang.Object | grep LocalVariableTable
1800    
1801     # Check generated class files include useful debugging information
1802     $JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep "Compiled from"
1803     $JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep LineNumberTable
1804     $JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep LocalVariableTable
1805 luigiwalser 1097090
1806 luigiwalser 1237287 #build cycles check
1807 luigiwalser 795869 done
1808    
1809 dmorgan 463625 %install
1810     STRIP_KEEP_SYMTAB=libjvm*
1811    
1812 luigiwalser 795869 for suffix in %{build_loop} ; do
1813 dmorgan 463625
1814 luigiwalser 1237287 pushd %{buildoutputdir -- $suffix}/images/%{j2sdkimage}
1815 dmorgan 463625
1816 luigiwalser 1237287 #install jsa directories so we can owe them
1817 ns80 1183461 mkdir -p $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}/lib/%{archinstall}/server/
1818     mkdir -p $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}/lib/%{archinstall}/client/
1819 luigiwalser 671715
1820 dmorgan 463625 # Install main files.
1821 ns80 1183461 install -d -m 755 $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}
1822     cp -a bin include lib src.zip $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}
1823     install -d -m 755 $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}
1824     cp -a jre/bin jre/lib $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}
1825 dmorgan 463625
1826 dmorgan 489356 %if %{with_systemtap}
1827 luigiwalser 1237287 # Install systemtap support files.
1828 ns80 1183461 install -dm 755 $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/tapset
1829 luigiwalser 795869 # note, that uniquesuffix is in BUILD dir in this case
1830 ns80 1183461 cp -a $RPM_BUILD_DIR/%{uniquesuffix ""}/tapset$suffix/*.stp $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/tapset/
1831     pushd $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/tapset/
1832 luigiwalser 820279 tapsetFiles=`ls *.stp`
1833     popd
1834 dmorgan 463625 install -d -m 755 $RPM_BUILD_ROOT%{tapsetdir}
1835 luigiwalser 1237287 pushd $RPM_BUILD_ROOT%{tapsetdir}
1836     RELATIVE=$(%{abs2rel} %{_jvmdir}/%{sdkdir -- $suffix}/tapset %{tapsetdir})
1837     for name in $tapsetFiles ; do
1838     targetName=`echo $name | sed "s/.stp/$suffix.stp/"`
1839     ln -sf $RELATIVE/$name $targetName
1840     done
1841     popd
1842 dmorgan 463625 %endif
1843    
1844 luigiwalser 1237287 # Remove empty cacerts database.
1845 ns80 1183461 rm -f $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}/lib/security/cacerts
1846 luigiwalser 1237287 # Install cacerts symlink needed by some apps which hardcode the path.
1847 ns80 1183461 pushd $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}/lib/security
1848 luigiwalser 1237287 RELATIVE=$(%{abs2rel} %{_sysconfdir}/pki/java \
1849     %{_jvmdir}/%{jredir -- $suffix}/lib/security)
1850     ln -sf $RELATIVE/cacerts .
1851 luigiwalser 1128408 popd
1852 dmorgan 463625
1853     # Install extension symlinks.
1854 ns80 1183461 install -d -m 755 $RPM_BUILD_ROOT%{jvmjardir -- $suffix}
1855     pushd $RPM_BUILD_ROOT%{jvmjardir -- $suffix}
1856     RELATIVE=$(%{abs2rel} %{_jvmdir}/%{jredir -- $suffix}/lib %{jvmjardir -- $suffix})
1857 dmorgan 463625 ln -sf $RELATIVE/jsse.jar jsse-%{version}.jar
1858     ln -sf $RELATIVE/jce.jar jce-%{version}.jar
1859     ln -sf $RELATIVE/rt.jar jndi-%{version}.jar
1860     ln -sf $RELATIVE/rt.jar jndi-ldap-%{version}.jar
1861     ln -sf $RELATIVE/rt.jar jndi-cos-%{version}.jar
1862     ln -sf $RELATIVE/rt.jar jndi-rmi-%{version}.jar
1863     ln -sf $RELATIVE/rt.jar jaas-%{version}.jar
1864     ln -sf $RELATIVE/rt.jar jdbc-stdext-%{version}.jar
1865     ln -sf jdbc-stdext-%{version}.jar jdbc-stdext-3.0.jar
1866     ln -sf $RELATIVE/rt.jar sasl-%{version}.jar
1867     for jar in *-%{version}.jar
1868     do
1869     if [ x%{version} != x%{javaver} ]
1870     then
1871     ln -sf $jar $(echo $jar | sed "s|-%{version}.jar|-%{javaver}.jar|g")
1872     fi
1873     ln -sf $jar $(echo $jar | sed "s|-%{version}.jar|.jar|g")
1874     done
1875     popd
1876    
1877     # Install JCE policy symlinks.
1878 ns80 1183461 install -d -m 755 $RPM_BUILD_ROOT%{_jvmprivdir}/%{uniquesuffix -- $suffix}/jce/vanilla
1879 dmorgan 463625
1880 luigiwalser 1237287 # Install versioned symlinks.
1881 dmorgan 463625 pushd $RPM_BUILD_ROOT%{_jvmdir}
1882 ns80 1183461 ln -sf %{jredir -- $suffix} %{jrelnk -- $suffix}
1883 dmorgan 463625 popd
1884    
1885     pushd $RPM_BUILD_ROOT%{_jvmjardir}
1886 luigiwalser 795869 ln -sf %{sdkdir $suffix} %{jrelnk $suffix}
1887 dmorgan 463625 popd
1888    
1889     # Remove javaws man page
1890     rm -f man/man1/javaws*
1891    
1892 luigiwalser 1237287 # Install man pages.
1893 dmorgan 463625 install -d -m 755 $RPM_BUILD_ROOT%{_mandir}/man1
1894     for manpage in man/man1/*
1895     do
1896 luigiwalser 1237287 # Convert man pages to UTF8 encoding.
1897 dmorgan 463625 iconv -f ISO_8859-1 -t UTF8 $manpage -o $manpage.tmp
1898     mv -f $manpage.tmp $manpage
1899     install -m 644 -p $manpage $RPM_BUILD_ROOT%{_mandir}/man1/$(basename \
1900 ns80 1183461 $manpage .1)-%{uniquesuffix -- $suffix}.1
1901 dmorgan 463625 done
1902    
1903     # Install demos and samples.
1904 ns80 1183461 cp -a demo $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}
1905 dmorgan 463625 mkdir -p sample/rmi
1906 luigiwalser 795869 if [ ! -e sample/rmi/java-rmi.cgi ] ; then
1907     # hack to allow --short-circuit on install
1908     mv bin/java-rmi.cgi sample/rmi
1909     fi
1910 ns80 1183461 cp -a sample $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}
1911 dmorgan 463625
1912     popd
1913    
1914    
1915 luigiwalser 1237287 # Install Javadoc documentation.
1916 dmorgan 463625 install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}
1917 ns80 1183461 cp -a %{buildoutputdir -- $suffix}/docs $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}
1918 luigiwalser 1237287 cp -a %{buildoutputdir -- $suffix}/bundles/jdk-%{javaver}_%{updatever}$suffix-%{buildver}-docs.zip $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}.zip
1919 dmorgan 463625
1920 luigiwalser 1237287 # Install icons and menu entries.
1921 dmorgan 463625 for s in 16 24 32 48 ; do
1922     install -D -p -m 644 \
1923 luigiwalser 855971 openjdk/jdk/src/solaris/classes/sun/awt/X11/java-icon${s}.png \
1924 luigiwalser 1237287 $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps/java-%{javaver}.png
1925 dmorgan 463625 done
1926    
1927 luigiwalser 1237287 # Install desktop files.
1928 dmorgan 463625 install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/{applications,pixmaps}
1929 luigiwalser 795869 for e in jconsole$suffix policytool$suffix ; do
1930 ns80 1183461 desktop-file-install --vendor=%{uniquesuffix -- $suffix} --mode=644 \
1931 dmorgan 463625 --dir=$RPM_BUILD_ROOT%{_datadir}/applications $e.desktop
1932     done
1933    
1934 luigiwalser 671715 # Install /etc/.java/.systemPrefs/ directory
1935     # See https://bugzilla.redhat.com/show_bug.cgi?id=741821
1936     mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/.java/.systemPrefs
1937    
1938 dmorgan 463625 # FIXME: remove SONAME entries from demo DSOs. See
1939     # https://bugzilla.redhat.com/show_bug.cgi?id=436497
1940    
1941     # Find non-documentation demo files.
1942 ns80 1183461 find $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/demo \
1943     $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/sample \
1944 dmorgan 463625 -type f -o -type l | sort \
1945     | grep -v README \
1946     | sed 's|'$RPM_BUILD_ROOT'||' \
1947 luigiwalser 795869 >> %{name}-demo.files"$suffix"
1948 dmorgan 463625 # Find documentation demo files.
1949 ns80 1183461 find $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/demo \
1950     $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/sample \
1951 dmorgan 463625 -type f -o -type l | sort \
1952     | grep README \
1953     | sed 's|'$RPM_BUILD_ROOT'||' \
1954     | sed 's|^|%doc |' \
1955 luigiwalser 795869 >> %{name}-demo.files"$suffix"
1956 dmorgan 463625
1957 dmorgan 623672 # Create links which leads to separately installed java-atk-bridge and allow configuration
1958     # links points to java-atk-wrapper - an dependence
1959 ns80 1183461 pushd $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix}/lib/%{archinstall}
1960 luigiwalser 757128 ln -s %{_libdir}/java-atk-wrapper/libatk-wrapper.so.0 libatk-wrapper.so
1961 dmorgan 623672 popd
1962 ns80 1183461 pushd $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix}/lib/ext
1963 luigiwalser 757128 ln -s %{_libdir}/java-atk-wrapper/java-atk-wrapper.jar java-atk-wrapper.jar
1964 dmorgan 623672 popd
1965 ns80 1183461 pushd $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix}/lib/
1966 dmorgan 623672 echo "#Config file to enable java-atk-wrapper" > accessibility.properties
1967     echo "" >> accessibility.properties
1968     echo "assistive_technologies=org.GNOME.Accessibility.AtkWrapper" >> accessibility.properties
1969     echo "" >> accessibility.properties
1970     popd
1971    
1972 luigiwalser 1128408 # intentionally after all else, fx links with redirections on its own
1973     %if %{with_openjfx_binding}
1974     FXSDK_FILES=%{name}-openjfx-devel.files"$suffix"
1975     FXJRE_FILES=%{name}-openjfx.files"$suffix"
1976     echo -n "" > $FXJRE_FILES
1977     echo -n "" > $FXSDK_FILES
1978     for file in %{jfx_jre_libs} ; do
1979     srcfile=%{jfx_jre_libs_dir}/$file
1980 ns80 1183461 targetfile=%{_jvmdir}/%{jredir -- $suffix}/lib/$file
1981 luigiwalser 1128408 ln -s $srcfile $RPM_BUILD_ROOT/$targetfile
1982     echo $targetfile >> $FXJRE_FILES
1983     done
1984     for file in %{jfx_jre_native} ; do
1985     srcfile=%{jfx_jre_native_dir}/$file
1986 ns80 1183461 targetfile=%{_jvmdir}/%{jredir -- $suffix}/lib/%{archinstall}/$file
1987 luigiwalser 1128408 ln -s $srcfile $RPM_BUILD_ROOT/$targetfile
1988     echo $targetfile >> $FXJRE_FILES
1989     done
1990     for file in %{jfx_jre_exts} ; do
1991     srcfile=%{jfx_jre_exts_dir}/$file
1992 ns80 1183461 targetfile=%{_jvmdir}/%{jredir -- $suffix}/lib/ext/$file
1993 luigiwalser 1128408 ln -s $srcfile $RPM_BUILD_ROOT/$targetfile
1994     echo $targetfile >> $FXJRE_FILES
1995     done
1996     for file in %{jfx_sdk_libs} ; do
1997     srcfile=%{jfx_sdk_libs_dir}/$file
1998 ns80 1183461 targetfile=%{_jvmdir}/%{sdkdir -- $suffix}/lib/$file
1999 luigiwalser 1128408 ln -s $srcfile $RPM_BUILD_ROOT/$targetfile
2000     echo $targetfile >> $FXSDK_FILES
2001     done
2002     for file in %{jfx_sdk_bins} ; do
2003     srcfile=%{jfx_sdk_bins_dir}/$file
2004 ns80 1183461 targetfile=%{_jvmdir}/%{sdkdir -- $suffix}/bin/$file
2005 luigiwalser 1128408 ln -s $srcfile $RPM_BUILD_ROOT/$targetfile
2006     echo $targetfile >> $FXSDK_FILES
2007     done
2008     %endif
2009    
2010 ns80 1183461 bash %{SOURCE20} $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix} %{javaver}
2011 luigiwalser 995481 # https://bugzilla.redhat.com/show_bug.cgi?id=1183793
2012 ns80 1183461 touch -t 201401010000 $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix}/lib/security/java.security
2013 luigiwalser 814784
2014 luigiwalser 795869 # end, dual install
2015     done
2016    
2017 luigiwalser 1237287 %if %{include_normal_build}
2018     # intentioanlly only for non-debug
2019 luigiwalser 671715 %pretrans headless -p <lua>
2020 luigiwalser 926380 -- see https://bugzilla.redhat.com/show_bug.cgi?id=1038092 for whole issue
2021     -- see https://bugzilla.redhat.com/show_bug.cgi?id=1290388 for pretrans over pre
2022     -- if copy-jdk-configs is in transaction, it installs in pretrans to temp
2023     -- if copy_jdk_configs is in temp, then it means that copy-jdk-configs is in tranasction and so is
2024 luigiwalser 1237287 -- preferred over one in %%{_libexecdir}. If it is not in transaction, then depends
2025 luigiwalser 926380 -- whether copy-jdk-configs is installed or not. If so, then configs are copied
2026     -- (copy_jdk_configs from %%{_libexecdir} used) or not copied at all
2027 luigiwalser 671715 local posix = require "posix"
2028 luigiwalser 926380 local debug = false
2029 luigiwalser 671715
2030 luigiwalser 926380 SOURCE1 = "%{rpm_state_dir}/copy_jdk_configs.lua"
2031     SOURCE2 = "%{_libexecdir}/copy_jdk_configs.lua"
2032 luigiwalser 671715
2033 luigiwalser 926380 local stat1 = posix.stat(SOURCE1, "type");
2034     local stat2 = posix.stat(SOURCE2, "type");
2035 luigiwalser 671715
2036 luigiwalser 926380 if (stat1 ~= nil) then
2037 luigiwalser 671715 if (debug) then
2038 luigiwalser 926380 print(SOURCE1 .." exists - copy-jdk-configs in transaction, using this one.")
2039 luigiwalser 671715 end;
2040 luigiwalser 926380 package.path = package.path .. ";" .. SOURCE1
2041 luigiwalser 1237287 else
2042 luigiwalser 926380 if (stat2 ~= nil) then
2043 luigiwalser 671715 if (debug) then
2044 luigiwalser 926380 print(SOURCE2 .." exists - copy-jdk-configs alrady installed and NOT in transation. Using.")
2045 luigiwalser 671715 end;
2046 luigiwalser 926380 package.path = package.path .. ";" .. SOURCE2
2047 luigiwalser 671715 else
2048     if (debug) then
2049 luigiwalser 926380 print(SOURCE1 .." does NOT exists")
2050     print(SOURCE2 .." does NOT exists")
2051     print("No config files will be copied")
2052     end
2053     return
2054 luigiwalser 671715 end
2055     end
2056 luigiwalser 1237287 -- run contetn of included file with fake args
2057 luigiwalser 1088711 arg = {"--currentjvm", "%{uniquesuffix %{nil}}", "--jvmdir", "%{_jvmdir %{nil}}", "--origname", "%{name}", "--origjavaver", "%{javaver}", "--arch", "%{_arch}", "--temp", "%{rpm_state_dir}/%{name}.%{_arch}"}
2058 luigiwalser 926380 require "copy_jdk_configs.lua"
2059 luigiwalser 671715
2060 luigiwalser 659708 %post headless
2061 luigiwalser 795869 %{post_headless %{nil}}
2062 luigiwalser 671715
2063 dmorgan 463625
2064 dmorgan 623672 %postun headless
2065 luigiwalser 795869 %{postun_headless %{nil}}
2066 dmorgan 623672
2067 dmorgan 463625 %post devel
2068 luigiwalser 795869 %{post_devel %{nil}}
2069 dmorgan 463625
2070 luigiwalser 795869 %postun devel
2071     %{postun_devel %{nil}}
2072 dmorgan 463625
2073 luigiwalser 795869 %post javadoc
2074     %{post_javadoc %{nil}}
2075 dmorgan 463625
2076 luigiwalser 795869 %postun javadoc
2077     %{postun_javadoc %{nil}}
2078 dmorgan 463625
2079 luigiwalser 1004176 %post javadoc-zip
2080     %{post_javadoc_zip %{nil}}
2081 dmorgan 463625
2082 luigiwalser 1004176 %postun javadoc-zip
2083     %{postun_javadoc_zip %{nil}}
2084     %endif
2085 dmorgan 463625
2086 luigiwalser 1237287 %if %{include_normal_build}
2087 luigiwalser 1176046 %files
2088 luigiwalser 795869 # main package builds always
2089     %{files_jre %{nil}}
2090     %else
2091     %files
2092     # placeholder
2093     %endif
2094 dmorgan 623672
2095 luigiwalser 795869
2096 luigiwalser 1237287 %if %{include_normal_build}
2097 luigiwalser 1176046 %files headless
2098 luigiwalser 1237287 # important note, see https://bugzilla.redhat.com/show_bug.cgi?id=1038092 for whole issue
2099     # all config/norepalce files (and more) have to be declared in pretrans. See pretrans
2100 luigiwalser 795869 %{files_jre_headless %{nil}}
2101 dmorgan 463625
2102     %files devel
2103 luigiwalser 795869 %{files_devel %{nil}}
2104 dmorgan 463625
2105     %files demo -f %{name}-demo.files
2106 luigiwalser 795869 %{files_demo %{nil}}
2107 dmorgan 463625
2108     %files src
2109 luigiwalser 795869 %{files_src %{nil}}
2110 dmorgan 463625
2111     %files javadoc
2112 luigiwalser 795869 %{files_javadoc %{nil}}
2113 dmorgan 463625
2114 luigiwalser 1004176 %files javadoc-zip
2115     %{files_javadoc_zip %{nil}}
2116    
2117 dmorgan 623672 %files accessibility
2118 luigiwalser 795869 %{files_accessibility %{nil}}
2119 luigiwalser 1128408
2120     %if %{with_openjfx_binding}
2121     %files openjfx -f %{name}-openjfx.files
2122    
2123     %files openjfx-devel -f %{name}-openjfx-devel.files
2124 luigiwalser 795869 %endif
2125 luigiwalser 1128408 %endif
2126 dmorgan 489356
2127 luigiwalser 1237287 %if %{include_debug_build}
2128     %files debug
2129 ns80 1183461 %{files_jre -- %{debug_suffix_unquoted}}
2130 luigiwalser 795869
2131 luigiwalser 1237287 %files headless-debug
2132 ns80 1183461 %{files_jre_headless -- %{debug_suffix_unquoted}}
2133 luigiwalser 795869
2134 luigiwalser 1237287 %files devel-debug
2135 ns80 1183461 %{files_devel -- %{debug_suffix_unquoted}}
2136 luigiwalser 795869
2137 luigiwalser 1237287 %files demo-debug -f %{name}-demo.files-debug
2138 ns80 1183461 %{files_demo -- %{debug_suffix_unquoted}}
2139 luigiwalser 795869
2140 luigiwalser 1237287 %files src-debug
2141 ns80 1183461 %{files_src -- %{debug_suffix_unquoted}}
2142 luigiwalser 795869
2143 luigiwalser 1237287 %files javadoc-debug
2144 ns80 1183461 %{files_javadoc -- %{debug_suffix_unquoted}}
2145 luigiwalser 795869
2146 luigiwalser 1237287 %files javadoc-zip-debug
2147 ns80 1183461 %{files_javadoc_zip -- %{debug_suffix_unquoted}}
2148 luigiwalser 1004176
2149 luigiwalser 1237287 %files accessibility-debug
2150 ns80 1183461 %{files_accessibility -- %{debug_suffix_unquoted}}
2151 luigiwalser 1128408
2152     %if %{with_openjfx_binding}
2153 luigiwalser 1237287 %files openjfx-debug -f %{name}-openjfx.files-debug
2154 luigiwalser 1128408
2155 luigiwalser 1237287 %files openjfx-devel-debug -f %{name}-openjfx-devel.files-debug
2156 luigiwalser 795869 %endif
2157 luigiwalser 1128408 %endif
2158 luigiwalser 795869
2159    

  ViewVC Help
Powered by ViewVC 1.1.30