Blame SPECS/java-11-openjdk.spec

8eabd2
# RPM conditionals so as to be able to dynamically produce
8eabd2
# slowdebug/release builds. See:
8eabd2
# http://rpm.org/user_doc/conditional_builds.html
8eabd2
#
8eabd2
# Examples:
8eabd2
#
8eabd2
# Produce release *and* slowdebug builds on x86_64 (default):
8eabd2
# $ rpmbuild -ba java-1.8.0-openjdk.spec
8eabd2
#
8eabd2
# Produce only release builds (no slowdebug builds) on x86_64:
8eabd2
# $ rpmbuild -ba java-1.8.0-openjdk.spec --without slowdebug
8eabd2
#
8eabd2
# Only produce a release build on x86_64:
8eabd2
# $ fedpkg mockbuild --without slowdebug
8eabd2
#
8eabd2
# Only produce a debug build on x86_64:
8eabd2
# $ fedpkg local --without release
8eabd2
#
8eabd2
# Enable slowdebug builds by default on relevant arches.
8eabd2
%bcond_without slowdebug
8eabd2
# Enable release builds by default on relevant arches.
8eabd2
%bcond_without release
8eabd2
8eabd2
# The -g flag says to use strip -g instead of full strip on DSOs or EXEs.
8eabd2
# This fixes detailed NMT and other tools which need minimal debug info.
8eabd2
# See: https://bugzilla.redhat.com/show_bug.cgi?id=1520879
8eabd2
%global _find_debuginfo_opts -g
8eabd2
8eabd2
# note: parametrized macros are order-sensitive (unlike not-parametrized) even with normal macros
8eabd2
# also necessary when passing it as parameter to other macros. If not macro, then it is considered a switch
8eabd2
# see the difference between global and define:
8eabd2
# See https://github.com/rpm-software-management/rpm/issues/127 to comments at  "pmatilai commented on Aug 18, 2017"
8eabd2
# (initiated in https://bugzilla.redhat.com/show_bug.cgi?id=1482192)
8eabd2
%global debug_suffix_unquoted -debug
8eabd2
# quoted one for shell operations
8eabd2
%global debug_suffix "%{debug_suffix_unquoted}"
8eabd2
%global normal_suffix ""
8eabd2
8eabd2
# if you want only debug build but providing java build only normal build but set normalbuild_parameter
8eabd2
%global debug_warning This package has full debug on. Install only in need and remove asap.
8eabd2
%global debug_on with full debug on
8eabd2
%global for_debug for packages with debug on
8eabd2
8eabd2
%if %{with release}
8eabd2
%global include_normal_build 1
8eabd2
%else
8eabd2
%global include_normal_build 0
8eabd2
%endif
8eabd2
8eabd2
%if %{include_normal_build}
8eabd2
%global build_loop1 %{normal_suffix}
8eabd2
%else
8eabd2
%global build_loop1 %{nil}
8eabd2
%endif
8eabd2
8eabd2
%global aarch64         aarch64 arm64 armv8
8eabd2
# we need to distinguish between big and little endian PPC64
8eabd2
%global ppc64le         ppc64le
8eabd2
%global ppc64be         ppc64 ppc64p7
8eabd2
%global multilib_arches %{power64} sparc64 x86_64
8eabd2
%global jit_arches      %{ix86} x86_64 sparcv9 sparc64 %{aarch64} %{power64} %{arm} s390x
8eabd2
%global aot_arches      x86_64 %{aarch64}
8eabd2
8eabd2
# By default, we build a debug build during main build on JIT architectures
8eabd2
%if %{with slowdebug}
8eabd2
%ifarch %{jit_arches}
8eabd2
%ifnarch %{arm}
8eabd2
%global include_debug_build 1
8eabd2
%else
8eabd2
%global include_debug_build 0
8eabd2
%endif
8eabd2
%else
8eabd2
%global include_debug_build 0
8eabd2
%endif
8eabd2
%else
8eabd2
%global include_debug_build 0
8eabd2
%endif
8eabd2
8eabd2
# On x86_64 and AArch64, we use the Shenandoah HotSpot
8eabd2
%ifarch x86_64 %{aarch64}
8eabd2
%global use_shenandoah_hotspot 1
8eabd2
%else
8eabd2
%global use_shenandoah_hotspot 0
8eabd2
%endif
8eabd2
8eabd2
%if %{include_debug_build}
8eabd2
%global build_loop2 %{debug_suffix}
8eabd2
%else
8eabd2
%global build_loop2 %{nil}
8eabd2
%endif
8eabd2
8eabd2
# if you disable both builds, then the build fails
8eabd2
# Note that the debug build requires the normal build for docs
8eabd2
%global build_loop  %{build_loop1} %{build_loop2}
8eabd2
# note: that order: normal_suffix debug_suffix, in case of both enabled
8eabd2
# is expected in one single case at the end of the build
8eabd2
%global rev_build_loop  %{build_loop2} %{build_loop1}
8eabd2
8eabd2
%ifarch %{jit_arches}
8eabd2
%global bootstrap_build 1
8eabd2
%else
8eabd2
%global bootstrap_build 1
8eabd2
%endif
8eabd2
8eabd2
%if %{bootstrap_build}
8eabd2
%global release_targets bootcycle-images docs-zip
8eabd2
%else
8eabd2
%global release_targets images docs-zip
8eabd2
%endif
8eabd2
# No docs nor bootcycle for debug builds
8eabd2
%global debug_targets images
8eabd2
8eabd2
8eabd2
# Filter out flags from the optflags macro that cause problems with the OpenJDK build
8eabd2
# We filter out -O flags so that the optimization of HotSpot is not lowered from O3 to O2
8eabd2
# We filter out -Wall which will otherwise cause HotSpot to produce hundreds of thousands of warnings (100+mb logs)
8eabd2
# We replace it with -Wformat (required by -Werror=format-security) and -Wno-cpp to avoid FORTIFY_SOURCE warnings
8eabd2
# We filter out -fexceptions as the HotSpot build explicitly does -fno-exceptions and it's otherwise the default for C++
8eabd2
%global ourflags %(echo %optflags | sed -e 's|-Wall|-Wformat -Wno-cpp|' | sed -r -e 's|-O[0-9]*||')
8eabd2
%global ourcppflags %(echo %ourflags | sed -e 's|-fexceptions||')
8eabd2
%global ourldflags %{__global_ldflags}
8eabd2
8eabd2
# With disabled nss is NSS deactivated, so NSS_LIBDIR can contain the wrong path
8eabd2
# the initialization must be here. Later the pkg-config have buggy behavior
8eabd2
# looks like openjdk RPM specific bug
8eabd2
# Always set this so the nss.cfg file is not broken
8eabd2
%global NSS_LIBDIR %(pkg-config --variable=libdir nss)
8eabd2
8eabd2
# fix for https://bugzilla.redhat.com/show_bug.cgi?id=1111349
8eabd2
%global _privatelibs libsplashscreen[.]so.*|libawt_xawt[.]so.*|libjli[.]so.*|libattach[.]so.*|libawt[.]so.*|libextnet[.]so.*|libawt_headless[.]so.*|libdt_socket[.]so.*|libfontmanager[.]so.*|libinstrument[.]so.*|libj2gss[.]so.*|libj2pcsc[.]so.*|libj2pkcs11[.]so.*|libjaas[.]so.*|libjavajpeg[.]so.*|libjdwp[.]so.*|libjimage[.]so.*|libjsound[.]so.*|liblcms[.]so.*|libmanagement[.]so.*|libmanagement_agent[.]so.*|libmanagement_ext[.]so.*|libmlib_image[.]so.*|libnet[.]so.*|libnio[.]so.*|libprefs[.]so.*|librmi[.]so.*|libsaproc[.]so.*|libsctp[.]so.*|libsunec[.]so.*|libunpack[.]so.*|libzip[.]so.*
8eabd2
8eabd2
%global __provides_exclude ^(%{_privatelibs})$
8eabd2
%global __requires_exclude ^(%{_privatelibs})$
8eabd2
8eabd2
# In some cases, the arch used by the JDK does
8eabd2
# not match _arch.
8eabd2
# Also, in some cases, the machine name used by SystemTap
8eabd2
# does not match that given by _build_cpu
8eabd2
%ifarch x86_64
8eabd2
%global archinstall amd64
8eabd2
%endif
8eabd2
%ifarch ppc
8eabd2
%global archinstall ppc
8eabd2
%endif
8eabd2
%ifarch %{ppc64be}
8eabd2
%global archinstall ppc64
8eabd2
%endif
8eabd2
%ifarch %{ppc64le}
8eabd2
%global archinstall ppc64le
8eabd2
%endif
8eabd2
%ifarch %{ix86}
8eabd2
%global archinstall i686
8eabd2
%endif
8eabd2
%ifarch ia64
8eabd2
%global archinstall ia64
8eabd2
%endif
8eabd2
%ifarch s390
8eabd2
%global archinstall s390
8eabd2
%endif
8eabd2
%ifarch s390x
8eabd2
%global archinstall s390x
8eabd2
%endif
8eabd2
%ifarch %{arm}
8eabd2
%global archinstall arm
8eabd2
%endif
8eabd2
%ifarch %{aarch64}
8eabd2
%global archinstall aarch64
8eabd2
%endif
8eabd2
# 32 bit sparc, optimized for v9
8eabd2
%ifarch sparcv9
8eabd2
%global archinstall sparc
8eabd2
%endif
8eabd2
# 64 bit sparc
8eabd2
%ifarch sparc64
8eabd2
%global archinstall sparcv9
8eabd2
%endif
8eabd2
%ifnarch %{jit_arches}
8eabd2
%global archinstall %{_arch}
8eabd2
%endif
8eabd2
8eabd2
8eabd2
8eabd2
%ifarch %{jit_arches}
8eabd2
%global with_systemtap 1
8eabd2
%else
8eabd2
%global with_systemtap 0
8eabd2
%endif
8eabd2
8eabd2
# New Version-String scheme-style defines
8eabd2
%global majorver 11
8eabd2
%global securityver 5
8eabd2
# buildjdkver is usually same as %%{majorver},
8eabd2
# but in time of bootstrap of next jdk, it is majorver-1, 
8eabd2
# and this it is better to change it here, on single place
8eabd2
%global buildjdkver %{majorver}
8eabd2
# Used via new version scheme. JDK 11 was
8eabd2
# GA'ed in September 2018 => 18.9
8eabd2
%global vendor_version_string 18.9
8eabd2
# Add LTS designator for RHEL builds
8eabd2
%if 0%{?rhel}
8eabd2
  %global lts_designator "LTS"
8eabd2
  %global lts_designator_zip -%{lts_designator}
8eabd2
%else
8eabd2
  %global lts_designator ""
8eabd2
  %global lts_designator_zip ""
8eabd2
%endif
8eabd2
8eabd2
# Standard JPackage naming and versioning defines
8eabd2
%global origin          openjdk
8eabd2
%global origin_nice     OpenJDK
8eabd2
%global top_level_dir_name   %{origin}
8eabd2
%global minorver        0
8eabd2
%global buildver        3
8eabd2
%global release         1
8eabd2
#%%global tagsuffix      %{nil}
8eabd2
# priority must be 7 digits in total
8eabd2
# setting to 1, so debug ones can have 0
8eabd2
%global priority        00000%{minorver}1
8eabd2
%global newjavaver      %{majorver}.%{minorver}.%{securityver}
8eabd2
8eabd2
%global javaver         %{majorver}
8eabd2
8eabd2
# Define milestone (EA for pre-releases, GA for releases)
8eabd2
# Release will be (where N is usually a number starting at 1):
8eabd2
# - 0.N%%{?extraver}%%{?dist} for EA releases,
8eabd2
# - N%%{?extraver}{?dist} for GA releases
8eabd2
%global is_ga           0
8eabd2
%if %{is_ga}
8eabd2
%global ea_designator ""
8eabd2
%global ea_designator_zip ""
8eabd2
%global extraver %{nil}
8eabd2
%global eaprefix %{nil}
8eabd2
%else
8eabd2
%global ea_designator ea
8eabd2
%global ea_designator_zip -%{ea_designator}
8eabd2
%global extraver .%{ea_designator}
8eabd2
%global eaprefix 0.
8eabd2
%endif
8eabd2
8eabd2
# parametrized macros are order-sensitive
8eabd2
%global compatiblename  java-%{majorver}-%{origin}
8eabd2
%global fullversion     %{compatiblename}-%{version}-%{release}
8eabd2
# images stub
8eabd2
%global jdkimage       jdk
8eabd2
# output dir stub
8eabd2
%global buildoutputdir() %{expand:openjdk/build%1}
8eabd2
# we can copy the javadoc to not arched dir, or make it not noarch
8eabd2
# javadoc is no longer noarch, as it have aot on only some arches
8eabd2
%global uniquejavadocdir()    %{expand:%{fullversion}.%{_arch}%1}
8eabd2
# main id and dir of this jdk
8eabd2
%global uniquesuffix()        %{expand:%{fullversion}.%{_arch}%1}
8eabd2
8eabd2
# Standard JPackage directories and symbolic links.
8eabd2
%global sdkdir()        %{expand:%{uniquesuffix %%1}}
8eabd2
%global jrelnk()        %{expand:jre-%{javaver}-%{origin}-%{version}-%{release}.%{_arch}%1}
8eabd2
8eabd2
%global sdkbindir()     %{expand:%{_jvmdir}/%{sdkdir %%1}/bin}
8eabd2
%global jrebindir()     %{expand:%{_jvmdir}/%{sdkdir %%1}/bin}
8eabd2
8eabd2
%global rpm_state_dir %{_localstatedir}/lib/rpm-state/
8eabd2
8eabd2
%if %{with_systemtap}
8eabd2
# Where to install systemtap tapset (links)
8eabd2
# We would like these to be in a package specific sub-dir,
8eabd2
# but currently systemtap doesn't support that, so we have to
8eabd2
# use the root tapset dir for now. To distinguish between 64
8eabd2
# and 32 bit architectures we place the tapsets under the arch
8eabd2
# specific dir (note that systemtap will only pickup the tapset
8eabd2
# for the primary arch for now). Systemtap uses the machine name
8eabd2
# aka build_cpu as architecture specific directory name.
8eabd2
%global tapsetroot /usr/share/systemtap
8eabd2
%global tapsetdirttapset %{tapsetroot}/tapset/
8eabd2
%global tapsetdir %{tapsetdirttapset}/%{_build_cpu}
8eabd2
%endif
8eabd2
8eabd2
# not-duplicated scriptlets for normal/debug packages
8eabd2
%global update_desktop_icons /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
8eabd2
8eabd2
8eabd2
%define post_script() %{expand:
8eabd2
update-desktop-database %{_datadir}/applications &> /dev/null || :
8eabd2
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
8eabd2
exit 0
8eabd2
}
8eabd2
8eabd2
8eabd2
%define post_headless() %{expand:
8eabd2
%ifarch %{jit_arches}
8eabd2
# MetaspaceShared::generate_vtable_methods not implemented for PPC JIT
8eabd2
%ifnarch %{ppc64le}
8eabd2
# see https://bugzilla.redhat.com/show_bug.cgi?id=513605
8eabd2
%{jrebindir %%1}/java -Xshare:dump >/dev/null 2>/dev/null
8eabd2
%endif
8eabd2
%endif
8eabd2
8eabd2
PRIORITY=%{priority}
8eabd2
if [ "%1" == %{debug_suffix} ]; then
8eabd2
  let PRIORITY=PRIORITY-1
8eabd2
fi
8eabd2
8eabd2
ext=.gz
8eabd2
alternatives \\
8eabd2
  --install %{_bindir}/java java %{jrebindir %%1}/java $PRIORITY  --family %{name}.%{_arch} \\
8eabd2
  --slave %{_jvmdir}/jre jre %{_jvmdir}/%{sdkdir %%1} \\
8eabd2
  --slave %{_bindir}/jjs jjs %{jrebindir %%1}/jjs \\
8eabd2
  --slave %{_bindir}/keytool keytool %{jrebindir %%1}/keytool \\
8eabd2
  --slave %{_bindir}/pack200 pack200 %{jrebindir %%1}/pack200 \\
8eabd2
  --slave %{_bindir}/rmid rmid %{jrebindir %%1}/rmid \\
8eabd2
  --slave %{_bindir}/rmiregistry rmiregistry %{jrebindir %%1}/rmiregistry \\
8eabd2
  --slave %{_bindir}/unpack200 unpack200 %{jrebindir %%1}/unpack200 \\
8eabd2
  --slave %{_mandir}/man1/java.1$ext java.1$ext \\
8eabd2
  %{_mandir}/man1/java-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/jjs.1$ext jjs.1$ext \\
8eabd2
  %{_mandir}/man1/jjs-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/keytool.1$ext keytool.1$ext \\
8eabd2
  %{_mandir}/man1/keytool-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/pack200.1$ext pack200.1$ext \\
8eabd2
  %{_mandir}/man1/pack200-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/rmid.1$ext rmid.1$ext \\
8eabd2
  %{_mandir}/man1/rmid-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/rmiregistry.1$ext rmiregistry.1$ext \\
8eabd2
  %{_mandir}/man1/rmiregistry-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/unpack200.1$ext unpack200.1$ext \\
8eabd2
  %{_mandir}/man1/unpack200-%{uniquesuffix %%1}.1$ext
8eabd2
8eabd2
for X in %{origin} %{javaver} ; do
8eabd2
  alternatives --install %{_jvmdir}/jre-"$X" jre_"$X" %{_jvmdir}/%{sdkdir %%1} $PRIORITY --family %{name}.%{_arch}
8eabd2
done
8eabd2
8eabd2
update-alternatives --install %{_jvmdir}/jre-%{javaver}-%{origin} jre_%{javaver}_%{origin} %{_jvmdir}/%{jrelnk %%1} $PRIORITY  --family %{name}.%{_arch}
8eabd2
8eabd2
8eabd2
update-desktop-database %{_datadir}/applications &> /dev/null || :
8eabd2
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
8eabd2
8eabd2
# see pretrans where this file is declared
8eabd2
# also see that pretrans is only for non-debug
8eabd2
if [ ! "%1" == %{debug_suffix} ]; then
8eabd2
  if [ -f %{_libexecdir}/copy_jdk_configs_fixFiles.sh ] ; then
8eabd2
    sh  %{_libexecdir}/copy_jdk_configs_fixFiles.sh %{rpm_state_dir}/%{name}.%{_arch}  %{_jvmdir}/%{sdkdir %%1}
8eabd2
  fi
8eabd2
fi
8eabd2
8eabd2
exit 0
8eabd2
}
8eabd2
8eabd2
%global postun_script() %{expand:
8eabd2
update-desktop-database %{_datadir}/applications &> /dev/null || :
8eabd2
if [ $1 -eq 0 ] ; then
8eabd2
    /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
8eabd2
    %{update_desktop_icons}
8eabd2
fi
8eabd2
exit 0
8eabd2
}
8eabd2
8eabd2
8eabd2
%global postun_headless() %{expand:
8eabd2
  alternatives --remove java %{jrebindir %%1}/java
8eabd2
  alternatives --remove jre_%{origin} %{_jvmdir}/%{sdkdir %%1}
8eabd2
  alternatives --remove jre_%{javaver} %{_jvmdir}/%{sdkdir %%1}
8eabd2
  alternatives --remove jre_%{javaver}_%{origin} %{_jvmdir}/%{jrelnk %%1}
8eabd2
}
8eabd2
8eabd2
%global posttrans_script() %{expand:
8eabd2
%{update_desktop_icons}
8eabd2
}
8eabd2
8eabd2
%global post_devel() %{expand:
8eabd2
8eabd2
PRIORITY=%{priority}
8eabd2
if [ "%1" == %{debug_suffix} ]; then
8eabd2
  let PRIORITY=PRIORITY-1
8eabd2
fi
8eabd2
8eabd2
ext=.gz
8eabd2
alternatives \\
8eabd2
  --install %{_bindir}/javac javac %{sdkbindir %%1}/javac $PRIORITY  --family %{name}.%{_arch} \\
8eabd2
  --slave %{_jvmdir}/java java_sdk %{_jvmdir}/%{sdkdir %%1} \\
8eabd2
%ifarch %{aot_arches}
8eabd2
  --slave %{_bindir}/jaotc jaotc %{sdkbindir %%1}/jaotc \\
8eabd2
%endif
8eabd2
  --slave %{_bindir}/jlink jlink %{sdkbindir %%1}/jlink \\
8eabd2
  --slave %{_bindir}/jmod jmod %{sdkbindir %%1}/jmod \\
8eabd2
%ifarch %{jit_arches}
8eabd2
%ifnarch s390x
8eabd2
  --slave %{_bindir}/jhsdb jhsdb %{sdkbindir %%1}/jhsdb \\
8eabd2
%endif
8eabd2
%endif
8eabd2
  --slave %{_bindir}/jar jar %{sdkbindir %%1}/jar \\
8eabd2
  --slave %{_bindir}/jarsigner jarsigner %{sdkbindir %%1}/jarsigner \\
8eabd2
  --slave %{_bindir}/javadoc javadoc %{sdkbindir %%1}/javadoc \\
8eabd2
  --slave %{_bindir}/javap javap %{sdkbindir %%1}/javap \\
8eabd2
  --slave %{_bindir}/jcmd jcmd %{sdkbindir %%1}/jcmd \\
8eabd2
  --slave %{_bindir}/jconsole jconsole %{sdkbindir %%1}/jconsole \\
8eabd2
  --slave %{_bindir}/jdb jdb %{sdkbindir %%1}/jdb \\
8eabd2
  --slave %{_bindir}/jdeps jdeps %{sdkbindir %%1}/jdeps \\
8eabd2
  --slave %{_bindir}/jdeprscan jdeprscan %{sdkbindir %%1}/jdeprscan \\
8eabd2
  --slave %{_bindir}/jimage jimage %{sdkbindir %%1}/jimage \\
8eabd2
  --slave %{_bindir}/jinfo jinfo %{sdkbindir %%1}/jinfo \\
8eabd2
  --slave %{_bindir}/jmap jmap %{sdkbindir %%1}/jmap \\
8eabd2
  --slave %{_bindir}/jps jps %{sdkbindir %%1}/jps \\
8eabd2
  --slave %{_bindir}/jrunscript jrunscript %{sdkbindir %%1}/jrunscript \\
8eabd2
  --slave %{_bindir}/jshell jshell %{sdkbindir %%1}/jshell \\
8eabd2
  --slave %{_bindir}/jstack jstack %{sdkbindir %%1}/jstack \\
8eabd2
  --slave %{_bindir}/jstat jstat %{sdkbindir %%1}/jstat \\
8eabd2
  --slave %{_bindir}/jstatd jstatd %{sdkbindir %%1}/jstatd \\
8eabd2
  --slave %{_bindir}/rmic rmic %{sdkbindir %%1}/rmic \\
8eabd2
  --slave %{_bindir}/serialver serialver %{sdkbindir %%1}/serialver \\
8eabd2
  --slave %{_mandir}/man1/jar.1$ext jar.1$ext \\
8eabd2
  %{_mandir}/man1/jar-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/jarsigner.1$ext jarsigner.1$ext \\
8eabd2
  %{_mandir}/man1/jarsigner-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/javac.1$ext javac.1$ext \\
8eabd2
  %{_mandir}/man1/javac-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/javadoc.1$ext javadoc.1$ext \\
8eabd2
  %{_mandir}/man1/javadoc-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/javap.1$ext javap.1$ext \\
8eabd2
  %{_mandir}/man1/javap-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/jcmd.1$ext jcmd.1$ext \\
8eabd2
  %{_mandir}/man1/jcmd-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/jconsole.1$ext jconsole.1$ext \\
8eabd2
  %{_mandir}/man1/jconsole-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/jdb.1$ext jdb.1$ext \\
8eabd2
  %{_mandir}/man1/jdb-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/jdeps.1$ext jdeps.1$ext \\
8eabd2
  %{_mandir}/man1/jdeps-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/jinfo.1$ext jinfo.1$ext \\
8eabd2
  %{_mandir}/man1/jinfo-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/jmap.1$ext jmap.1$ext \\
8eabd2
  %{_mandir}/man1/jmap-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/jps.1$ext jps.1$ext \\
8eabd2
  %{_mandir}/man1/jps-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/jrunscript.1$ext jrunscript.1$ext \\
8eabd2
  %{_mandir}/man1/jrunscript-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/jstack.1$ext jstack.1$ext \\
8eabd2
  %{_mandir}/man1/jstack-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/jstat.1$ext jstat.1$ext \\
8eabd2
  %{_mandir}/man1/jstat-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/jstatd.1$ext jstatd.1$ext \\
8eabd2
  %{_mandir}/man1/jstatd-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/rmic.1$ext rmic.1$ext \\
8eabd2
  %{_mandir}/man1/rmic-%{uniquesuffix %%1}.1$ext \\
8eabd2
  --slave %{_mandir}/man1/serialver.1$ext serialver.1$ext \\
8eabd2
  %{_mandir}/man1/serialver-%{uniquesuffix %%1}.1$ext \\
8eabd2
8eabd2
for X in %{origin} %{javaver} ; do
8eabd2
  alternatives \\
8eabd2
    --install %{_jvmdir}/java-"$X" java_sdk_"$X" %{_jvmdir}/%{sdkdir %%1} $PRIORITY  --family %{name}.%{_arch}
8eabd2
done
8eabd2
8eabd2
update-alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} java_sdk_%{javaver}_%{origin} %{_jvmdir}/%{sdkdir %%1} $PRIORITY  --family %{name}.%{_arch}
8eabd2
8eabd2
update-desktop-database %{_datadir}/applications &> /dev/null || :
8eabd2
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
8eabd2
8eabd2
exit 0
8eabd2
}
8eabd2
8eabd2
%global postun_devel() %{expand:
8eabd2
  alternatives --remove javac %{sdkbindir %%1}/javac
8eabd2
  alternatives --remove java_sdk_%{origin} %{_jvmdir}/%{sdkdir %%1}
8eabd2
  alternatives --remove java_sdk_%{javaver} %{_jvmdir}/%{sdkdir %%1}
8eabd2
  alternatives --remove java_sdk_%{javaver}_%{origin} %{_jvmdir}/%{sdkdir %%1}
8eabd2
8eabd2
update-desktop-database %{_datadir}/applications &> /dev/null || :
8eabd2
8eabd2
if [ $1 -eq 0 ] ; then
8eabd2
    /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
8eabd2
    %{update_desktop_icons}
8eabd2
fi
8eabd2
exit 0
8eabd2
}
8eabd2
8eabd2
%global posttrans_devel() %{expand:
8eabd2
%{update_desktop_icons}
8eabd2
}
8eabd2
8eabd2
%global post_javadoc() %{expand:
8eabd2
8eabd2
PRIORITY=%{priority}
8eabd2
if [ "%1" == %{debug_suffix} ]; then
8eabd2
  let PRIORITY=PRIORITY-1
8eabd2
fi
8eabd2
8eabd2
alternatives \\
8eabd2
  --install %{_javadocdir}/java javadocdir %{_javadocdir}/%{uniquejavadocdir %%1}/api \\
8eabd2
  $PRIORITY  --family %{name}
8eabd2
exit 0
8eabd2
}
8eabd2
8eabd2
%global postun_javadoc() %{expand:
8eabd2
  alternatives --remove javadocdir %{_javadocdir}/%{uniquejavadocdir %%1}/api
8eabd2
exit 0
8eabd2
}
8eabd2
8eabd2
%global post_javadoc_zip() %{expand:
8eabd2
8eabd2
PRIORITY=%{priority}
8eabd2
if [ "%1" == %{debug_suffix} ]; then
8eabd2
  let PRIORITY=PRIORITY-1
8eabd2
fi
8eabd2
8eabd2
alternatives \\
8eabd2
  --install %{_javadocdir}/java-zip javadoczip %{_javadocdir}/%{uniquejavadocdir %%1}.zip \\
8eabd2
  $PRIORITY  --family %{name}
8eabd2
exit 0
8eabd2
}
8eabd2
8eabd2
%global postun_javadoc_zip() %{expand:
8eabd2
  alternatives --remove javadoczip %{_javadocdir}/%{uniquejavadocdir %%1}.zip
8eabd2
exit 0
8eabd2
}
8eabd2
8eabd2
%define files_jre() %{expand:
8eabd2
%{_datadir}/icons/hicolor/*x*/apps/java-%{javaver}-%{origin}.png
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libsplashscreen.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libawt_xawt.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libjawt.so
8eabd2
}
8eabd2
8eabd2
8eabd2
%define files_jre_headless() %{expand:
8eabd2
%license %{_jvmdir}/%{sdkdir %%1}/legal
8eabd2
%dir %{_sysconfdir}/.java/.systemPrefs
8eabd2
%dir %{_sysconfdir}/.java
8eabd2
%dir %{_jvmdir}/%{sdkdir %%1}
8eabd2
%{_jvmdir}/%{sdkdir %%1}/release
8eabd2
%{_jvmdir}/%{jrelnk %%1}
8eabd2
%dir %{_jvmdir}/%{sdkdir %%1}/bin
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/java
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jjs
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/keytool
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/pack200
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/rmid
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/rmiregistry
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/unpack200
8eabd2
%dir %{_jvmdir}/%{sdkdir %%1}/lib
8eabd2
%ifarch %{jit_arches}
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/classlist
8eabd2
%endif
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/jexec
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/jspawnhelper
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/jrt-fs.jar
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/modules
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/psfont.properties.ja
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/psfontj2d.properties
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/tzdb.dat
8eabd2
%dir %{_jvmdir}/%{sdkdir %%1}/lib/jli
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/jli/libjli.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/jvm.cfg
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libattach.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libawt.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libextnet.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libjsig.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libawt_headless.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libdt_socket.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libfontmanager.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libinstrument.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libj2gss.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libj2pcsc.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libj2pkcs11.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libjaas.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libjava.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libjavajpeg.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libjdwp.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libjimage.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libjsound.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/liblcms.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libmanagement.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libmanagement_agent.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libmanagement_ext.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libmlib_image.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libnet.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libnio.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libprefs.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/librmi.so
8eabd2
# Zero and S390x don't have SA
8eabd2
%ifarch %{jit_arches}
8eabd2
%ifnarch s390x
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libsaproc.so
8eabd2
%endif
8eabd2
%endif
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libsctp.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libsunec.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libunpack.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libverify.so
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/libzip.so
8eabd2
%dir %{_jvmdir}/%{sdkdir %%1}/lib/jfr
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/jfr/default.jfc
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/jfr/profile.jfc
8eabd2
%{_mandir}/man1/java-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/jjs-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/keytool-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/pack200-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/rmid-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/rmiregistry-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/unpack200-%{uniquesuffix %%1}.1*
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/server/
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/client/
8eabd2
%ifarch %{jit_arches}
8eabd2
%ifnarch %{power64}
8eabd2
%attr(444, root, root) %ghost %{_jvmdir}/%{sdkdir %%1}/lib/server/classes.jsa
8eabd2
%attr(444, root, root) %ghost %{_jvmdir}/%{sdkdir %%1}/lib/client/classes.jsa
8eabd2
%endif
8eabd2
%endif
8eabd2
%dir %{_jvmdir}/%{sdkdir %%1}/lib/security
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/security/cacerts
8eabd2
%dir %{_jvmdir}/%{sdkdir %%1}/conf
8eabd2
%dir %{_jvmdir}/%{sdkdir %%1}/conf/management
8eabd2
%dir %{_jvmdir}/%{sdkdir %%1}/conf/security
8eabd2
%dir %{_jvmdir}/%{sdkdir %%1}/conf/security/policy
8eabd2
%dir %{_jvmdir}/%{sdkdir %%1}/conf/security/policy/limited
8eabd2
%dir %{_jvmdir}/%{sdkdir %%1}/conf/security/policy/unlimited
8eabd2
%config(noreplace) %{_jvmdir}/%{sdkdir %%1}/lib/security/default.policy
8eabd2
%config(noreplace) %{_jvmdir}/%{sdkdir %%1}/lib/security/blacklisted.certs
8eabd2
%config(noreplace) %{_jvmdir}/%{sdkdir %%1}/lib/security/public_suffix_list.dat
8eabd2
%config(noreplace) %{_jvmdir}/%{sdkdir %%1}/conf/security/policy/limited/exempt_local.policy
8eabd2
%config(noreplace) %{_jvmdir}/%{sdkdir %%1}/conf/security/policy/limited/default_local.policy
8eabd2
%config(noreplace) %{_jvmdir}/%{sdkdir %%1}/conf/security/policy/limited/default_US_export.policy
8eabd2
%config(noreplace) %{_jvmdir}/%{sdkdir %%1}/conf/security/policy/unlimited/default_local.policy
8eabd2
%config(noreplace) %{_jvmdir}/%{sdkdir %%1}/conf/security/policy/unlimited/default_US_export.policy
8eabd2
 %{_jvmdir}/%{sdkdir %%1}/conf/security/policy/README.txt
8eabd2
%config(noreplace) %{_jvmdir}/%{sdkdir %%1}/conf/security/java.policy
8eabd2
%config(noreplace) %{_jvmdir}/%{sdkdir %%1}/conf/security/java.security
8eabd2
%config(noreplace) %{_jvmdir}/%{sdkdir %%1}/conf/logging.properties
8eabd2
%config(noreplace) %{_jvmdir}/%{sdkdir %%1}/conf/security/nss.cfg
8eabd2
%config(noreplace) %{_jvmdir}/%{sdkdir %%1}/conf/management/jmxremote.access
8eabd2
# this is conifg template, thus not config-noreplace
8eabd2
%config  %{_jvmdir}/%{sdkdir %%1}/conf/management/jmxremote.password.template
8eabd2
%config(noreplace) %{_jvmdir}/%{sdkdir %%1}/conf/management/management.properties
8eabd2
%config(noreplace) %{_jvmdir}/%{sdkdir %%1}/conf/net.properties
8eabd2
%config(noreplace) %{_jvmdir}/%{sdkdir %%1}/conf/sound.properties
8eabd2
}
8eabd2
8eabd2
%global files_devel() %{expand:
8eabd2
%dir %{_jvmdir}/%{sdkdir %%1}/bin
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jar
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jarsigner
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/javac
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/javadoc
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/javap
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jconsole
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jcmd
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jdb
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jdeps
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jdeprscan
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jimage
8eabd2
# Zero and S390x don't have SA
8eabd2
%ifarch %{jit_arches}
8eabd2
%ifnarch s390x
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jhsdb
8eabd2
%endif
8eabd2
%endif
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jinfo
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jlink
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jmap
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jmod
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jps
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jrunscript
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jshell
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jstack
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jstat
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jstatd
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/rmic
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/serialver
8eabd2
%ifarch %{aot_arches}
8eabd2
%{_jvmdir}/%{sdkdir %%1}/bin/jaotc
8eabd2
%endif
8eabd2
%{_jvmdir}/%{sdkdir %%1}/include
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/ct.sym
8eabd2
%if %{with_systemtap}
8eabd2
%{_jvmdir}/%{sdkdir %%1}/tapset
8eabd2
%endif
8eabd2
%{_datadir}/applications/*jconsole%1.desktop
8eabd2
%{_mandir}/man1/jar-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/jarsigner-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/javac-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/javadoc-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/javap-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/jconsole-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/jcmd-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/jdb-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/jdeps-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/jinfo-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/jmap-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/jps-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/jrunscript-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/jstack-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/jstat-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/jstatd-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/rmic-%{uniquesuffix %%1}.1*
8eabd2
%{_mandir}/man1/serialver-%{uniquesuffix %%1}.1*
8eabd2
%if %{with_systemtap}
8eabd2
%dir %{tapsetroot}
8eabd2
%dir %{tapsetdirttapset}
8eabd2
%dir %{tapsetdir}
8eabd2
%{tapsetdir}/*%{_arch}%1.stp
8eabd2
%endif
8eabd2
}
8eabd2
8eabd2
%define files_jmods() %{expand:
8eabd2
%{_jvmdir}/%{sdkdir %%1}/jmods
8eabd2
}
8eabd2
8eabd2
%define files_demo() %{expand:
8eabd2
%license %{_jvmdir}/%{sdkdir %%1}/legal
8eabd2
%{_jvmdir}/%{sdkdir %%1}/demo
8eabd2
%{_jvmdir}/%{sdkdir %%1}/sample
8eabd2
}
8eabd2
8eabd2
%define files_src() %{expand:
8eabd2
%license %{_jvmdir}/%{sdkdir %%1}/legal
8eabd2
%{_jvmdir}/%{sdkdir %%1}/lib/src.zip
8eabd2
}
8eabd2
8eabd2
%define files_javadoc() %{expand:
8eabd2
%doc %{_javadocdir}/%{uniquejavadocdir %%1}
8eabd2
%license %{buildoutputdir %%1}/images/%{jdkimage}/legal
8eabd2
}
8eabd2
8eabd2
%define files_javadoc_zip() %{expand:
8eabd2
%doc %{_javadocdir}/%{uniquejavadocdir %%1}.zip
8eabd2
%license %{buildoutputdir %%1}/images/%{jdkimage}/legal
8eabd2
}
8eabd2
8eabd2
# not-duplicated requires/provides/obsolate for normal/debug packages
8eabd2
%global java_rpo() %{expand:
8eabd2
Requires: fontconfig%{?_isa}
8eabd2
Requires: xorg-x11-fonts-Type1
8eabd2
# Requires rest of java
8eabd2
Requires: %{name}-headless%1%{?_isa} = %{epoch}:%{version}-%{release}
8eabd2
OrderWithRequires: %{name}-headless%1%{?_isa} = %{epoch}:%{version}-%{release}
8eabd2
# for java-X-openjdk package's desktop binding
8eabd2
#Recommends: gtk2%{?_isa}
8eabd2
# rhel7 do not have week depndencies
8eabd2
8eabd2
Provides: java-%{javaver}-%{origin}%1 = %{epoch}:%{version}-%{release}
8eabd2
8eabd2
# Standard JPackage base provides
8eabd2
#Provides: jre = %{javaver}%1
8eabd2
#Provides: jre-%{origin}%1 = %{epoch}:%{version}-%{release}
8eabd2
Provides: jre-%{javaver}%1 = %{epoch}:%{version}-%{release}
8eabd2
Provides: jre-%{javaver}-%{origin}%1 = %{epoch}:%{version}-%{release}
8eabd2
Provides: java-%{javaver}%1 = %{epoch}:%{version}-%{release}
8eabd2
#Provides: java-%{origin}%1 = %{epoch}:%{version}-%{release}
8eabd2
#Provides: java%1 = %{epoch}:%{javaver}
8eabd2
}
8eabd2
8eabd2
%global java_headless_rpo() %{expand:
8eabd2
# Require /etc/pki/java/cacerts
8eabd2
Requires: ca-certificates
8eabd2
# Require jpackage-utils for ownership of /usr/lib/jvm/ and macros
8eabd2
Requires: javapackages-tools
8eabd2
# Require zone-info data provided by tzdata-java sub-package
8eabd2
Requires: tzdata-java >= 2015d
8eabd2
# for support of kernel stream control
8eabd2
# libsctp.so.1 is being `dlopen`ed on demand
8eabd2
Requires: lksctp-tools%{?_isa}
8eabd2
# For smartcard support
8eabd2
# libpcsclite.so & libpcsclite.so.1 are both tried for dlopen
8eabd2
# and this package provides the latter (see RH910107)
8eabd2
Requires: pcsc-lite-libs%{?_isa}
8eabd2
# tool to copy jdk's configs - should be Recommends only, but then only dnf/yum enforce it,
8eabd2
# not rpm transaction and so no configs are persisted when pure rpm -u is run. It may be
8eabd2
# considered as regression
8eabd2
Requires: copy-jdk-configs >= 3.3
8eabd2
OrderWithRequires: copy-jdk-configs
8eabd2
# for printing support
8eabd2
Requires: cups-libs%{?_isa}
8eabd2
# Post requires alternatives to install tool alternatives
8eabd2
Requires(post):   %{_sbindir}/alternatives
8eabd2
# in version 1.7 and higher for --family switch
8eabd2
Requires(post):   chkconfig >= 1.7
8eabd2
# Postun requires alternatives to uninstall tool alternatives
8eabd2
Requires(postun): %{_sbindir}/alternatives
8eabd2
# in version 1.7 and higher for --family switch
8eabd2
Requires(postun):   chkconfig >= 1.7
8eabd2
8eabd2
# rhel7 do not have weak depndencies
8eabd2
8eabd2
# Standard JPackage base provides
8eabd2
#Provides: jre-headless%1 = %{epoch}:%{javaver}
8eabd2
Provides: jre-%{javaver}-%{origin}-headless%1 = %{epoch}:%{version}-%{release}
8eabd2
#Provides: jre-%{origin}-headless%1 = %{epoch}:%{version}-%{release}
8eabd2
Provides: jre-%{javaver}-headless%1 = %{epoch}:%{version}-%{release}
8eabd2
Provides: java-%{javaver}-%{origin}-headless%1 = %{epoch}:%{version}-%{release}
8eabd2
Provides: java-%{javaver}-headless%1 = %{epoch}:%{version}-%{release}
8eabd2
#Provides: java-%{origin}-headless%1 = %{epoch}:%{version}-%{release}
8eabd2
#Provides: java-headless%1 = %{epoch}:%{javaver}
8eabd2
8eabd2
# https://bugzilla.redhat.com/show_bug.cgi?id=1312019
8eabd2
Provides: /usr/bin/jjs
8eabd2
8eabd2
}
8eabd2
8eabd2
%global java_devel_rpo() %{expand:
8eabd2
# Require base package
8eabd2
Requires:         %{name}%1%{?_isa} = %{epoch}:%{version}-%{release}
8eabd2
OrderWithRequires: %{name}-headless%1%{?_isa} = %{epoch}:%{version}-%{release}
8eabd2
# Post requires alternatives to install tool alternatives
8eabd2
Requires(post):   %{_sbindir}/alternatives
8eabd2
# in version 1.7 and higher for --family switch
8eabd2
Requires(post):   chkconfig >= 1.7
8eabd2
# Postun requires alternatives to uninstall tool alternatives
8eabd2
Requires(postun): %{_sbindir}/alternatives
8eabd2
# in version 1.7 and higher for --family switch
8eabd2
Requires(postun):   chkconfig >= 1.7
8eabd2
8eabd2
# Standard JPackage devel provides
8eabd2
Provides: java-sdk-%{javaver}-%{origin}%1 = %{epoch}:%{version}
8eabd2
Provides: java-sdk-%{javaver}%1 = %{epoch}:%{version}
8eabd2
#Provides: java-sdk-%{origin}%1 = %{epoch}:%{version}
8eabd2
#Provides: java-sdk%1 = %{epoch}:%{javaver}
8eabd2
Provides: java-%{javaver}-devel%1 = %{epoch}:%{version}
8eabd2
Provides: java-%{javaver}-%{origin}-devel%1 = %{epoch}:%{version}
8eabd2
#Provides: java-devel-%{origin}%1 = %{epoch}:%{version}
8eabd2
#Provides: java-devel%1 = %{epoch}:%{javaver}
8eabd2
8eabd2
}
8eabd2
8eabd2
%define java_jmods_rpo() %{expand:
8eabd2
# Requires devel package
8eabd2
# as jmods are bytecode, they should be OK without any _isa
8eabd2
Requires:         %{name}-devel%1 = %{epoch}:%{version}-%{release}
8eabd2
OrderWithRequires: %{name}-headless%1 = %{epoch}:%{version}-%{release}
8eabd2
8eabd2
Provides: java-jmods%1 = %{epoch}:%{version}-%{release}
8eabd2
Provides: java-%{javaver}-jmods%1 = %{epoch}:%{version}-%{release}
8eabd2
Provides: java-%{javaver}-%{origin}-jmods%1 = %{epoch}:%{version}-%{release}
8eabd2
8eabd2
}
8eabd2
8eabd2
%global java_demo_rpo() %{expand:
8eabd2
Requires: %{name}%1%{?_isa} = %{epoch}:%{version}-%{release}
8eabd2
OrderWithRequires: %{name}-headless%1%{?_isa} = %{epoch}:%{version}-%{release}
8eabd2
8eabd2
Provides: java-demo%1 = %{epoch}:%{version}-%{release}
8eabd2
Provides: java-%{javaver}-demo%1 = %{epoch}:%{version}-%{release}
8eabd2
Provides: java-%{javaver}-%{origin}-demo%1 = %{epoch}:%{version}-%{release}
8eabd2
8eabd2
}
8eabd2
8eabd2
%global java_javadoc_rpo() %{expand:
8eabd2
OrderWithRequires: %{name}-headless%1%{?_isa} = %{epoch}:%{version}-%{release}
8eabd2
# Post requires alternatives to install javadoc alternative
8eabd2
Requires(post):   %{_sbindir}/alternatives
8eabd2
# in version 1.7 and higher for --family switch
8eabd2
Requires(post):   chkconfig >= 1.7
8eabd2
# Postun requires alternatives to uninstall javadoc alternative
8eabd2
Requires(postun): %{_sbindir}/alternatives
8eabd2
# in version 1.7 and higher for --family switch
8eabd2
Requires(postun):   chkconfig >= 1.7
8eabd2
8eabd2
# Standard JPackage javadoc provides.
8eabd2
Provides: java-javadoc%1 = %{epoch}:%{version}-%{release}
8eabd2
Provides: java-%{javaver}-javadoc%1 = %{epoch}:%{version}-%{release}
8eabd2
Provides: java-%{javaver}-%{origin}-javadoc%1 = %{epoch}:%{version}-%{release}
8eabd2
}
8eabd2
8eabd2
%global java_src_rpo() %{expand:
8eabd2
Requires: %{name}-headless%1%{?_isa} = %{epoch}:%{version}-%{release}
8eabd2
8eabd2
# Standard JPackage sources provides.
8eabd2
Provides: java-src%1 = %{epoch}:%{version}-%{release}
8eabd2
Provides: java-%{javaver}-src%1 = %{epoch}:%{version}-%{release}
8eabd2
Provides: java-%{javaver}-%{origin}-src%1 = %{epoch}:%{version}-%{release}
8eabd2
}
8eabd2
8eabd2
# Prevent brp-java-repack-jars from being run.
8eabd2
%global __jar_repack 0
8eabd2
8eabd2
Name:    java-%{javaver}-%{origin}
8eabd2
Version: %{newjavaver}.%{buildver}
8eabd2
Release: %{?eaprefix}%{release}%{?extraver}%{?dist}
8eabd2
# java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons
8eabd2
# and this change was brought into RHEL-4. java-1.5.0-ibm packages
8eabd2
# also included the epoch in their virtual provides. This created a
8eabd2
# situation where in-the-wild java-1.5.0-ibm packages provided "java =
8eabd2
# 1:1.5.0". In RPM terms, "1.6.0 < 1:1.5.0" since 1.6.0 is
8eabd2
# interpreted as 0:1.6.0. So the "java >= 1.6.0" requirement would be
8eabd2
# satisfied by the 1:1.5.0 packages. Thus we need to set the epoch in
8eabd2
# JDK package >= 1.6.0 to 1, and packages referring to JDK virtual
8eabd2
# provides >= 1.6.0 must specify the epoch, "java >= 1:1.6.0".
8eabd2
8eabd2
Epoch:   1
8eabd2
Summary: %{origin_nice} Runtime Environment %{majorver}
8eabd2
Group:   Development/Languages
8eabd2
8eabd2
# HotSpot code is licensed under GPLv2
8eabd2
# JDK library code is licensed under GPLv2 with the Classpath exception
8eabd2
# The Apache license is used in code taken from Apache projects (primarily xalan & xerces)
8eabd2
# DOM levels 2 & 3 and the XML digital signature schemas are licensed under the W3C Software License
8eabd2
# The JSR166 concurrency code is in the public domain
8eabd2
# The BSD and MIT licenses are used for a number of third-party libraries (see ADDITIONAL_LICENSE_INFO)
8eabd2
# The OpenJDK source tree includes:
8eabd2
# - JPEG library (IJG), zlib & libpng (zlib), giflib (MIT), harfbuzz (ISC),
8eabd2
# - freetype (FTL), jline (BSD) and LCMS (MIT)
8eabd2
# - jquery (MIT), jdk.crypto.cryptoki PKCS 11 wrapper (RSA)
8eabd2
# - public_suffix_list.dat from publicsuffix.org (MPLv2.0)
8eabd2
# The test code includes copies of NSS under the Mozilla Public License v2.0
8eabd2
# The PCSClite headers are under a BSD with advertising license
8eabd2
# The elliptic curve cryptography (ECC) source code is licensed under the LGPLv2.1 or any later version
8eabd2
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 and ISC and FTL and RSA
8eabd2
URL:      http://openjdk.java.net/
8eabd2
8eabd2
8eabd2
# to regenerate source0 (jdk) and source8 (jdk's taspets) run update_package.sh
8eabd2
# update_package.sh contains hard-coded repos, revisions, tags, and projects to regenerate the source archives
8eabd2
Source0: shenandoah-jdk%{majorver}-shenandoah-jdk-%{newjavaver}+%{buildver}%{?tagsuffix:-%{tagsuffix}}-4curve.tar.xz
8eabd2
Source8: systemtap_3.2_tapsets_hg-icedtea8-9d464368e06d.tar.xz
8eabd2
8eabd2
# Desktop files. Adapted from IcedTea
8eabd2
Source9: jconsole.desktop.in
8eabd2
8eabd2
# nss configuration file
8eabd2
Source11: nss.cfg.in
8eabd2
8eabd2
# Removed libraries that we link instead
8eabd2
Source12: remove-intree-libraries.sh
8eabd2
8eabd2
# Ensure we aren't using the limited crypto policy
8eabd2
Source13: TestCryptoLevel.java
8eabd2
8eabd2
# Ensure ECDSA is working
8eabd2
Source14: TestECDSA.java
8eabd2
8eabd2
############################################
8eabd2
#
8eabd2
# RPM/distribution specific patches
8eabd2
#
8eabd2
############################################
8eabd2
8eabd2
# NSS via SunPKCS11 Provider (disabled comment
8eabd2
# due to memory leak).
8eabd2
Patch1000: rh1648249-add_commented_out_nss_cfg_provider_to_java_security.patch
8eabd2
8eabd2
# Ignore AWTError when assistive technologies are loaded
8eabd2
Patch1:    rh1648242-accessible_toolkit_crash_do_not_break_jvm.patch
8eabd2
# Restrict access to java-atk-wrapper classes
8eabd2
Patch2:    rh1648644-java_access_bridge_privileged_security.patch
8eabd2
Patch3:    rh649512-remove_uses_of_far_in_jpeg_libjpeg_turbo_1_4_compat_for_jdk10_and_up.patch
8eabd2
# Follow system wide crypto policy RHBZ#1249083
8eabd2
Patch4:    pr3183-rh1340845-support_fedora_rhel_system_crypto_policy.patch
8eabd2
8eabd2
#############################################
8eabd2
#
8eabd2
# Shenandoah specific patches
8eabd2
#
8eabd2
#############################################
8eabd2
8eabd2
#############################################
8eabd2
#
8eabd2
# OpenJDK specific patches
8eabd2
#
8eabd2
#############################################
8eabd2
8eabd2
# RH1566890: CVE-2018-3639
8eabd2
Patch6:    rh1566890-CVE_2018_3639-speculative_store_bypass.patch
8eabd2
# JDK-8009550, RH910107: Search for libpcsclite.so.1 if libpcsclite.so fails
8eabd2
Patch7: jdk8009550-rh910107-search_for_versioned_libpcsclite.patch
8eabd2
# S390 ambiguous log2_intptr call
8eabd2
Patch8: s390-8214206_fix.patch
8eabd2
8eabd2
#############################################
8eabd2
#
8eabd2
# JDK 9+ only patches
8eabd2
#
8eabd2
#############################################
8eabd2
8eabd2
BuildRequires: autoconf
8eabd2
BuildRequires: automake
8eabd2
BuildRequires: alsa-lib-devel
8eabd2
BuildRequires: binutils
8eabd2
BuildRequires: cups-devel
8eabd2
BuildRequires: desktop-file-utils
8eabd2
# elfutils only are OK for build without AOT
8eabd2
BuildRequires: elfutils-devel
8eabd2
BuildRequires: fontconfig
8eabd2
BuildRequires: freetype-devel
8eabd2
BuildRequires: giflib-devel
8eabd2
BuildRequires: gcc-c++
8eabd2
BuildRequires: gdb
8eabd2
BuildRequires: gtk2-devel
8eabd2
# LCMS on rhel7 is older then LCMS in intree JDK
8eabd2
BuildRequires: lcms2-devel
8eabd2
BuildRequires: libjpeg-devel
8eabd2
BuildRequires: libpng-devel
8eabd2
BuildRequires: libxslt
8eabd2
BuildRequires: libX11-devel
8eabd2
BuildRequires: libXi-devel
8eabd2
BuildRequires: libXinerama-devel
8eabd2
BuildRequires: libXt-devel
8eabd2
BuildRequires: libXtst-devel
8eabd2
# Requirements for setting up the nss.cfg
8eabd2
BuildRequires: nss-devel
8eabd2
BuildRequires: pkgconfig
8eabd2
BuildRequires: xorg-x11-proto-devel
8eabd2
BuildRequires: zip
8eabd2
BuildRequires: javapackages-tools
8eabd2
BuildRequires: java-%{buildjdkver}-openjdk-devel
8eabd2
# Zero-assembler build requirement
8eabd2
%ifnarch %{jit_arches}
8eabd2
BuildRequires: libffi-devel
8eabd2
%endif
8eabd2
BuildRequires: tzdata-java >= 2015d
8eabd2
# Earlier versions have a bug in tree vectorization on PPC
8eabd2
BuildRequires: gcc >= 4.8.3-8
8eabd2
8eabd2
%if %{with_systemtap}
8eabd2
BuildRequires: systemtap-sdt-devel
8eabd2
%endif
8eabd2
8eabd2
# this is always built, also during debug-only build
8eabd2
# when it is built in debug-only this package is just placeholder
8eabd2
%{java_rpo %{nil}}
8eabd2
8eabd2
%description
8eabd2
The %{origin_nice} runtime environment.
8eabd2
8eabd2
%if %{include_debug_build}
8eabd2
%package debug
8eabd2
Summary: %{origin_nice} Runtime Environment %{majorver} %{debug_on}
8eabd2
Group:   Development/Languages
8eabd2
8eabd2
%{java_rpo -- %{debug_suffix_unquoted}}
8eabd2
%description debug
8eabd2
The %{origin_nice} runtime environment.
8eabd2
%{debug_warning}
8eabd2
%endif
8eabd2
8eabd2
%if %{include_normal_build}
8eabd2
%package headless
8eabd2
Summary: %{origin_nice} Headless Runtime Environment %{majorver}
8eabd2
Group:   Development/Languages
8eabd2
8eabd2
%{java_headless_rpo %{nil}}
8eabd2
8eabd2
%description headless
8eabd2
The %{origin_nice} runtime environment %{majorver} without audio and video support.
8eabd2
%endif
8eabd2
8eabd2
%if %{include_debug_build}
8eabd2
%package headless-debug
8eabd2
Summary: %{origin_nice} Runtime Environment %{debug_on}
8eabd2
Group:   Development/Languages
8eabd2
8eabd2
%{java_headless_rpo -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%description headless-debug
8eabd2
The %{origin_nice} runtime environment %{majorver} without audio and video support.
8eabd2
%{debug_warning}
8eabd2
%endif
8eabd2
8eabd2
%if %{include_normal_build}
8eabd2
%package devel
8eabd2
Summary: %{origin_nice} Development Environment %{majorver}
8eabd2
Group:   Development/Tools
8eabd2
8eabd2
%{java_devel_rpo %{nil}}
8eabd2
8eabd2
%description devel
8eabd2
The %{origin_nice} development tools %{majorver}.
8eabd2
%endif
8eabd2
8eabd2
%if %{include_debug_build}
8eabd2
%package devel-debug
8eabd2
Summary: %{origin_nice} Development Environment %{majorver} %{debug_on}
8eabd2
Group:   Development/Tools
8eabd2
8eabd2
%{java_devel_rpo -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%description devel-debug
8eabd2
The %{origin_nice} development tools %{majorver}.
8eabd2
%{debug_warning}
8eabd2
%endif
8eabd2
8eabd2
%if %{include_normal_build}
8eabd2
%package jmods
8eabd2
Summary: JMods for %{origin_nice} %{majorver}
8eabd2
Group:   Development/Tools
8eabd2
8eabd2
%{java_jmods_rpo %{nil}}
8eabd2
8eabd2
%description jmods
8eabd2
The JMods for %{origin_nice}.
8eabd2
%endif
8eabd2
8eabd2
%if %{include_debug_build}
8eabd2
%package jmods-debug
8eabd2
Summary: JMods for %{origin_nice} %{majorver} %{debug_on}
8eabd2
Group:   Development/Tools
8eabd2
8eabd2
%{java_jmods_rpo -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%description jmods-debug
8eabd2
The JMods for %{origin_nice} %{majorver}.
8eabd2
%{debug_warning}
8eabd2
%endif
8eabd2
8eabd2
%if %{include_normal_build}
8eabd2
%package demo
8eabd2
Summary: %{origin_nice} Demos %{majorver}
8eabd2
Group:   Development/Languages
8eabd2
8eabd2
%{java_demo_rpo %{nil}}
8eabd2
8eabd2
%description demo
8eabd2
The %{origin_nice} demos %{majorver}.
8eabd2
%endif
8eabd2
8eabd2
%if %{include_debug_build}
8eabd2
%package demo-debug
8eabd2
Summary: %{origin_nice} Demos %{majorver} %{debug_on}
8eabd2
Group:   Development/Languages
8eabd2
8eabd2
%{java_demo_rpo -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%description demo-debug
8eabd2
The %{origin_nice} demos %{majorver}.
8eabd2
%{debug_warning}
8eabd2
%endif
8eabd2
8eabd2
%if %{include_normal_build}
8eabd2
%package src
8eabd2
Summary: %{origin_nice} Source Bundle %{majorver}
8eabd2
Group:   Development/Languages
8eabd2
8eabd2
%{java_src_rpo %{nil}}
8eabd2
8eabd2
%description src
8eabd2
The java-%{origin}-src sub-package contains the complete %{origin_nice} %{majorver}
8eabd2
class library source code for use by IDE indexers and debuggers.
8eabd2
%endif
8eabd2
8eabd2
%if %{include_debug_build}
8eabd2
%package src-debug
8eabd2
Summary: %{origin_nice} Source Bundle %{majorver} %{for_debug}
8eabd2
Group:   Development/Languages
8eabd2
8eabd2
%{java_src_rpo -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%description src-debug
8eabd2
The java-%{origin}-src-slowdebug sub-package contains the complete %{origin_nice} %{majorver}
8eabd2
 class library source code for use by IDE indexers and debuggers. Debugging %{for_debug}.
8eabd2
%endif
8eabd2
8eabd2
%if %{include_normal_build}
8eabd2
%package javadoc
8eabd2
Summary: %{origin_nice} %{majorver} API documentation
8eabd2
Group:   Documentation
8eabd2
Requires: javapackages-tools
8eabd2
8eabd2
%{java_javadoc_rpo %{nil}}
8eabd2
8eabd2
%description javadoc
8eabd2
The %{origin_nice} %{majorver} API documentation.
8eabd2
%endif
8eabd2
8eabd2
%if %{include_normal_build}
8eabd2
%package javadoc-zip
8eabd2
Summary: %{origin_nice} %{majorver} API documentation compressed in a single archive
8eabd2
Group:   Documentation
8eabd2
Requires: javapackages-tools
8eabd2
8eabd2
%{java_javadoc_rpo %{nil}}
8eabd2
8eabd2
%description javadoc-zip
8eabd2
The %{origin_nice} %{majorver} API documentation compressed in a single archive.
8eabd2
%endif
8eabd2
8eabd2
%if %{include_debug_build}
8eabd2
%package javadoc-debug
8eabd2
Summary: %{origin_nice} %{majorver} API documentation %{for_debug}
8eabd2
Group:   Documentation
8eabd2
Requires: javapackages-tools
8eabd2
8eabd2
%{java_javadoc_rpo -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%description javadoc-debug
8eabd2
The %{origin_nice} %{majorver} API documentation %{for_debug}.
8eabd2
%endif
8eabd2
8eabd2
%if %{include_debug_build}
8eabd2
%package javadoc-zip-debug
8eabd2
Summary: %{origin_nice} %{majorver} API documentation compressed in a single archive %{for_debug}
8eabd2
Group:   Documentation
8eabd2
Requires: javapackages-tools
8eabd2
8eabd2
%{java_javadoc_rpo -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%description javadoc-zip-debug
8eabd2
The %{origin_nice} %{majorver} API documentation compressed in a single archive %{for_debug}.
8eabd2
%endif
8eabd2
8eabd2
%prep
8eabd2
if [ %{include_normal_build} -eq 0 -o  %{include_normal_build} -eq 1 ] ; then
8eabd2
  echo "include_normal_build is %{include_normal_build}"
8eabd2
else
8eabd2
  echo "include_normal_build is %{include_normal_build}, thats invalid. Use 1 for yes or 0 for no"
8eabd2
  exit 11
8eabd2
fi
8eabd2
if [ %{include_debug_build} -eq 0 -o  %{include_debug_build} -eq 1 ] ; then
8eabd2
  echo "include_debug_build is %{include_debug_build}"
8eabd2
else
8eabd2
  echo "include_debug_build is %{include_debug_build}, thats invalid. Use 1 for yes or 0 for no"
8eabd2
  exit 12
8eabd2
fi
8eabd2
if [ %{include_debug_build} -eq 0 -a  %{include_normal_build} -eq 0 ] ; then
8eabd2
  echo "You have disabled both include_debug_build and include_normal_build. That is a no go."
8eabd2
  exit 13
8eabd2
fi
8eabd2
if [ %{include_normal_build} -eq 0 ] ; then
8eabd2
  echo "You have disabled the normal build, but this is required to provide docs for the debug build."
8eabd2
  exit 14
8eabd2
fi
8eabd2
%setup -q -c -n %{uniquesuffix ""} -T -a 0
8eabd2
# https://bugzilla.redhat.com/show_bug.cgi?id=1189084
8eabd2
prioritylength=`expr length %{priority}`
8eabd2
if [ $prioritylength -ne 7 ] ; then
8eabd2
 echo "priority must be 7 digits in total, violated"
8eabd2
 exit 14
8eabd2
fi
8eabd2
8eabd2
# OpenJDK patches
8eabd2
8eabd2
# Remove libraries that are linked
8eabd2
sh %{SOURCE12}
8eabd2
pushd %{top_level_dir_name}
8eabd2
%patch1 -p1
8eabd2
%patch2 -p1
8eabd2
%patch3 -p1
8eabd2
%patch4 -p1
8eabd2
%patch6 -p1
8eabd2
%patch7 -p1
8eabd2
%patch8 -p1
8eabd2
popd # openjdk
8eabd2
8eabd2
%patch1000
8eabd2
8eabd2
# Extract systemtap tapsets
8eabd2
%if %{with_systemtap}
8eabd2
tar --strip-components=1 -x -I xz -f %{SOURCE8}
8eabd2
%if %{include_debug_build}
8eabd2
cp -r tapset tapset%{debug_suffix}
8eabd2
%endif
8eabd2
8eabd2
8eabd2
for suffix in %{build_loop} ; do
8eabd2
  for file in "tapset"$suffix/*.in; do
8eabd2
    OUTPUT_FILE=`echo $file | sed -e "s:\.stp\.in$:%{version}-%{release}.%{_arch}.stp:g"`
8eabd2
    sed -e "s:@ABS_SERVER_LIBJVM_SO@:%{_jvmdir}/%{sdkdir $suffix}/lib/server/libjvm.so:g" $file > $file.1
8eabd2
# TODO find out which architectures other than i686 have a client vm
8eabd2
%ifarch %{ix86}
8eabd2
    sed -e "s:@ABS_CLIENT_LIBJVM_SO@:%{_jvmdir}/%{sdkdir $suffix}/lib/client/libjvm.so:g" $file.1 > $OUTPUT_FILE
8eabd2
%else
8eabd2
    sed -e "/@ABS_CLIENT_LIBJVM_SO@/d" $file.1 > $OUTPUT_FILE
8eabd2
%endif
8eabd2
    sed -i -e "s:@ABS_JAVA_HOME_DIR@:%{_jvmdir}/%{sdkdir $suffix}:g" $OUTPUT_FILE
8eabd2
    sed -i -e "s:@INSTALL_ARCH_DIR@:%{archinstall}:g" $OUTPUT_FILE
8eabd2
    sed -i -e "s:@prefix@:%{_jvmdir}/%{sdkdir $suffix}/:g" $OUTPUT_FILE
8eabd2
  done
8eabd2
done
8eabd2
# systemtap tapsets ends
8eabd2
%endif
8eabd2
8eabd2
# Prepare desktop files
8eabd2
for suffix in %{build_loop} ; do
8eabd2
for file in %{SOURCE9}; do
8eabd2
    FILE=`basename $file | sed -e s:\.in$::g`
8eabd2
    EXT="${FILE##*.}"
8eabd2
    NAME="${FILE%.*}"
8eabd2
    OUTPUT_FILE=$NAME$suffix.$EXT
8eabd2
    sed    -e  "s:@JAVA_HOME@:%{sdkbindir $suffix}:g" $file > $OUTPUT_FILE
8eabd2
    sed -i -e  "s:@JRE_HOME@:%{jrebindir $suffix}:g" $OUTPUT_FILE
8eabd2
    sed -i -e  "s:@ARCH@:%{version}-%{release}.%{_arch}$suffix:g" $OUTPUT_FILE
8eabd2
    sed -i -e  "s:@JAVA_MAJOR_VERSION@:%{majorver}:g" $OUTPUT_FILE
8eabd2
    sed -i -e  "s:@JAVA_VENDOR@:%{origin}:g" $OUTPUT_FILE
8eabd2
done
8eabd2
done
8eabd2
8eabd2
# Setup nss.cfg
8eabd2
sed -e "s:@NSS_LIBDIR@:%{NSS_LIBDIR}:g" %{SOURCE11} > nss.cfg
8eabd2
8eabd2
8eabd2
%build
8eabd2
# How many CPU's do we have?
8eabd2
export NUM_PROC=%(/usr/bin/getconf _NPROCESSORS_ONLN 2> /dev/null || :)
8eabd2
export NUM_PROC=${NUM_PROC:-1}
8eabd2
%if 0%{?_smp_ncpus_max}
8eabd2
# Honor %%_smp_ncpus_max
8eabd2
[ ${NUM_PROC} -gt %{?_smp_ncpus_max} ] && export NUM_PROC=%{?_smp_ncpus_max}
8eabd2
%endif
8eabd2
8eabd2
%ifarch s390x sparc64 alpha %{power64} %{aarch64}
8eabd2
export ARCH_DATA_MODEL=64
8eabd2
%endif
8eabd2
%ifarch alpha
8eabd2
export CFLAGS="$CFLAGS -mieee"
8eabd2
%endif
8eabd2
8eabd2
# We use ourcppflags because the OpenJDK build seems to
8eabd2
# pass EXTRA_CFLAGS to the HotSpot C++ compiler...
8eabd2
# Explicitly set the C++ standard as the default has changed on GCC >= 6
8eabd2
EXTRA_CFLAGS="%ourcppflags -std=gnu++98 -Wno-error -fno-delete-null-pointer-checks"
8eabd2
EXTRA_CPP_FLAGS="%ourcppflags -std=gnu++98 -fno-delete-null-pointer-checks"
8eabd2
%ifarch %{ix86}
8eabd2
EXTRA_CFLAGS="${EXTRA_CFLAGS} -mstackrealign"
8eabd2
EXTRA_CPP_FLAGS="${EXTRA_CPP_FLAGS} -mstackrealign"
8eabd2
%endif
8eabd2
8eabd2
%ifarch %{power64} ppc
8eabd2
# fix rpmlint warnings
8eabd2
EXTRA_CFLAGS="$EXTRA_CFLAGS -fno-strict-aliasing"
8eabd2
%endif
8eabd2
export EXTRA_CFLAGS
8eabd2
8eabd2
for suffix in %{build_loop} ; do
8eabd2
if [ "x$suffix" = "x" ] ; then
8eabd2
  debugbuild=release
8eabd2
else
8eabd2
  # change --something to something and rpeffix as slow
8eabd2
  debugbuild=`echo slow$suffix  | sed "s/-//g"`
8eabd2
fi
8eabd2
8eabd2
# Variable used in hs_err hook on build failures
8eabd2
top_dir_abs_path=$(pwd)/%{top_level_dir_name}
8eabd2
8eabd2
mkdir -p %{buildoutputdir $suffix}
8eabd2
pushd %{buildoutputdir $suffix}
8eabd2
8eabd2
bash ../configure \
8eabd2
%ifnarch %{jit_arches}
8eabd2
    --with-jvm-variants=zero \
8eabd2
%endif
8eabd2
%ifarch %{ppc64le}
8eabd2
    --with-jobs=1 \
8eabd2
%endif
8eabd2
    --with-version-build=%{buildver} \
8eabd2
    --with-version-pre="%{ea_designator}" \
8eabd2
    --with-version-opt=%{lts_designator} \
8eabd2
    --with-vendor-version-string="%{vendor_version_string}" \
8eabd2
    --with-boot-jdk=/usr/lib/jvm/java-%{buildjdkver}-openjdk \
8eabd2
    --with-debug-level=$debugbuild \
8eabd2
    --with-native-debug-symbols=internal \
8eabd2
    --enable-unlimited-crypto \
8eabd2
    --with-zlib=system \
8eabd2
    --with-libjpeg=system \
8eabd2
    --with-giflib=system \
8eabd2
    --with-libpng=system \
8eabd2
    --with-lcms=bundled \
8eabd2
    --with-stdc++lib=dynamic \
8eabd2
    --with-extra-cxxflags="$EXTRA_CPP_FLAGS" \
8eabd2
    --with-extra-cflags="$EXTRA_CFLAGS" \
8eabd2
    --with-extra-ldflags="%{ourldflags}" \
8eabd2
    --with-num-cores="$NUM_PROC" \
8eabd2
    --disable-javac-server \
8eabd2
%ifarch x86_64
8eabd2
    --with-jvm-features=zgc \
8eabd2
%endif
8eabd2
    --disable-warnings-as-errors
8eabd2
8eabd2
# Debug builds don't need same targets as release for
8eabd2
# build speed-up
8eabd2
maketargets="%{release_targets}"
8eabd2
if echo $debugbuild | grep -q "debug" ; then
8eabd2
  maketargets="%{debug_targets}"
8eabd2
fi
8eabd2
make \
8eabd2
    JAVAC_FLAGS=-g \
8eabd2
    LOG=trace \
8eabd2
    WARNINGS_ARE_ERRORS="-Wno-error" \
8eabd2
    CFLAGS_WARNINGS_ARE_ERRORS="-Wno-error" \
8eabd2
    $maketargets || ( pwd; find $top_dir_abs_path -name "hs_err_pid*.log" | xargs cat && false )
8eabd2
8eabd2
# the build (erroneously) removes read permissions from some jars
8eabd2
# this is a regression in OpenJDK 7 (our compiler):
8eabd2
# http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1437
8eabd2
find images/%{jdkimage} -iname '*.jar' -exec chmod ugo+r {} \;
8eabd2
8eabd2
# Build screws up permissions on binaries
8eabd2
# https://bugs.openjdk.java.net/browse/JDK-8173610
8eabd2
find images/%{jdkimage} -iname '*.so' -exec chmod +x {} \;
8eabd2
find images/%{jdkimage}/bin/ -exec chmod +x {} \;
8eabd2
8eabd2
popd >& /dev/null
8eabd2
8eabd2
# Install nss.cfg right away as we will be using the JRE above
8eabd2
export JAVA_HOME=$(pwd)/%{buildoutputdir $suffix}/images/%{jdkimage}
8eabd2
8eabd2
# Install nss.cfg right away as we will be using the JRE above
8eabd2
install -m 644 nss.cfg $JAVA_HOME/conf/security/
8eabd2
8eabd2
# Use system-wide tzdata
8eabd2
rm $JAVA_HOME/lib/tzdb.dat
8eabd2
ln -s %{_datadir}/javazi-1.8/tzdb.dat $JAVA_HOME/lib/tzdb.dat
8eabd2
8eabd2
# build cycles
8eabd2
done
8eabd2
8eabd2
%check
8eabd2
8eabd2
# We test debug first as it will give better diagnostics on a crash
8eabd2
for suffix in %{rev_build_loop} ; do
8eabd2
8eabd2
export JAVA_HOME=$(pwd)/%{buildoutputdir $suffix}/images/%{jdkimage}
8eabd2
8eabd2
#check Shenandoah is enabled
8eabd2
%if %{use_shenandoah_hotspot}
8eabd2
$JAVA_HOME//bin/java -XX:+UseShenandoahGC -version
8eabd2
%endif
8eabd2
8eabd2
# Check unlimited policy has been used
8eabd2
$JAVA_HOME/bin/javac -d . %{SOURCE13}
8eabd2
$JAVA_HOME/bin/java --add-opens java.base/javax.crypto=ALL-UNNAMED TestCryptoLevel
8eabd2
8eabd2
# Check ECC is working
8eabd2
$JAVA_HOME/bin/javac -d . %{SOURCE14}
8eabd2
$JAVA_HOME/bin/java $(echo $(basename %{SOURCE14})|sed "s|\.java||")
8eabd2
8eabd2
# Check debug symbols are present and can identify code
8eabd2
find "$JAVA_HOME" -iname '*.so' -print0 | while read -d $'\0' lib
8eabd2
do
8eabd2
  if [ -f "$lib" ] ; then
8eabd2
    echo "Testing $lib for debug symbols"
8eabd2
    # All these tests rely on RPM failing the build if the exit code of any set
8eabd2
    # of piped commands is non-zero.
8eabd2
8eabd2
    # Test for .debug_* sections in the shared object. This is the main test
8eabd2
    # Stripped objects will not contain these
8eabd2
    eu-readelf -S "$lib" | grep "] .debug_"
8eabd2
    test $(eu-readelf -S "$lib" | grep -E "\]\ .debug_(info|abbrev)" | wc --lines) == 2
8eabd2
8eabd2
    # Test FILE symbols. These will most likely be removed by anything that
8eabd2
    # manipulates symbol tables because it's generally useless. So a nice test
8eabd2
    # that nothing has messed with symbols
8eabd2
    old_IFS="$IFS"
8eabd2
    IFS=$'\n'
8eabd2
    for line in $(eu-readelf -s "$lib" | grep "00000000      0 FILE    LOCAL  DEFAULT")
8eabd2
    do
8eabd2
     # We expect to see .cpp files, except for architectures like aarch64 and
8eabd2
     # s390 where we expect .o and .oS files
8eabd2
      echo "$line" | grep -E "ABS ((.*/)?[-_a-zA-Z0-9]+\.(c|cc|cpp|cxx|o|oS))?$"
8eabd2
    done
8eabd2
    IFS="$old_IFS"
8eabd2
8eabd2
    # If this is the JVM, look for javaCalls.(cpp|o) in FILEs, for extra sanity checking
8eabd2
    if [ "`basename $lib`" = "libjvm.so" ]; then
8eabd2
      eu-readelf -s "$lib" | \
8eabd2
        grep -E "00000000      0 FILE    LOCAL  DEFAULT      ABS javaCalls.(cpp|o)$"
8eabd2
    fi
8eabd2
8eabd2
    # Test that there are no .gnu_debuglink sections pointing to another
8eabd2
    # debuginfo file. There shouldn't be any debuginfo files, so the link makes
8eabd2
    # no sense either
8eabd2
    eu-readelf -S "$lib" | grep 'gnu'
8eabd2
    if eu-readelf -S "$lib" | grep '] .gnu_debuglink' | grep PROGBITS; then
8eabd2
      echo "bad .gnu_debuglink section."
8eabd2
      eu-readelf -x .gnu_debuglink "$lib"
8eabd2
      false
8eabd2
    fi
8eabd2
  fi
8eabd2
done
8eabd2
8eabd2
# Make sure gdb can do a backtrace based on line numbers on libjvm.so
8eabd2
# javaCalls.cpp:58 should map to:
8eabd2
# http://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/file/ff3b27e6bcc2/src/share/vm/runtime/javaCalls.cpp#l58 
8eabd2
# Using line number 1 might cause build problems. See:
8eabd2
# https://bugzilla.redhat.com/show_bug.cgi?id=1539664
8eabd2
# https://bugzilla.redhat.com/show_bug.cgi?id=1538767
8eabd2
# Temporarily disabled on s390x as it sporadically crashes with SIGFPE, Arithmetic exception.
8eabd2
%ifnarch s390x
8eabd2
gdb -q "$JAVA_HOME/bin/java" <
8eabd2
handle SIGSEGV pass nostop noprint
8eabd2
handle SIGILL pass nostop noprint
8eabd2
set breakpoint pending on
8eabd2
break javaCalls.cpp:1
8eabd2
commands 1
8eabd2
backtrace
8eabd2
quit
8eabd2
end
8eabd2
run -version
8eabd2
EOF
8eabd2
grep 'JavaCallWrapper::JavaCallWrapper' gdb.out
8eabd2
%endif
8eabd2
8eabd2
# Check src.zip has all sources. See RHBZ#1130490
8eabd2
jar -tf $JAVA_HOME/lib/src.zip | grep 'sun.misc.Unsafe'
8eabd2
8eabd2
# Check class files include useful debugging information
8eabd2
$JAVA_HOME/bin/javap -l java.lang.Object | grep "Compiled from"
8eabd2
$JAVA_HOME/bin/javap -l java.lang.Object | grep LineNumberTable
8eabd2
$JAVA_HOME/bin/javap -l java.lang.Object | grep LocalVariableTable
8eabd2
8eabd2
# Check generated class files include useful debugging information
8eabd2
$JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep "Compiled from"
8eabd2
$JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep LineNumberTable
8eabd2
$JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep LocalVariableTable
8eabd2
8eabd2
# build cycles check
8eabd2
done
8eabd2
8eabd2
%install
8eabd2
STRIP_KEEP_SYMTAB=libjvm*
8eabd2
8eabd2
for suffix in %{build_loop} ; do
8eabd2
8eabd2
# Install the jdk
8eabd2
mkdir -p $RPM_BUILD_ROOT%{_jvmdir}
8eabd2
cp -a %{buildoutputdir $suffix}/images/%{jdkimage} \
8eabd2
  $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir $suffix}
8eabd2
8eabd2
# Install jsa directories so we can owe them
8eabd2
mkdir -p $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir $suffix}/lib/%{archinstall}/server/
8eabd2
mkdir -p $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir $suffix}/lib/%{archinstall}/client/
8eabd2
mkdir -p $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir $suffix}/lib/client/ || true  ; # sometimes is here, sometimes not, ifout it or || true it out
8eabd2
8eabd2
pushd %{buildoutputdir $suffix}/images/%{jdkimage}
8eabd2
8eabd2
%if %{with_systemtap}
8eabd2
  # Install systemtap support files
8eabd2
  install -dm 755 $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir $suffix}/tapset
8eabd2
  # note, that uniquesuffix  is in BUILD dir in this case
8eabd2
  cp -a $RPM_BUILD_DIR/%{uniquesuffix ""}/tapset$suffix/*.stp $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir $suffix}/tapset/
8eabd2
  pushd  $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir $suffix}/tapset/
8eabd2
   tapsetFiles=`ls *.stp`
8eabd2
  popd
8eabd2
  install -d -m 755 $RPM_BUILD_ROOT%{tapsetdir}
8eabd2
  for name in $tapsetFiles ; do
8eabd2
    targetName=`echo $name | sed "s/.stp/$suffix.stp/"`
8eabd2
    ln -sf %{_jvmdir}/%{sdkdir $suffix}/tapset/$name $RPM_BUILD_ROOT%{tapsetdir}/$targetName
8eabd2
  done
8eabd2
%endif
8eabd2
8eabd2
  # Remove empty cacerts database
8eabd2
  rm -f $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir $suffix}/lib/security/cacerts
8eabd2
  # Install cacerts symlink needed by some apps which hard-code the path
8eabd2
  pushd $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir $suffix}/lib/security
8eabd2
      ln -sf /etc/pki/java/cacerts .
8eabd2
  popd
8eabd2
8eabd2
  # Install version-ed symlinks
8eabd2
  pushd $RPM_BUILD_ROOT%{_jvmdir}
8eabd2
    ln -sf %{sdkdir $suffix} %{jrelnk $suffix}
8eabd2
  popd
8eabd2
8eabd2
8eabd2
  # Install man pages
8eabd2
  install -d -m 755 $RPM_BUILD_ROOT%{_mandir}/man1
8eabd2
  for manpage in man/man1/*
8eabd2
  do
8eabd2
    # Convert man pages to UTF8 encoding
8eabd2
    iconv -f ISO_8859-1 -t UTF8 $manpage -o $manpage.tmp
8eabd2
    mv -f $manpage.tmp $manpage
8eabd2
    install -m 644 -p $manpage $RPM_BUILD_ROOT%{_mandir}/man1/$(basename \
8eabd2
      $manpage .1)-%{uniquesuffix $suffix}.1
8eabd2
  done
8eabd2
  # Remove man pages from jdk image
8eabd2
  rm -rf $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir $suffix}/man
8eabd2
8eabd2
popd
8eabd2
8eabd2
8eabd2
# Install Javadoc documentation
8eabd2
# Always take docs from normal build to avoid building them twice
8eabd2
install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}
8eabd2
cp -a %{buildoutputdir $normal_suffix}/images/docs $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir $suffix}
8eabd2
cp -a %{buildoutputdir $normal_suffix}/bundles/jdk-%{newjavaver}%{ea_designator_zip}+%{buildver}%{lts_designator_zip}-docs.zip $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}.zip
8eabd2
8eabd2
# Install icons and menu entries
8eabd2
for s in 16 24 32 48 ; do
8eabd2
  install -D -p -m 644 \
8eabd2
    %{top_level_dir_name}/src/java.desktop/unix/classes/sun/awt/X11/java-icon${s}.png \
8eabd2
    $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps/java-%{javaver}-%{origin}.png
8eabd2
done
8eabd2
8eabd2
# Install desktop files
8eabd2
install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/{applications,pixmaps}
8eabd2
for e in jconsole$suffix ; do
8eabd2
    desktop-file-install --vendor=%{uniquesuffix $suffix} --mode=644 \
8eabd2
        --dir=$RPM_BUILD_ROOT%{_datadir}/applications $e.desktop
8eabd2
done
8eabd2
8eabd2
# Install /etc/.java/.systemPrefs/ directory
8eabd2
# See https://bugzilla.redhat.com/show_bug.cgi?id=741821
8eabd2
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/.java/.systemPrefs
8eabd2
8eabd2
# copy samples next to demos; samples are mostly js files
8eabd2
cp -r %{top_level_dir_name}/src/sample  $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir $suffix}/
8eabd2
8eabd2
8eabd2
# stabilize permissions
8eabd2
find $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir $suffix}/ -name "*.so" -exec chmod 755 {} \; ; 
8eabd2
find $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir $suffix}/ -type d -exec chmod 755 {} \; ; 
8eabd2
find $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir $suffix}/legal -type f -exec chmod 644 {} \; ; 
8eabd2
8eabd2
# end, dual install
8eabd2
done
8eabd2
8eabd2
%if %{include_normal_build}
8eabd2
# intentionally only for non-debug
8eabd2
%pretrans headless -p <lua>
8eabd2
-- see https://bugzilla.redhat.com/show_bug.cgi?id=1038092 for whole issue
8eabd2
-- see https://bugzilla.redhat.com/show_bug.cgi?id=1290388 for pretrans over pre
8eabd2
-- if copy-jdk-configs is in transaction, it installs in pretrans to temp
8eabd2
-- if copy_jdk_configs is in temp, then it means that copy-jdk-configs is in transaction  and so is
8eabd2
-- preferred over one in %%{_libexecdir}. If it is not in transaction, then depends
8eabd2
-- whether copy-jdk-configs is installed or not. If so, then configs are copied
8eabd2
-- (copy_jdk_configs from %%{_libexecdir} used) or not copied at all
8eabd2
local posix = require "posix"
8eabd2
local debug = false
8eabd2
8eabd2
SOURCE1 = "%{rpm_state_dir}/copy_jdk_configs.lua"
8eabd2
SOURCE2 = "%{_libexecdir}/copy_jdk_configs.lua"
8eabd2
8eabd2
local stat1 = posix.stat(SOURCE1, "type");
8eabd2
local stat2 = posix.stat(SOURCE2, "type");
8eabd2
8eabd2
  if (stat1 ~= nil) then
8eabd2
  if (debug) then
8eabd2
    print(SOURCE1 .." exists - copy-jdk-configs in transaction, using this one.")
8eabd2
  end;
8eabd2
  package.path = package.path .. ";" .. SOURCE1
8eabd2
else
8eabd2
  if (stat2 ~= nil) then
8eabd2
  if (debug) then
8eabd2
    print(SOURCE2 .." exists - copy-jdk-configs already installed and NOT in transaction. Using.")
8eabd2
  end;
8eabd2
  package.path = package.path .. ";" .. SOURCE2
8eabd2
  else
8eabd2
    if (debug) then
8eabd2
      print(SOURCE1 .." does NOT exists")
8eabd2
      print(SOURCE2 .." does NOT exists")
8eabd2
      print("No config files will be copied")
8eabd2
    end
8eabd2
  return
8eabd2
  end
8eabd2
end
8eabd2
-- run content of included file with fake args
8eabd2
arg = {"--currentjvm", "%{uniquesuffix %{nil}}", "--jvmdir", "%{_jvmdir %{nil}}", "--origname", "%{name}", "--origjavaver", "%{javaver}", "--arch", "%{_arch}", "--temp", "%{rpm_state_dir}/%{name}.%{_arch}"}
8eabd2
require "copy_jdk_configs.lua"
8eabd2
8eabd2
%post
8eabd2
%{post_script %{nil}}
8eabd2
8eabd2
%post headless
8eabd2
%{post_headless %{nil}}
8eabd2
8eabd2
%postun
8eabd2
%{postun_script %{nil}}
8eabd2
8eabd2
%postun headless
8eabd2
%{postun_headless %{nil}}
8eabd2
8eabd2
%posttrans
8eabd2
%{posttrans_script %{nil}}
8eabd2
8eabd2
%post devel
8eabd2
%{post_devel %{nil}}
8eabd2
8eabd2
%postun devel
8eabd2
%{postun_devel %{nil}}
8eabd2
8eabd2
%posttrans  devel
8eabd2
%{posttrans_devel %{nil}}
8eabd2
8eabd2
%post javadoc
8eabd2
%{post_javadoc %{nil}}
8eabd2
8eabd2
%postun javadoc
8eabd2
%{postun_javadoc %{nil}}
8eabd2
8eabd2
%post javadoc-zip
8eabd2
%{post_javadoc_zip %{nil}}
8eabd2
8eabd2
%postun javadoc-zip
8eabd2
%{postun_javadoc_zip %{nil}}
8eabd2
%endif
8eabd2
8eabd2
%if %{include_debug_build}
8eabd2
%post debug
8eabd2
%{post_script -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%post headless-debug
8eabd2
%{post_headless -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%postun debug
8eabd2
%{postun_script -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%postun headless-debug
8eabd2
%{postun_headless -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%posttrans debug
8eabd2
%{posttrans_script -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%post devel-debug
8eabd2
%{post_devel -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%postun devel-debug
8eabd2
%{postun_devel -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%posttrans  devel-debug
8eabd2
%{posttrans_devel -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%post javadoc-debug
8eabd2
%{post_javadoc -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%postun javadoc-debug
8eabd2
%{postun_javadoc -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%post javadoc-zip-debug
8eabd2
%{post_javadoc_zip -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%postun javadoc-zip-debug
8eabd2
%{postun_javadoc_zip -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%endif
8eabd2
8eabd2
%if %{include_normal_build}
8eabd2
%files
8eabd2
# main package builds always
8eabd2
%{files_jre %{nil}}
8eabd2
%else
8eabd2
%files
8eabd2
# placeholder
8eabd2
%endif
8eabd2
8eabd2
8eabd2
%if %{include_normal_build}
8eabd2
%files headless
8eabd2
# important note, see https://bugzilla.redhat.com/show_bug.cgi?id=1038092 for whole issue
8eabd2
# all config/noreplace files (and more) have to be declared in pretrans. See pretrans
8eabd2
%{files_jre_headless %{nil}}
8eabd2
8eabd2
%files devel
8eabd2
%{files_devel %{nil}}
8eabd2
8eabd2
%files jmods
8eabd2
%{files_jmods %{nil}}
8eabd2
8eabd2
%files demo
8eabd2
%{files_demo %{nil}}
8eabd2
8eabd2
%files src
8eabd2
%{files_src %{nil}}
8eabd2
8eabd2
%files javadoc
8eabd2
%{files_javadoc %{nil}}
8eabd2
8eabd2
# this puts huge file to /usr/share
8eabd2
# unluckily ti is really a documentation file
8eabd2
# and unluckily it really is architecture-dependent, as eg. aot and grail are now x86_64 only
8eabd2
# same for debug variant
8eabd2
%files javadoc-zip
8eabd2
%{files_javadoc_zip %{nil}}
8eabd2
%endif
8eabd2
8eabd2
%if %{include_debug_build}
8eabd2
%files debug
8eabd2
%{files_jre -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%files headless-debug
8eabd2
%{files_jre_headless -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%files devel-debug
8eabd2
%{files_devel -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%files jmods-debug
8eabd2
%{files_jmods -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%files demo-debug
8eabd2
%{files_demo -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%files src-debug
8eabd2
%{files_src -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%files javadoc-debug
8eabd2
%{files_javadoc -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%files javadoc-zip-debug
8eabd2
%{files_javadoc_zip -- %{debug_suffix_unquoted}}
8eabd2
8eabd2
%endif
8eabd2
8eabd2
%changelog
8eabd2
* Thu Sep 05 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.5.3-0.1.ea
8eabd2
- Use 'release' rather than 'rpmrelease' for the release variable so rpmdev-bumpspec works again.
8eabd2
- Resolves: rhbz#1737117
8eabd2
8eabd2
* Thu Sep 05 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.5.3-0.1.ea
8eabd2
- Update to shenandoah-jdk-11.0.5+3 (EA)
8eabd2
- Resolves: rhbz#1737117
8eabd2
8eabd2
* Tue Aug 27 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.5.2-0.2.ea
8eabd2
- Update generate_source_tarball.sh script to use the PR3751 patch and retain the secp256k1 curve.
8eabd2
- Regenerate source tarball using the updated script and add the -'4curve' suffix.
8eabd2
- PR3751 includes the changes in the PR1834/RH1022017 patch which is removed.
8eabd2
- Resolves: rhbz#1699068
8eabd2
8eabd2
* Sat Aug 24 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.5.2-0.1.ea
8eabd2
- Update to shenandoah-jdk-11.0.5+2 (EA)
8eabd2
- Resolves: rhbz#1737117
8eabd2
8eabd2
* Mon Aug 12 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.5.1-0.1.ea
8eabd2
- Update to shenandoah-jdk-11.0.5+1 (EA)
8eabd2
- Switch to EA mode for 11.0.5 pre-release builds.
8eabd2
- Resolves: rhbz#1737117
8eabd2
8eabd2
* Tue Jul 09 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.4.11-1
8eabd2
- Update to shenandoah-jdk-11.0.4+11 (GA)
8eabd2
- Switch to GA mode for final release.
8eabd2
- Resolves: rhbz#1724452
8eabd2
8eabd2
* Mon Jul 08 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.4.10-0.1.ea
8eabd2
- Update to shenandoah-jdk-11.0.4+10 (EA)
8eabd2
- Resolves: rhbz#1724452
8eabd2
8eabd2
* Mon Jul 08 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.4.9-0.1.ea
8eabd2
- Update to shenandoah-jdk-11.0.4+9 (EA)
8eabd2
- Resolves: rhbz#1724452
8eabd2
8eabd2
* Mon Jul 08 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.4.8-0.1.ea
8eabd2
- Update to shenandoah-jdk-11.0.4+8 (EA)
8eabd2
- Resolves: rhbz#1724452
8eabd2
8eabd2
* Sun Jul 07 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.4.7-0.1.ea
8eabd2
- Update to shenandoah-jdk-11.0.4+7 (EA)
8eabd2
- Resolves: rhbz#1724452
8eabd2
8eabd2
* Wed Jul 03 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.4.6-0.1.ea
8eabd2
- Provide Javadoc debug subpackages for now, but populate them from the normal build.
8eabd2
- Resolves: rhbz#1724452
8eabd2
8eabd2
* Wed Jul 03 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.4.6-0.1.ea
8eabd2
- Update to shenandoah-jdk-11.0.4+6 (EA)
8eabd2
- Resolves: rhbz#1724452
8eabd2
8eabd2
* Wed Jul 03 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.4.5-0.1.ea
8eabd2
- Update to shenandoah-jdk-11.0.4+5 (EA)
8eabd2
- Resolves: rhbz#1724452
8eabd2
8eabd2
* Tue Jul 02 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.4.4-0.1.ea
8eabd2
- Update to shenandoah-jdk-11.0.4+4 (EA)
8eabd2
- Resolves: rhbz#1724452
8eabd2
8eabd2
* Mon Jul 01 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.4.3-0.1.ea
8eabd2
- Update to shenandoah-jdk-11.0.4+3 (EA)
8eabd2
- Resolves: rhbz#1724452
8eabd2
8eabd2
* Sun Jun 30 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.4.2-0.1.ea
8eabd2
- Use RHEL 7 format for jspawnhelper addition.
8eabd2
- Resolves: rhbz#1724452
8eabd2
8eabd2
* Sun Jun 30 2019 Andrew John Hughes <gnu.andrew@redhat.com> - 1:11.0.4.2-0.1.ea
8eabd2
- Update to shenandoah-jdk-11.0.4+2 (EA)
8eabd2
- Resolves: rhbz#1724452
8eabd2
8eabd2
* Fri Jun 21 2019 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.4.2-0.1.ea
8eabd2
- Package jspawnhelper (see JDK-8220360).
8eabd2
- Resolves: rhbz#1724452
8eabd2
8eabd2
* Fri Jun 21 2019 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.3.7-3
8eabd2
- Include 'ea' designator in Release when appropriate.
8eabd2
- Resolves: rhbz#1724452
8eabd2
8eabd2
* Wed May 22 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.3.7-3
8eabd2
- Handle milestone as variables so we can alter it easily and set the docs zip filename appropriately.
8eabd2
- Resolves: rhbz#1724452
8eabd2
8eabd2
* Thu Apr 25 2019 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.3.7-2
8eabd2
- Don't build the test images needlessly.
8eabd2
- Don't produce javadoc/javadoc-zip sub packages for the debug variant build.
8eabd2
- Don't perform a bootcycle build for the debug variant build.
8eabd2
- Resolves: rhbz#1724452
8eabd2
8eabd2
* Thu Apr 04 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.3.7-1
8eabd2
- Update to shenandoah-jdk-11.0.3+7 (April 2019 GA)
8eabd2
- Resolves: rhbz#1693468
8eabd2
8eabd2
* Thu Apr 04 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.3.6-1
8eabd2
- Add -mstackrealign workaround to build flags to avoid SSE issues on x86
8eabd2
- Resolves: rhbz#1677516
8eabd2
8eabd2
* Thu Apr 04 2019 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.3.6-1
8eabd2
- Fix macro which doesn't expand.
8eabd2
- Related: rhbz#1684617
8eabd2
8eabd2
* Thu Apr 04 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.3.6-1
8eabd2
- Add cast to resolve s390 ambiguity in call to log2_intptr
8eabd2
- Resolves: rhbz#1677516
8eabd2
8eabd2
* Thu Apr 04 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.3.6-1
8eabd2
- Update to shenandoah-jdk-11.0.3+6 (April 2019 EA)
8eabd2
- Drop JDK-8210416/RH1632174 applied upstream.
8eabd2
- Drop JDK-8210425/RH1632174 applied upstream.
8eabd2
- Drop JDK-8210647/RH1632174 applied upstream.
8eabd2
- Drop JDK-8210761/RH1632174 applied upstream.
8eabd2
- Drop JDK-8210703/RH1632174 applied upstream.
8eabd2
- Resolves: rhbz#1677516
8eabd2
8eabd2
* Wed Apr 03 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.2.7-4
8eabd2
- Replace pcsc-lite-devel with pcsc-lite-libs so deps can be resolved without optional repository
8eabd2
- Add JDK-8009550/RH910107 patch so OpenJDK checks for libpcsclite.so.1 (in pcsc-lite-libs)
8eabd2
- Add missing ISA to cups-libs requirement
8eabd2
- Remove duplicate lksctp-tools requirement
8eabd2
- Resolves: rhbz#1684617
8eabd2
8eabd2
* Wed Apr 03 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.2.7-4
8eabd2
- Disable gdb check on s390 as it sporadically fails with SIGFPE
8eabd2
- Resolves: rhbz#1693468
8eabd2
8eabd2
* Tue Apr 02 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.2.7-3
8eabd2
- Drop NSS runtime dependencies and patches to link against it.
8eabd2
- Resolves: rhbz#1656677
8eabd2
8eabd2
* Thu Mar 21 2019 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.2.7-2
8eabd2
- Add patch for RH1566890
8eabd2
- Resolves: rhbz#1693468
8eabd2
8eabd2
* Tue Jan 15 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.2.7-1
8eabd2
- Update to shenandoah-jdk-11.0.2+7 (January 2019 CPU)
8eabd2
- Make tagsuffix optional and comment it out while unused.
8eabd2
- Drop JDK-8211105/RH1628612/RH1630996 applied upstream.
8eabd2
- Drop JDK-8209639/RH1640127 applied upstream.
8eabd2
- Re-generate JDK-8210416/RH1632174 following JDK-8209786
8eabd2
- Resolves: rhbz#1661577
8eabd2
8eabd2
* Mon Jan 14 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.1.13-8
8eabd2
- Fix remove-intree-libraries.sh to not exit early and skip SunEC handling.
8eabd2
- Fix PR1983 SunEC patch so that ecc_impl.h is patched rather than added
8eabd2
- Resolves: rhbz#1661577
8eabd2
8eabd2
* Fri Jan 11 2019 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.1.13-8
8eabd2
- Update to shenandoah-jdk-11.0.1+13-20190101
8eabd2
- Update tarball generation script in preparation for PR3681/RH1656677 SunEC changes.
8eabd2
- Use remove-intree-libraries.sh to remove the remaining SunEC code for now.
8eabd2
- Add missing RH1022017 patch to reduce curves reported by SSL to those we support.
8eabd2
- Drop upstream Shenandoah patch RH1648995.
8eabd2
- Resolves: rhbz#1661577
8eabd2
8eabd2
* Fri Dec 07 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.1.13-7
8eabd2
- Added %%global _find_debuginfo_opts -g
8eabd2
- Resolves: rhbz#1656997
8eabd2
8eabd2
* Mon Nov 12 2018 Jiri Vanek <jvanek@redhat.com> - 1:11.0.1.13-6
8eabd2
- fixed tck failures of arraycopy and process exec with shenandoah on
8eabd2
- added patch585 rh1648995-shenandoah_array_copy_broken_by_not_always_copy_forward_for_disjoint_arrays.patch
8eabd2
8eabd2
* Wed Nov 07 2018 Jiri Vanek <jvanek@redhat.com> - 1:11.0.1.13-5
8eabd2
- headless' suggests of cups, replaced by Requires of cups-libs
8eabd2
8eabd2
* Thu Nov 01 2018 Jiri Vanek <jvanek@redhat.com> - 1:11.0.1.13-3
8eabd2
- added Patch584 jdk8209639-rh1640127-02-coalesce_attempted_spill_non_spillable.patch
8eabd2
8eabd2
* Mon Oct 29 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.1.13-3
8eabd2
- Use upstream's version of Aarch64 intrinsics disable patch:
8eabd2
  - Removed:
8eabd2
    RHBZ-1628612-JDK-8210461-workaround-disable-aarch64-intrinsic.patch
8eabd2
    RHBZ-1630996-JDK-8210858-workaround-disable-aarch64-intrinsic-log.patch
8eabd2
  - Superceded by:
8eabd2
    jdk8211105-aarch64-disable_cos_sin_and_log_intrinsics.patch
8eabd2
8eabd2
* Thu Oct 18 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.1.13-2
8eabd2
- Use LTS designator in version output for RHEL.
8eabd2
8eabd2
* Thu Oct 18 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.1.13-1
8eabd2
- Update to October 2018 CPU release, 11.0.1+13.
8eabd2
8eabd2
* Wed Oct 17 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.0.28-2
8eabd2
- Use --with-vendor-version-string=18.9 so as to show original
8eabd2
  GA date for the JDK.
8eabd2
8eabd2
* Fri Sep 28 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.0.28-1
8eabd2
- Identify as GA version and no longer as early access (EA).
8eabd2
- JDK 11 has been released for GA on 2018-09-25.
8eabd2
8eabd2
* Fri Sep 28 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.ea.28-9
8eabd2
- Rework changes from 1:11.0.ea.22-6. RHBZ#1632174 supercedes
8eabd2
  RHBZ-1624122.
8eabd2
- Add patch, jdk8210416-rh1632174-compile_fdlibm_with_o2_ffp_contract_off_on_gcc_clang_arches.patch, so as to
8eabd2
  optimize compilation of fdlibm library.
8eabd2
- Add patch, jdk8210425-rh1632174-sharedRuntimeTrig_sharedRuntimeTrans_compiled_without_optimization.patch, so
8eabd2
  as to optimize compilation of sharedRuntime{Trig,Trans}.cpp
8eabd2
- Add patch, jdk8210647-rh1632174-libsaproc_is_being_compiled_without_optimization.patch, so as to
8eabd2
  optimize compilation of libsaproc (extra c flags won't override
8eabd2
  optimization).
8eabd2
- Add patch, jdk8210761-rh1632174-libjsig_is_being_compiled_without_optimization.patch, so as to
8eabd2
  optimize compilation of libjsig.
8eabd2
- Add patch, jdk8210703-rh1632174-vmStructs_cpp_no_longer_compiled_with_o0, so as to
8eabd2
  optimize compilation of vmStructs.cpp (part of libjvm.so).
8eabd2
- Reinstate filtering of opt flags coming from redhat-rpm-config.
8eabd2
8eabd2
* Thu Sep 27 2018 Jiri Vanek <jvanek@redhat.com> - 1:11.0.ea.28-8
8eabd2
- removed version less provides
8eabd2
- javadocdir moved to arched dir as it is no longer noarch
8eabd2
- Resolves: rhbz#1570856
8eabd2
8eabd2
* Thu Sep 20 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.ea.28-6
8eabd2
- Add patch, RHBZ-1630996-JDK-8210858-workaround-disable-aarch64-intrinsic-log.patch,
8eabd2
  so as to disable log math intrinsic on aarch64. Work-around for
8eabd2
  JDK-8210858
8eabd2
- Resolves: rhbz#1570856
8eabd2
8eabd2
* Thu Sep 13 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.ea.28-5
8eabd2
- Add patch, RHBZ-1628612-JDK-8210461-workaround-disable-aarch64-intrinsic.patch,
8eabd2
  so as to disable dsin/dcos math intrinsics on aarch64. Work-around for
8eabd2
  JDK-8210461.
8eabd2
- Resolves: rhbz#1570856
8eabd2
8eabd2
* Wed Sep 12 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.ea.22-6
8eabd2
- Add patch, JDK-8210416-RHBZ-1624122-fdlibm-opt-fix.patch, so as to
8eabd2
  optimize compilation of fdlibm library.
8eabd2
- Add patch, JDK-8210425-RHBZ-1624122-sharedRuntimeTrig-opt-fix.patch, so
8eabd2
  as to optimize compilation of sharedRuntime{Trig,Trans}.cpp
8eabd2
- Add patch, JDK-8210647-RHBZ-1624122-libsaproc-opt-fix.patch, so as to
8eabd2
  optimize compilation of libsaproc (extra c flags won't override
8eabd2
  optimization).
8eabd2
- Add patch, JDK-8210703-RHBZ-1624122-vmStructs-opt-fix.patch, so as to
8eabd2
  optimize compilation of vmStructs.cpp (part of libjvm.so).
8eabd2
- No longer filter -O flags from C flags coming from
8eabd2
  redhat-rpm-config.
8eabd2
- Resolves: RHBZ#1570856
8eabd2
8eabd2
* Mon Sep 10 2018 Jiri Vanek <jvanek@redhat.com> - 1:11.0.ea.28-4
8eabd2
- link to jhsdb followed its file to ifarch jit_arches ifnarch s390x
8eabd2
- Resolves: rhbz#1570856
8eabd2
8eabd2
* Fri Sep 7 2018 Jiri Vanek <jvanek@redhat.com> - 1:11.0.ea.28-4
8eabd2
- modified to build by itself
8eabd2
- Resolves: rhbz#1570856
8eabd2
8eabd2
* Fri Sep 7 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.ea.28-3
8eabd2
- Enable ZGC on x86_64.
8eabd2
- Resolves: RHBZ#1570856
8eabd2
8eabd2
* Wed Sep 5 2018 Jiri Vanek <jvanek@redhat.com> - 1:11.0.ea.28-2
8eabd2
- jfr/*jfc files listed for all arches
8eabd2
- lib/classlist do not exists s390, ifarch-ed via jit_arches out
8eabd2
- specfile slightly improved to allow srpm rebuild on rhel8/fedoras
8eabd2
- Resolves: rhbz#1570856
8eabd2
8eabd2
* Fri Aug 31 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.ea.28-1
8eabd2
- Update to latest upstream build jdk11+28, the first release
8eabd2
  candidate.
8eabd2
- Resolves: rhbz#1570856
8eabd2
8eabd2
* Wed Aug 29 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:11.0.ea.22-8
8eabd2
- Adjust system NSS patch, pr1983-rh1565658-support_using_the_system_installation_of_nss_with_the_sunec_provider_jdk11.patch, so
8eabd2
  as to filter -Wl,--as-needed from linker flags. Fixes FTBFS issue.
8eabd2
- Resolves: rhbz#1570856
8eabd2
8eabd2
* Tue Aug 28 2018 Jiri Vanek <jvanek@redhat.com> - 1:11.0.ea.22-6
8eabd2
- dissabled accessibility, fixed provides for main package's debug variant
8eabd2
- Resolves: RHBZ#1570856
8eabd2
8eabd2
* Mon Aug 27 2018 Jiri Vanek <jvanek@redhat.com> - 1:11.0.ea.22-8
8eabd2
- jfr/*jfc files listed for all arches
8eabd2
- Resolves: rhbz#1570856
8eabd2
8eabd2
* Mon Aug 27 2018 Jiri Vanek <jvanek@redhat.com> - 1:11.0.ea.22-7
8eabd2
- added space behind jmd slave
8eabd2
- Resolves: rhbz#1570856
8eabd2
8eabd2
* Mon Aug 27 2018 Jiri Vanek <jvanek@redhat.com> - 1:11.0.ea.22-6
8eabd2
- jfr/*jfc files listed also for ppc
8eabd2
- Resolves: rhbz#1570856
8eabd2
8eabd2
* Thu Aug 23 2018 Jiri Vanek <jvanek@redhat.com> - 1:11.0.ea.22-5
8eabd2
- Initial Load
8eabd2
- removed -fno-lifetime-dse; rhel7 gcc to old (4.8.5)
8eabd2
- lib/classlist do not exists s390, ifarch-ed via jit_arches out
8eabd2
- Resolves: rhbz#1570856