Blame java-1.8.0-openjdk-aarch32.spec

Alex Kashchenko d6f9d0
# RPM conditionals so as to be able to dynamically produce
Alex Kashchenko d6f9d0
# slowdebug/release builds. See:
Alex Kashchenko d6f9d0
# http://rpm.org/user_doc/conditional_builds.html
Alex Kashchenko d6f9d0
#
Alex Kashchenko d6f9d0
# Examples:
Alex Kashchenko d6f9d0
#
Alex Kashchenko d6f9d0
# Produce release *and* slowdebug builds on x86_64 (default):
Alex Kashchenko d6f9d0
# $ rpmbuild -ba java-1.8.0-openjdk.spec
Alex Kashchenko d6f9d0
#
Alex Kashchenko d6f9d0
# Produce only release builds (no slowdebug builds) on x86_64:
Alex Kashchenko d6f9d0
# $ rpmbuild -ba java-1.8.0-openjdk.spec --without slowdebug
Alex Kashchenko d6f9d0
#
Alex Kashchenko d6f9d0
# Only produce a release build on x86_64:
Alex Kashchenko d6f9d0
# $ fedpkg mockbuild --without slowdebug
Alex Kashchenko d6f9d0
#
Alex Kashchenko d6f9d0
# Only produce a debug build on x86_64:
Alex Kashchenko d6f9d0
# $ fedpkg local --without release
Alex Kashchenko d6f9d0
#
Alex Kashchenko d6f9d0
# Enable slowdebug builds by default on relevant arches.
Alex Kashchenko d6f9d0
%bcond_without slowdebug
Alex Kashchenko d6f9d0
# Enable release builds by default on relevant arches.
Alex Kashchenko d6f9d0
%bcond_without release
Alex Kashchenko d6f9d0
Alex Kashchenko af80df
# The -g flag says to use strip -g instead of full strip on DSOs or EXEs.
Alex Kashchenko af80df
# This fixes detailed NMT and other tools which need minimal debug info.
Alex Kashchenko af80df
# See: https://bugzilla.redhat.com/show_bug.cgi?id=1520879
Alex Kashchenko af80df
%global _find_debuginfo_opts -g
Alex Kashchenko af80df
Alex Kashchenko d6f9d0
# note: parametrized macros are order-sensitive (unlike not-parametrized) even with normal macros
Alex Kashchenko d6f9d0
# also necessary when passing it as parameter to other macros. If not macro, then it is considered a switch
Alex Kashchenko d6f9d0
# see the difference between global and define:
Alex Kashchenko d6f9d0
# See https://github.com/rpm-software-management/rpm/issues/127 to comments at  "pmatilai commented on Aug 18, 2017"
Alex Kashchenko d6f9d0
# (initiated in https://bugzilla.redhat.com/show_bug.cgi?id=1482192)
Alex Kashchenko d6f9d0
%global debug_suffix_unquoted -slowdebug
a3989c
# quoted one for shell operations
a3989c
%global debug_suffix "%{debug_suffix_unquoted}"
a3989c
%global normal_suffix ""
a3989c
Alex Kashchenko d6f9d0
# if you want only debug build but providing java build only normal build but set normalbuild_parameter
Alex Kashchenko d6f9d0
%global debug_warning This package has full debug on. Install only in need and remove asap.
a3989c
%global debug_on with full debug on
a3989c
%global for_debug for packages with debug on
a3989c
Alex Kashchenko d6f9d0
%if %{with release}
a3989c
%global include_normal_build 1
Alex Kashchenko d6f9d0
%else
Alex Kashchenko d6f9d0
%global include_normal_build 0
Alex Kashchenko d6f9d0
%endif
Alex Kashchenko d6f9d0
a3989c
%if %{include_normal_build}
a3989c
%global build_loop1 %{normal_suffix}
a3989c
%else
a3989c
%global build_loop1 %{nil}
a3989c
%endif
a3989c
fb3112
%global aarch64         aarch64 arm64 armv8
Alex Kashchenko d6f9d0
# we need to distinguish between big and little endian PPC64
fb3112
%global ppc64le         ppc64le
fb3112
%global ppc64be         ppc64 ppc64p7
fb3112
%global multilib_arches %{power64} sparc64 x86_64
Alex Kashchenko fffdff
%global jit_arches      %{ix86} x86_64 sparcv9 sparc64 %{aarch64} %{power64} %{arm}
Alex Kashchenko af80df
%global sa_arches       %{ix86} x86_64 sparcv9 sparc64 %{aarch64}
fb3112
Alex Kashchenko fffdff
# By default, we build a debug build during main build on JIT architectures
Alex Kashchenko d6f9d0
%if %{with slowdebug}
Alex Kashchenko fffdff
%ifarch %{jit_arches}
Alex Kashchenko d6f9d0
%ifnarch %{arm}
a3989c
%global include_debug_build 1
a3989c
%else
Alex Kashchenko d6f9d0
%global include_debug_build 1
Alex Kashchenko d6f9d0
%endif
Alex Kashchenko d6f9d0
%else
Alex Kashchenko d6f9d0
%global include_debug_build 0
Alex Kashchenko d6f9d0
%endif
Alex Kashchenko d6f9d0
%else
a3989c
%global include_debug_build 0
a3989c
%endif
a3989c
a3989c
%if %{include_debug_build}
a3989c
%global build_loop2 %{debug_suffix}
a3989c
%else
a3989c
%global build_loop2 %{nil}
a3989c
%endif
a3989c
Alex Kashchenko d6f9d0
# if you disable both builds, then the build fails
a3989c
%global build_loop  %{build_loop1} %{build_loop2}
Alex Kashchenko d6f9d0
# note: that order: normal_suffix debug_suffix, in case of both enabled
Alex Kashchenko d6f9d0
# is expected in one single case at the end of the build
a3989c
%global rev_build_loop  %{build_loop2} %{build_loop1}
a3989c
Alex Kashchenko fffdff
%ifarch %{jit_arches}
a3989c
%global bootstrap_build 1
Alex Kashchenko fffdff
%else
Alex Kashchenko f7e4c1
%global bootstrap_build 1
Alex Kashchenko fffdff
%endif
a3989c
a3989c
%if %{bootstrap_build}
Alex Kashchenko 879572
%global release_targets bootcycle-images zip-docs
a3989c
%else
Alex Kashchenko 879572
%global release_targets images zip-docs
a3989c
%endif
Alex Kashchenko 879572
# No docs nor bootcycle for debug builds
Alex Kashchenko 879572
%global debug_targets images
Alex Kashchenko d6f9d0
a3989c
# Filter out flags from the optflags macro that cause problems with the OpenJDK build
a3989c
# We filter out -Wall which will otherwise cause HotSpot to produce hundreds of thousands of warnings (100+mb logs)
Alex Kashchenko 15b15a
# We filter out -O flags so that the optimization of HotSpot is not lowered from O3 to O2
a3989c
# We replace it with -Wformat (required by -Werror=format-security) and -Wno-cpp to avoid FORTIFY_SOURCE warnings
a3989c
# We filter out -fexceptions as the HotSpot build explicitly does -fno-exceptions and it's otherwise the default for C++
a3989c
%global ourflags %(echo %optflags | sed -e 's|-Wall|-Wformat -Wno-cpp|' | sed -r -e 's|-O[0-9]*||')
a3989c
%global ourcppflags %(echo %ourflags | sed -e 's|-fexceptions||')
a3989c
%global ourldflags %{__global_ldflags}
Alex Kashchenko 2fc597
%ifarch %{arm}
Alex Kashchenko 2fc597
# Disable hardened build on aarch32. Work-around for RHBZ#1290936.
Alex Kashchenko 2fc597
%undefine _hardened_build
Alex Kashchenko 2fc597
%global ourcppflags %{nil}
Alex Kashchenko 2fc597
%global ourldflags %{nil}
Alex Kashchenko 2fc597
%endif
a3989c
Alex Kashchenko d6f9d0
# With disabled nss is NSS deactivated, so NSS_LIBDIR can contain the wrong path
Alex Kashchenko d6f9d0
# the initialization must be here. Later the pkg-config have buggy behavior
Alex Kashchenko d6f9d0
# looks like openjdk RPM specific bug
a3989c
# Always set this so the nss.cfg file is not broken
a3989c
%global NSS_LIBDIR %(pkg-config --variable=libdir nss)
a3989c
%global NSS_LIBS %(pkg-config --libs nss)
a3989c
%global NSS_CFLAGS %(pkg-config --cflags nss-softokn)
akashche 02bc7e
# see https://bugzilla.redhat.com/show_bug.cgi?id=1332456
akashche 02bc7e
%global NSSSOFTOKN_BUILDTIME_NUMBER %(pkg-config --modversion nss-softokn || : )
akashche 02bc7e
%global NSS_BUILDTIME_NUMBER %(pkg-config --modversion nss || : )
Alex Kashchenko d6f9d0
# this is workaround for processing of requires during srpm creation
akashche 02bc7e
%global NSSSOFTOKN_BUILDTIME_VERSION %(if [ "x%{NSSSOFTOKN_BUILDTIME_NUMBER}" == "x" ] ; then echo "" ;else echo ">= %{NSSSOFTOKN_BUILDTIME_NUMBER}" ;fi)
akashche 02bc7e
%global NSS_BUILDTIME_VERSION %(if [ "x%{NSS_BUILDTIME_NUMBER}" == "x" ] ; then echo "" ;else echo ">= %{NSS_BUILDTIME_NUMBER}" ;fi)
a3989c
92bdec
Alex Kashchenko d6f9d0
# Fix for https://bugzilla.redhat.com/show_bug.cgi?id=1111349.
Alex Kashchenko d6f9d0
# See also https://bugzilla.redhat.com/show_bug.cgi?id=1590796
Alex Kashchenko d6f9d0
# as to why some libraries *cannot* be excluded. In particular,
Alex Kashchenko d6f9d0
# these are:
Alex Kashchenko d6f9d0
# libjsig.so, libjava.so, libjawt.so, libjvm.so and libverify.so
Alex Kashchenko d6f9d0
%global _privatelibs libatk-wrapper[.]so.*|libattach[.]so.*|libawt_headless[.]so.*|libawt[.]so.*|libawt_xawt[.]so.*|libdt_socket[.]so.*|libfontmanager[.]so.*|libhprof[.]so.*|libinstrument[.]so.*|libj2gss[.]so.*|libj2pcsc[.]so.*|libj2pkcs11[.]so.*|libjaas_unix[.]so.*|libjava_crw_demo[.]so.*|libjavajpeg[.]so.*|libjdwp[.]so.*|libjli[.]so.*|libjsdt[.]so.*|libjsoundalsa[.]so.*|libjsound[.]so.*|liblcms[.]so.*|libmanagement[.]so.*|libmlib_image[.]so.*|libnet[.]so.*|libnio[.]so.*|libnpt[.]so.*|libsaproc[.]so.*|libsctp[.]so.*|libsplashscreen[.]so.*|libsunec[.]so.*|libunpack[.]so.*|libzip[.]so.*|lib[.]so\\(SUNWprivate_.*
Alex Kashchenko d6f9d0
a3989c
%global __provides_exclude ^(%{_privatelibs})$
a3989c
%global __requires_exclude ^(%{_privatelibs})$
a3989c
Alex Kashchenko f7e4c1
# In some cases, the arch used by the JDK does
Alex Kashchenko f7e4c1
# not match _arch.
Alex Kashchenko f7e4c1
# Also, in some cases, the machine name used by SystemTap
Alex Kashchenko f7e4c1
# does not match that given by _build_cpu
a3989c
%ifarch x86_64
a3989c
%global archinstall amd64
a3989c
%endif
a3989c
%ifarch ppc
a3989c
%global archinstall ppc
a3989c
%endif
a3989c
%ifarch %{ppc64be}
a3989c
%global archinstall ppc64
a3989c
%endif
a3989c
%ifarch %{ppc64le}
a3989c
%global archinstall ppc64le
a3989c
%endif
a3989c
%ifarch %{ix86}
a3989c
%global archinstall i386
a3989c
%endif
a3989c
%ifarch ia64
a3989c
%global archinstall ia64
a3989c
%endif
a3989c
%ifarch s390
a3989c
%global archinstall s390
a3989c
%endif
a3989c
%ifarch s390x
a3989c
%global archinstall s390x
a3989c
%endif
a3989c
%ifarch %{arm}
a3989c
%global archinstall arm
a3989c
%endif
a3989c
%ifarch %{aarch64}
a3989c
%global archinstall aarch64
a3989c
%endif
a3989c
# 32 bit sparc, optimized for v9
a3989c
%ifarch sparcv9
a3989c
%global archinstall sparc
a3989c
%endif
a3989c
# 64 bit sparc
a3989c
%ifarch sparc64
a3989c
%global archinstall sparcv9
a3989c
%endif
a3989c
%ifnarch %{jit_arches}
a3989c
%global archinstall %{_arch}
a3989c
%endif
a3989c
Alex Kashchenko f7e4c1
%ifarch %{jit_arches}
Alex Kashchenko f7e4c1
%global with_systemtap 0
Alex Kashchenko f7e4c1
%else
a3989c
%global with_systemtap 0
Alex Kashchenko f7e4c1
%endif
a3989c
Alex Kashchenko d6f9d0
# New Version-String scheme-style defines
Alex Kashchenko d6f9d0
%global majorver 8
Alex Kashchenko d6f9d0
Alex Kashchenko 3bf537
%ifarch %{ix86} x86_64
Alex Kashchenko d6f9d0
%global with_openjfx_binding 1
Alex Kashchenko 3bf537
%global openjfx_path %{_jvmdir}/openjfx
Alex Kashchenko 3bf537
# links src directories
Alex Kashchenko 3bf537
%global jfx_jre_libs_dir %{openjfx_path}/rt/lib
Alex Kashchenko 3bf537
%global jfx_jre_native_dir %{jfx_jre_libs_dir}/%{archinstall}
Alex Kashchenko 3bf537
%global jfx_sdk_libs_dir %{openjfx_path}/lib
Alex Kashchenko 3bf537
%global jfx_sdk_bins_dir %{openjfx_path}/bin
Alex Kashchenko 3bf537
%global jfx_jre_exts_dir %{jfx_jre_libs_dir}/ext
Alex Kashchenko 3bf537
# links src files
Alex Kashchenko 3bf537
# maybe depend on jfx and generate the lists in build time? Yes, bad idea to inlcude cyclic depndenci, but this list is aweful
Alex Kashchenko 3bf537
%global jfx_jre_libs jfxswt.jar javafx.properties
Alex Kashchenko af80df
%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 libglassgtk2.so libglassgtk3.so
Alex Kashchenko 3bf537
%global jfx_sdk_libs javafx-mx.jar packager.jar ant-javafx.jar
Alex Kashchenko 3bf537
%global jfx_sdk_bins javafxpackager javapackager
Alex Kashchenko 3bf537
%global jfx_jre_exts jfxrt.jar
Alex Kashchenko 3bf537
%else
Alex Kashchenko 3bf537
%global with_openjfx_binding 0
Alex Kashchenko 3bf537
%endif
Alex Kashchenko 3bf537
a3989c
# Standard JPackage naming and versioning defines.
a3989c
%global origin          openjdk
Alex Kashchenko d6f9d0
%global origin_nice     OpenJDK
Alex Kashchenko d6f9d0
%global top_level_dir_name   %{origin}
a3989c
# note, following three variables are sedded from update_sources if used correctly. Hardcode them rather there.
Alex Kashchenko d6f9d0
%global shenandoah_project	aarch64-port
Alex Kashchenko d6f9d0
%global shenandoah_repo		jdk8u-shenandoah
Alex Kashchenko f2126c
%global shenandoah_revision    	aarch64-shenandoah-jdk8u232-b09
Alex Kashchenko 15b15a
# Define old aarch64/jdk8u tree variables for compatibility
Alex Kashchenko 15b15a
%global project         aarch32-port
Alex Kashchenko 15b15a
%global repo            jdk8u
Alex Kashchenko f2126c
%global revision        jdk8u232-b09-aarch32-191016
Alex Kashchenko 460719
# Define IcedTea version used for SystemTap tapsets and desktop files
Alex Kashchenko 460719
%global icedteaver      3.11.0
Alex Kashchenko d6f9d0
Alex Kashchenko 879572
# e.g. aarch64-shenandoah-jdk8u212-b04-shenandoah-merge-2019-04-30 -> aarch64-shenandoah-jdk8u212-b04
Alex Kashchenko 879572
%global version_tag     %(VERSION=%{shenandoah_revision}; echo ${VERSION%%-shenandoah-merge*})
a3989c
# eg # jdk8u60-b27 -> jdk8u60 or # aarch64-jdk8u60-b27 -> aarch64-jdk8u60  (dont forget spec escape % by %%)
Alex Kashchenko 879572
%global whole_update    %(VERSION=%{version_tag}; echo ${VERSION%%-*})
a3989c
# eg  jdk8u60 -> 60 or aarch64-jdk8u60 -> 60
Alex Kashchenko 879572
%global updatever       %(VERSION=%{whole_update}; echo ${VERSION##*u})
a3989c
# eg jdk8u60-b27 -> b27
Alex Kashchenko 879572
%global buildver        %(VERSION=%{version_tag}; echo ${VERSION##*-})
Alex Kashchenko f2126c
%global rpmrelease      1
Alex Kashchenko 879572
# Define milestone (EA for pre-releases, GA ("fcs") for releases)
Alex Kashchenko 879572
# Release will be (where N is usually a number starting at 1):
Alex Kashchenko 879572
# - 0.N%%{?extraver}%%{?dist} for EA releases,
Alex Kashchenko 879572
# - N%%{?extraver}{?dist} for GA releases
Alex Kashchenko 879572
%global is_ga           1
Alex Kashchenko 879572
%if %{is_ga}
Alex Kashchenko 879572
%global milestone          fcs
Alex Kashchenko 879572
%global milestone_version  %{nil}
Alex Kashchenko 879572
%global extraver %{nil}
Alex Kashchenko 879572
%global eaprefix %{nil}
Alex Kashchenko 879572
%else
Alex Kashchenko 879572
%global milestone          ea
Alex Kashchenko 879572
%global milestone_version  "-ea"
Alex Kashchenko 879572
%global extraver .%{milestone}
Alex Kashchenko 879572
%global eaprefix 0.
Alex Kashchenko 879572
%endif
a3989c
# priority must be 7 digits in total. The expression is workarounding tip
akashche 02bc7e
%global priority        %(TIP=1800%{updatever};  echo ${TIP/tip/999})
a3989c
Alex Kashchenko d6f9d0
%global javaver         1.%{majorver}.0
a3989c
a3989c
# parametrized macros are order-sensitive
Alex Kashchenko d6f9d0
%global compatiblename  %{name}
Alex Kashchenko d6f9d0
%global fullversion     %{compatiblename}-%{version}-%{release}
Alex Kashchenko d6f9d0
# images stub
Alex Kashchenko d6f9d0
%global jdkimage       j2sdk-image
a3989c
# output dir stub
Alex Kashchenko 15b15a
%define buildoutputdir() %{expand:%{top_level_dir_name}/build/jdk8.build%{?1}}
Alex Kashchenko d6f9d0
# we can copy the javadoc to not arched dir, or make it not noarch
Alex Kashchenko 8e3a1b
%define uniquejavadocdir()    %{expand:%{fullversion}%{?1}}
Alex Kashchenko d6f9d0
# main id and dir of this jdk
Alex Kashchenko 8e3a1b
%define uniquesuffix()        %{expand:%{fullversion}.%{_arch}%{?1}}
a3989c
Alex Kashchenko 460719
%global etcjavasubdir     %{_sysconfdir}/java/java-%{javaver}-%{origin}
Alex Kashchenko 460719
%define etcjavadir()      %{expand:%{etcjavasubdir}/%{uniquesuffix -- %{?1}}}
a3989c
# Standard JPackage directories and symbolic links.
Alex Kashchenko 8e3a1b
%define sdkdir()        %{expand:%{uniquesuffix -- %{?1}}}
Alex Kashchenko 760566
%define jrelnk()        %{expand:jre-%{javaver}-%{origin}-aarch32-%{version}-%{release}.%{_arch}%{?1}}
a3989c
Alex Kashchenko 8e3a1b
%define jredir()        %{expand:%{sdkdir -- %{?1}}/jre}
Alex Kashchenko 8e3a1b
%define sdkbindir()     %{expand:%{_jvmdir}/%{sdkdir -- %{?1}}/bin}
Alex Kashchenko 8e3a1b
%define jrebindir()     %{expand:%{_jvmdir}/%{jredir -- %{?1}}/bin}
a3989c
a3989c
%global rpm_state_dir %{_localstatedir}/lib/rpm-state/
a3989c
a3989c
%if %{with_systemtap}
a3989c
# Where to install systemtap tapset (links)
Alex Kashchenko d6f9d0
# We would like these to be in a package specific sub-dir,
a3989c
# but currently systemtap doesn't support that, so we have to
Alex Kashchenko d6f9d0
# use the root tapset dir for now. To distinguish between 64
a3989c
# and 32 bit architectures we place the tapsets under the arch
a3989c
# specific dir (note that systemtap will only pickup the tapset
a3989c
# for the primary arch for now). Systemtap uses the machine name
a3989c
# aka build_cpu as architecture specific directory name.
a3989c
%global tapsetroot /usr/share/systemtap
Alex Kashchenko d6f9d0
%global tapsetdirttapset %{tapsetroot}/tapset/
Alex Kashchenko d6f9d0
%global tapsetdir %{tapsetdirttapset}/%{_build_cpu}
a3989c
%endif
a3989c
Alex Kashchenko d6f9d0
# not-duplicated scriptlets for normal/debug packages
a3989c
%global update_desktop_icons /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
a3989c
Alex Kashchenko 5c8049
Alex Kashchenko 8e3a1b
%define post_script() %{expand:
a3989c
update-desktop-database %{_datadir}/applications &> /dev/null || :
a3989c
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
a3989c
exit 0
a3989c
}
a3989c
a3989c
Alex Kashchenko 8e3a1b
%define post_headless() %{expand:
a3989c
%ifarch %{jit_arches}
a3989c
# MetaspaceShared::generate_vtable_methods not implemented for PPC JIT
a3989c
%ifnarch %{power64}
Alex Kashchenko fffdff
%ifnarch %{arm}
Alex Kashchenko af80df
# see https://bugzilla.redhat.com/show_bug.cgi?id=513605
Alex Kashchenko 8e3a1b
%{jrebindir -- %{?1}}/java -Xshare:dump >/dev/null 2>/dev/null
a3989c
%endif
a3989c
%endif
Alex Kashchenko fffdff
%endif
a3989c
a3989c
PRIORITY=%{priority}
Alex Kashchenko 8e3a1b
if [ "%{?1}" == %{debug_suffix} ]; then
a3989c
  let PRIORITY=PRIORITY-1
a3989c
fi
a3989c
a3989c
ext=.gz
a3989c
alternatives \\
Alex Kashchenko 8e3a1b
  --install %{_bindir}/java java %{jrebindir -- %{?1}}/java $PRIORITY  --family %{name}.%{_arch} \\
Alex Kashchenko 8e3a1b
  --slave %{_jvmdir}/jre jre %{_jvmdir}/%{jredir -- %{?1}} \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/jjs jjs %{jrebindir -- %{?1}}/jjs \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/keytool keytool %{jrebindir -- %{?1}}/keytool \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/orbd orbd %{jrebindir -- %{?1}}/orbd \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/pack200 pack200 %{jrebindir -- %{?1}}/pack200 \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/rmid rmid %{jrebindir -- %{?1}}/rmid \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/rmiregistry rmiregistry %{jrebindir -- %{?1}}/rmiregistry \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/servertool servertool %{jrebindir -- %{?1}}/servertool \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/tnameserv tnameserv %{jrebindir -- %{?1}}/tnameserv \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/policytool policytool %{jrebindir -- %{?1}}/policytool \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/unpack200 unpack200 %{jrebindir -- %{?1}}/unpack200 \\
a3989c
  --slave %{_mandir}/man1/java.1$ext java.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/java-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/jjs.1$ext jjs.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/jjs-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/keytool.1$ext keytool.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/keytool-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/orbd.1$ext orbd.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/orbd-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/pack200.1$ext pack200.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/pack200-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/rmid.1$ext rmid.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/rmid-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/rmiregistry.1$ext rmiregistry.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/rmiregistry-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/servertool.1$ext servertool.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/servertool-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/tnameserv.1$ext tnameserv.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/tnameserv-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/policytool.1$ext policytool.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/policytool-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/unpack200.1$ext unpack200.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/unpack200-%{uniquesuffix -- %{?1}}.1$ext
a3989c
a3989c
for X in %{origin} %{javaver} ; do
Alex Kashchenko 8e3a1b
  alternatives --install %{_jvmdir}/jre-"$X" jre_"$X" %{_jvmdir}/%{jredir -- %{?1}} $PRIORITY --family %{name}.%{_arch}
a3989c
done
a3989c
Alex Kashchenko 8e3a1b
update-alternatives --install %{_jvmdir}/jre-%{javaver}-%{origin} jre_%{javaver}_%{origin} %{_jvmdir}/%{jrelnk -- %{?1}} $PRIORITY  --family %{name}.%{_arch}
Alex Kashchenko 7bbcf4
a3989c
a3989c
update-desktop-database %{_datadir}/applications &> /dev/null || :
a3989c
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
Alex Kashchenko f7e4c1
Alex Kashchenko f7e4c1
# see pretrans where this file is declared
Alex Kashchenko d6f9d0
# also see that pretrans is only for non-debug
Alex Kashchenko 8e3a1b
if [ ! "%{?1}" == %{debug_suffix} ]; then
Alex Kashchenko f7e4c1
  if [ -f %{_libexecdir}/copy_jdk_configs_fixFiles.sh ] ; then
Alex Kashchenko 8e3a1b
    sh  %{_libexecdir}/copy_jdk_configs_fixFiles.sh %{rpm_state_dir}/%{name}.%{_arch}  %{_jvmdir}/%{sdkdir -- %{?1}}
Alex Kashchenko f7e4c1
  fi
Alex Kashchenko f7e4c1
fi
Alex Kashchenko f7e4c1
a3989c
exit 0
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define postun_script() %{expand:
a3989c
update-desktop-database %{_datadir}/applications &> /dev/null || :
a3989c
if [ $1 -eq 0 ] ; then
a3989c
    /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
a3989c
    %{update_desktop_icons}
a3989c
fi
a3989c
exit 0
a3989c
}
a3989c
a3989c
Alex Kashchenko 8e3a1b
%define postun_headless() %{expand:
Alex Kashchenko 8e3a1b
  alternatives --remove java %{jrebindir -- %{?1}}/java
Alex Kashchenko 8e3a1b
  alternatives --remove jre_%{origin} %{_jvmdir}/%{jredir -- %{?1}}
Alex Kashchenko 8e3a1b
  alternatives --remove jre_%{javaver} %{_jvmdir}/%{jredir -- %{?1}}
Alex Kashchenko 8e3a1b
  alternatives --remove jre_%{javaver}_%{origin} %{_jvmdir}/%{jrelnk -- %{?1}}
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define posttrans_script() %{expand:
a3989c
%{update_desktop_icons}
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define post_devel() %{expand:
a3989c
a3989c
PRIORITY=%{priority}
Alex Kashchenko 8e3a1b
if [ "%{?1}" == %{debug_suffix} ]; then
a3989c
  let PRIORITY=PRIORITY-1
a3989c
fi
a3989c
a3989c
ext=.gz
a3989c
alternatives \\
Alex Kashchenko 8e3a1b
  --install %{_bindir}/javac javac %{sdkbindir -- %{?1}}/javac $PRIORITY  --family %{name}.%{_arch} \\
Alex Kashchenko 8e3a1b
  --slave %{_jvmdir}/java java_sdk %{_jvmdir}/%{sdkdir -- %{?1}} \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/appletviewer appletviewer %{sdkbindir -- %{?1}}/appletviewer \\
Alex Kashchenko f2126c
  --slave %{_bindir}/clhsdb clhsdb %{sdkbindir -- %{?1}}/clhsdb \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/extcheck extcheck %{sdkbindir -- %{?1}}/extcheck \\
Alex Kashchenko f2126c
  --slave %{_bindir}/hsdb hsdb %{sdkbindir -- %{?1}}/hsdb \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/idlj idlj %{sdkbindir -- %{?1}}/idlj \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/jar jar %{sdkbindir -- %{?1}}/jar \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/jarsigner jarsigner %{sdkbindir -- %{?1}}/jarsigner \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/javadoc javadoc %{sdkbindir -- %{?1}}/javadoc \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/javah javah %{sdkbindir -- %{?1}}/javah \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/javap javap %{sdkbindir -- %{?1}}/javap \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/jcmd jcmd %{sdkbindir -- %{?1}}/jcmd \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/jconsole jconsole %{sdkbindir -- %{?1}}/jconsole \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/jdb jdb %{sdkbindir -- %{?1}}/jdb \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/jdeps jdeps %{sdkbindir -- %{?1}}/jdeps \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/jhat jhat %{sdkbindir -- %{?1}}/jhat \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/jinfo jinfo %{sdkbindir -- %{?1}}/jinfo \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/jmap jmap %{sdkbindir -- %{?1}}/jmap \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/jps jps %{sdkbindir -- %{?1}}/jps \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/jrunscript jrunscript %{sdkbindir -- %{?1}}/jrunscript \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/jsadebugd jsadebugd %{sdkbindir -- %{?1}}/jsadebugd \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/jstack jstack %{sdkbindir -- %{?1}}/jstack \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/jstat jstat %{sdkbindir -- %{?1}}/jstat \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/jstatd jstatd %{sdkbindir -- %{?1}}/jstatd \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/native2ascii native2ascii %{sdkbindir -- %{?1}}/native2ascii \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/rmic rmic %{sdkbindir -- %{?1}}/rmic \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/schemagen schemagen %{sdkbindir -- %{?1}}/schemagen \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/serialver serialver %{sdkbindir -- %{?1}}/serialver \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/wsgen wsgen %{sdkbindir -- %{?1}}/wsgen \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/wsimport wsimport %{sdkbindir -- %{?1}}/wsimport \\
Alex Kashchenko 8e3a1b
  --slave %{_bindir}/xjc xjc %{sdkbindir -- %{?1}}/xjc \\
a3989c
  --slave %{_mandir}/man1/appletviewer.1$ext appletviewer.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/appletviewer-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/extcheck.1$ext extcheck.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/extcheck-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/idlj.1$ext idlj.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/idlj-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/jar.1$ext jar.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/jar-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/jarsigner.1$ext jarsigner.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/jarsigner-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/javac.1$ext javac.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/javac-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/javadoc.1$ext javadoc.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/javadoc-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/javah.1$ext javah.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/javah-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/javap.1$ext javap.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/javap-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/jcmd.1$ext jcmd.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/jcmd-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/jconsole.1$ext jconsole.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/jconsole-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/jdb.1$ext jdb.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/jdb-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/jdeps.1$ext jdeps.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/jdeps-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/jhat.1$ext jhat.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/jhat-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/jinfo.1$ext jinfo.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/jinfo-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/jmap.1$ext jmap.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/jmap-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/jps.1$ext jps.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/jps-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/jrunscript.1$ext jrunscript.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/jrunscript-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/jsadebugd.1$ext jsadebugd.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/jsadebugd-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/jstack.1$ext jstack.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/jstack-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/jstat.1$ext jstat.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/jstat-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/jstatd.1$ext jstatd.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/jstatd-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/native2ascii.1$ext native2ascii.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/native2ascii-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/rmic.1$ext rmic.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/rmic-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/schemagen.1$ext schemagen.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/schemagen-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/serialver.1$ext serialver.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/serialver-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/wsgen.1$ext wsgen.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/wsgen-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/wsimport.1$ext wsimport.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/wsimport-%{uniquesuffix -- %{?1}}.1$ext \\
a3989c
  --slave %{_mandir}/man1/xjc.1$ext xjc.1$ext \\
Alex Kashchenko 8e3a1b
  %{_mandir}/man1/xjc-%{uniquesuffix -- %{?1}}.1$ext
a3989c
a3989c
for X in %{origin} %{javaver} ; do
Alex Kashchenko 8e3a1b
  alternatives \\
Alex Kashchenko 8e3a1b
    --install %{_jvmdir}/java-"$X" java_sdk_"$X" %{_jvmdir}/%{sdkdir -- %{?1}} $PRIORITY  --family %{name}.%{_arch}
a3989c
done
a3989c
Alex Kashchenko 211d65
update-alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} java_sdk_%{javaver}_%{origin} %{_jvmdir}/%{sdkdir -- %{?1}} $PRIORITY  --family %{name}.%{_arch}
a3989c
a3989c
update-desktop-database %{_datadir}/applications &> /dev/null || :
a3989c
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
a3989c
a3989c
exit 0
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define postun_devel() %{expand:
Alex Kashchenko 8e3a1b
  alternatives --remove javac %{sdkbindir -- %{?1}}/javac
Alex Kashchenko 8e3a1b
  alternatives --remove java_sdk_%{origin} %{_jvmdir}/%{sdkdir -- %{?1}}
Alex Kashchenko 8e3a1b
  alternatives --remove java_sdk_%{javaver} %{_jvmdir}/%{sdkdir -- %{?1}}
Alex Kashchenko 8e3a1b
  alternatives --remove java_sdk_%{javaver}_%{origin} %{_jvmdir}/%{sdkdir -- %{?1}}
a3989c
a3989c
update-desktop-database %{_datadir}/applications &> /dev/null || :
a3989c
a3989c
if [ $1 -eq 0 ] ; then
a3989c
    /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
a3989c
    %{update_desktop_icons}
a3989c
fi
a3989c
exit 0
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define posttrans_devel() %{expand:
a3989c
%{update_desktop_icons}
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define post_javadoc() %{expand:
a3989c
a3989c
PRIORITY=%{priority}
Alex Kashchenko 8e3a1b
if [ "%{?1}" == %{debug_suffix} ]; then
a3989c
  let PRIORITY=PRIORITY-1
a3989c
fi
a3989c
a3989c
alternatives \\
Alex Kashchenko 8e3a1b
  --install %{_javadocdir}/java javadocdir %{_javadocdir}/%{uniquejavadocdir -- %{?1}}/api \\
Alex Kashchenko 5c8049
  $PRIORITY  --family %{name}
a3989c
exit 0
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define postun_javadoc() %{expand:
Alex Kashchenko 8e3a1b
  alternatives --remove javadocdir %{_javadocdir}/%{uniquejavadocdir -- %{?1}}/api
a3989c
exit 0
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define post_javadoc_zip() %{expand:
92bdec
92bdec
PRIORITY=%{priority}
Alex Kashchenko 8e3a1b
if [ "%{?1}" == %{debug_suffix} ]; then
92bdec
  let PRIORITY=PRIORITY-1
92bdec
fi
92bdec
92bdec
alternatives \\
Alex Kashchenko 8e3a1b
  --install %{_javadocdir}/java-zip javadoczip %{_javadocdir}/%{uniquejavadocdir -- %{?1}}.zip \\
92bdec
  $PRIORITY  --family %{name}
92bdec
exit 0
92bdec
}
92bdec
Alex Kashchenko 8e3a1b
%define postun_javadoc_zip() %{expand:
Alex Kashchenko 8e3a1b
  alternatives --remove javadoczip %{_javadocdir}/%{uniquejavadocdir -- %{?1}}.zip
92bdec
exit 0
92bdec
}
92bdec
Alex Kashchenko 8e3a1b
%define files_jre() %{expand:
Alex Kashchenko d6f9d0
%{_datadir}/icons/hicolor/*x*/apps/java-%{javaver}-%{origin}.png
Alex Kashchenko 8e3a1b
%{_datadir}/applications/*policytool%{?1}.desktop
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/jre/lib/%{archinstall}/libjsoundalsa.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/jre/lib/%{archinstall}/libsplashscreen.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/jre/lib/%{archinstall}/libawt_xawt.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/jre/lib/%{archinstall}/libjawt.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/jre/lib/aarch32/libjsoundalsa.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/jre/lib/aarch32/libsplashscreen.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/jre/lib/aarch32/libawt_xawt.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/jre/lib/aarch32/libjawt.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/jre/bin/policytool
a3989c
}
a3989c
a3989c
Alex Kashchenko 8e3a1b
%define files_jre_headless() %{expand:
a3989c
%defattr(-,root,root,-)
Alex Kashchenko 211d65
%dir %{_sysconfdir}/.java/.systemPrefs
Alex Kashchenko 211d65
%dir %{_sysconfdir}/.java
Alex Kashchenko d6f9d0
%license %{buildoutputdir -- %{?1}}/images/%{jdkimage}/jre/ASSEMBLY_EXCEPTION
Alex Kashchenko d6f9d0
%license %{buildoutputdir -- %{?1}}/images/%{jdkimage}/jre/LICENSE
Alex Kashchenko d6f9d0
%license %{buildoutputdir -- %{?1}}/images/%{jdkimage}/jre/THIRD_PARTY_README
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{sdkdir -- %{?1}}
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jrelnk -- %{?1}}
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{jredir -- %{?1}}/lib/security
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/security/cacerts
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{jredir -- %{?1}}
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{jredir -- %{?1}}/bin
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{jredir -- %{?1}}/lib
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/bin/java
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/bin/jjs
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/bin/keytool
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/bin/orbd
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/bin/pack200
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/bin/rmid
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/bin/rmiregistry
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/bin/servertool
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/bin/tnameserv
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/bin/unpack200
Alex Kashchenko d6f9d0
%dir %{_jvmdir}/%{jredir -- %{?1}}/lib/security/policy/unlimited/
Alex Kashchenko d6f9d0
%dir %{_jvmdir}/%{jredir -- %{?1}}/lib/security/policy/limited/
Alex Kashchenko d6f9d0
%dir %{_jvmdir}/%{jredir -- %{?1}}/lib/security/policy/
Alex Kashchenko 460719
%config(noreplace) %{etcjavadir -- %{?1}}/lib/security/policy/unlimited/US_export_policy.jar
Alex Kashchenko 460719
%config(noreplace) %{etcjavadir -- %{?1}}/lib/security/policy/unlimited/local_policy.jar
Alex Kashchenko 460719
%config(noreplace) %{etcjavadir -- %{?1}}/lib/security/policy/limited/US_export_policy.jar
Alex Kashchenko 460719
%config(noreplace) %{etcjavadir -- %{?1}}/lib/security/policy/limited/local_policy.jar
Alex Kashchenko 460719
%config(noreplace) %{etcjavadir -- %{?1}}/lib/security/java.policy
Alex Kashchenko 460719
%config(noreplace) %{etcjavadir -- %{?1}}/lib/security/java.security
Alex Kashchenko 460719
%config(noreplace) %{etcjavadir -- %{?1}}/lib/security/blacklisted.certs
Alex Kashchenko 460719
%config(noreplace) %{etcjavadir -- %{?1}}/lib/logging.properties
Alex Kashchenko 460719
%config(noreplace) %{etcjavadir -- %{?1}}/lib/calendars.properties
Alex Kashchenko 460719
%{_jvmdir}/%{jredir -- %{?1}}/lib/security/policy/unlimited/US_export_policy.jar
Alex Kashchenko 460719
%{_jvmdir}/%{jredir -- %{?1}}/lib/security/policy/unlimited/local_policy.jar
Alex Kashchenko 460719
%{_jvmdir}/%{jredir -- %{?1}}/lib/security/policy/limited/US_export_policy.jar
Alex Kashchenko 460719
%{_jvmdir}/%{jredir -- %{?1}}/lib/security/policy/limited/local_policy.jar
Alex Kashchenko 460719
%{_jvmdir}/%{jredir -- %{?1}}/lib/security/java.policy
Alex Kashchenko 460719
%{_jvmdir}/%{jredir -- %{?1}}/lib/security/java.security
Alex Kashchenko 460719
%{_jvmdir}/%{jredir -- %{?1}}/lib/security/blacklisted.certs
Alex Kashchenko 460719
%{_jvmdir}/%{jredir -- %{?1}}/lib/logging.properties
Alex Kashchenko 460719
%{_jvmdir}/%{jredir -- %{?1}}/lib/calendars.properties
Alex Kashchenko 8e3a1b
%{_mandir}/man1/java-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/jjs-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/keytool-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/orbd-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/pack200-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/rmid-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/rmiregistry-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/servertool-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/tnameserv-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/unpack200-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/policytool-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 460719
%{_jvmdir}/%{jredir -- %{?1}}/lib/security/nss.cfg
Alex Kashchenko 460719
%config(noreplace) %{etcjavadir -- %{?1}}/lib/security/nss.cfg
a3989c
%ifarch %{jit_arches}
a3989c
%ifnarch %{power64}
Alex Kashchenko d6f9d0
%attr(444, root, root) %ghost %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/server/classes.jsa
Alex Kashchenko d6f9d0
%attr(444, root, root) %ghost %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/client/classes.jsa
Alex Kashchenko 8e3a1b
%endif
Alex Kashchenko 8e3a1b
%endif
Alex Kashchenko 460719
%dir %{etcjavasubdir}
Alex Kashchenko 460719
%dir %{etcjavadir -- %{?1}}
Alex Kashchenko 460719
%dir %{etcjavadir -- %{?1}}/lib
Alex Kashchenko 460719
%dir %{etcjavadir -- %{?1}}/lib/security
Alex Kashchenko 460719
%{etcjavadir -- %{?1}}/lib/security/cacerts
Alex Kashchenko 460719
%dir %{etcjavadir -- %{?1}}/lib/security/policy
Alex Kashchenko 460719
%dir %{etcjavadir -- %{?1}}/lib/security/policy/limited
Alex Kashchenko 460719
%dir %{etcjavadir -- %{?1}}/lib/security/policy/unlimited
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/server/
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/client/
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/jli
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/jli/libjli.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/jvm.cfg
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libattach.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libawt.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libawt_headless.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libdt_socket.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libfontmanager.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libhprof.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libinstrument.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libj2gss.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libj2pcsc.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libj2pkcs11.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libjaas_unix.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libjava.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libjava_crw_demo.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libjavajpeg.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libjdwp.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libjsdt.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libjsig.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libjsound.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/liblcms.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libmanagement.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libmlib_image.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libnet.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libnio.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libnpt.so
Alex Kashchenko 8e3a1b
%ifarch x86_64  %{ix86} %{aarch64}
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libsaproc.so
Alex Kashchenko 8e3a1b
%endif
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libsctp.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libsunec.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libunpack.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libverify.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libzip.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/client/
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/jli
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/jli/libjli.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/jvm.cfg
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libattach.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libawt.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libawt_headless.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libdt_socket.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libfontmanager.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libhprof.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libinstrument.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libj2gss.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libj2pcsc.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libj2pkcs11.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libjaas_unix.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libjava.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libjava_crw_demo.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libjavajpeg.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libjdwp.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libjsdt.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libjsig.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libjsound.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/liblcms.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libmanagement.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libmlib_image.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libnet.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libnio.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libnpt.so
Alex Kashchenko 8e3a1b
%ifarch x86_64  %{ix86} %{aarch64}
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libsaproc.so
Alex Kashchenko 8e3a1b
%endif
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libsctp.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libsunec.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libunpack.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libverify.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libzip.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/charsets.jar
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/classlist
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/content-types.properties
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/currency.data
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/flavormap.properties
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/hijrah-config-umalqura.properties
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/images/cursors/*
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/jce.jar
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/jexec
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/jsse.jar
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/jvm.hprof.txt
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/meta-index
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/net.properties
Alex Kashchenko 879572
%config(noreplace) %{etcjavadir -- %{?1}}/lib/net.properties
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/psfont.properties.ja
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/psfontj2d.properties
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/resources.jar
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/rt.jar
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/sound.properties
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/tzdb.dat
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/management-agent.jar
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/management/*
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/cmm/*
Alex Kashchenko d6f9d0
%{_jvmdir}/%{jredir -- %{?1}}/lib/ext/cldrdata.jar
Alex Kashchenko d6f9d0
%{_jvmdir}/%{jredir -- %{?1}}/lib/ext/dnsns.jar
Alex Kashchenko d6f9d0
%{_jvmdir}/%{jredir -- %{?1}}/lib/ext/jaccess.jar
Alex Kashchenko d6f9d0
%{_jvmdir}/%{jredir -- %{?1}}/lib/ext/localedata.jar
Alex Kashchenko d6f9d0
%{_jvmdir}/%{jredir -- %{?1}}/lib/ext/meta-index
Alex Kashchenko d6f9d0
%{_jvmdir}/%{jredir -- %{?1}}/lib/ext/nashorn.jar
Alex Kashchenko d6f9d0
%{_jvmdir}/%{jredir -- %{?1}}/lib/ext/sunec.jar
Alex Kashchenko d6f9d0
%{_jvmdir}/%{jredir -- %{?1}}/lib/ext/sunjce_provider.jar
Alex Kashchenko d6f9d0
%{_jvmdir}/%{jredir -- %{?1}}/lib/ext/sunpkcs11.jar
Alex Kashchenko d6f9d0
%{_jvmdir}/%{jredir -- %{?1}}/lib/ext/zipfs.jar
Alex Kashchenko d6f9d0
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{jredir -- %{?1}}/lib/images
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{jredir -- %{?1}}/lib/images/cursors
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{jredir -- %{?1}}/lib/management
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{jredir -- %{?1}}/lib/cmm
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{jredir -- %{?1}}/lib/ext
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define files_devel() %{expand:
a3989c
%defattr(-,root,root,-)
Alex Kashchenko d6f9d0
%license %{buildoutputdir -- %{?1}}/images/%{jdkimage}/ASSEMBLY_EXCEPTION
Alex Kashchenko d6f9d0
%license %{buildoutputdir -- %{?1}}/images/%{jdkimage}/LICENSE
Alex Kashchenko d6f9d0
%license %{buildoutputdir -- %{?1}}/images/%{jdkimage}/THIRD_PARTY_README
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{sdkdir -- %{?1}}/bin
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{sdkdir -- %{?1}}/include
Alex Kashchenko 8e3a1b
%dir %{_jvmdir}/%{sdkdir -- %{?1}}/lib
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/appletviewer
Alex Kashchenko 460719
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/clhsdb
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/extcheck
Alex Kashchenko 460719
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/hsdb
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/idlj
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jar
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jarsigner
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/java
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/javac
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/javadoc
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/javah
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/javap
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/java-rmi.cgi
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jcmd
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jconsole
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jdb
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jdeps
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jhat
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jinfo
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jjs
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jmap
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jps
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jrunscript
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jsadebugd
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jstack
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jstat
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jstatd
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/keytool
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/native2ascii
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/orbd
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/pack200
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/policytool
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/rmic
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/rmid
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/rmiregistry
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/schemagen
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/serialver
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/servertool
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/tnameserv
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/unpack200
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/wsgen
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/wsimport
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/xjc
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/include/*
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/%{archinstall}
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/aarch32
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/ct.sym
Alex Kashchenko d6f9d0
%if %{with_systemtap}
Alex Kashchenko d6f9d0
%{_jvmdir}/%{sdkdir -- %{?1}}/tapset
Alex Kashchenko d6f9d0
%endif
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/ir.idl
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/jconsole.jar
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/orb.idl
Alex Kashchenko af80df
%ifarch %{sa_arches}
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/sa-jdi.jar
Alex Kashchenko 8e3a1b
%endif
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/dt.jar
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/jexec
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/tools.jar
Alex Kashchenko 8e3a1b
%{_datadir}/applications/*jconsole%{?1}.desktop
Alex Kashchenko 8e3a1b
%{_mandir}/man1/appletviewer-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/extcheck-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/idlj-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/jar-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/jarsigner-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/javac-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/javadoc-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/javah-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/javap-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/jconsole-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/jcmd-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/jdb-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/jdeps-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/jhat-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/jinfo-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/jmap-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/jps-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/jrunscript-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/jsadebugd-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/jstack-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/jstat-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/jstatd-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/native2ascii-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/rmic-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/schemagen-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/serialver-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/wsgen-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/wsimport-%{uniquesuffix -- %{?1}}.1*
Alex Kashchenko 8e3a1b
%{_mandir}/man1/xjc-%{uniquesuffix -- %{?1}}.1*
a3989c
%if %{with_systemtap}
a3989c
%dir %{tapsetroot}
Alex Kashchenko d6f9d0
%dir %{tapsetdirttapset}
a3989c
%dir %{tapsetdir}
Alex Kashchenko d6f9d0
%{tapsetdir}/*%{_arch}%{?1}.stp
a3989c
%endif
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define files_demo() %{expand:
a3989c
%defattr(-,root,root,-)
Alex Kashchenko d6f9d0
%license %{buildoutputdir -- %{?1}}/images/%{jdkimage}/jre/LICENSE
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define files_src() %{expand:
a3989c
%defattr(-,root,root,-)
Alex Kashchenko d6f9d0
%doc README.md
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{sdkdir -- %{?1}}/src.zip
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define files_javadoc() %{expand:
a3989c
%defattr(-,root,root,-)
Alex Kashchenko 8e3a1b
%doc %{_javadocdir}/%{uniquejavadocdir -- %{?1}}
Alex Kashchenko d6f9d0
%license %{buildoutputdir -- %{?1}}/images/%{jdkimage}/jre/LICENSE
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define files_javadoc_zip() %{expand:
92bdec
%defattr(-,root,root,-)
Alex Kashchenko 8e3a1b
%doc %{_javadocdir}/%{uniquejavadocdir -- %{?1}}.zip
Alex Kashchenko d6f9d0
%license %{buildoutputdir -- %{?1}}/images/%{jdkimage}/jre/LICENSE
92bdec
}
92bdec
Alex Kashchenko 8e3a1b
%define files_accessibility() %{expand:
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/%{archinstall}/libatk-wrapper.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/aarch32/libatk-wrapper.so
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/ext/java-atk-wrapper.jar
Alex Kashchenko 8e3a1b
%{_jvmdir}/%{jredir -- %{?1}}/lib/accessibility.properties
a3989c
}
a3989c
Alex Kashchenko d6f9d0
# not-duplicated requires/provides/obsoletes for normal/debug packages
Alex Kashchenko 8e3a1b
%define java_rpo() %{expand:
Alex Kashchenko 03a905
Requires: fontconfig%{?_isa}
a3989c
Requires: xorg-x11-fonts-Type1
Alex Kashchenko 15b15a
# Require libXcomposite explicitly since it's only dynamically loaded
Alex Kashchenko 15b15a
# at runtime. Fixes screenshot issues. See JDK-8150954.
Alex Kashchenko 15b15a
Requires: libXcomposite%{?_isa}
a3989c
# Requires rest of java
Alex Kashchenko 8e3a1b
Requires: %{name}-headless%{?1}%{?_isa} = %{epoch}:%{version}-%{release}
Alex Kashchenko 8e3a1b
OrderWithRequires: %{name}-headless%{?1}%{?_isa} = %{epoch}:%{version}-%{release}
Alex Kashchenko d6f9d0
# for java-X-openjdk package's desktop binding
Alex Kashchenko 879572
%if 0%{?fedora} || 0%{?rhel} >= 8
Alex Kashchenko d6f9d0
Recommends: gtk2%{?_isa}
Alex Kashchenko 879572
%endif
a3989c
Alex Kashchenko d6f9d0
#Provides: java-%{javaver}-%{origin} = %{epoch}:%{version}-%{release}
a3989c
Alex Kashchenko d6f9d0
# Standard JPackage base provides
Alex Kashchenko 460719
#Provides: jre%{?1} = %{javaver}
Alex Kashchenko 8e3a1b
#Provides: jre-%{origin}%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko 8e3a1b
#Provides: jre-%{javaver}%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko d6f9d0
#Provides: jre-%{javaver}-%{origin}%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko 8e3a1b
#Provides: java-%{javaver}%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko 8e3a1b
#Provides: java-%{origin}%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko 8e3a1b
#Provides: java%{?1} = %{epoch}:%{javaver}
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define java_headless_rpo() %{expand:
Alex Kashchenko d6f9d0
# Require /etc/pki/java/cacerts
a3989c
Requires: ca-certificates
Alex Kashchenko a59f4a
# Require javapackages-filesystem for ownership of /usr/lib/jvm/
Alex Kashchenko a59f4a
Requires: javapackages-filesystem
Alex Kashchenko d6f9d0
# Require zone-info data provided by tzdata-java sub-package
a3989c
Requires: tzdata-java >= 2015d
a3989c
# libsctp.so.1 is being `dlopen`ed on demand
Alex Kashchenko 03a905
Requires: lksctp-tools%{?_isa}
Alex Kashchenko d6f9d0
# tool to copy jdk's configs - should be Recommends only, but then only dnf/yum enforce it,
Alex Kashchenko d6f9d0
# not rpm transaction and so no configs are persisted when pure rpm -u is run. It may be
Alex Kashchenko d6f9d0
# considered as regression
Alex Kashchenko d6f9d0
Requires: copy-jdk-configs >= 3.3
a3989c
OrderWithRequires: copy-jdk-configs
Alex Kashchenko af80df
# for printing support
Alex Kashchenko af80df
Requires: cups-libs
Alex Kashchenko d6f9d0
# Post requires alternatives to install tool alternatives
a3989c
Requires(post):   %{_sbindir}/alternatives
Alex Kashchenko d6f9d0
# Postun requires alternatives to uninstall tool alternatives
a3989c
Requires(postun): %{_sbindir}/alternatives
Alex Kashchenko d6f9d0
# for optional support of kernel stream control, card reader and printing bindings
Alex Kashchenko 879572
%if 0%{?fedora} || 0%{?rhel} >= 8
Alex Kashchenko 15b15a
Suggests: lksctp-tools%{?_isa}, pcsc-lite-devel%{?_isa}
Alex Kashchenko 879572
%endif
a3989c
Alex Kashchenko d6f9d0
# Standard JPackage base provides
Alex Kashchenko d6f9d0
#Provides: jre-headless%{?1} = %{epoch}:%{javaver}
Alex Kashchenko 8e3a1b
#Provides: jre-%{javaver}-%{origin}-headless%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko 8e3a1b
#Provides: jre-%{origin}-headless%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko 8e3a1b
#Provides: jre-%{javaver}-headless%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko d6f9d0
#Provides: java-%{javaver}-%{origin}-headless%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko 8e3a1b
#Provides: java-%{javaver}-headless%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko 8e3a1b
#Provides: java-%{origin}-headless%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko 8e3a1b
#Provides: java-headless%{?1} = %{epoch}:%{javaver}
Alex Kashchenko d6f9d0
Alex Kashchenko d6f9d0
# https://bugzilla.redhat.com/show_bug.cgi?id=1312019
Alex Kashchenko 8e3a1b
#Provides: /usr/bin/jjs
a3989c
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define java_devel_rpo() %{expand:
Alex Kashchenko d6f9d0
# Requires base package
Alex Kashchenko 8e3a1b
Requires:         %{name}%{?1}%{?_isa} = %{epoch}:%{version}-%{release}
Alex Kashchenko 8e3a1b
OrderWithRequires: %{name}-headless%{?1}%{?_isa} = %{epoch}:%{version}-%{release}
Alex Kashchenko d6f9d0
# Post requires alternatives to install tool alternatives
a3989c
Requires(post):   %{_sbindir}/alternatives
Alex Kashchenko d6f9d0
# Postun requires alternatives to uninstall tool alternatives
a3989c
Requires(postun): %{_sbindir}/alternatives
a3989c
Alex Kashchenko d6f9d0
# Standard JPackage devel provides
Alex Kashchenko 8e3a1b
#Provides: java-sdk-%{javaver}-%{origin}%{?1} = %{epoch}:%{version}
Alex Kashchenko 8e3a1b
#Provides: java-sdk-%{javaver}%{?1} = %{epoch}:%{version}
Alex Kashchenko 8e3a1b
#Provides: java-sdk-%{origin}%{?1} = %{epoch}:%{version}
Alex Kashchenko 8e3a1b
#Provides: java-sdk%{?1} = %{epoch}:%{javaver}
Alex Kashchenko 8e3a1b
#Provides: java-%{javaver}-devel%{?1} = %{epoch}:%{version}
Alex Kashchenko d6f9d0
#Provides: java-%{javaver}-%{origin}-devel%{?1} = %{epoch}:%{version}
Alex Kashchenko 8e3a1b
#Provides: java-devel-%{origin}%{?1} = %{epoch}:%{version}
Alex Kashchenko 8e3a1b
#Provides: java-devel%{?1} = %{epoch}:%{javaver}
Alex Kashchenko 8e3a1b
a3989c
}
a3989c
a3989c
Alex Kashchenko 8e3a1b
%define java_demo_rpo() %{expand:
Alex Kashchenko 8e3a1b
Requires: %{name}%{?1}%{?_isa} = %{epoch}:%{version}-%{release}
Alex Kashchenko 8e3a1b
OrderWithRequires: %{name}-headless%{?1}%{?_isa} = %{epoch}:%{version}-%{release}
a3989c
Alex Kashchenko d6f9d0
#Provides: java-demo%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko d6f9d0
#Provides: java-%{javaver}-demo%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko d6f9d0
#Provides: java-%{javaver}-%{origin}-demo%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko 3bf537
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define java_javadoc_rpo() %{expand:
Alex Kashchenko 8e3a1b
OrderWithRequires: %{name}-headless%{?1}%{?_isa} = %{epoch}:%{version}-%{release}
Alex Kashchenko d6f9d0
# Post requires alternatives to install javadoc alternative
a3989c
Requires(post):   %{_sbindir}/alternatives
Alex Kashchenko d6f9d0
# Postun requires alternatives to uninstall javadoc alternative
a3989c
Requires(postun): %{_sbindir}/alternatives
a3989c
Alex Kashchenko d6f9d0
# Standard JPackage javadoc provides
Alex Kashchenko 8e3a1b
#Provides: java-javadoc%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko 8e3a1b
#Provides: java-%{javaver}-javadoc%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko d6f9d0
#Provides: java-%{javaver}-%{origin}-javadoc%{?1} = %{epoch}:%{version}-%{release}
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define java_src_rpo() %{expand:
Alex Kashchenko 8e3a1b
Requires: %{name}-headless%{?1}%{?_isa} = %{epoch}:%{version}-%{release}
a3989c
Alex Kashchenko d6f9d0
# Standard JPackage sources provides
Alex Kashchenko 8e3a1b
#Provides: java-src%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko 8e3a1b
#Provides: java-%{javaver}-src%{?1} = %{epoch}:%{version}-%{release}
Alex Kashchenko d6f9d0
#Provides: java-%{javaver}-%{origin}-src%{?1} = %{epoch}:%{version}-%{release}
a3989c
}
a3989c
Alex Kashchenko 8e3a1b
%define java_accessibility_rpo() %{expand:
Alex Kashchenko f7e4c1
Requires: java-atk-wrapper%{?_isa}
Alex Kashchenko 8e3a1b
Requires: %{name}%{?1}%{?_isa} = %{epoch}:%{version}-%{release}
Alex Kashchenko 8e3a1b
OrderWithRequires: %{name}-headless%{?1}%{?_isa} = %{epoch}:%{version}-%{release}
a3989c
Alex Kashchenko d6f9d0
#Provides: java-accessibility = %{epoch}:%{version}-%{release}
Alex Kashchenko d6f9d0
#Provides: java-%{javaver}-accessibility = %{epoch}:%{version}-%{release}
Alex Kashchenko 8e3a1b
#Provides: java-%{javaver}-%{origin}-accessibility = %{epoch}:%{version}-%{release}
Alex Kashchenko 3bf537
a3989c
}
a3989c
Alex Kashchenko af80df
# Prevent brp-java-repack-jars from being run
a3989c
%global __jar_repack 0
a3989c
a3989c
Name:    java-%{javaver}-%{origin}-aarch32
Alex Kashchenko d6f9d0
Version: %{javaver}.%{updatever}.%{buildver}
Alex Kashchenko 879572
Release: %{?eaprefix}%{rpmrelease}%{?extraver}%{?dist}
Alex Kashchenko d6f9d0
# java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons
Alex Kashchenko d6f9d0
# and this change was brought into RHEL-4. java-1.5.0-ibm packages
Alex Kashchenko d6f9d0
# also included the epoch in their virtual provides. This created a
a3989c
# situation where in-the-wild java-1.5.0-ibm packages provided "java =
Alex Kashchenko d6f9d0
# 1:1.5.0". In RPM terms, "1.6.0 < 1:1.5.0" since 1.6.0 is
Alex Kashchenko d6f9d0
# interpreted as 0:1.6.0. So the "java >= 1.6.0" requirement would be
Alex Kashchenko d6f9d0
# satisfied by the 1:1.5.0 packages. Thus we need to set the epoch in
a3989c
# JDK package >= 1.6.0 to 1, and packages referring to JDK virtual
a3989c
# provides >= 1.6.0 must specify the epoch, "java >= 1:1.6.0".
a3989c
a3989c
Epoch:   1
Alex Kashchenko 879572
Summary: %{origin_nice} Runtime Environment %{majorver} in a preview of the OpenJDK AArch32 project
a3989c
Alex Kashchenko a59f4a
# HotSpot code is licensed under GPLv2
Alex Kashchenko a59f4a
# JDK library code is licensed under GPLv2 with the Classpath exception
Alex Kashchenko a59f4a
# The Apache license is used in code taken from Apache projects (primarily JAXP & JAXWS)
Alex Kashchenko a59f4a
# DOM levels 2 & 3 and the XML digital signature schemas are licensed under the W3C Software License
Alex Kashchenko a59f4a
# The JSR166 concurrency code is in the public domain
Alex Kashchenko a59f4a
# The BSD and MIT licenses are used for a number of third-party libraries (see THIRD_PARTY_README)
Alex Kashchenko a59f4a
# The OpenJDK source tree includes the JPEG library (IJG), zlib & libpng (zlib), giflib and LCMS (MIT)
Alex Kashchenko a59f4a
# The test code includes copies of NSS under the Mozilla Public License v2.0
Alex Kashchenko a59f4a
# The PCSClite headers are under a BSD with advertising license
Alex Kashchenko a59f4a
# The elliptic curve cryptography (ECC) source code is licensed under the LGPLv2.1 or any later version
Alex Kashchenko a59f4a
License:  ASL 1.1 and ASL 2.0 and BSD and BSD with advertising and GPL+ and GPLv2 and GPLv2 with exceptions and IJG and LGPLv2+ and MIT and MPLv2.0 and Public Domain and W3C and zlib
a3989c
URL:      http://openjdk.java.net/
a3989c
Alex Kashchenko 3bf537
# Shenandoah HotSpot
Alex Kashchenko d6f9d0
# aarch64-port/jdk8u-shenandoah contains an integration forest of
Alex Kashchenko d6f9d0
# OpenJDK 8u, the aarch64 port and Shenandoah
Alex Kashchenko d6f9d0
# To regenerate, use:
Alex Kashchenko d6f9d0
# VERSION=%%{shenandoah_revision}
Alex Kashchenko d6f9d0
# FILE_NAME_ROOT=%%{shenandoah_project}-%%{shenandoah_repo}-${VERSION}
Alex Kashchenko 15b15a
# REPO_ROOT=<path to="" checked-out="" repository=""> generate_source_tarball.sh
Alex Kashchenko d6f9d0
# where the source is obtained from http://hg.openjdk.java.net/%%{project}/%%{repo}
Alex Kashchenko f2126c
Source0: %{project}-%{repo}-jdk8u232-ga-aarch32-191016.tar.xz
Alex Kashchenko 3bf537
a3989c
# Custom README for -src subpackage
Alex Kashchenko d6f9d0
Source2:  README.md
a3989c
Alex Kashchenko 460719
# Use 'icedtea_sync.sh' to update the following
Alex Kashchenko 460719
# They are based on code contained in the IcedTea project (3.x).
Alex Kashchenko 460719
# Systemtap tapsets. Zipped up to keep it small.
Alex Kashchenko 460719
Source8: tapsets-icedtea-%{icedteaver}.tar.xz
a3989c
Alex Kashchenko d6f9d0
# Desktop files. Adapted from IcedTea
a3989c
Source9: jconsole.desktop.in
a3989c
Source10: policytool.desktop.in
a3989c
a3989c
# nss configuration file
Alex Kashchenko f7e4c1
Source11: nss.cfg.in
a3989c
a3989c
# Removed libraries that we link instead
a3989c
Source12: java-1.8.0-openjdk-remove-intree-libraries.sh
a3989c
a3989c
# Ensure we aren't using the limited crypto policy
a3989c
Source13: TestCryptoLevel.java
a3989c
Alex Kashchenko 5c8049
# Ensure ECDSA is working
Alex Kashchenko 5c8049
Source14: TestECDSA.java
Alex Kashchenko 5c8049
Alex Kashchenko 460719
# Verify system crypto (policy) can be disabled via a property
Alex Kashchenko 460719
Source15: TestSecurityProperties.java
Alex Kashchenko 460719
a3989c
Source20: repackReproduciblePolycies.sh
a3989c
a3989c
# New versions of config files with aarch64 support. This is not upstream yet.
a3989c
Source100: config.guess
a3989c
Source101: config.sub
a3989c
Alex Kashchenko d6f9d0
############################################
Alex Kashchenko d6f9d0
#
a3989c
# RPM/distribution specific patches
Alex Kashchenko d6f9d0
#
Alex Kashchenko af80df
# This section includes patches specific to
Alex Kashchenko af80df
# Fedora/RHEL which can not be upstreamed
Alex Kashchenko af80df
# either in their current form or at all.
Alex Kashchenko d6f9d0
############################################
a3989c
a3989c
# Accessibility patches
a3989c
# Ignore AWTError when assistive technologies are loaded 
Alex Kashchenko af80df
Patch1:   rh1648242-accessible_toolkit_crash_do_not_break_jvm.patch
a3989c
# Restrict access to java-atk-wrapper classes
Alex Kashchenko af80df
Patch3:   rh1648644-java_access_bridge_privileged_security.patch
Alex Kashchenko af80df
# Turn on AssumeMP by default on RHEL systems
Alex Kashchenko af80df
Patch534: rh1648246-always_instruct_vm_to_assume_multiple_processors_are_available.patch
Alex Kashchenko 15b15a
Alex Kashchenko 15b15a
#############################################
Alex Kashchenko 15b15a
#
Alex Kashchenko 15b15a
# Upstreamable patches
Alex Kashchenko 15b15a
#
Alex Kashchenko af80df
# This section includes patches which need to
Alex Kashchenko af80df
# be reviewed & pushed to the current development
Alex Kashchenko af80df
# tree of OpenJDK.
Alex Kashchenko 15b15a
#############################################
Alex Kashchenko 15b15a
# PR2737: Allow multiple initialization of PKCS11 libraries
Alex Kashchenko af80df
Patch5: pr2737-allow_multiple_pkcs11_library_initialisation_to_be_a_non_critical_error.patch
Alex Kashchenko 15b15a
# PR2095, RH1163501: 2048-bit DH upper bound too small for Fedora infrastructure (sync with IcedTea 2.x)
Alex Kashchenko af80df
Patch504: rh1163501-increase_2048_bit_dh_upper_bound_fedora_infrastructure_in_dhparametergenerator.patch
Alex Kashchenko 15b15a
# Turn off strict overflow on IndicRearrangementProcessor{,2}.cpp following 8140543: Arrange font actions
Alex Kashchenko af80df
Patch512: rh1649664-awt2dlibraries_compiled_with_no_strict_overflow.patch
akashche 02bc7e
# RH1337583, PR2974: PKCS#10 certificate requests now use CRLF line endings rather than system line endings
Alex Kashchenko af80df
Patch523: pr2974-rh1337583-add_systemlineendings_option_to_keytool_and_use_line_separator_instead_of_crlf_in_pkcs10.patch
akashche 02bc7e
# PR3083, RH1346460: Regression in SSL debug output without an ECC provider
Alex Kashchenko af80df
Patch528: pr3083-rh1346460-for_ssl_debug_return_null_instead_of_exception_when_theres_no_ecc_provider.patch
Alex Kashchenko d6f9d0
# RH1566890: CVE-2018-3639
Alex Kashchenko 879572
Patch529: rh1566890-CVE_2018_3639-speculative_store_bypass.patch
Alex Kashchenko 879572
Patch531: rh1566890-CVE_2018_3639-speculative_store_bypass_toggle.patch
Alex Kashchenko d6f9d0
# PR3601: Fix additional -Wreturn-type issues introduced by 8061651
Alex Kashchenko af80df
Patch530: pr3601-fix_additional_Wreturn_type_issues_introduced_by_8061651_for_prims_jvm_cpp.patch
Alex Kashchenko af80df
# PR2888: OpenJDK should check for system cacerts database (e.g. /etc/pki/java/cacerts)
Alex Kashchenko af80df
# PR3575, RH1567204: System cacerts database handling should not affect jssecacerts
Alex Kashchenko 879572
Patch539: pr2888-openjdk_should_check_for_system_cacerts_database_eg_etc_pki_java_cacerts.patch
Alex Kashchenko af80df
# PR3183, RH1340845: Support Fedora/RHEL8 system crypto policy
Alex Kashchenko af80df
Patch300: pr3183-rh1340845-support_fedora_rhel_system_crypto_policy.patch
Alex Kashchenko 460719
# PR3655: Allow use of system crypto policy to be disabled by the user
Alex Kashchenko 460719
Patch301: pr3655-toggle_system_crypto_policy.patch
Alex Kashchenko 460719
# JDK-8219772: EXTRA_CFLAGS not being picked up for assembler files
Alex Kashchenko 460719
Patch110: jdk8219772-extra_c_cxx_flags_not_picked_for_assembler_source.patch
a3989c
Alex Kashchenko af80df
#############################################
Alex Kashchenko af80df
#
Alex Kashchenko f7e4c1
# Arch-specific upstreamable patches
Alex Kashchenko af80df
#
Alex Kashchenko af80df
# This section includes patches which need to
Alex Kashchenko af80df
# be reviewed & pushed upstream and are specific
Alex Kashchenko af80df
# to certain architectures. This usually means the
Alex Kashchenko af80df
# current OpenJDK development branch, but may also
Alex Kashchenko af80df
# include other trees e.g. for the AArch64 port for
Alex Kashchenko af80df
# OpenJDK 8u.
Alex Kashchenko af80df
#############################################
Alex Kashchenko d6f9d0
# s390: PR3593: Use "%z" for size_t on s390 as size_t != intptr_t
Alex Kashchenko af80df
Patch103: pr3593-s390_use_z_format_specifier_for_size_t_arguments_as_size_t_not_equals_to_int.patch
Alex Kashchenko d6f9d0
# x86: S8199936, PR3533: HotSpot generates code with unaligned stack, crashes on SSE operations (-mstackrealign workaround)
Alex Kashchenko af80df
Patch105: jdk8199936-pr3533-enable_mstackrealign_on_x86_linux_as_well_as_x86_mac_os_x.patch
Alex Kashchenko d6f9d0
# AArch64: PR3519: Fix further functions with a missing return value (AArch64)
Alex Kashchenko af80df
Patch106: pr3519-fix_further_functions_with_a_missing_return_value.patch
Alex Kashchenko 460719
# S390 ambiguous log2_intptr calls
Alex Kashchenko 460719
Patch107: s390-8214206_fix.patch
Alex Kashchenko d6f9d0
Alex Kashchenko d6f9d0
#############################################
Alex Kashchenko d6f9d0
#
Alex Kashchenko f7e4c1
# Patches which need backporting to 8u
Alex Kashchenko d6f9d0
#
Alex Kashchenko af80df
# This section includes patches which have
Alex Kashchenko af80df
# been pushed upstream to the latest OpenJDK
Alex Kashchenko af80df
# development tree, but need to be backported
Alex Kashchenko af80df
# to OpenJDK 8u.
Alex Kashchenko d6f9d0
#############################################
Alex Kashchenko d6f9d0
# S8074839, PR2462: Resolve disabled warnings for libunpack and the unpack200 binary
a3989c
# This fixes printf warnings that lead to build failure with -Werror=format-security from optflags
Alex Kashchenko af80df
Patch502: pr2462-resolve_disabled_warnings_for_libunpack_and_the_unpack200_binary.patch
akashche 02bc7e
# S8154313: Generated javadoc scattered all over the place
Alex Kashchenko af80df
Patch400: jdk8154313-generated_javadoc_scattered_all_over_the_place.patch
Alex Kashchenko d6f9d0
# PR3591: Fix for bug 3533 doesn't add -mstackrealign to JDK code
Alex Kashchenko af80df
Patch571: jdk8199936-pr3591-enable_mstackrealign_on_x86_linux_as_well_as_x86_mac_os_x_jdk.patch
Alex Kashchenko d6f9d0
# 8143245, PR3548: Zero build requires disabled warnings
Alex Kashchenko af80df
Patch574: jdk8143245-pr3548-zero_build_requires_disabled_warnings.patch
Alex Kashchenko d6f9d0
# 8197981, PR3548: Missing return statement in __sync_val_compare_and_swap_8
Alex Kashchenko af80df
Patch575: jdk8197981-pr3548-missing_return_statement_in_sync_val_compare_and_swap_8.patch
Alex Kashchenko d6f9d0
# 8062808, PR3548: Turn on the -Wreturn-type warning
Alex Kashchenko af80df
Patch577: jdk8062808-pr3548-turn_on_the_wreturn_type_warning.patch
Alex Kashchenko 15b15a
# s390: JDK-8203030, Type fixing for s390
Alex Kashchenko af80df
Patch102: jdk8203030-zero_s390_31_bit_size_t_type_conflicts_in_shared_code.patch
Alex Kashchenko af80df
# 8035341: Allow using a system installed libpng
Alex Kashchenko af80df
Patch202: jdk8035341-allow_using_system_installed_libpng.patch
Alex Kashchenko af80df
# 8042159: Allow using a system-installed lcms2
Alex Kashchenko af80df
Patch203: jdk8042159-allow_using_system_installed_lcms2.patch
Alex Kashchenko 15b15a
Alex Kashchenko 15b15a
#############################################
Alex Kashchenko 15b15a
#
Alex Kashchenko 460719
# Patches appearing in 8u222
Alex Kashchenko d6f9d0
#
Alex Kashchenko af80df
# This section includes patches which are present
Alex Kashchenko af80df
# in the listed OpenJDK 8u release and should be
Alex Kashchenko af80df
# able to be removed once that release is out
Alex Kashchenko af80df
# and used by this RPM.
Alex Kashchenko d6f9d0
#############################################
a3989c
Alex Kashchenko d6f9d0
#############################################
Alex Kashchenko d6f9d0
#
Alex Kashchenko af80df
# Patches ineligible for 8u
Alex Kashchenko d6f9d0
#
Alex Kashchenko af80df
# This section includes patches which are present
Alex Kashchenko af80df
# upstream, but ineligible for upstream 8u backport.
Alex Kashchenko d6f9d0
#############################################
Alex Kashchenko af80df
# 8043805: Allow using a system-installed libjpeg
Alex Kashchenko af80df
Patch201: jdk8043805-allow_using_system_installed_libjpeg.patch
a3989c
Alex Kashchenko af80df
#############################################
Alex Kashchenko af80df
#
Alex Kashchenko 15b15a
# Shenandoah fixes
Alex Kashchenko af80df
#
Alex Kashchenko af80df
# This section includes patches which are
Alex Kashchenko af80df
# specific to the Shenandoah garbage collector
Alex Kashchenko af80df
# and should be upstreamed to the appropriate
Alex Kashchenko af80df
# trees.
Alex Kashchenko af80df
#############################################
Alex Kashchenko 15b15a
Alex Kashchenko d6f9d0
#############################################
Alex Kashchenko d6f9d0
#
a3989c
# Non-OpenJDK fixes
Alex Kashchenko d6f9d0
#
Alex Kashchenko af80df
# This section includes patches to code other
Alex Kashchenko af80df
# that from OpenJDK.
Alex Kashchenko d6f9d0
#############################################
Alex Kashchenko af80df
Patch1000: rh1648249-add_commented_out_nss_cfg_provider_to_java_security.patch
a3989c
Alex Kashchenko af80df
#############################################
Alex Kashchenko af80df
#
Alex Kashchenko af80df
# Dependencies
Alex Kashchenko af80df
#
Alex Kashchenko af80df
#############################################
a3989c
BuildRequires: autoconf
a3989c
BuildRequires: automake
a3989c
BuildRequires: alsa-lib-devel
a3989c
BuildRequires: binutils
a3989c
BuildRequires: cups-devel
a3989c
BuildRequires: desktop-file-utils
Alex Kashchenko d6f9d0
# elfutils only are OK for build without AOT
Alex Kashchenko d6f9d0
BuildRequires: elfutils-devel
Alex Kashchenko 879572
BuildRequires: fontconfig-devel
a3989c
BuildRequires: freetype-devel
a3989c
BuildRequires: giflib-devel
a3989c
BuildRequires: gcc-c++
Alex Kashchenko fffdff
BuildRequires: gdb
a3989c
BuildRequires: lcms2-devel
a3989c
BuildRequires: libjpeg-devel
a3989c
BuildRequires: libpng-devel
a3989c
BuildRequires: libxslt
a3989c
BuildRequires: libX11-devel
Alex Kashchenko 879572
BuildRequires: libXext-devel
a3989c
BuildRequires: libXi-devel
a3989c
BuildRequires: libXinerama-devel
Alex Kashchenko 879572
BuildRequires: libXrender-devel
a3989c
BuildRequires: libXt-devel
a3989c
BuildRequires: libXtst-devel
a3989c
# Requirements for setting up the nss.cfg
a3989c
BuildRequires: nss-devel
a3989c
BuildRequires: pkgconfig
a3989c
BuildRequires: xorg-x11-proto-devel
a3989c
BuildRequires: zip
Alex Kashchenko 15b15a
BuildRequires: unzip
Alex Kashchenko 3bf537
# Use OpenJDK 7 where available (on RHEL) to avoid
Alex Kashchenko 3bf537
# having to use the rhel-7.x-java-unsafe-candidate hack
Alex Kashchenko a59f4a
%if ! 0%{?fedora} && 0%{?rhel} <= 7
Alex Kashchenko d6f9d0
# Require a boot JDK which doesn't fail due to RH1482244
Alex Kashchenko a59f4a
BuildRequires: java-1.7.0-openjdk-devel >= 1.7.0.151-2.6.11.3
Alex Kashchenko 3bf537
%else
Alex Kashchenko 8e3a1b
BuildRequires: java-1.8.0-openjdk-aarch32-devel
Alex Kashchenko 3bf537
%endif
Alex Kashchenko d6f9d0
# Zero-assembler build requirement
a3989c
%ifnarch %{jit_arches}
a3989c
BuildRequires: libffi-devel
a3989c
%endif
a3989c
BuildRequires: tzdata-java >= 2015d
a3989c
# Earlier versions have a bug in tree vectorization on PPC
a3989c
BuildRequires: gcc >= 4.8.3-8
a3989c
a3989c
%if %{with_systemtap}
a3989c
BuildRequires: systemtap-sdt-devel
a3989c
%endif
a3989c
Alex Kashchenko d6f9d0
# this is always built, also during debug-only build
Alex Kashchenko d6f9d0
# when it is built in debug-only this package is just placeholder
a3989c
%{java_rpo %{nil}}
a3989c
a3989c
ExclusiveArch: %{arm}
a3989c
a3989c
%description
Alex Kashchenko 3bf537
A preview release of the upstream OpenJDK AArch32 porting project.
a3989c
The OpenJDK runtime environment.
a3989c
a3989c
%if %{include_debug_build}
Alex Kashchenko d6f9d0
%package slowdebug
Alex Kashchenko d6f9d0
Summary: %{origin_nice} Runtime Environment %{majorver} %{debug_on}
a3989c
Alex Kashchenko 8e3a1b
%{java_rpo -- %{debug_suffix_unquoted}}
Alex Kashchenko d6f9d0
%description slowdebug
Alex Kashchenko 15b15a
The %{origin_nice} runtime environment %{majorver}.
a3989c
%{debug_warning}
a3989c
%endif
a3989c
a3989c
%if %{include_normal_build}
a3989c
%package headless
Alex Kashchenko d6f9d0
Summary: %{origin_nice} Headless Runtime Environment %{majorver}
a3989c
a3989c
%{java_headless_rpo %{nil}}
a3989c
a3989c
%description headless
Alex Kashchenko d6f9d0
The %{origin_nice} runtime environment %{majorver} without audio and video support.
a3989c
%endif
a3989c
a3989c
%if %{include_debug_build}
Alex Kashchenko d6f9d0
%package headless-slowdebug
Alex Kashchenko 15b15a
Summary: %{origin_nice} Runtime Environment %{majorver} %{debug_on}
a3989c
Alex Kashchenko 8e3a1b
%{java_headless_rpo -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%description headless-slowdebug
Alex Kashchenko d6f9d0
The %{origin_nice} runtime environment %{majorver} without audio and video support.
a3989c
%{debug_warning}
a3989c
%endif
a3989c
a3989c
%if %{include_normal_build}
a3989c
%package devel
Alex Kashchenko d6f9d0
Summary: %{origin_nice} Development Environment %{majorver}
a3989c
a3989c
%{java_devel_rpo %{nil}}
a3989c
a3989c
%description devel
Alex Kashchenko d6f9d0
The %{origin_nice} development tools %{majorver}.
a3989c
%endif
a3989c
a3989c
%if %{include_debug_build}
Alex Kashchenko d6f9d0
%package devel-slowdebug
Alex Kashchenko d6f9d0
Summary: %{origin_nice} Development Environment %{majorver} %{debug_on}
a3989c
Alex Kashchenko 8e3a1b
%{java_devel_rpo -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%description devel-slowdebug
Alex Kashchenko d6f9d0
The %{origin_nice} development tools %{majorver}.
a3989c
%{debug_warning}
a3989c
%endif
a3989c
a3989c
%if %{include_normal_build}
a3989c
%package demo
Alex Kashchenko d6f9d0
Summary: %{origin_nice} Demos %{majorver}
a3989c
a3989c
%{java_demo_rpo %{nil}}
a3989c
a3989c
%description demo
Alex Kashchenko d6f9d0
The %{origin_nice} demos %{majorver}.
a3989c
%endif
a3989c
a3989c
%if %{include_debug_build}
Alex Kashchenko d6f9d0
%package demo-slowdebug
Alex Kashchenko d6f9d0
Summary: %{origin_nice} Demos %{majorver} %{debug_on}
a3989c
Alex Kashchenko 8e3a1b
%{java_demo_rpo -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%description demo-slowdebug
Alex Kashchenko d6f9d0
The %{origin_nice} demos %{majorver}.
a3989c
%{debug_warning}
a3989c
%endif
a3989c
a3989c
%if %{include_normal_build}
a3989c
%package src
Alex Kashchenko d6f9d0
Summary: %{origin_nice} Source Bundle %{majorver}
a3989c
a3989c
%{java_src_rpo %{nil}}
a3989c
a3989c
%description src
Alex Kashchenko d6f9d0
The java-%{origin}-src sub-package contains the complete %{origin_nice} %{majorver}
Alex Kashchenko d6f9d0
class library source code for use by IDE indexers and debuggers.
a3989c
%endif
a3989c
a3989c
%if %{include_debug_build}
Alex Kashchenko d6f9d0
%package src-slowdebug
Alex Kashchenko d6f9d0
Summary: %{origin_nice} Source Bundle %{majorver} %{for_debug}
a3989c
Alex Kashchenko 8e3a1b
%{java_src_rpo -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%description src-slowdebug
Alex Kashchenko d6f9d0
The java-%{origin}-src-slowdebug sub-package contains the complete %{origin_nice} %{majorver}
Alex Kashchenko d6f9d0
 class library source code for use by IDE indexers and debuggers. Debugging %{for_debug}.
a3989c
%endif
a3989c
a3989c
%if %{include_normal_build}
a3989c
%package javadoc
Alex Kashchenko d6f9d0
Summary: %{origin_nice} %{majorver} API documentation
Alex Kashchenko a59f4a
Requires: javapackages-filesystem
Alex Kashchenko 879572
Obsoletes: javadoc-slowdebug < 1:1.8.0.222.b10-1
a3989c
BuildArch: noarch
a3989c
a3989c
%{java_javadoc_rpo %{nil}}
a3989c
a3989c
%description javadoc
Alex Kashchenko d6f9d0
The %{origin_nice} %{majorver} API documentation.
a3989c
%endif
a3989c
92bdec
%if %{include_normal_build}
92bdec
%package javadoc-zip
Alex Kashchenko 879572
Summary: %{origin_nice} %{majorver} API documentation compressed in a single archive
Alex Kashchenko a59f4a
Requires: javapackages-filesystem
Alex Kashchenko 879572
Obsoletes: javadoc-zip-slowdebug < 1:1.8.0.222.b10-1
92bdec
BuildArch: noarch
92bdec
92bdec
%{java_javadoc_rpo %{nil}}
92bdec
92bdec
%description javadoc-zip
Alex Kashchenko 879572
The %{origin_nice} %{majorver} API documentation compressed in a single archive.
92bdec
%endif
92bdec
a3989c
%if %{include_normal_build}
a3989c
%package accessibility
Alex Kashchenko d6f9d0
Summary: %{origin_nice} %{majorver} accessibility connector
a3989c
a3989c
%{java_accessibility_rpo %{nil}}
a3989c
a3989c
%description accessibility
Alex Kashchenko d6f9d0
Enables accessibility support in %{origin_nice} %{majorver} by using java-atk-wrapper. This allows
a3989c
compatible at-spi2 based accessibility programs to work for AWT and Swing-based
a3989c
programs.
a3989c
Alex Kashchenko d6f9d0
Please note, the java-atk-wrapper is still in beta, and %{origin_nice} %{majorver} itself is still
a3989c
being tuned to be working with accessibility features. There are known issues
a3989c
with accessibility on, so please do not install this package unless you really
a3989c
need to.
a3989c
%endif
a3989c
a3989c
%if %{include_debug_build}
Alex Kashchenko d6f9d0
%package accessibility-slowdebug
Alex Kashchenko d6f9d0
Summary: %{origin_nice} %{majorver} accessibility connector %{for_debug}
a3989c
Alex Kashchenko 8e3a1b
%{java_accessibility_rpo -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%description accessibility-slowdebug
a3989c
See normal java-%{version}-openjdk-accessibility description.
a3989c
%endif
a3989c
Alex Kashchenko 3bf537
Alex Kashchenko 3bf537
%if %{with_openjfx_binding}
Alex Kashchenko 3bf537
%package openjfx
Alex Kashchenko 3bf537
Summary: OpenJDK x OpenJFX connector. This package adds symliks finishing Java FX integration to %{name}
Alex Kashchenko 3bf537
Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
Alex Kashchenko 3bf537
Requires: openjfx%{?_isa}
Alex Kashchenko 3bf537
Provides: javafx  = %{epoch}:%{version}-%{release}
Alex Kashchenko 3bf537
%description openjfx
Alex Kashchenko 3bf537
Set of links from OpenJDK (jre) to OpenJFX
Alex Kashchenko 3bf537
Alex Kashchenko 3bf537
%package openjfx-devel
Alex Kashchenko 3bf537
Summary: OpenJDK x OpenJFX connector for FX developers. This package adds symliks finishing Java FX integration to %{name}-devel
Alex Kashchenko 3bf537
Requires: %{name}-devel%{?_isa} = %{epoch}:%{version}-%{release}
Alex Kashchenko 3bf537
Requires: openjfx-devel%{?_isa}
Alex Kashchenko 3bf537
Provides: javafx-devel = %{epoch}:%{version}-%{release}
Alex Kashchenko 3bf537
%description openjfx-devel
Alex Kashchenko 3bf537
Set of links from OpenJDK (sdk) to OpenJFX
Alex Kashchenko 3bf537
Alex Kashchenko 3bf537
%if %{include_debug_build}
Alex Kashchenko d6f9d0
%package openjfx-slowdebug
Alex Kashchenko d6f9d0
Summary: OpenJDK x OpenJFX connector %{for_debug}. his package adds symliks finishing Java FX integration to %{name}-slowdebug
Alex Kashchenko d6f9d0
Requires: %{name}-slowdebug%{?_isa} = %{epoch}:%{version}-%{release}
Alex Kashchenko 3bf537
Requires: openjfx%{?_isa}
Alex Kashchenko d6f9d0
Provides: javafx-slowdebug = %{epoch}:%{version}-%{release}
Alex Kashchenko d6f9d0
%description openjfx-slowdebug
Alex Kashchenko d6f9d0
Set of links from OpenJDK-slowdebug (jre) to normal OpenJFX. OpenJFX do not support debug buuilds of itself
Alex Kashchenko 3bf537
Alex Kashchenko d6f9d0
%package openjfx-devel-slowdebug
Alex Kashchenko d6f9d0
Summary: OpenJDK x OpenJFX connector for FX developers %{for_debug}. This package adds symliks finishing Java FX integration to %{name}-devel-slowdebug
Alex Kashchenko d6f9d0
Requires: %{name}-devel-slowdebug%{?_isa} = %{epoch}:%{version}-%{release}
Alex Kashchenko 3bf537
Requires: openjfx-devel%{?_isa}
Alex Kashchenko d6f9d0
Provides: javafx-devel-slowdebug = %{epoch}:%{version}-%{release}
Alex Kashchenko d6f9d0
%description openjfx-devel-slowdebug
Alex Kashchenko d6f9d0
Set of links from OpenJDK-slowdebug (sdk) to normal OpenJFX. OpenJFX do not support debug buuilds of itself
Alex Kashchenko 3bf537
%endif
Alex Kashchenko 3bf537
%endif
Alex Kashchenko 3bf537
a3989c
%prep
a3989c
if [ %{include_normal_build} -eq 0 -o  %{include_normal_build} -eq 1 ] ; then
a3989c
  echo "include_normal_build is %{include_normal_build}"
a3989c
else
a3989c
  echo "include_normal_build is %{include_normal_build}, thats invalid. Use 1 for yes or 0 for no"
a3989c
  exit 11
a3989c
fi
a3989c
if [ %{include_debug_build} -eq 0 -o  %{include_debug_build} -eq 1 ] ; then
a3989c
  echo "include_debug_build is %{include_debug_build}"
a3989c
else
a3989c
  echo "include_debug_build is %{include_debug_build}, thats invalid. Use 1 for yes or 0 for no"
a3989c
  exit 12
a3989c
fi
a3989c
if [ %{include_debug_build} -eq 0 -a  %{include_normal_build} -eq 0 ] ; then
Alex Kashchenko d6f9d0
  echo "You have disabled both include_debug_build and include_normal_build. That is a no go."
a3989c
  exit 13
a3989c
fi
Alex Kashchenko 879572
Alex Kashchenko 879572
echo "Update version: %{updatever}"
Alex Kashchenko 879572
echo "Build number: %{buildver}"
Alex Kashchenko 879572
echo "Milestone: %{milestone}"
a3989c
%setup -q -c -n %{uniquesuffix ""} -T -a 0
a3989c
# https://bugzilla.redhat.com/show_bug.cgi?id=1189084
a3989c
prioritylength=`expr length %{priority}`
a3989c
if [ $prioritylength -ne 7 ] ; then
a3989c
 echo "priority must be 7 digits in total, violated"
a3989c
 exit 14
a3989c
fi
a3989c
# For old patches
Alex Kashchenko 15b15a
ln -s %{top_level_dir_name} jdk8
a3989c
a3989c
cp %{SOURCE2} .
a3989c
a3989c
# replace outdated configure guess script
a3989c
#
a3989c
# the configure macro will do this too, but it also passes a few flags not
a3989c
# supported by openjdk configure script
Alex Kashchenko 15b15a
cp %{SOURCE100} %{top_level_dir_name}/common/autoconf/build-aux/
Alex Kashchenko 15b15a
cp %{SOURCE101} %{top_level_dir_name}/common/autoconf/build-aux/
a3989c
a3989c
# OpenJDK patches
a3989c
a3989c
# Remove libraries that are linked
a3989c
sh %{SOURCE12}
a3989c
Alex Kashchenko f7e4c1
# System library fixes
a3989c
%patch201
a3989c
%patch202
a3989c
%patch203
Alex Kashchenko f7e4c1
Alex Kashchenko 460719
# System security policy fixes
Alex Kashchenko a59f4a
%patch300
Alex Kashchenko 460719
%patch301
a3989c
a3989c
%patch1
a3989c
%patch3
a3989c
%patch5
a3989c
Alex Kashchenko f7e4c1
# s390 build fixes
Alex Kashchenko 460719
#%patch102
Alex Kashchenko 460719
#%patch103
Alex Kashchenko 460719
#%patch107
Alex Kashchenko f7e4c1
Alex Kashchenko a59f4a
# AArch64 fixes
Alex Kashchenko d6f9d0
#%patch106
Alex Kashchenko d6f9d0
Alex Kashchenko d6f9d0
# x86 fixes
Alex Kashchenko d6f9d0
%patch105
Alex Kashchenko f7e4c1
Alex Kashchenko f7e4c1
# Upstreamable fixes
a3989c
%patch502
a3989c
%patch504
a3989c
%patch512
akashche 02bc7e
%patch400
akashche 02bc7e
%patch523
akashche 02bc7e
%patch528
Alex Kashchenko d6f9d0
%patch529
Alex Kashchenko 879572
%patch531
Alex Kashchenko d6f9d0
%patch530
Alex Kashchenko d6f9d0
%patch571
Alex Kashchenko f2126c
#%patch574
Alex Kashchenko d6f9d0
%patch575
Alex Kashchenko d6f9d0
%patch577
Alex Kashchenko 460719
%patch110
Alex Kashchenko 211d65
Alex Kashchenko f7e4c1
# RPM-only fixes
Alex Kashchenko f7e4c1
%patch539
Alex Kashchenko 879572
%patch1000
a3989c
Alex Kashchenko f7e4c1
# RHEL-only patches
Alex Kashchenko 36b8ff
%if ! 0%{?fedora} && 0%{?rhel} <= 7
Alex Kashchenko f7e4c1
%patch534
Alex Kashchenko f7e4c1
%endif
Alex Kashchenko ef6143
Alex Kashchenko 15b15a
# Shenandoah patches
Alex Kashchenko 211d65
a3989c
# Extract systemtap tapsets
a3989c
%if %{with_systemtap}
Alex Kashchenko 15b15a
tar --strip-components=1 -x -I xz -f %{SOURCE8}
a3989c
%if %{include_debug_build}
a3989c
cp -r tapset tapset%{debug_suffix}
a3989c
%endif
a3989c
a3989c
a3989c
for suffix in %{build_loop} ; do
a3989c
  for file in "tapset"$suffix/*.in; do
Alex Kashchenko 460719
    OUTPUT_FILE=`echo $file | sed -e "s:\.stp\.in$:-%{version}-%{release}.%{_arch}.stp:g"`
Alex Kashchenko d6f9d0
    sed -e "s:@ABS_SERVER_LIBJVM_SO@:%{_jvmdir}/%{sdkdir -- $suffix}/jre/lib/%{archinstall}/server/libjvm.so:g" $file > $file.1
a3989c
# TODO find out which architectures other than i686 have a client vm
a3989c
%ifarch %{ix86}
Alex Kashchenko d6f9d0
    sed -e "s:@ABS_CLIENT_LIBJVM_SO@:%{_jvmdir}/%{sdkdir -- $suffix}/jre/lib/%{archinstall}/client/libjvm.so:g" $file.1 > $OUTPUT_FILE
a3989c
%else
Alex Kashchenko d6f9d0
    sed -e "/@ABS_CLIENT_LIBJVM_SO@/d" $file.1 > $OUTPUT_FILE
a3989c
%endif
Alex Kashchenko d6f9d0
    sed -i -e "s:@ABS_JAVA_HOME_DIR@:%{_jvmdir}/%{sdkdir -- $suffix}:g" $OUTPUT_FILE
Alex Kashchenko d6f9d0
    sed -i -e "s:@INSTALL_ARCH_DIR@:%{archinstall}:g" $OUTPUT_FILE
Alex Kashchenko d6f9d0
    sed -i -e "s:@prefix@:%{_jvmdir}/%{sdkdir -- $suffix}/:g" $OUTPUT_FILE
a3989c
  done
a3989c
done
a3989c
# systemtap tapsets ends
a3989c
%endif
a3989c
a3989c
# Prepare desktop files
Alex Kashchenko 460719
# The _X_ syntax indicates variables that are replaced by make upstream
Alex Kashchenko 460719
# The @X@ syntax indicates variables that are replaced by configure upstream
a3989c
for suffix in %{build_loop} ; do
a3989c
for file in %{SOURCE9} %{SOURCE10} ; do
a3989c
    FILE=`basename $file | sed -e s:\.in$::g`
a3989c
    EXT="${FILE##*.}"
a3989c
    NAME="${FILE%.*}"
a3989c
    OUTPUT_FILE=$NAME$suffix.$EXT
Alex Kashchenko 460719
    sed    -e  "s:_BINDIR_:%{sdkbindir -- $suffix}:g" $file > $OUTPUT_FILE
Alex Kashchenko 460719
    sed -i -e  "s:_JREBINDIR_:%{jrebindir -- $suffix}:g" $OUTPUT_FILE
Alex Kashchenko 460719
    sed -i -e  "s:@target_cpu@:%{version}-%{release}.%{_arch}$suffix:g" $OUTPUT_FILE
Alex Kashchenko 460719
    sed -i -e  "s:@OPENJDK_VER@:%{javaver}:g" $OUTPUT_FILE
Alex Kashchenko 460719
    sed -i -e  "s:@JAVA_VER@:%{javaver}:g" $OUTPUT_FILE
Alex Kashchenko d6f9d0
    sed -i -e  "s:@JAVA_VENDOR@:%{origin}:g" $OUTPUT_FILE
a3989c
done
a3989c
done
a3989c
Alex Kashchenko f7e4c1
# Setup nss.cfg
Alex Kashchenko d6f9d0
sed -e "s:@NSS_LIBDIR@:%{NSS_LIBDIR}:g" %{SOURCE11} > nss.cfg
Alex Kashchenko 5c8049
92bdec
a3989c
%build
Alex Kashchenko d6f9d0
# How many CPU's do we have?
a3989c
export NUM_PROC=%(/usr/bin/getconf _NPROCESSORS_ONLN 2> /dev/null || :)
a3989c
export NUM_PROC=${NUM_PROC:-1}
a3989c
%if 0%{?_smp_ncpus_max}
a3989c
# Honor %%_smp_ncpus_max
a3989c
[ ${NUM_PROC} -gt %{?_smp_ncpus_max} ] && export NUM_PROC=%{?_smp_ncpus_max}
a3989c
%endif
a3989c
a3989c
%ifarch s390x sparc64 alpha %{power64} %{aarch64}
a3989c
export ARCH_DATA_MODEL=64
a3989c
%endif
a3989c
%ifarch alpha
a3989c
export CFLAGS="$CFLAGS -mieee"
a3989c
%endif
a3989c
a3989c
# We use ourcppflags because the OpenJDK build seems to
a3989c
# pass EXTRA_CFLAGS to the HotSpot C++ compiler...
Alex Kashchenko 879572
EXTRA_CFLAGS="%ourcppflags -Wno-error"
Alex Kashchenko 879572
EXTRA_CPP_FLAGS="%ourcppflags"
Alex Kashchenko 460719
# Fixes annocheck warnings in assembler files due to missing build notes
Alex Kashchenko 460719
EXTRA_CPP_FLAGS="$EXTRA_CPP_FLAGS -Wa,--generate-missing-build-notes=yes"
Alex Kashchenko 460719
EXTRA_CFLAGS="$EXTRA_CFLAGS -Wa,--generate-missing-build-notes=yes"
Alex Kashchenko d6f9d0
a3989c
%ifarch %{power64} ppc
a3989c
# fix rpmlint warnings
a3989c
EXTRA_CFLAGS="$EXTRA_CFLAGS -fno-strict-aliasing"
a3989c
%endif
a3989c
export EXTRA_CFLAGS
a3989c
Alex Kashchenko d6f9d0
(cd %{top_level_dir_name}/common/autoconf
a3989c
 bash ./autogen.sh
a3989c
)
a3989c
a3989c
for suffix in %{build_loop} ; do
Alex Kashchenko d6f9d0
if [ "x$suffix" = "x" ] ; then
Alex Kashchenko d6f9d0
  debugbuild=release
a3989c
else
Alex Kashchenko d6f9d0
  # change --something to something
Alex Kashchenko d6f9d0
  debugbuild=`echo $suffix  | sed "s/-//g"`
a3989c
fi
a3989c
Alex Kashchenko d6f9d0
# Variable used in hs_err hook on build failures
Alex Kashchenko d6f9d0
top_dir_abs_path=$(pwd)/%{top_level_dir_name}
Alex Kashchenko d6f9d0
Alex Kashchenko 8e3a1b
mkdir -p %{buildoutputdir -- $suffix}
Alex Kashchenko 8e3a1b
pushd %{buildoutputdir -- $suffix}
a3989c
a3989c
bash ../../configure \
Alex Kashchenko ef6143
    --with-jvm-variants=client \
Alex Kashchenko 15b15a
    --with-native-debug-symbols=internal \
Alex Kashchenko 879572
    --with-milestone=%{milestone} \
a3989c
    --with-update-version=%{updatever} \
a3989c
    --with-build-number=%{buildver} \
Alex Kashchenko 8e3a1b
    --with-boot-jdk=$(echo /usr/lib/jvm/java-1.8.0-openjdk-aarch32-*) \
a3989c
    --with-debug-level=$debugbuild \
a3989c
    --enable-unlimited-crypto \
a3989c
    --with-zlib=system \
a3989c
    --with-libjpeg=system \
a3989c
    --with-giflib=system \
a3989c
    --with-libpng=system \
Alex Kashchenko d6f9d0
    --with-lcms=system \
a3989c
    --with-stdc++lib=dynamic \
a3989c
    --with-extra-cxxflags="$EXTRA_CPP_FLAGS" \
a3989c
    --with-extra-cflags="$EXTRA_CFLAGS" \
a3989c
    --with-extra-ldflags="%{ourldflags}" \
a3989c
    --with-num-cores="$NUM_PROC"
a3989c
a3989c
cat spec.gmk
a3989c
cat hotspot-spec.gmk
a3989c
Alex Kashchenko 879572
# Debug builds don't need same targets as release for
Alex Kashchenko 879572
# build speed-up
Alex Kashchenko 879572
maketargets="%{release_targets}"
Alex Kashchenko 879572
if echo $debugbuild | grep -q "debug" ; then
Alex Kashchenko 879572
  maketargets="%{debug_targets}"
Alex Kashchenko 879572
fi
a3989c
make \
a3989c
    JAVAC_FLAGS=-g \
a3989c
    LOG=trace \
a3989c
    SCTP_WERROR= \
Alex Kashchenko 879572
    $maketargets || ( pwd; find $top_dir_abs_path -name "hs_err_pid*.log" | xargs cat && false )
92bdec
a3989c
# the build (erroneously) removes read permissions from some jars
a3989c
# this is a regression in OpenJDK 7 (our compiler):
a3989c
# http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1437
Alex Kashchenko d6f9d0
find images/%{jdkimage} -iname '*.jar' -exec chmod ugo+r {} \;
Alex Kashchenko d6f9d0
chmod ugo+r images/%{jdkimage}/lib/ct.sym
a3989c
a3989c
# remove redundant *diz and *debuginfo files
Alex Kashchenko d6f9d0
find images/%{jdkimage} -iname '*.diz' -exec rm {} \;
Alex Kashchenko d6f9d0
find images/%{jdkimage} -iname '*.debuginfo' -exec rm {} \;
Alex Kashchenko d6f9d0
Alex Kashchenko d6f9d0
# Build screws up permissions on binaries
Alex Kashchenko d6f9d0
# https://bugs.openjdk.java.net/browse/JDK-8173610
Alex Kashchenko d6f9d0
find images/%{jdkimage} -iname '*.so' -exec chmod +x {} \;
Alex Kashchenko d6f9d0
find images/%{jdkimage}/bin/ -exec chmod +x {} \;
a3989c
a3989c
popd >& /dev/null
a3989c
a3989c
# Install nss.cfg right away as we will be using the JRE above
Alex Kashchenko d6f9d0
export JAVA_HOME=$(pwd)/%{buildoutputdir -- $suffix}/images/%{jdkimage}
a3989c
a3989c
# Install nss.cfg right away as we will be using the JRE above
Alex Kashchenko f7e4c1
install -m 644 nss.cfg $JAVA_HOME/jre/lib/security/
a3989c
a3989c
# Use system-wide tzdata
a3989c
rm $JAVA_HOME/jre/lib/tzdb.dat
a3989c
ln -s %{_datadir}/javazi-1.8/tzdb.dat $JAVA_HOME/jre/lib/tzdb.dat
a3989c
Alex Kashchenko d6f9d0
# build cycles
a3989c
done
a3989c
a3989c
%check
a3989c
a3989c
# We test debug first as it will give better diagnostics on a crash
a3989c
for suffix in %{rev_build_loop} ; do
a3989c
Alex Kashchenko d6f9d0
export JAVA_HOME=$(pwd)/%{buildoutputdir -- $suffix}/images/%{jdkimage}
a3989c
a3989c
# Check unlimited policy has been used
a3989c
$JAVA_HOME/bin/javac -d . %{SOURCE13}
a3989c
$JAVA_HOME/bin/java TestCryptoLevel
a3989c
Alex Kashchenko 5c8049
# Check ECC is working
Alex Kashchenko 5c8049
$JAVA_HOME/bin/javac -d . %{SOURCE14}
Alex Kashchenko 5c8049
$JAVA_HOME/bin/java $(echo $(basename %{SOURCE14})|sed "s|\.java||")
Alex Kashchenko 5c8049
Alex Kashchenko 460719
# Verify system crypto (policy) can be disabled
Alex Kashchenko 460719
$JAVA_HOME/bin/javac -d . %{SOURCE15}
Alex Kashchenko 460719
$JAVA_HOME/bin/java -Djava.security.disableSystemPropertiesFile=true $(echo $(basename %{SOURCE15})|sed "s|\.java||")
Alex Kashchenko 460719
a3989c
# Check debug symbols are present and can identify code
Alex Kashchenko 03a905
find "$JAVA_HOME" -iname '*.so' -print0 | while read -d $'\0' lib
Alex Kashchenko 03a905
do
Alex Kashchenko 03a905
  if [ -f "$lib" ] ; then
Alex Kashchenko 03a905
    echo "Testing $lib for debug symbols"
Alex Kashchenko 03a905
    # All these tests rely on RPM failing the build if the exit code of any set
Alex Kashchenko 03a905
    # of piped commands is non-zero.
Alex Kashchenko 03a905
Alex Kashchenko d6f9d0
    # Test for .debug_* sections in the shared object. This is the main test
Alex Kashchenko d6f9d0
    # Stripped objects will not contain these
Alex Kashchenko 03a905
    eu-readelf -S "$lib" | grep "] .debug_"
Alex Kashchenko f7e4c1
    test $(eu-readelf -S "$lib" | grep -E "\]\ .debug_(info|abbrev)" | wc --lines) == 2
Alex Kashchenko 03a905
Alex Kashchenko d6f9d0
    # Test FILE symbols. These will most likely be removed by anything that
Alex Kashchenko 03a905
    # manipulates symbol tables because it's generally useless. So a nice test
Alex Kashchenko d6f9d0
    # that nothing has messed with symbols
Alex Kashchenko 03a905
    old_IFS="$IFS"
Alex Kashchenko 03a905
    IFS=$'\n'
Alex Kashchenko 03a905
    for line in $(eu-readelf -s "$lib" | grep "00000000      0 FILE    LOCAL  DEFAULT")
Alex Kashchenko 03a905
    do
Alex Kashchenko 03a905
     # We expect to see .cpp files, except for architectures like aarch64 and
Alex Kashchenko 03a905
     # s390 where we expect .o and .oS files
Alex Kashchenko f7e4c1
      echo "$line" | grep -E "ABS ((.*/)?[-_a-zA-Z0-9]+\.(c|cc|cpp|cxx|o|oS))?$"
Alex Kashchenko 03a905
    done
Alex Kashchenko 03a905
    IFS="$old_IFS"
Alex Kashchenko 03a905
Alex Kashchenko d6f9d0
    # If this is the JVM, look for javaCalls.(cpp|o) in FILEs, for extra sanity checking
Alex Kashchenko 03a905
    if [ "`basename $lib`" = "libjvm.so" ]; then
Alex Kashchenko 03a905
      eu-readelf -s "$lib" | \
Alex Kashchenko f7e4c1
        grep -E "00000000      0 FILE    LOCAL  DEFAULT      ABS javaCalls.(cpp|o)$"
Alex Kashchenko 03a905
    fi
Alex Kashchenko 03a905
Alex Kashchenko 03a905
    # Test that there are no .gnu_debuglink sections pointing to another
Alex Kashchenko 03a905
    # debuginfo file. There shouldn't be any debuginfo files, so the link makes
Alex Kashchenko d6f9d0
    # no sense either
Alex Kashchenko 03a905
    eu-readelf -S "$lib" | grep 'gnu'
Alex Kashchenko 03a905
    if eu-readelf -S "$lib" | grep '] .gnu_debuglink' | grep PROGBITS; then
Alex Kashchenko 03a905
      echo "bad .gnu_debuglink section."
Alex Kashchenko 03a905
      eu-readelf -x .gnu_debuglink "$lib"
Alex Kashchenko 03a905
      false
Alex Kashchenko 03a905
    fi
Alex Kashchenko 03a905
  fi
Alex Kashchenko 03a905
done
Alex Kashchenko 03a905
Alex Kashchenko 03a905
# Make sure gdb can do a backtrace based on line numbers on libjvm.so
Alex Kashchenko 211d65
# javaCalls.cpp:58 should map to:
Alex Kashchenko 211d65
# http://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/file/ff3b27e6bcc2/src/share/vm/runtime/javaCalls.cpp#l58 
Alex Kashchenko 211d65
# Using line number 1 might cause build problems. See:
Alex Kashchenko 211d65
# https://bugzilla.redhat.com/show_bug.cgi?id=1539664
Alex Kashchenko 211d65
# https://bugzilla.redhat.com/show_bug.cgi?id=1538767
Alex Kashchenko 102fc8
gdb -q "$JAVA_HOME/bin/java" <
Alex Kashchenko 102fc8
handle SIGSEGV pass nostop noprint
Alex Kashchenko 102fc8
handle SIGILL pass nostop noprint
Alex Kashchenko 102fc8
set breakpoint pending on
Alex Kashchenko 211d65
break javaCalls.cpp:58
Alex Kashchenko 102fc8
commands 1
Alex Kashchenko 102fc8
backtrace
Alex Kashchenko 102fc8
quit
Alex Kashchenko 102fc8
end
Alex Kashchenko 102fc8
run -version
Alex Kashchenko 102fc8
EOF
Alex Kashchenko 102fc8
grep 'JavaCallWrapper::JavaCallWrapper' gdb.out
a3989c
a3989c
# Check src.zip has all sources. See RHBZ#1130490
a3989c
jar -tf $JAVA_HOME/src.zip | grep 'sun.misc.Unsafe'
a3989c
a3989c
# Check class files include useful debugging information
a3989c
$JAVA_HOME/bin/javap -l java.lang.Object | grep "Compiled from"
a3989c
$JAVA_HOME/bin/javap -l java.lang.Object | grep LineNumberTable
a3989c
$JAVA_HOME/bin/javap -l java.lang.Object | grep LocalVariableTable
a3989c
a3989c
# Check generated class files include useful debugging information
a3989c
$JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep "Compiled from"
a3989c
$JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep LineNumberTable
a3989c
$JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep LocalVariableTable
Alex Kashchenko 3bf537
Alex Kashchenko d6f9d0
# build cycles check
a3989c
done
a3989c
a3989c
%install
a3989c
STRIP_KEEP_SYMTAB=libjvm*
a3989c
a3989c
for suffix in %{build_loop} ; do
a3989c
Alex Kashchenko d6f9d0
# Install the jdk
Alex Kashchenko d6f9d0
pushd %{buildoutputdir -- $suffix}/images/%{jdkimage}
a3989c
Alex Kashchenko d6f9d0
# Install jsa directories so we can owe them
Alex Kashchenko 8e3a1b
mkdir -p $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}/lib/%{archinstall}/server/
Alex Kashchenko 8e3a1b
mkdir -p $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}/lib/%{archinstall}/client/
Alex Kashchenko 5be5b5
a3989c
  # Install main files.
Alex Kashchenko 8e3a1b
  install -d -m 755 $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}
Alex Kashchenko 8e3a1b
  cp -a bin include lib src.zip $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}
Alex Kashchenko 8e3a1b
  install -d -m 755 $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}
Alex Kashchenko 8e3a1b
  cp -a jre/bin jre/lib $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}
a3989c
a3989c
%if %{with_systemtap}
Alex Kashchenko d6f9d0
  # Install systemtap support files
Alex Kashchenko 8e3a1b
  install -dm 755 $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/tapset
a3989c
  # note, that uniquesuffix  is in BUILD dir in this case
Alex Kashchenko 8e3a1b
  cp -a $RPM_BUILD_DIR/%{uniquesuffix ""}/tapset$suffix/*.stp $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/tapset/
Alex Kashchenko 8e3a1b
  pushd  $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/tapset/
a3989c
   tapsetFiles=`ls *.stp`
a3989c
  popd
a3989c
  install -d -m 755 $RPM_BUILD_ROOT%{tapsetdir}
Alex Kashchenko d6f9d0
  for name in $tapsetFiles ; do
Alex Kashchenko d6f9d0
    targetName=`echo $name | sed "s/.stp/$suffix.stp/"`
Alex Kashchenko d6f9d0
    ln -sf %{_jvmdir}/%{sdkdir -- $suffix}/tapset/$name $RPM_BUILD_ROOT%{tapsetdir}/$targetName
Alex Kashchenko d6f9d0
  done
a3989c
%endif
a3989c
Alex Kashchenko d6f9d0
  # Remove empty cacerts database
Alex Kashchenko 8e3a1b
  rm -f $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}/lib/security/cacerts
Alex Kashchenko d6f9d0
  # Install cacerts symlink needed by some apps which hardcode the path
Alex Kashchenko 8e3a1b
  pushd $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}/lib/security
Alex Kashchenko d6f9d0
      ln -sf /etc/pki/java/cacerts .
a3989c
  popd
a3989c
Alex Kashchenko d6f9d0
  # Install versioned symlinks
a3989c
  pushd $RPM_BUILD_ROOT%{_jvmdir}
Alex Kashchenko 8e3a1b
    ln -sf %{jredir -- $suffix} %{jrelnk -- $suffix}
a3989c
  popd
a3989c
a3989c
  # Remove javaws man page
a3989c
  rm -f man/man1/javaws*
a3989c
Alex Kashchenko d6f9d0
  # Install man pages
a3989c
  install -d -m 755 $RPM_BUILD_ROOT%{_mandir}/man1
a3989c
  for manpage in man/man1/*
a3989c
  do
Alex Kashchenko d6f9d0
    # Convert man pages to UTF8 encoding
a3989c
    iconv -f ISO_8859-1 -t UTF8 $manpage -o $manpage.tmp
a3989c
    mv -f $manpage.tmp $manpage
a3989c
    install -m 644 -p $manpage $RPM_BUILD_ROOT%{_mandir}/man1/$(basename \
Alex Kashchenko 8e3a1b
      $manpage .1)-%{uniquesuffix -- $suffix}.1
a3989c
  done
a3989c
a3989c
  # Install demos and samples.
Alex Kashchenko 8e3a1b
  cp -a demo $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}
a3989c
  mkdir -p sample/rmi
a3989c
  if [ ! -e sample/rmi/java-rmi.cgi ] ; then 
a3989c
    # hack to allow --short-circuit on install
a3989c
    mv bin/java-rmi.cgi sample/rmi
a3989c
  fi
Alex Kashchenko 8e3a1b
  cp -a sample $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}
a3989c
a3989c
popd
a3989c
Alex Kashchenko 879572
if ! echo $suffix | grep -q "debug" ; then
Alex Kashchenko d6f9d0
# Install Javadoc documentation
a3989c
install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}
Alex Kashchenko 8e3a1b
cp -a %{buildoutputdir -- $suffix}/docs $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}
Alex Kashchenko 879572
  built_doc_archive=`echo "jdk-%{javaver}_%{updatever}%{milestone_version}$suffix-%{buildver}-docs.zip" | sed  s/slowdebug/debug/`
Alex Kashchenko d6f9d0
cp -a %{buildoutputdir -- $suffix}/bundles/$built_doc_archive  $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}.zip
Alex Kashchenko 879572
fi
a3989c
Alex Kashchenko d6f9d0
# Install icons and menu entries
a3989c
for s in 16 24 32 48 ; do
a3989c
  install -D -p -m 644 \
Alex Kashchenko 15b15a
    %{top_level_dir_name}/jdk/src/solaris/classes/sun/awt/X11/java-icon${s}.png \
Alex Kashchenko d6f9d0
    $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps/java-%{javaver}-%{origin}.png
a3989c
done
a3989c
Alex Kashchenko d6f9d0
# Install desktop files
a3989c
install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/{applications,pixmaps}
a3989c
for e in jconsole$suffix policytool$suffix ; do
Alex Kashchenko 8e3a1b
    desktop-file-install --vendor=%{uniquesuffix -- $suffix} --mode=644 \
a3989c
        --dir=$RPM_BUILD_ROOT%{_datadir}/applications $e.desktop
a3989c
done
a3989c
a3989c
# Install /etc/.java/.systemPrefs/ directory
a3989c
# See https://bugzilla.redhat.com/show_bug.cgi?id=741821
a3989c
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/.java/.systemPrefs
a3989c
Alex Kashchenko d6f9d0
# FIXME: remove SONAME entries from demo DSOs. See
a3989c
# https://bugzilla.redhat.com/show_bug.cgi?id=436497
a3989c
a3989c
# Find non-documentation demo files.
Alex Kashchenko 8e3a1b
find $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/demo \
Alex Kashchenko 8e3a1b
  $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/sample \
a3989c
  -type f -o -type l | sort \
a3989c
  | grep -v README \
a3989c
  | sed 's|'$RPM_BUILD_ROOT'||' \
a3989c
  >> %{name}-demo.files"$suffix"
a3989c
# Find documentation demo files.
Alex Kashchenko 8e3a1b
find $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/demo \
Alex Kashchenko 8e3a1b
  $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/sample \
a3989c
  -type f -o -type l | sort \
a3989c
  | grep README \
a3989c
  | sed 's|'$RPM_BUILD_ROOT'||' \
a3989c
  | sed 's|^|%doc |' \
a3989c
  >> %{name}-demo.files"$suffix"
a3989c
a3989c
# Create links which leads to separately installed java-atk-bridge and allow configuration
a3989c
# links points to java-atk-wrapper - an dependence
Alex Kashchenko 8e3a1b
  pushd $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix}/lib/%{archinstall}
Alex Kashchenko 8e3a1b
    ln -s %{_libdir}/java-atk-wrapper/libatk-wrapper.so.0 libatk-wrapper.so
Alex Kashchenko 8e3a1b
  popd
Alex Kashchenko 8e3a1b
  pushd $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix}/lib/aarch32
a3989c
    ln -s %{_libdir}/java-atk-wrapper/libatk-wrapper.so.0 libatk-wrapper.so
a3989c
  popd
Alex Kashchenko af80df
Alex Kashchenko 8e3a1b
  pushd $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix}/lib/ext
a3989c
     ln -s %{_libdir}/java-atk-wrapper/java-atk-wrapper.jar  java-atk-wrapper.jar
a3989c
  popd
Alex Kashchenko 8e3a1b
  pushd $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix}/lib/
a3989c
    echo "#Config file to  enable java-atk-wrapper" > accessibility.properties
a3989c
    echo "" >> accessibility.properties
a3989c
    echo "assistive_technologies=org.GNOME.Accessibility.AtkWrapper" >> accessibility.properties
a3989c
    echo "" >> accessibility.properties
a3989c
  popd
a3989c
Alex Kashchenko 8e3a1b
# RHBZ#1412953
Alex Kashchenko 8e3a1b
pushd $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}/lib/%{archinstall}/client/
Alex Kashchenko 8e3a1b
    ln -sf ../../aarch32/client/libjvm.so
Alex Kashchenko 8e3a1b
popd
Alex Kashchenko 8e3a1b
pushd $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}/lib/%{archinstall}/
Alex Kashchenko 8e3a1b
    for lib in \
Alex Kashchenko 8e3a1b
        libattach.so \
Alex Kashchenko 8e3a1b
        libawt_headless.so \
Alex Kashchenko 8e3a1b
        libawt.so \
Alex Kashchenko 8e3a1b
        libawt_xawt.so \
Alex Kashchenko 8e3a1b
        libdt_socket.so \
Alex Kashchenko 8e3a1b
        libfontmanager.so \
Alex Kashchenko 8e3a1b
        libhprof.so \
Alex Kashchenko 8e3a1b
        libinstrument.so \
Alex Kashchenko 8e3a1b
        libj2gss.so \
Alex Kashchenko 8e3a1b
        libj2pcsc.so \
Alex Kashchenko 8e3a1b
        libj2pkcs11.so \
Alex Kashchenko 8e3a1b
        libjaas_unix.so \
Alex Kashchenko 8e3a1b
        libjava_crw_demo.so \
Alex Kashchenko 8e3a1b
        libjavajpeg.so \
Alex Kashchenko 8e3a1b
        libjava.so \
Alex Kashchenko 8e3a1b
        libjawt.so \
Alex Kashchenko 8e3a1b
        libjdwp.so \
Alex Kashchenko 8e3a1b
        libjsdt.so \
Alex Kashchenko 8e3a1b
        libjsig.so \
Alex Kashchenko 8e3a1b
        libjsoundalsa.so \
Alex Kashchenko 8e3a1b
        libjsound.so \
Alex Kashchenko 8e3a1b
        liblcms.so \
Alex Kashchenko 8e3a1b
        libmanagement.so \
Alex Kashchenko 8e3a1b
        libmlib_image.so \
Alex Kashchenko 8e3a1b
        libnet.so \
Alex Kashchenko 8e3a1b
        libnio.so \
Alex Kashchenko 8e3a1b
        libnpt.so \
Alex Kashchenko 8e3a1b
        libsctp.so \
Alex Kashchenko 8e3a1b
        libsplashscreen.so \
Alex Kashchenko 8e3a1b
        libsunec.so \
Alex Kashchenko 8e3a1b
        libunpack.so \
Alex Kashchenko 8e3a1b
        libverify.so \
Alex Kashchenko 8e3a1b
        libzip.so \
Alex Kashchenko 8e3a1b
        jvm.cfg \
Alex Kashchenko 8e3a1b
        ; do ln -sf ../aarch32/$lib ; done
Alex Kashchenko 8e3a1b
        mkdir -p jli
Alex Kashchenko 8e3a1b
popd
Alex Kashchenko 8e3a1b
pushd $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}/lib/%{archinstall}/jli
Alex Kashchenko 8e3a1b
    ln -sf ../../aarch32/jli/libjli.so
Alex Kashchenko 8e3a1b
popd
Alex Kashchenko 8e3a1b
pushd $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/lib/
Alex Kashchenko 8e3a1b
    mkdir -p %{archinstall}
Alex Kashchenko 8e3a1b
popd
Alex Kashchenko 8e3a1b
pushd $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/lib/%{archinstall}
Alex Kashchenko 8e3a1b
    ln -sf ../aarch32/libjawt.so
Alex Kashchenko 8e3a1b
    mkdir -p jli
Alex Kashchenko 8e3a1b
popd
Alex Kashchenko 8e3a1b
pushd $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/lib/%{archinstall}/jli
Alex Kashchenko 8e3a1b
    ln -sf ../../aarch32/jli/libjli.so
Alex Kashchenko 8e3a1b
popd
Alex Kashchenko 8e3a1b
Alex Kashchenko 3bf537
# intentionally after all else, fx links  with redirections on its own
Alex Kashchenko 3bf537
%if %{with_openjfx_binding}
Alex Kashchenko 3bf537
  FXSDK_FILES=%{name}-openjfx-devel.files"$suffix"
Alex Kashchenko 3bf537
  FXJRE_FILES=%{name}-openjfx.files"$suffix"
Alex Kashchenko 3bf537
  echo -n "" > $FXJRE_FILES
Alex Kashchenko 3bf537
  echo -n "" > $FXSDK_FILES
Alex Kashchenko 3bf537
  for file in  %{jfx_jre_libs} ; do
Alex Kashchenko 3bf537
    srcfile=%{jfx_jre_libs_dir}/$file
Alex Kashchenko 8e3a1b
    targetfile=%{_jvmdir}/%{jredir -- $suffix}/lib/$file
Alex Kashchenko 3bf537
    ln -s $srcfile $RPM_BUILD_ROOT/$targetfile
Alex Kashchenko 3bf537
    echo $targetfile >> $FXJRE_FILES
Alex Kashchenko 3bf537
  done
Alex Kashchenko 3bf537
  for file in  %{jfx_jre_native} ; do
Alex Kashchenko 3bf537
    srcfile=%{jfx_jre_native_dir}/$file
Alex Kashchenko 8e3a1b
    targetfile=%{_jvmdir}/%{jredir -- $suffix}/lib/%{archinstall}/$file
Alex Kashchenko 3bf537
    ln -s $srcfile $RPM_BUILD_ROOT/$targetfile
Alex Kashchenko 3bf537
    echo $targetfile >> $FXJRE_FILES
Alex Kashchenko 3bf537
  done
Alex Kashchenko 3bf537
  for file in  %{jfx_jre_exts} ; do
Alex Kashchenko 3bf537
    srcfile=%{jfx_jre_exts_dir}/$file
Alex Kashchenko 8e3a1b
    targetfile=%{_jvmdir}/%{jredir -- $suffix}/lib/ext/$file
Alex Kashchenko 3bf537
    ln -s $srcfile $RPM_BUILD_ROOT/$targetfile
Alex Kashchenko 3bf537
    echo $targetfile >> $FXJRE_FILES
Alex Kashchenko 3bf537
  done
Alex Kashchenko 3bf537
  for file in  %{jfx_sdk_libs} ; do
Alex Kashchenko 3bf537
    srcfile=%{jfx_sdk_libs_dir}/$file
Alex Kashchenko 8e3a1b
    targetfile=%{_jvmdir}/%{sdkdir -- $suffix}/lib/$file
Alex Kashchenko 3bf537
    ln -s $srcfile $RPM_BUILD_ROOT/$targetfile
Alex Kashchenko 3bf537
    echo $targetfile >> $FXSDK_FILES
Alex Kashchenko 3bf537
  done
Alex Kashchenko 3bf537
  for file in  %{jfx_sdk_bins} ; do
Alex Kashchenko 3bf537
    srcfile=%{jfx_sdk_bins_dir}/$file
Alex Kashchenko 8e3a1b
    targetfile=%{_jvmdir}/%{sdkdir -- $suffix}/bin/$file
Alex Kashchenko 3bf537
    ln -s $srcfile $RPM_BUILD_ROOT/$targetfile
Alex Kashchenko 3bf537
    echo $targetfile >> $FXSDK_FILES
Alex Kashchenko 3bf537
  done
Alex Kashchenko 3bf537
%endif
Alex Kashchenko 3bf537
Alex Kashchenko 8e3a1b
bash %{SOURCE20} $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix} %{javaver}
a3989c
# https://bugzilla.redhat.com/show_bug.cgi?id=1183793
Alex Kashchenko 8e3a1b
touch -t 201401010000 $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix}/lib/security/java.security
a3989c
Alex Kashchenko 460719
# moving config files to /etc
Alex Kashchenko 460719
mkdir -p $RPM_BUILD_ROOT/%{etcjavadir -- $suffix}/lib/security/policy/unlimited/
Alex Kashchenko 460719
mkdir -p $RPM_BUILD_ROOT/%{etcjavadir -- $suffix}/lib/security/policy/limited/
Alex Kashchenko 879572
for file in lib/security/cacerts lib/security/policy/unlimited/US_export_policy.jar lib/security/policy/unlimited/local_policy.jar lib/security/policy/limited/US_export_policy.jar lib/security/policy/limited/local_policy.jar lib/security/java.policy lib/security/java.security lib/security/blacklisted.certs lib/logging.properties lib/calendars.properties lib/security/nss.cfg lib/net.properties ; do
Alex Kashchenko 460719
  mv      $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix}/$file   $RPM_BUILD_ROOT/%{etcjavadir -- $suffix}/$file
Alex Kashchenko 460719
  ln -sf  %{etcjavadir -- $suffix}/$file                          $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix}/$file
Alex Kashchenko 460719
done
Alex Kashchenko 460719
Alex Kashchenko d6f9d0
# stabilize permissions
Alex Kashchenko d6f9d0
find $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir -- $suffix}/ -name "*.so" -exec chmod 755 {} \; ; 
Alex Kashchenko d6f9d0
find $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir -- $suffix}/ -type d -exec chmod 755 {} \; ; 
Alex Kashchenko d6f9d0
find $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir -- $suffix}/ -name "ASSEMBLY_EXCEPTION" -exec chmod 644 {} \; ; 
Alex Kashchenko d6f9d0
find $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir -- $suffix}/ -name "LICENSE" -exec chmod 644 {} \; ; 
Alex Kashchenko d6f9d0
find $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir -- $suffix}/ -name "THIRD_PARTY_README" -exec chmod 644 {} \; ; 
Alex Kashchenko d6f9d0
a3989c
# end, dual install
a3989c
done
a3989c
Alex Kashchenko d6f9d0
%if %{include_normal_build}
Alex Kashchenko d6f9d0
# intentionally only for non-debug
a3989c
%pretrans headless -p <lua>
a3989c
-- see https://bugzilla.redhat.com/show_bug.cgi?id=1038092 for whole issue
a3989c
-- see https://bugzilla.redhat.com/show_bug.cgi?id=1290388 for pretrans over pre
a3989c
-- if copy-jdk-configs is in transaction, it installs in pretrans to temp
Alex Kashchenko d6f9d0
-- if copy_jdk_configs is in temp, then it means that copy-jdk-configs is in transaction  and so is
Alex Kashchenko d6f9d0
-- preferred over one in %%{_libexecdir}. If it is not in transaction, then depends
a3989c
-- whether copy-jdk-configs is installed or not. If so, then configs are copied
a3989c
-- (copy_jdk_configs from %%{_libexecdir} used) or not copied at all
a3989c
local posix = require "posix"
a3989c
local debug = false
a3989c
a3989c
SOURCE1 = "%{rpm_state_dir}/copy_jdk_configs.lua"
a3989c
SOURCE2 = "%{_libexecdir}/copy_jdk_configs.lua"
a3989c
a3989c
local stat1 = posix.stat(SOURCE1, "type");
a3989c
local stat2 = posix.stat(SOURCE2, "type");
a3989c
a3989c
  if (stat1 ~= nil) then
a3989c
  if (debug) then
a3989c
    print(SOURCE1 .." exists - copy-jdk-configs in transaction, using this one.")
a3989c
  end;
a3989c
  package.path = package.path .. ";" .. SOURCE1
Alex Kashchenko d6f9d0
else
a3989c
  if (stat2 ~= nil) then
a3989c
  if (debug) then
Alex Kashchenko d6f9d0
    print(SOURCE2 .." exists - copy-jdk-configs already installed and NOT in transaction. Using.")
a3989c
  end;
a3989c
  package.path = package.path .. ";" .. SOURCE2
a3989c
  else
a3989c
    if (debug) then
a3989c
      print(SOURCE1 .." does NOT exists")
a3989c
      print(SOURCE2 .." does NOT exists")
a3989c
      print("No config files will be copied")
a3989c
    end
a3989c
  return
a3989c
  end
a3989c
end
Alex Kashchenko d6f9d0
-- run content of included file with fake args
Alex Kashchenko f7e4c1
arg = {"--currentjvm", "%{uniquesuffix %{nil}}", "--jvmdir", "%{_jvmdir %{nil}}", "--origname", "%{name}", "--origjavaver", "%{javaver}", "--arch", "%{_arch}", "--temp", "%{rpm_state_dir}/%{name}.%{_arch}"}
a3989c
require "copy_jdk_configs.lua"
a3989c
Alex Kashchenko d6f9d0
%post
a3989c
%{post_script %{nil}}
a3989c
a3989c
%post headless
a3989c
%{post_headless %{nil}}
a3989c
a3989c
%postun
a3989c
%{postun_script %{nil}}
a3989c
a3989c
%postun headless
a3989c
%{postun_headless %{nil}}
a3989c
a3989c
%posttrans
a3989c
%{posttrans_script %{nil}}
a3989c
a3989c
%post devel
a3989c
%{post_devel %{nil}}
a3989c
a3989c
%postun devel
a3989c
%{postun_devel %{nil}}
a3989c
a3989c
%posttrans  devel
a3989c
%{posttrans_devel %{nil}}
a3989c
a3989c
%post javadoc
a3989c
%{post_javadoc %{nil}}
a3989c
a3989c
%postun javadoc
a3989c
%{postun_javadoc %{nil}}
92bdec
92bdec
%post javadoc-zip
92bdec
%{post_javadoc_zip %{nil}}
92bdec
92bdec
%postun javadoc-zip
92bdec
%{postun_javadoc_zip %{nil}}
a3989c
%endif
a3989c
Alex Kashchenko d6f9d0
%if %{include_debug_build}
Alex Kashchenko d6f9d0
%post slowdebug
Alex Kashchenko 8e3a1b
%{post_script -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%post headless-slowdebug
Alex Kashchenko 8e3a1b
%{post_headless -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%postun slowdebug
Alex Kashchenko 8e3a1b
%{postun_script -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%postun headless-slowdebug
Alex Kashchenko 8e3a1b
%{postun_headless -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%posttrans slowdebug
Alex Kashchenko 8e3a1b
%{posttrans_script -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%post devel-slowdebug
Alex Kashchenko 8e3a1b
%{post_devel -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%postun devel-slowdebug
Alex Kashchenko 8e3a1b
%{postun_devel -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%posttrans  devel-slowdebug
Alex Kashchenko 8e3a1b
%{posttrans_devel -- %{debug_suffix_unquoted}}
a3989c
a3989c
%endif
a3989c
Alex Kashchenko d6f9d0
%if %{include_normal_build}
Alex Kashchenko 8e3a1b
%files
a3989c
# main package builds always
a3989c
%{files_jre %{nil}}
a3989c
%else
a3989c
%files
a3989c
# placeholder
a3989c
%endif
a3989c
a3989c
Alex Kashchenko d6f9d0
%if %{include_normal_build}
Alex Kashchenko 8e3a1b
%files headless
Alex Kashchenko d6f9d0
# important note, see https://bugzilla.redhat.com/show_bug.cgi?id=1038092 for whole issue
Alex Kashchenko d6f9d0
# all config/noreplace files (and more) have to be declared in pretrans. See pretrans
a3989c
%{files_jre_headless %{nil}}
a3989c
a3989c
%files devel
a3989c
%{files_devel %{nil}}
a3989c
a3989c
%files demo -f %{name}-demo.files
a3989c
%{files_demo %{nil}}
a3989c
a3989c
%files src
a3989c
%{files_src %{nil}}
a3989c
a3989c
%files javadoc
a3989c
%{files_javadoc %{nil}}
a3989c
Alex Kashchenko d6f9d0
# this puts huge file to /usr/share
Alex Kashchenko d6f9d0
# unluckily ti is really a documentation file
Alex Kashchenko d6f9d0
# and unluckily it really is architecture-dependent, as eg. aot and grail are now x86_64 only
Alex Kashchenko d6f9d0
# same for debug variant
92bdec
%files javadoc-zip
92bdec
%{files_javadoc_zip %{nil}}
92bdec
a3989c
%files accessibility
a3989c
%{files_accessibility %{nil}}
Alex Kashchenko 3bf537
Alex Kashchenko 3bf537
%if %{with_openjfx_binding}
Alex Kashchenko 3bf537
%files openjfx -f %{name}-openjfx.files
Alex Kashchenko 3bf537
Alex Kashchenko 3bf537
%files openjfx-devel -f %{name}-openjfx-devel.files
Alex Kashchenko 3bf537
%endif
a3989c
%endif
a3989c
Alex Kashchenko d6f9d0
%if %{include_debug_build}
Alex Kashchenko d6f9d0
%files slowdebug
Alex Kashchenko 8e3a1b
%{files_jre -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%files headless-slowdebug
Alex Kashchenko 8e3a1b
%{files_jre_headless -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%files devel-slowdebug
Alex Kashchenko 8e3a1b
%{files_devel -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%files demo-slowdebug -f %{name}-demo.files-slowdebug
Alex Kashchenko 8e3a1b
%{files_demo -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%files src-slowdebug
Alex Kashchenko 8e3a1b
%{files_src -- %{debug_suffix_unquoted}}
a3989c
Alex Kashchenko d6f9d0
%files accessibility-slowdebug
Alex Kashchenko 8e3a1b
%{files_accessibility -- %{debug_suffix_unquoted}}
Alex Kashchenko 3bf537
Alex Kashchenko 3bf537
%if %{with_openjfx_binding}
Alex Kashchenko d6f9d0
%files openjfx-slowdebug -f %{name}-openjfx.files-slowdebug
Alex Kashchenko 3bf537
Alex Kashchenko d6f9d0
%files openjfx-devel-slowdebug -f %{name}-openjfx-devel.files-slowdebug
Alex Kashchenko 3bf537
%endif
a3989c
%endif
a3989c
a3989c
%changelog
Alex Kashchenko f2126c
* Wed Nov 6 2019 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.232.b09-1
Alex Kashchenko f2126c
- update sources to 8u232
Alex Kashchenko f2126c
- sync with mainline package
Alex Kashchenko f2126c
Alex Kashchenko 760566
* Fri Sep 27 2019 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.222.b10-3
Alex Kashchenko 760566
- add '-aarch32' suffix to jre symlink
Alex Kashchenko 760566
- fixes RHBZ#1755309
Alex Kashchenko 760566
Alex Kashchenko 879572
* Wed Sep 11 2019 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.222.b10-1
Alex Kashchenko f2126c
- update sources to 8u222
Alex Kashchenko 879572
- sync with mainline package
Alex Kashchenko 879572
a4a81a
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.8.0.212.190430-2
a4a81a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
a4a81a
Alex Kashchenko 460719
* Mon May 6 2019 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.212-1.190430
Alex Kashchenko 460719
- update sources to 8u211
Alex Kashchenko 460719
- sync with mainline package
Alex Kashchenko 460719
Alex Kashchenko af80df
* Tue Feb 12 2019 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.201-1.190124
Alex Kashchenko af80df
- update sources to 8u201
Alex Kashchenko af80df
- sync with mainline package
abbcca
Alex Kashchenko 15b15a
* Tue Oct 30 2018 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.191-1.181022
Alex Kashchenko 15b15a
- update sources to 8u191
Alex Kashchenko 15b15a
- sync with mainline package
Alex Kashchenko 15b15a
Alex Kashchenko d6f9d0
* Thu Aug 30 2018 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.181-1.180802
Alex Kashchenko d6f9d0
- update sources to 8u181
Alex Kashchenko d6f9d0
- sync with mainline package
Alex Kashchenko d6f9d0
3fabb2
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.8.0.171-2.180511
3fabb2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
3fabb2
Alex Kashchenko a59f4a
* Sun May 27 2018 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.171-1.180511
Alex Kashchenko a59f4a
- update sources to 8u171
Alex Kashchenko a59f4a
- sync with mainline package
Alex Kashchenko a59f4a
Alex Kashchenko 211d65
* Mon Mar 12 2018 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.161-1.180220
Alex Kashchenko 211d65
- update sources to 8u161
Alex Kashchenko 211d65
- sync with mainline package
Alex Kashchenko 211d65
2a0403
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.8.0.152-2.171102
2a0403
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
2a0403
Alex Kashchenko 36b8ff
* Wed Nov 15 2017 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.152-1.171102
Alex Kashchenko 36b8ff
- update sources to 8u152
Alex Kashchenko 36b8ff
- sync with mainline package
Alex Kashchenko 36b8ff
Alex Kashchenko eb3e39
* Fri Sep 15 2017 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.144-2.170809
Alex Kashchenko eb3e39
- bump release to 2 to fix dist.upgradepath
Alex Kashchenko eb3e39
Alex Kashchenko 8e3a1b
* Wed Sep 6 2017 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.144-1.170809
Alex Kashchenko 8e3a1b
- mainline package merge
Alex Kashchenko 8e3a1b
- provides disabled
Alex Kashchenko 8e3a1b
80e539
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.8.0.131-3.170420
80e539
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
80e539
Alex Kashchenko 3bf537
* Mon Jul 24 2017 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.141-1.170721
Alex Kashchenko 3bf537
- update sources to 8u141
Alex Kashchenko 3bf537
- sync with mainline package
Alex Kashchenko 3bf537
Alex Kashchenko ccf2eb
* Sun Apr 30 2017 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.131-2.170420
Alex Kashchenko ccf2eb
- revert boot jdk to zero due to koschei arch-specific dep problem persists
Alex Kashchenko ccf2eb
Alex Kashchenko f7e4c1
* Sat Apr 29 2017 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.131-1.170420
Alex Kashchenko f7e4c1
- update sources to 8u131
Alex Kashchenko f7e4c1
- sync with mainline package
Alex Kashchenko f7e4c1
Alex Kashchenko f7e4c1
* Wed Apr 12 2017 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.121-4.170210
Alex Kashchenko f7e4c1
- sync with mainline package
Alex Kashchenko f7e4c1
- add 8175234-aarch32 upstream patch
Alex Kashchenko f7e4c1
Alex Kashchenko c54d23
* Fri Mar 10 2017 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.121-4.170210
Alex Kashchenko c54d23
- version bump to fix duplicated failed f26 build
Alex Kashchenko c54d23
Alex Kashchenko b69158
* Tue Feb 28 2017 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.121-3.170210
Alex Kashchenko b69158
- rebuild because of NSS
Alex Kashchenko b69158
Alex Kashchenko 7735fe
* Mon Feb 20 2017 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.121-2.170210
Alex Kashchenko 7735fe
- add symlinks to jre/lib/arm directory for all aarch32 libs
Alex Kashchenko 7735fe
Alex Kashchenko 5be5b5
* Sun Feb 19 2017 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.121-1.170210
Alex Kashchenko 5be5b5
- sources tarball updated to jdk8u121-b13-aarch32-170210
Alex Kashchenko 5be5b5
- add libjvm.so and libjava.so symlinks to jre/lib/arm directory
Alex Kashchenko 6663cf
- disable javadoc provides
Alex Kashchenko 5be5b5
- fixes RHBZ#1412953
Alex Kashchenko 5be5b5
cb508a
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.8.0.112-4.161109
cb508a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
cb508a
Alex Kashchenko b2432b
* Mon Jan 30 2017 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.112-3.161109
Alex Kashchenko b2432b
- 8u121 update
Alex Kashchenko b2432b
Alex Kashchenko 2fc597
* Mon Jan 2 2017 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.112-2.161109
Alex Kashchenko 2fc597
- disable hardened build flags
Alex Kashchenko 2fc597
- remove Xmx patch
Alex Kashchenko 2fc597
- fixes RHBZ#1290936
Alex Kashchenko 2fc597
Alex Kashchenko 3c2a4a
* Thu Dec 22 2016 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.112-1.161109
Alex Kashchenko 3c2a4a
- fontconfig and nss restricted by isa
Alex Kashchenko 3c2a4a
- debug subpackages allowed
Alex Kashchenko 3c2a4a
- eu-readelfs on libraries, gdb call
Alex Kashchenko 3c2a4a
- java SSL/TLS implementation: should follow the policies of system-wide crypto policy
Alex Kashchenko 3c2a4a
- sync patches with mainline package
Alex Kashchenko 3c2a4a
- 8u112 sources tarball
Alex Kashchenko 3c2a4a
- add aarch32 post-u112 upstream patches
Alex Kashchenko 3c2a4a
Alex Kashchenko 8d41e4
* Tue Oct 25 2016 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.102-11.160812
Alex Kashchenko 7b7656
- added aarch32-8u111.patch
Alex Kashchenko 7b7656
- removed corba_typo_fix.patch
Alex Kashchenko 8d41e4
Alex Kashchenko 8d41e4
* Tue Oct 04 2016 Jiri Vanek <jvanek@redhat.com> - 1:1.8.0.102-10.160812
bee926
- enabled debug build
bee926
Alex Kashchenko 8d41e4
* Mon Oct 03 2016 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.102-9.160812
Alex Kashchenko 52b215
- added aarch32-8167027.patch
Alex Kashchenko 52b215
- fixes RHBZ#1379061
Alex Kashchenko 52b215
Alex Kashchenko 8d41e4
* Fri Sep 30 2016 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.102-8.160812
Alex Kashchenko 912d34
- added aarch32-archname.patch
Alex Kashchenko 912d34
Alex Kashchenko 8d41e4
* Thu Sep 22 2016 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.102-7.160812
Alex Kashchenko 8d41e4
- revert boot jdk back to zero
Alex Kashchenko 8d41e4
Alex Kashchenko 8d41e4
* Wed Sep 21 2016 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.102-6.160812
Alex Kashchenko 0095fa
- fixed macro in comments
Alex Kashchenko 8d41e4
- re-enabled openjdk-aarch32 as a boot jdk
Alex Kashchenko 8d41e4
- enabled provides for both java and javac
Alex Kashchenko 8d41e4
Alex Kashchenko 8d41e4
* Tue Sep 20 2016 Jiri Vanek <jvanek@redhat.com> - 1:1.8.0.102-5.160812
92bdec
- sync with normal java packages:
92bdec
-  added zipped javadocs
92bdec
-  updated systemtap
92bdec
-  added (commented out) provides on jjs
92bdec
Alex Kashchenko 8d41e4
* Sat Sep 10 2016 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.102-4.160812
Alex Kashchenko 5c8049
- declared check_sum_presented_in_spec and used in prep and check
Alex Kashchenko 5c8049
- it is checking that latest packed java.security is mentioned in listing
Alex Kashchenko 5c8049
- added ECDSA check
Alex Kashchenko 0095fa
- added %%{_arch} postfix to alternatives
92bdec
Alex Kashchenko 8d41e4
* Wed Aug 31 2016 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.102-3.160812
Alex Kashchenko 8d41e4
- revert boot jdk back to zero
Alex Kashchenko 8d41e4
Alex Kashchenko ef6143
* Mon Aug 29 2016 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.102-2.160812
Alex Kashchenko ef6143
- added C1 JIT patches
Alex Kashchenko ef6143
- use java-1.8.0-openjdk-aarch32 as a boot jdk
92bdec
akashche 02bc7e
* Sun Aug 14 2016 Alex Kashchenko <akashche@redhat.com> - 1:1.8.0.102-1.160812
akashche 02bc7e
- remove upstreamed soundFontPatch.patch
akashche 02bc7e
- added patches 6260348-pr3066.patch, pr2974-rh1337583.patch, pr3083-rh1346460.patch, pr2899.patch, pr2934.patch, pr1834-rh1022017.patch, corba_typo_fix.patch, 8154313.patch
akashche 02bc7e
- removed unused patches java-1.8.0-openjdk-rh1191652-root.patch, java-1.8.0-openjdk-rh1191652-jdk.patch, java-1.8.0-openjdk-rh1191652-hotspot-aarch64.patch
akashche 02bc7e
- removed upstreamed (and previously unused) patches 8143855.patch, rhbz1206656_fix_current_stack_pointer.patch, remove_aarch64_template_for_gcc6.patch, make_reservedcodecachesize_changes_aarch64_only.patch
akashche 02bc7e
- added JDWP patches 8044762-pr2960.patch and 8049226-pr2960.patch
akashche 02bc7e
- priority lowered for ine zero digit, tip moved to 999
akashche 02bc7e
- Restricted to depend on exactly same version of nss as used for build,
akashche 02bc7e
- Resolves: rhbz#1332456
akashche 02bc7e
- used aarch32-port-jdk8u-jdk8u102-b14-aarch32-160812.tar.xz as new sources
92bdec
a3989c
* Wed Jun 29 2016 Jiri Vanek <jvanek@redhat.com> - 1:1.8.0.91-1.160510
a3989c
- initial clone form java-1.8.0-openjdk
a3989c
- using aarch32 sources
a3989c
- restricted to {arm}  arch only
a3989c
- adapted description and summary
a3989c
- all {name} in pathches replaced by java-1.8.0-openjdk. Same for source12
Alex Kashchenko ef6143
- blindly commented out not applicable patches
a3989c
- removed all java provides