diff --git a/.gitignore b/.gitignore
index 955cdba..c9b50f8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,2 @@
-SOURCES/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b09-4curve.tar.xz
-SOURCES/tapsets-icedtea-3.11.0.tar.xz
+SOURCES/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u262-b10-4curve.tar.xz
+SOURCES/tapsets-icedtea-3.15.0.tar.xz
diff --git a/.java-1.8.0-openjdk.metadata b/.java-1.8.0-openjdk.metadata
index ac29869..c12c6b7 100644
--- a/.java-1.8.0-openjdk.metadata
+++ b/.java-1.8.0-openjdk.metadata
@@ -1,2 +1,2 @@
-9417f1f9fa52d6882a0ffe26c00a478d8bb6465d SOURCES/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u252-b09-4curve.tar.xz
-50ad90759d440f24f50990b88b5814e4f61351af SOURCES/tapsets-icedtea-3.11.0.tar.xz
+3445c176e0e387f519e43febd79895e9ed7ba74d SOURCES/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u262-b10-4curve.tar.xz
+7ae2cba67467825b2c2a5fec7aea041865023002 SOURCES/tapsets-icedtea-3.15.0.tar.xz
diff --git a/SOURCES/NEWS b/SOURCES/NEWS
index 59f5724..b1298ec 100644
--- a/SOURCES/NEWS
+++ b/SOURCES/NEWS
@@ -3,6 +3,285 @@ Key:
JDK-X - https://bugs.openjdk.java.net/browse/JDK-X
CVE-XXXX-YYYY: https://cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY
+New in release OpenJDK 8u262 (2020-07-14):
+===========================================
+Live versions of these release notes can be found at:
+ * https://bitly.com/oj8u262
+ * https://builds.shipilev.net/backports-monitor/release-notes-openjdk8u262.txt
+
+* New features
+ - JDK-8223147: JFR Backport
+* Security fixes
+ - JDK-8028431, CVE-2020-14579: NullPointerException in DerValue.equals(DerValue)
+ - JDK-8028591, CVE-2020-14578: NegativeArraySizeException in sun.security.util.DerInputStream.getUnalignedBitString()
+ - JDK-8230613: Better ASCII conversions
+ - JDK-8231800: Better listing of arrays
+ - JDK-8232014: Expand DTD support
+ - JDK-8233255: Better Swing Buttons
+ - JDK-8234032: Improve basic calendar services
+ - JDK-8234042: Better factory production of certificates
+ - JDK-8234418: Better parsing with CertificateFactory
+ - JDK-8234836: Improve serialization handling
+ - JDK-8236191: Enhance OID processing
+ - JDK-8237117, CVE-2020-14556: Better ForkJoinPool behavior
+ - JDK-8237592, CVE-2020-14577: Enhance certificate verification
+ - JDK-8238002, CVE-2020-14581: Better matrix operations
+ - JDK-8238804: Enhance key handling process
+ - JDK-8238842: AIOOBE in GIFImageReader.initializeStringTable
+ - JDK-8238843: Enhanced font handing
+ - JDK-8238920, CVE-2020-14583: Better Buffer support
+ - JDK-8238925: Enhance WAV file playback
+ - JDK-8240119, CVE-2020-14593: Less Affine Transformations
+ - JDK-8240482: Improved WAV file playback
+ - JDK-8241379: Update JCEKS support
+ - JDK-8241522: Manifest improved jar headers redux
+ - JDK-8242136, CVE-2020-14621: Better XML namespace handling
+* Other changes
+ - JDK-4949105: Access Bridge lacks html tags parsing
+ - JDK-7147060: com/sun/org/apache/xml/internal/security/transforms/ClassLoaderTest.java doesn't run in agentvm mode
+ - JDK-8003209: JFR events for network utilization
+ - JDK-8030680: 292 cleanup from default method code assessment
+ - JDK-8035633: TEST_BUG: java/net/NetworkInterface/Equals.java and some tests failed on windows intermittently
+ - JDK-8037866: Replace the Fun class in tests with lambdas
+ - JDK-8041626: Shutdown tracing event
+ - JDK-8041915: Move 8 awt tests to OpenJDK regression tests tree
+ - JDK-8067796: (process) Process.waitFor(timeout, unit) doesn't throw NPE if timeout is less than, or equal to zero when unit == null
+ - JDK-8076475: Misuses of strncpy/strncat
+ - JDK-8130737: AffineTransformOp can't handle child raster with non-zero x-offset
+ - JDK-8141056: Erroneous assignment in HeapRegionSet.cpp
+ - JDK-8146612: C2: Precedence edges specification violated
+ - JDK-8148886: SEGV in sun.java2d.marlin.Renderer._endRendering
+ - JDK-8149338: JVM Crash caused by Marlin renderer not handling NaN coordinates
+ - JDK-8150986: serviceability/sa/jmap-hprof/JMapHProfLargeHeapTest.java failing because expects HPROF JAVA PROFILE 1.0.1 file format
+ - JDK-8151582: (ch) test java/nio/channels/AsyncCloseAndInterrupt.java failing due to "Connection succeeded"
+ - JDK-8165675: Trace event for thread park has incorrect unit for timeout
+ - JDK-8171934: ObjectSizeCalculator.getEffectiveMemoryLayoutSpecification() does not recognize OpenJDK's HotSpot VM
+ - JDK-8172559: [PIT][TEST_BUG] Move @test to be 1st annotation in java/awt/image/Raster/TestChildRasterOp.java
+ - JDK-8176182: 4 security tests are not run
+ - JDK-8178374: Problematic ByteBuffer handling in CipherSpi.bufferCrypt method
+ - JDK-8178910: Problemlist sample tests
+ - JDK-8181841: A TSA server returns timestamp with precision higher than milliseconds
+ - JDK-8183925: Decouple crash protection from watcher thread
+ - JDK-8191393: Random crashes during cfree+0x1c
+ - JDK-8195817: JFR.stop should require name of recording
+ - JDK-8195818: JFR.start should increase autogenerated name by one
+ - JDK-8195819: Remove recording=x from jcmd JFR.check output
+ - JDK-8196969: JTreg Failure: serviceability/sa/ClhsdbJstack.java causes NPE
+ - JDK-8197441: Signature#initSign/initVerify for an invalid private/public key fails with ClassCastException for SunPKCS11 provider
+ - JDK-8199712: Flight Recorder
+ - JDK-8202578: Revisit location for class unload events
+ - JDK-8202835: jfr/event/os/TestSystemProcess.java fails on missing events
+ - JDK-8203287: Zero fails to build after JDK-8199712 (Flight Recorder)
+ - JDK-8203346: JFR: Inconsistent signature of jfr_add_string_constant
+ - JDK-8203664: JFR start failure after AppCDS archive created with JFR StartFlightRecording
+ - JDK-8203921: JFR thread sampling is missing fixes from JDK-8194552
+ - JDK-8203929: Limit amount of data for JFR.dump
+ - JDK-8204152: SignedObject throws NullPointerException for null keys with an initialized Signature object
+ - JDK-8205516: JFR tool
+ - JDK-8207392: [PPC64] Implement JFR profiling
+ - JDK-8207829: FlightRecorderMXBeanImpl is leaking the first classloader which calls it
+ - JDK-8209960: -Xlog:jfr* doesn't work with the JFR
+ - JDK-8210024: JFR calls virtual is_Java_thread from ~Thread()
+ - JDK-8210776: Upgrade X Window System 6.8.2 to the latest XWD 1.0.7
+ - JDK-8211239: Build fails without JFR: empty JFR events signatures mismatch
+ - JDK-8212232: Wrong metadata for the configuration of the cutoff for old object sample events
+ - JDK-8213015: Inconsistent settings between JFR.configure and -XX:FlightRecorderOptions
+ - JDK-8213421: Line number information for execution samples always 0
+ - JDK-8213617: JFR should record the PID of the recorded process
+ - JDK-8213734: SAXParser.parse(File, ..) does not close resources when Exception occurs.
+ - JDK-8213914: [TESTBUG] Several JFR VM events are not covered by tests
+ - JDK-8213917: [TESTBUG] Shutdown JFR event is not covered by test
+ - JDK-8213966: The ZGC JFR events should be marked as experimental
+ - JDK-8214542: JFR: Old Object Sample event slow on a deep heap in debug builds
+ - JDK-8214750: Unnecessary
tags in jfr classes
+ - JDK-8214896: JFR Tool left files behind
+ - JDK-8214906: [TESTBUG] jfr/event/sampling/TestNative.java fails with UnsatisfiedLinkError
+ - JDK-8214925: JFR tool fails to execute
+ - JDK-8215175: Inconsistencies in JFR event metadata
+ - JDK-8215237: jdk.jfr.Recording javadoc does not compile
+ - JDK-8215284: Reduce noise induced by periodic task getFileSize()
+ - JDK-8215355: Object monitor deadlock with no threads holding the monitor (using jemalloc 5.1)
+ - JDK-8215362: JFR GTest JfrTestNetworkUtilization fails
+ - JDK-8215771: The jfr tool should pretty print reference chains
+ - JDK-8216064: -XX:StartFlightRecording:settings= doesn't work properly
+ - JDK-8216486: Possibility of integer overflow in JfrThreadSampler::run()
+ - JDK-8216528: test/jdk/java/rmi/transport/runtimeThreadInheritanceLeak/RuntimeThreadInheritanceLeak.java failing with Xcomp
+ - JDK-8216559: [JFR] Native libraries not correctly parsed from /proc/self/maps
+ - JDK-8216578: Remove unused/obsolete method in JFR code
+ - JDK-8216995: Clean up JFR command line processing
+ - JDK-8217744: [TESTBUG] JFR TestShutdownEvent fails on some systems due to process surviving SIGINT
+ - JDK-8217748: [TESTBUG] Exclude TestSig test case from JFR TestShutdownEvent
+ - JDK-8218935: Make jfr strncpy uses GCC 8.x friendly
+ - JDK-8219597: (bf) Heap buffer state changes could provoke unexpected exceptions
+ - JDK-8220293: Deadlock in JFR string pool
+ - JDK-8223689: Add JFR Thread Sampling Support
+ - JDK-8223690: Add JFR BiasedLock Event Support
+ - JDK-8223691: Add JFR G1 Region Type Change Event Support
+ - JDK-8223692: Add JFR G1 Heap Summary Event Support
+ - JDK-8223898: Forward references to Nashorn
+ - JDK-8223904: Improve Nashorn matching
+ - JDK-8224172: assert(jfr_is_event_enabled(id)) failed: invariant
+ - JDK-8224475: JTextPane does not show images in HTML rendering
+ - JDK-8224541: Better mapping of serial ENUMs
+ - JDK-8224549: Less Blocking Array Queues
+ - JDK-8225068: Remove DocuSign root certificate that is expiring in May 2020
+ - JDK-8225069: Remove Comodo root certificate that is expiring in May 2020
+ - JDK-8225130: Add exception for expiring Comodo roots to VerifyCACerts test
+ - JDK-8225603: Enhancement for big integers
+ - JDK-8226253: JAWS reports wrong number of radio buttons when buttons are hidden.
+ - JDK-8226779: [TESTBUG] Test JFR API from Java agent
+ - JDK-8226892: ActionListeners on JRadioButtons don't get notified when selection is changed with arrow keys
+ - JDK-8227011: Starting a JFR recording in response to JVMTI VMInit and / or Java agent premain corrupts memory
+ - JDK-8227269: Slow class loading when running with JDWP
+ - JDK-8227542: Manifest improved jar headers
+ - JDK-8227605: Kitchensink fails "assert((((klass)->trace_id() & (JfrTraceIdEpoch::leakp_in_use_this_epoch_bit())) != 0)) failed: invariant"
+ - JDK-8229366: JFR backport allows unchecked writing to memory
+ - JDK-8229401: Fix JFR code cache test failures
+ - JDK-8229708: JFR backport code does not initialize
+ - JDK-8229873: 8229401 broke jdk8u-jfr-incubator
+ - JDK-8229888: (zipfs) Updating an existing zip file does not preserve original permissions
+ - JDK-8229899: Make java.io.File.isInvalid() less racy
+ - JDK-8230235: Rendering HTML with empty img attribute and documentBaseKey cause Exception
+ - JDK-8230448: [test] JFRSecurityTestSuite.java is failing on Windows
+ - JDK-8230597: Update GIFlib library to the 5.2.1
+ - JDK-8230707: JFR related tests are failing
+ - JDK-8230769: BufImg_SetupICM add ReleasePrimitiveArrayCritical call in early return
+ - JDK-8230782: Robot.createScreenCapture() fails if ?awt.robot.gtk? is set to false
+ - JDK-8230856: Java_java_net_NetworkInterface_getByName0 on unix misses ReleaseStringUTFChars in early return
+ - JDK-8230926: [macosx] Two apostrophes are entered instead of one with "U.S. International - PC" layout
+ - JDK-8230947: TestLookForUntestedEvents.java is failing after JDK-8230707
+ - JDK-8231415: Better signatures in XML
+ - JDK-8231995: two jtreg tests failed after 8229366 is fixed
+ - JDK-8233197: Invert JvmtiExport::post_vm_initialized() and Jfr:on_vm_start() start-up order for correct option parsing
+ - JDK-8233250: Better X11 rendering
+ - JDK-8233410: Better Build Scripting
+ - JDK-8233623: Add classpath exception to copyright in EventHandlerProxyCreator.java file
+ - JDK-8233880: Support compilers with multi-digit major version numbers
+ - JDK-8234027: Better JCEKS key support
+ - JDK-8234408: Improve TLS session handling
+ - JDK-8234825: Better Headings for HTTP Servers
+ - JDK-8234841: Enhance buffering of byte buffers
+ - JDK-8235274: Enhance typing of methods
+ - JDK-8235744: PIT: test/jdk/javax/swing/text/html/TestJLabelWithHTMLText.java times out in linux-x64
+ - JDK-8236002: CSR for JFR backport suggests not leaving out the package-info
+ - JDK-8236008: Some backup files were accidentally left in the hotspot tree
+ - JDK-8236074: Missed package-info
+ - JDK-8236174: Should update javadoc since tags
+ - JDK-8236201: Better Scanner conversions
+ - JDK-8236996: Incorrect Roboto font rendering on Windows with subpixel antialiasing
+ - JDK-8238076: Fix OpenJDK 7 Bootstrap Broken by JFR Backport
+ - JDK-8238452: Keytool generates wrong expiration date if validity is set to 2050/01/01
+ - JDK-8238555: Allow Initialization of SunPKCS11 with NSS when there are external FIPS modules in the NSSDB
+ - JDK-8238589: Necessary code cleanup in JFR for JDK8u
+ - JDK-8238590: Enable JFR by default during compilation in 8u
+ - JDK-8238960: linux-i586 builds are inconsistent as the newly build jdk is not able to reserve enough space for object heap
+ - JDK-8239055: Wrong implementation of VMState.hasListener
+ - JDK-8239476: JDK-8238589 broke windows build by moving OrderedPair
+ - JDK-8239479: minimal1 and zero builds are failing
+ - JDK-8239852: java/util/concurrent tests fail with -XX:+VerifyGraphEdges: assert(!VerifyGraphEdges) failed: verification should have failed
+ - JDK-8239867: correct over use of INCLUDE_JFR macro
+ - JDK-8240375: Disable JFR by default for July 2020 release
+ - JDK-8240521: Revert backport of 8231584: Deadlock with ClassLoader.findLibrary and System.loadLibrary call
+ - JDK-8240576: JVM crashes after transformation in C2 IdealLoopTree::merge_many_backedges
+ - JDK-8241296: Segfault in JNIHandleBlock::oops_do()
+ - JDK-8241307: Marlin renderer should not be the default in 8u252
+ - JDK-8241444: Metaspace::_class_vsm not initialized if compressed class pointers are disabled
+ - JDK-8241638: launcher time metrics always report 1 on Linux when _JAVA_LAUNCHER_DEBUG set
+ - JDK-8241750: x86_32 build failure after JDK-8227269
+ - JDK-8241902: AIX Build broken after integration of JDK-8223147 (JFR Backport)
+ - JDK-8242788: Non-PCH build is broken after JDK-8191393
+ - JDK-8242883: Incomplete backport of JDK-8078268: backport test part
+ - JDK-8243059: Build fails when --with-vendor-name contains a comma
+ - JDK-8243474: [TESTBUG] removed three tests of 0 bytes
+ - JDK-8243539: Copyright info (Year) should be updated for fix of 8241638
+ - JDK-8243541: (tz) Upgrade time-zone data to tzdata2020a
+ - JDK-8244407: JVM crashes after transformation in C2 IdealLoopTree::split_fall_in
+ - JDK-8244461: [JDK 8u] Build fails with glibc 2.32
+ - JDK-8244548: JDK 8u: sun.misc.Version.jdkUpdateVersion() returns wrong result
+ - JDK-8244777: ClassLoaderStats VM Op uses constant hash value
+ - JDK-8244843: JapanEraNameCompatTest fails
+ - JDK-8245167: Top package in method profiling shows null in JMC
+ - JDK-8246223: Windows build fails after JDK-8227269
+ - JDK-8246703: [TESTBUG] Add test for JDK-8233197
+ - JDK-8248399: Build installs jfr binary when JFR is disabled
+ - JDK-8248715: New JavaTimeSupplementary localisation for 'in' installed in wrong package
+
+Notes on individual issues:
+===========================
+
+hotspot/jfr:
+
+JDK-8240687: JDK Flight Recorder Integrated to OpenJDK 8u
+=========================================================
+
+OpenJDK 8u now contains the backport of JEP 328: Flight Recorder
+(https://openjdk.java.net/jeps/328) from later versions of OpenJDK.
+
+JFR is a low-overhead framework to collect and provide data helpful to
+troubleshoot the performance of the OpenJDK runtime and of Java
+applications. It consists of a new API to define custom events under
+the jdk.jfr namespace and a JMX interface to interact with the
+framework. The recording can also be initiated with the application
+startup using the -XX:+FlightRecorder flag or via jcmd. JFR replaces
+the +XX:EnableTracing feature introduced in JEP 167, providing a more
+efficient way to retrieve the same information. For compatibility
+reasons, +XX:EnableTracing is still accepted, however no data will be
+printed.
+
+While JFR is not built by default upstream, it is included in Red Hat
+binaries for supported architectures (x86_64, AArch64 & PowerPC 64)
+
+hotspot/runtime:
+
+JDK-8205622: JFR Start Failure After AppCDS Archive Created with JFR StartFlightRecording
+=========================================================================================
+
+JFR will be disabled with a warning message if it is enabled during
+CDS dumping. The user will see the following warning message:
+
+OpenJDK 64-Bit Server VM warning: JFR will be disabled during CDS dumping
+
+if JFR is enabled during CDS dumping such as in the following command
+line:
+
+$ java -Xshare:dump -XX:StartFlightRecording=dumponexit=true
+
+security-libs/java.security:
+
+JDK-8244167: Removal of Comodo Root CA Certificate
+==================================================
+
+The following expired Comodo root CA certificate was removed from the
+`cacerts` keystore: + alias name "addtrustclass1ca [jdk]"
+
+Distinguished Name: CN=AddTrust Class 1 CA Root, OU=AddTrust TTP Network, O=AddTrust AB, C=SE
+
+JDK-8244166: Removal of DocuSign Root CA Certificate
+====================================================
+
+The following expired DocuSign root CA certificate was removed from
+ the `cacerts` keystore: + alias name "keynectisrootca [jdk]"
+
+Distinguished Name: CN=KEYNECTIS ROOT CA, OU=ROOT, O=KEYNECTIS, C=FR
+
+security-libs/javax.crypto:pkcs11:
+
+JDK-8240191: Allow SunPKCS11 initialization with NSS when external FIPS modules are present in the Security Modules Database
+============================================================================================================================
+
+The SunPKCS11 security provider can now be initialized with NSS when
+FIPS-enabled external modules are configured in the Security Modules
+Database (NSSDB). Prior to this change, the SunPKCS11 provider would
+throw a RuntimeException with the message: "FIPS flag set for
+non-internal module" when such a library was configured for NSS in
+non-FIPS mode.
+
+This change allows the JDK to work properly with recent NSS releases
+on GNU/Linux operating systems when the system-wide FIPS policy is
+turned on.
+
+Further information can be found in JDK-8238555.
+
New in release OpenJDK 8u252 (2020-04-14):
===========================================
Live versions of these release notes can be found at:
diff --git a/SOURCES/jconsole.desktop.in b/SOURCES/jconsole.desktop.in
index b88bd7c..8a3b04d 100644
--- a/SOURCES/jconsole.desktop.in
+++ b/SOURCES/jconsole.desktop.in
@@ -1,7 +1,7 @@
[Desktop Entry]
-Name=OpenJDK @OPENJDK_VER@ for @target_cpu@ Monitoring & Management Console
+Name=OpenJDK @JAVA_VER@ for @target_cpu@ Monitoring & Management Console (@OPENJDK_VER@)
Comment=Monitor and manage OpenJDK applications
-Exec=_BINDIR_/jconsole
+Exec=_SDKBINDIR_/jconsole
Icon=java-@JAVA_VER@-@JAVA_VENDOR@
Terminal=false
Type=Application
diff --git a/SOURCES/jdk8042159-allow_using_system_installed_lcms2-jdk.patch b/SOURCES/jdk8042159-allow_using_system_installed_lcms2-jdk.patch
new file mode 100644
index 0000000..ebfbdd2
--- /dev/null
+++ b/SOURCES/jdk8042159-allow_using_system_installed_lcms2-jdk.patch
@@ -0,0 +1,68 @@
+diff --git openjdk.orig/jdk/make/lib/Awt2dLibraries.gmk openjdk/jdk/make/lib/Awt2dLibraries.gmk
+--- openjdk.orig/jdk/make/lib/Awt2dLibraries.gmk
++++ openjdk/jdk/make/lib/Awt2dLibraries.gmk
+@@ -665,18 +665,35 @@
+ endif
+ endif
+
++LIBLCMS_DIR := $(JDK_TOPDIR)/src/share/native/sun/java2d/cmm/lcms
++
++ifeq ($(USE_EXTERNAL_LCMS), true)
++ # If we're using an external library, we'll just need the wrapper part.
++ # By including it explicitely, all other files will be excluded.
++ BUILD_LIBLCMS_INCLUDE_FILES := LCMS.c
++ BUILD_LIBLCMS_HEADERS :=
++else
++ BUILD_LIBLCMS_INCLUDE_FILES :=
++ # If we're using the bundled library, we'll need to include it in the
++ # include path explicitly. Otherwise the system headers will be used.
++ BUILD_LIBLCMS_HEADERS := -I$(LIBLCMS_DIR)
++endif
++
+ # TODO: Update awt lib path when awt is converted
+ $(eval $(call SetupNativeCompilation,BUILD_LIBLCMS, \
+ LIBRARY := lcms, \
+ OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
+- SRC := $(JDK_TOPDIR)/src/share/native/sun/java2d/cmm/lcms, \
++ SRC := $(LIBLCMS_DIR), \
++ INCLUDE_FILES := $(BUILD_LIBLCMS_INCLUDE_FILES), \
+ LANG := C, \
+ OPTIMIZATION := HIGHEST, \
+ CFLAGS := $(filter-out -xc99=%none, $(CFLAGS_JDKLIB)) \
+ -DCMS_DONT_USE_FAST_FLOOR \
+ $(SHARED_LIBRARY_FLAGS) \
+ -I$(JDK_TOPDIR)/src/share/native/sun/java2d \
+- -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug, \
++ -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \
++ $(BUILD_LIBLCMS_HEADERS) \
++ $(LCMS_CFLAGS), \
+ CFLAGS_solaris := -xc99=no_lib, \
+ CFLAGS_windows := -DCMS_IS_WINDOWS_, \
+ MAPFILE := $(JDK_TOPDIR)/make/mapfiles/liblcms/mapfile-vers, \
+@@ -684,10 +701,10 @@
+ $(call SET_SHARED_LIBRARY_ORIGIN), \
+ LDFLAGS_solaris := /usr/lib$(OPENJDK_TARGET_CPU_ISADIR)/libm.so.2, \
+ LDFLAGS_windows := $(WIN_AWT_LIB) $(WIN_JAVA_LIB), \
+- LDFLAGS_SUFFIX_solaris := -lawt -ljava -ljvm -lc, \
+- LDFLAGS_SUFFIX_macosx := $(LIBM) -lawt -ljava -ljvm, \
+- LDFLAGS_SUFFIX_linux := -lm -lawt -ljava -ljvm, \
+- LDFLAGS_SUFFIX_aix := -lm -lawt -ljava -ljvm,\
++ LDFLAGS_SUFFIX_solaris := -lawt -ljava -ljvm -lc $(LCMS_LIBS), \
++ LDFLAGS_SUFFIX_macosx := $(LIBM) -lawt -ljava -ljvm $(LCMS_LIBS), \
++ LDFLAGS_SUFFIX_linux := -lm -lawt -ljava -ljvm $(LCMS_LIBS), \
++ LDFLAGS_SUFFIX_aix := -lm -lawt -ljava -ljvm $(LCMS_LIBS),\
+ VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \
+ RC_FLAGS := $(RC_FLAGS) \
+ -D "JDK_FNAME=lcms.dll" \
+diff --git openjdk.orig/jdk/src/share/native/sun/java2d/cmm/lcms/LCMS.c openjdk/jdk/src/share/native/sun/java2d/cmm/lcms/LCMS.c
+--- openjdk.orig/jdk/src/share/native/sun/java2d/cmm/lcms/LCMS.c
++++ openjdk/jdk/src/share/native/sun/java2d/cmm/lcms/LCMS.c
+@@ -30,7 +30,7 @@
+ #include "jni_util.h"
+ #include "Trace.h"
+ #include "Disposer.h"
+-#include "lcms2.h"
++#include
+ #include "jlong.h"
+
+
diff --git a/SOURCES/jdk8042159-allow_using_system_installed_lcms2-root.patch b/SOURCES/jdk8042159-allow_using_system_installed_lcms2-root.patch
new file mode 100644
index 0000000..7ce90b1
--- /dev/null
+++ b/SOURCES/jdk8042159-allow_using_system_installed_lcms2-root.patch
@@ -0,0 +1,50 @@
+diff -ruN openjdk/common/autoconf/libraries.m4 openjdk/common/autoconf/libraries.m4
+--- openjdk/common/autoconf/libraries.m4 2013-11-14 22:04:38.039440136 -0500
++++ openjdk/common/autoconf/libraries.m4 2013-11-14 22:05:11.474356424 -0500
+@@ -676,6 +676,46 @@
+
+ ###############################################################################
+ #
++ # Check for the lcms2 library
++ #
++
++ AC_ARG_WITH(lcms, [AS_HELP_STRING([--with-lcms],
++ [use lcms2 from build system or OpenJDK source (system, bundled) @<:@bundled@:>@])])
++
++ AC_CHECK_LIB(lcms2, cmsOpenProfileFromFile,
++ [ LCMS_FOUND=yes ],
++ [ LCMS_FOUND=no ])
++
++ AC_MSG_CHECKING([for which lcms to use])
++
++ DEFAULT_LCMS=bundled
++
++ #
++ # If user didn't specify, use DEFAULT_LCMS
++ #
++ if test "x${with_lcms}" = "x"; then
++ with_lcms=${DEFAULT_LCMS}
++ fi
++
++ if test "x${with_lcms}" = "xbundled"; then
++ USE_EXTERNAL_LCMS=false
++ AC_MSG_RESULT([bundled])
++ elif test "x${with_lcms}" = "xsystem"; then
++ if test "x${LCMS_FOUND}" = "xyes"; then
++ USE_EXTERNAL_LCMS=true
++ AC_MSG_RESULT([system])
++ else
++ AC_MSG_RESULT([system not found])
++ AC_MSG_ERROR([--with-lcms=system specified, but no lcms found!])
++ fi
++ else
++ AC_MSG_ERROR([Invalid value for --with-lcms: ${with_lcms}, use 'system' or 'bundled'])
++ fi
++
++ AC_SUBST(USE_EXTERNAL_LCMS)
++
++ ###############################################################################
++ #
+ # Check for the png library
+ #
+
diff --git a/SOURCES/jdk8042159-allow_using_system_installed_lcms2.patch b/SOURCES/jdk8042159-allow_using_system_installed_lcms2.patch
deleted file mode 100644
index 6f39b57..0000000
--- a/SOURCES/jdk8042159-allow_using_system_installed_lcms2.patch
+++ /dev/null
@@ -1,118 +0,0 @@
-diff -ruN jdk8/common/autoconf/libraries.m4 jdk8/common/autoconf/libraries.m4
---- openjdk/common/autoconf/libraries.m4 2013-11-14 22:04:38.039440136 -0500
-+++ openjdk/common/autoconf/libraries.m4 2013-11-14 22:05:11.474356424 -0500
-@@ -676,6 +676,46 @@
-
- ###############################################################################
- #
-+ # Check for the lcms2 library
-+ #
-+
-+ AC_ARG_WITH(lcms, [AS_HELP_STRING([--with-lcms],
-+ [use lcms2 from build system or OpenJDK source (system, bundled) @<:@bundled@:>@])])
-+
-+ AC_CHECK_LIB(lcms2, cmsOpenProfileFromFile,
-+ [ LCMS_FOUND=yes ],
-+ [ LCMS_FOUND=no ])
-+
-+ AC_MSG_CHECKING([for which lcms to use])
-+
-+ DEFAULT_LCMS=bundled
-+
-+ #
-+ # If user didn't specify, use DEFAULT_LCMS
-+ #
-+ if test "x${with_lcms}" = "x"; then
-+ with_lcms=${DEFAULT_LCMS}
-+ fi
-+
-+ if test "x${with_lcms}" = "xbundled"; then
-+ USE_EXTERNAL_LCMS=false
-+ AC_MSG_RESULT([bundled])
-+ elif test "x${with_lcms}" = "xsystem"; then
-+ if test "x${LCMS_FOUND}" = "xyes"; then
-+ USE_EXTERNAL_LCMS=true
-+ AC_MSG_RESULT([system])
-+ else
-+ AC_MSG_RESULT([system not found])
-+ AC_MSG_ERROR([--with-lcms=system specified, but no lcms found!])
-+ fi
-+ else
-+ AC_MSG_ERROR([Invalid value for --with-lcms: ${with_lcms}, use 'system' or 'bundled'])
-+ fi
-+
-+ AC_SUBST(USE_EXTERNAL_LCMS)
-+
-+ ###############################################################################
-+ #
- # Check for the png library
- #
-
-diff -ruN jdk8/jdk/make/lib/Awt2dLibraries.gmk jdk8/jdk/make/lib/Awt2dLibraries.gmk
---- openjdk/jdk/make/lib/Awt2dLibraries.gmk 2013-11-14 22:04:38.040440133 -0500
-+++ openjdk/jdk/make/lib/Awt2dLibraries.gmk 2013-11-14 22:05:11.475356411 -0500
-@@ -666,18 +666,35 @@
-
- ##########################################################################################
-
-+LIBLCMS_DIR := $(JDK_TOPDIR)/src/share/native/sun/java2d/cmm/lcms
-+
-+ifeq ($(USE_EXTERNAL_LCMS), true)
-+ # If we're using an external library, we'll just need the wrapper part.
-+ # By including it explicitely, all other files will be excluded.
-+ BUILD_LIBLCMS_INCLUDE_FILES := LCMS.c
-+ BUILD_LIBLCMS_HEADERS :=
-+else
-+ BUILD_LIBLCMS_INCLUDE_FILES :=
-+ # If we're using the bundled library, we'll need to include it in the
-+ # include path explicitly. Otherwise the system headers will be used.
-+ BUILD_LIBLCMS_HEADERS := -I$(LIBLCMS_DIR)
-+endif
-+
- # TODO: Update awt lib path when awt is converted
- $(eval $(call SetupNativeCompilation,BUILD_LIBLCMS, \
- LIBRARY := lcms, \
- OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
-- SRC := $(JDK_TOPDIR)/src/share/native/sun/java2d/cmm/lcms, \
-+ SRC := $(LIBLCMS_DIR), \
-+ INCLUDE_FILES := $(BUILD_LIBLCMS_INCLUDE_FILES), \
- LANG := C, \
- OPTIMIZATION := HIGHEST, \
- CFLAGS := $(filter-out -xc99=%none, $(CFLAGS_JDKLIB)) \
- -DCMS_DONT_USE_FAST_FLOOR \
- $(SHARED_LIBRARY_FLAGS) \
- -I$(JDK_TOPDIR)/src/share/native/sun/java2d \
-- -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug, \
-+ -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \
-+ $(BUILD_LIBLCMS_HEADERS) \
-+ $(LCMS_CFLAGS), \
- CFLAGS_solaris := -xc99=no_lib, \
- CFLAGS_windows := -DCMS_IS_WINDOWS_, \
- MAPFILE := $(JDK_TOPDIR)/make/mapfiles/liblcms/mapfile-vers, \
-@@ -685,10 +702,10 @@
- $(call SET_SHARED_LIBRARY_ORIGIN), \
- LDFLAGS_solaris := /usr/lib$(OPENJDK_TARGET_CPU_ISADIR)/libm.so.2, \
- LDFLAGS_windows := $(WIN_AWT_LIB) $(WIN_JAVA_LIB), \
-- LDFLAGS_SUFFIX_solaris := -lawt -ljava -ljvm -lc, \
-- LDFLAGS_SUFFIX_macosx := $(LIBM) -lawt -ljava -ljvm, \
-- LDFLAGS_SUFFIX_linux := -lm -lawt -ljava -ljvm, \
-- LDFLAGS_SUFFIX_aix := -lm -lawt -ljava -ljvm,\
-+ LDFLAGS_SUFFIX_solaris := -lawt -ljava -ljvm -lc $(LCMS_LIBS), \
-+ LDFLAGS_SUFFIX_macosx := $(LIBM) -lawt -ljava -ljvm $(LCMS_LIBS), \
-+ LDFLAGS_SUFFIX_linux := -lm -lawt -ljava -ljvm $(LCMS_LIBS), \
-+ LDFLAGS_SUFFIX_aix := -lm -lawt -ljava -ljvm $(LCMS_LIBS),\
- VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \
- RC_FLAGS := $(RC_FLAGS) \
- -D "JDK_FNAME=lcms.dll" \
-diff -r 3d1c3b0b73a3 src/share/native/sun/java2d/cmm/lcms/LCMS.c
---- openjdk/jdk/src/share/native/sun/java2d/cmm/lcms/LCMS.c Tue Sep 08 22:31:26 2015 +0300
-+++ openjdk/jdk/src/share/native/sun/java2d/cmm/lcms/LCMS.c Thu Oct 15 05:29:28 2015 +0100
-@@ -30,7 +30,7 @@
- #include "jni_util.h"
- #include "Trace.h"
- #include "Disposer.h"
--#include "lcms2.h"
-+#include
- #include "jlong.h"
-
-
diff --git a/SOURCES/jdk8143245-pr3548-zero_build_requires_disabled_warnings.patch b/SOURCES/jdk8143245-pr3548-zero_build_requires_disabled_warnings.patch
index 298bbd3..98d3903 100644
--- a/SOURCES/jdk8143245-pr3548-zero_build_requires_disabled_warnings.patch
+++ b/SOURCES/jdk8143245-pr3548-zero_build_requires_disabled_warnings.patch
@@ -145,4 +145,4 @@ diff --git openjdk.orig/hotspot/src/os_cpu/linux_zero/vm/thread_linux_zero.hpp o
+ return false; // silence compile warning
}
- // These routines are only used on cpu architectures that
+ bool pd_get_top_frame_for_profiling(frame* fr_addr,
diff --git a/SOURCES/policytool.desktop.in b/SOURCES/policytool.desktop.in
index 112a24f..5f4cb4a 100644
--- a/SOURCES/policytool.desktop.in
+++ b/SOURCES/policytool.desktop.in
@@ -1,5 +1,5 @@
[Desktop Entry]
-Name=OpenJDK @OPENJDK_VER@ for @target_cpu@ Policy Tool
+Name=OpenJDK @JAVA_VER@ for @target_cpu@ Policy Tool (@OPENJDK_VER@)
Comment=Manage OpenJDK policy files
Exec=_JREBINDIR_/policytool
Icon=java-@JAVA_VER@-@JAVA_VENDOR@
diff --git a/SOURCES/rh1648644-java_access_bridge_privileged_security.patch b/SOURCES/rh1648644-java_access_bridge_privileged_security.patch
index 538468a..28060ed 100644
--- a/SOURCES/rh1648644-java_access_bridge_privileged_security.patch
+++ b/SOURCES/rh1648644-java_access_bridge_privileged_security.patch
@@ -1,22 +1,23 @@
---- jdk8/jdk/src/share/lib/security/java.security-linux.orig
-+++ jdk8/jdk/src/share/lib/security/java.security-linux
-@@ -223,7 +223,9 @@
- jdk.nashorn.internal.,\
- jdk.nashorn.tools.,\
- jdk.xml.internal.,\
-- com.sun.activation.registries.
-+ com.sun.activation.registries.,\
+diff --git openjdk.orig/jdk/src/share/lib/security/java.security-linux openjdk/jdk/src/share/lib/security/java.security-linux
+--- openjdk.orig/jdk/src/share/lib/security/java.security-linux
++++ openjdk/jdk/src/share/lib/security/java.security-linux
+@@ -226,7 +226,9 @@
+ com.sun.activation.registries.,\
+ jdk.jfr.events.,\
+ jdk.jfr.internal.,\
+- jdk.management.jfr.internal.
++ jdk.management.jfr.internal.,\
+ org.GNOME.Accessibility.,\
+ org.GNOME.Bonobo.
#
# List of comma-separated packages that start with or equal this string
-@@ -273,7 +275,9 @@
- jdk.nashorn.internal.,\
- jdk.nashorn.tools.,\
- jdk.xml.internal.,\
-- com.sun.activation.registries.
-+ com.sun.activation.registries.,\
+@@ -279,7 +281,9 @@
+ com.sun.activation.registries.,\
+ jdk.jfr.events.,\
+ jdk.jfr.internal.,\
+- jdk.management.jfr.internal.
++ jdk.management.jfr.internal.,\
+ org.GNOME.Accessibility.,\
+ org.GNOME.Bonobo.
diff --git a/SPECS/java-1.8.0-openjdk.spec b/SPECS/java-1.8.0-openjdk.spec
index ceec3b9..9bbf5a3 100644
--- a/SPECS/java-1.8.0-openjdk.spec
+++ b/SPECS/java-1.8.0-openjdk.spec
@@ -31,6 +31,7 @@
%global ppc64be ppc64 ppc64p7
%global multilib_arches %{power64} sparc64 x86_64
%global jit_arches %{ix86} x86_64 sparcv9 sparc64 %{aarch64} %{power64}
+%global jfr_arches x86_64 sparcv9 sparc64 %{aarch64} %{power64}
# By default, we build a debug build during main build on JIT architectures
%ifarch %{jit_arches}
@@ -103,7 +104,7 @@
# In some cases, the arch used by the JDK does
# not match _arch.
# Also, in some cases, the machine name used by SystemTap
-# does not match that given by _build_cpu
+# does not match that given by _target_cpu
%ifarch x86_64
%global archinstall amd64
%global stapinstall x86_64
@@ -147,15 +148,17 @@
# 32 bit sparc, optimized for v9
%ifarch sparcv9
%global archinstall sparc
-%global stapinstall %{_build_cpu}
+%global stapinstall %{_target_cpu}
%endif
# 64 bit sparc
%ifarch sparc64
%global archinstall sparcv9
-%global stapinstall %{_build_cpu}
+%global stapinstall %{_target_cpu}
%endif
-%ifnarch %{jit_arches}
-%global archinstall %{_arch}
+# Need to support noarch for srpm build
+%ifarch noarch
+%global archinstall %{nil}
+%global stapinstall %{nil}
%endif
%ifarch %{jit_arches}
@@ -180,13 +183,13 @@
# note, following three variables are sedded from update_sources if used correctly. Hardcode them rather there.
%global shenandoah_project aarch64-port
%global shenandoah_repo jdk8u-shenandoah
-%global shenandoah_revision aarch64-shenandoah-jdk8u252-b09
+%global shenandoah_revision aarch64-shenandoah-jdk8u262-b10
# Define old aarch64/jdk8u tree variables for compatibility
%global project %{shenandoah_project}
%global repo %{shenandoah_repo}
%global revision %{shenandoah_revision}
# Define IcedTea version used for SystemTap tapsets and desktop files
-%global icedteaver 3.11.0
+%global icedteaver 3.15.0
# e.g. aarch64-shenandoah-jdk8u212-b04-shenandoah-merge-2019-04-30 -> aarch64-shenandoah-jdk8u212-b04
%global version_tag %(VERSION=%{revision}; echo ${VERSION%%-shenandoah-merge*})
@@ -196,7 +199,7 @@
%global updatever %(VERSION=%{whole_update}; echo ${VERSION##*u})
# eg jdk8u60-b27 -> b27
%global buildver %(VERSION=%{version_tag}; echo ${VERSION##*-})
-%global rpmrelease 2
+%global rpmrelease 0
# Define milestone (EA for pre-releases, GA ("fcs") for releases)
# Release will be (where N is usually a number starting at 1):
# - 0.N%%{?extraver}%%{?dist} for EA releases,
@@ -238,6 +241,7 @@
%global sdkbindir() %{expand:%{_jvmdir}/%{sdkdir %%1}/bin}
%global jrebindir() %{expand:%{_jvmdir}/%{jredir %%1}/bin}
%global jvmjardir() %{expand:%{_jvmjardir}/%{uniquesuffix %%1}}
+%global alt_java_name alt-java
%global rpm_state_dir %{_localstatedir}/lib/rpm-state/
@@ -249,9 +253,10 @@
# and 32 bit architectures we place the tapsets under the arch
# specific dir (note that systemtap will only pickup the tapset
# for the primary arch for now). Systemtap uses the machine name
-# aka build_cpu as architecture specific directory name.
+# aka target_cpu as architecture specific directory name.
%global tapsetroot /usr/share/systemtap
-%global tapsetdir %{tapsetroot}/tapset/%{stapinstall}
+%global tapsetdirttapset %{tapsetroot}/tapset/
+%global tapsetdir %{tapsetdirttapset}/%{stapinstall}
%endif
# not-duplicated scriptlets for normal/debug packages
@@ -284,6 +289,7 @@ alternatives \\
--install %{_bindir}/java java %{jrebindir %%1}/java $PRIORITY --family %{name}.%{_arch} \\
--slave %{_jvmdir}/jre jre %{_jvmdir}/%{jredir %%1} \\
--slave %{_jvmjardir}/jre jre_exports %{_jvmjardir}/%{jrelnk %%1} \\
+ --slave %{_bindir}/%{alt_java_name} %{alt_java_name} %{jrebindir %%1}/%{alt_java_name} \\
--slave %{_bindir}/jjs jjs %{jrebindir %%1}/jjs \\
--slave %{_bindir}/keytool keytool %{jrebindir %%1}/keytool \\
--slave %{_bindir}/orbd orbd %{jrebindir %%1}/orbd \\
@@ -296,6 +302,8 @@ alternatives \\
--slave %{_bindir}/unpack200 unpack200 %{jrebindir %%1}/unpack200 \\
--slave %{_mandir}/man1/java.1$ext java.1$ext \\
%{_mandir}/man1/java-%{uniquesuffix %%1}.1$ext \\
+ --slave %{_mandir}/man1/%{alt_java_name}.1$ext %{alt_java_name}.1$ext \\
+ %{_mandir}/man1/%{alt_java_name}-%{uniquesuffix %%1}.1$ext \\
--slave %{_mandir}/man1/jjs.1$ext jjs.1$ext \\
%{_mandir}/man1/jjs-%{uniquesuffix %%1}.1$ext \\
--slave %{_mandir}/man1/keytool.1$ext keytool.1$ext \\
@@ -376,7 +384,9 @@ alternatives \\
--slave %{_jvmdir}/java java_sdk %{_jvmdir}/%{sdkdir %%1} \\
--slave %{_jvmjardir}/java java_sdk_exports %{_jvmjardir}/%{sdkdir %%1} \\
--slave %{_bindir}/appletviewer appletviewer %{sdkbindir %%1}/appletviewer \\
+ --slave %{_bindir}/clhsdb clhsdb %{sdkbindir %%1}/clhsdb \\
--slave %{_bindir}/extcheck extcheck %{sdkbindir %%1}/extcheck \\
+ --slave %{_bindir}/hsdb hsdb %{sdkbindir %%1}/hsdb \\
--slave %{_bindir}/idlj idlj %{sdkbindir %%1}/idlj \\
--slave %{_bindir}/jar jar %{sdkbindir %%1}/jar \\
--slave %{_bindir}/jarsigner jarsigner %{sdkbindir %%1}/jarsigner \\
@@ -387,6 +397,9 @@ alternatives \\
--slave %{_bindir}/jconsole jconsole %{sdkbindir %%1}/jconsole \\
--slave %{_bindir}/jdb jdb %{sdkbindir %%1}/jdb \\
--slave %{_bindir}/jdeps jdeps %{sdkbindir %%1}/jdeps \\
+%ifarch %{jfr_arches}
+ --slave %{_bindir}/jfr jfr %{sdkbindir %%1}/jfr \\
+%endif
--slave %{_bindir}/jhat jhat %{sdkbindir %%1}/jhat \\
--slave %{_bindir}/jinfo jinfo %{sdkbindir %%1}/jinfo \\
--slave %{_bindir}/jmap jmap %{sdkbindir %%1}/jmap \\
@@ -566,6 +579,7 @@ exit 0
%config(noreplace) %{_jvmdir}/%{jredir %%1}/lib/logging.properties
%config(noreplace) %{_jvmdir}/%{jredir %%1}/lib/net.properties
%{_mandir}/man1/java-%{uniquesuffix %%1}.1*
+%{_mandir}/man1/%{alt_java_name}-%{uniquesuffix %%1}.1*
%{_mandir}/man1/jjs-%{uniquesuffix %%1}.1*
%{_mandir}/man1/keytool-%{uniquesuffix %%1}.1*
%{_mandir}/man1/orbd-%{uniquesuffix %%1}.1*
@@ -704,7 +718,8 @@ Requires: ca-certificates
# Require jpackage-utils for ownership of /usr/lib/jvm/
Requires: jpackage-utils
# Require zoneinfo data provided by tzdata-java subpackage.
-Requires: tzdata-java >= 2015d
+# 2020a required as of JDK-8243541
+Requires: tzdata-java >= 2020a
# libsctp.so.1 is being `dlopen`ed on demand
Requires: lksctp-tools%{?_isa}
# tool to copy jdk's configs - should be Recommends only, but then only dnf/yum enforce it,
@@ -1000,7 +1015,8 @@ Patch102: jdk8203030-zero_s390_31_bit_size_t_type_conflicts_in_shared_code.patch
# 8035341: Allow using a system installed libpng
Patch202: jdk8035341-allow_using_system_installed_libpng.patch
# 8042159: Allow using a system-installed lcms2
-Patch203: jdk8042159-allow_using_system_installed_lcms2.patch
+Patch203: jdk8042159-allow_using_system_installed_lcms2-root.patch
+Patch204: jdk8042159-allow_using_system_installed_lcms2-jdk.patch
#############################################
#
@@ -1076,14 +1092,6 @@ BuildRequires: pkgconfig
BuildRequires: xorg-x11-proto-devel
BuildRequires: zip
BuildRequires: unzip
-%ifarch %{arm}
-BuildRequires: devtoolset-7-build
-BuildRequires: devtoolset-7-binutils
-BuildRequires: devtoolset-7-gcc
-BuildRequires: devtoolset-7-gcc-c++
-BuildRequires: devtoolset-7-gdb
-%endif
-
# Use OpenJDK 7 where available (on RHEL) to avoid
# having to use the rhel-7.x-java-unsafe-candidate hack
%if ! 0%{?fedora} && 0%{?rhel} <= 7
@@ -1096,7 +1104,8 @@ BuildRequires: java-1.8.0-openjdk-devel
%ifnarch %{jit_arches}
BuildRequires: libffi-devel
%endif
-BuildRequires: tzdata-java >= 2015d
+# 2020a required as of JDK-8243541
+BuildRequires: tzdata-java >= 2020a
# Earlier versions have a bug in tree vectorization on PPC
BuildRequires: gcc >= 4.8.3-8
@@ -1295,6 +1304,14 @@ See normal java-%{version}-openjdk-accessibility description.
%endif
%prep
+
+# Using the echo macro breaks rpmdev-bumpspec, as it parses the first line of stdout :-(
+%if 0%{?stapinstall:1}
+ echo "CPU: %{_target_cpu}, arch install directory: %{archinstall}, SystemTap install directory: %{stapinstall}"
+%else
+ %{error:Unrecognised architecture %{_target_cpu}}
+%endif
+
if [ %{include_normal_build} -eq 0 -o %{include_normal_build} -eq 1 ] ; then
echo "include_normal_build is %{include_normal_build}"
else
@@ -1347,6 +1364,7 @@ sh %{SOURCE12}
%patch201
%patch202
%patch203
+%patch204
%patch1
%patch3
@@ -1424,7 +1442,7 @@ for file in %{SOURCE9} %{SOURCE10} ; do
EXT="${FILE##*.}"
NAME="${FILE%.*}"
OUTPUT_FILE=$NAME$suffix.$EXT
- sed -e "s:_BINDIR_:%{sdkbindir -- $suffix}:g" $file > $OUTPUT_FILE
+ sed -e "s:_SDKBINDIR_:%{sdkbindir -- $suffix}:g" $file > $OUTPUT_FILE
sed -i -e "s:_JREBINDIR_:%{jrebindir -- $suffix}:g" $OUTPUT_FILE
sed -i -e "s:@target_cpu@:%{_arch}:g" $OUTPUT_FILE
sed -i -e "s:@OPENJDK_VER@:%{version}-%{release}$suffix:g" $OUTPUT_FILE
@@ -1438,10 +1456,6 @@ sed -e "s:@NSS_LIBDIR@:%{NSS_LIBDIR}:g" %{SOURCE11} > nss.cfg
%build
-%ifarch %{arm}
-%{?enable_devtoolset7:%{enable_devtoolset7}}
-%endif
-
# How many CPU's do we have?
export NUM_PROC=%(/usr/bin/getconf _NPROCESSORS_ONLN 2> /dev/null || :)
export NUM_PROC=${NUM_PROC:-1}
@@ -1465,9 +1479,6 @@ EXTRA_CPP_FLAGS="%ourcppflags"
# fix rpmlint warnings
EXTRA_CFLAGS="$EXTRA_CFLAGS -fno-strict-aliasing"
%endif
-%ifarch %{arm}
-EXTRA_CFLAGS="$EXTRA_CFLAGS -Wno-nonnull"
-%endif
EXTRA_ASFLAGS="${EXTRA_CFLAGS}"
export EXTRA_CFLAGS EXTRA_ASFLAGS
@@ -1489,6 +1500,9 @@ mkdir -p %{buildoutputdir $suffix}
pushd %{buildoutputdir $suffix}
bash ../../configure \
+%ifarch %{jfr_arches}
+ --enable-jfr \
+%endif
%ifnarch %{jit_arches}
--with-jvm-variants=zero \
%endif
@@ -1552,6 +1566,15 @@ install -m 644 nss.cfg $JAVA_HOME/jre/lib/security/
rm $JAVA_HOME/jre/lib/tzdb.dat
ln -s %{_datadir}/javazi-1.8/tzdb.dat $JAVA_HOME/jre/lib/tzdb.dat
+# Create fake alt-java as a placeholder for future alt-java
+pushd ${JAVA_HOME}
+cp -a jre/bin/java jre/bin/%{alt_java_name}
+cp -a bin/java bin/%{alt_java_name}
+# add alt-java man page
+echo "Hardened java binary recommended for launching untrusted code from the Web e.g. javaws" > man/man1/%{alt_java_name}.1
+cat man/man1/java.1 >> man/man1/%{alt_java_name}.1
+popd
+
# build cycles
done
@@ -2060,6 +2083,94 @@ require "copy_jdk_configs.lua"
%endif
%changelog
+* Sun Jul 12 2020 Andrew Hughes - 1:1.8.0.262.b10-0
+- Update to aarch64-shenandoah-jdk8u262-b10.
+- Switch to GA mode for final release.
+- Update release notes for 8u262 release.
+- Fix typo in jfr_arches which leads to ppc64 being wrongly excluded.
+- Split JDK-8042159 patch into per-repo patches as upstream.
+- Update JDK-8042159 JDK patch to apply after JDK-8238002 changes to Awt2dLibraries.gmk
+- Resolves: rhbz#1838811
+
+* Sun Jul 12 2020 Andrew Hughes - 1:1.8.0.262.b09-0.1.ea
+- Update to aarch64-shenandoah-jdk8u262-b09-shenandoah-merge-2020-07-03
+- Resolves: rhbz#1838811
+
+* Sat Jul 11 2020 Andrew Hughes - 1:1.8.0.262.b09-0.0.ea
+- Update to aarch64-shenandoah-jdk8u262-b09.
+- With JDK-8248399 fixed, a broken jfr binary is no longer installed on architectures without JFR.
+- Resolves: rhbz#1838811
+
+* Sat Jul 11 2020 Andrew Hughes - 1:1.8.0.262.b08-0.0.ea
+- Update to aarch64-shenandoah-jdk8u262-b08.
+- Resolves: rhbz#1838811
+
+* Sat Jul 11 2020 Andrew Hughes - 1:1.8.0.262.b07-0.2.ea
+- Update to aarch64-shenandoah-jdk8u262-b07-shenandoah-merge-2020-06-18.
+- Resolves: rhbz#1838811
+
+* Sat Jul 11 2020 Andrew Hughes - 1:1.8.0.262.b07-0.1.ea
+- Sync alt-java support with java-11-openjdk version.
+- Resolves: rhbz#1838811
+
+* Sat Jul 11 2020 Jiri Vanek - 1:1.8.0.262.b07-0.1.ea
+- Created copy of java as alt-java and adapted alternatives and man pages
+- Resolves: rhbz#1838811
+
+* Fri Jul 10 2020 Andrew Hughes - 1:1.8.0.262.b07-0.0.ea
+- Update to aarch64-shenandoah-jdk8u262-b07.
+- Require tzdata 2020a so system tzdata matches resource updates in b07
+- Resolves: rhbz#1838811
+
+* Thu Jul 09 2020 Andrew Hughes - 1:1.8.0.262.b06-0.1.ea
+- Sync SystemTap & desktop files with upstream IcedTea release 3.15.0, removing previous workarounds
+- Sync stapinstall handling with RHEL 8 implementation
+- Need to support noarch for creating source RPMs for non-scratch builds.
+- Resolves: rhbz#1838811
+
+* Wed Jul 08 2020 Andrew Hughes - 1:1.8.0.262.b06-0.0.ea
+- Update to aarch64-shenandoah-jdk8u262-b06.
+- Resolves: rhbz#1838811
+
+* Fri Jul 03 2020 Andrew Hughes - 1:1.8.0.262.b05-0.1.ea
+- Update to aarch64-shenandoah-jdk8u262-b05-shenandoah-merge-2020-06-04.
+- Resolves: rhbz#1838811
+
+* Thu Jul 02 2020 Andrew Hughes - 1:1.8.0.262.b05-0.0.ea
+- Update to aarch64-shenandoah-jdk8u262-b05.
+- Resolves: rhbz#1838811
+
+* Tue Jun 30 2020 Andrew Hughes - 1:1.8.0.262.b04-0.0.ea
+- Update to aarch64-shenandoah-jdk8u262-b04.
+- Resolves: rhbz#1838811
+
+* Mon Jun 29 2020 Andrew Hughes - 1:1.8.0.262.b03-0.1.ea
+- Update to aarch64-shenandoah-jdk8u262-b03-shenandoah-merge-2020-05-20.
+- Resolves: rhbz#1838811
+
+* Sat Jun 27 2020 Andrew Hughes - 1:1.8.0.262.b03-0.0.ea
+- Update to aarch64-shenandoah-jdk8u262-b03.
+- Resolves: rhbz#1838811
+
+* Mon Jun 22 2020 Andrew Hughes - 1:1.8.0.262.b02-0.1.ea
+- Enable JFR in our builds, ahead of upstream default.
+- Only enable JFR for JIT builds, as it is not supported with Zero.
+- Turn off JFR on x86 for now due to assert(SerializePageShiftCount == count) crash.
+- Introduce jfr_arches for architectures which support JFR.
+- Resolves: rhbz#1838811
+
+* Wed Jun 03 2020 Andrew Hughes - 1:1.8.0.262.b02-0.0.ea
+- Update to aarch64-shenandoah-jdk8u262-b02.
+- Resolves: rhbz#1838811
+
+* Sun May 24 2020 Andrew Hughes - 1:1.8.0.262.b01-0.0.ea
+- Update to aarch64-shenandoah-jdk8u262-b01.
+- Switch to EA mode.
+- Adjust JDK-8143245/PR3548 patch following context changes due to JDK-8203287 for JFR
+- Adjust RH1648644 following context changes due to introduction of JFR packages
+- Add recently added binaries to alternatives set (clhsdb, hsdb, jfr)
+- Resolves: rhbz#1838811
+
* Tue Apr 14 2020 Andrew Hughes - 1:1.8.0.252.b09-2
- Add release notes.
- Mark license files with appropriate macro.