openjdk8: work around gnupatch latest feature of not following symlinks, even when --follow-symlinks is specified.

This commit is contained in:
Edward Tjörnhammar 2015-05-19 18:22:12 +02:00
parent 3e35ea305f
commit e697219d3d
2 changed files with 23 additions and 3 deletions

View File

@ -0,0 +1,15 @@
--- a/hotspot/src/os/linux/vm/os_linux.cpp 2015-02-04 21:14:39.000000000 +0100
+++ b/hotspot/src/os/linux/vm/os_linux.cpp 2015-05-19 16:17:29.960107613 +0200
@@ -2304,10 +2304,8 @@
assert(ret, "cannot locate libjvm");
char *rp = NULL;
if (ret && dli_fname[0] != '\0') {
- rp = realpath(dli_fname, buf);
+ snprintf(buf, buflen, "%s", dli_fname);
}
- if (rp == NULL)
- return;
if (Arguments::created_by_gamma_launcher()) {
// Support for the gamma launcher. Typical value for buf is

View File

@ -50,11 +50,16 @@ let
'';
prePatch = ''
# despite --with-override-jdk the build still searchs here
ln -s "../jdk-${repover}" "jdk";
ln -s "../hotspot-${repover}" "hotspot";
# GNU Patch bug, follow symlinks only follow the last symlink..
mv "../jdk-${repover}" "jdk";
mv "../hotspot-${repover}" "hotspot";
'';
postPatch = ''
mv jdk "../jdk-${repover}";
mv hotspot "../hotspot-${repover}";
'';
patches = [
./fix-java-home.patch
./fix-java-home-jdk8.patch
./read-truststore-from-env-jdk8.patch
./currency-date-range-jdk8.patch
];