[jdk8u-ri] RFR: 8284907: Compact profiles build fails with GNU make 4
Erik Joelsson
erikj at openjdk.java.net
Fri Apr 15 14:06:14 UTC 2022
The compact profiles jar creation logic relies on what seems to be undefined behavior in GNU make. Pattern rules are unreliable when the file names contain '$'. The specific construct used in CreateJars.gmk works with GNU make 3.81, but fails with version 4 or higher.
This was originally fixed in 8u60 in [JDK-8067857](https://bugs.openjdk.java.net/browse/JDK-8067857). That change is quite big and not something we want to backport to 8u42. However, since then, GNU make 4 and higher have become quite common on Linux too, and not just in Cygwin where I believe this problem was first encountered. Because of this, I would like to extract just the fix for this, exactly as it was done in [JDK-8067857](https://bugs.openjdk.java.net/browse/JDK-8067857). Here is the original change:
https://github.com/openjdk/jdk8u-dev/commit/17421c860a6e71e14b0023e686b87c35b2049f69#diff-e580e7e55e76622c538ae8a1b55af984b3e12bba099e493582fff2925b9ae02aR314-R322
-------------
Commit messages:
- Fix for newer make from JDK-8038189: Add cross-platform compact profiles support
Changes: https://git.openjdk.java.net/jdk8u-ri/pull/2/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk8u-ri&pr=2&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8284907
Stats: 9 lines in 1 file changed: 9 ins; 0 del; 0 mod
Patch: https://git.openjdk.java.net/jdk8u-ri/pull/2.diff
Fetch: git fetch https://git.openjdk.java.net/jdk8u-ri pull/2/head:pull/2
PR: https://git.openjdk.java.net/jdk8u-ri/pull/2
More information about the jdk8u-dev
mailing list