RFR: JDK-8200229 Simplify building of libjsig (original) (raw)

Magnus Ihse Bursie magnus.ihse.bursie at oracle.com
Mon Mar 26 09:21:01 UTC 2018


Libjsig implements a wrapper library is supposed to be LD_PRELOADed by user code that wants to mix signals with calling the JVM.

It is a very simple library; it's just a single file. Nevertheless, it has historically been built in a somewhat quirky way. This is mostly due to how it was part of the Hotspot makefiles, were it was something of an odd bird.

There's no reason for any of this quirkiness. It can be built just like a normal JDK library, and it can be built by the java.base module, rather than hotspot. (After all, since the repo consolidation, the code already resides in java.base/.../libjsig).

The only "odd" thing that remains is that, due to backwards compatibility, we need to put symlinks in each hotspot variant directory, since user code might expect to find the library there.

Previously, we also symlinked to the debuginfo files, but there's really no reason to do that, it just complicates the makefile.

Note that there is a conflict with JDK-8200178 (remove mapfiles for jdk libs), wherein the mapfile for libjsig was not removed. Depending on which of these patches gets pushed first, I need to respin the second one. (JDK-8200178 is currently on hold for running the huge java.desktop test suite.)

Bug: https://bugs.openjdk.java.net/browse/JDK-8200229 WebRev: http://cr.openjdk.java.net/~ihse/JDK-8200229-simplify-building-of-libjsig/webrev.01

/Magnus



More information about the build-dev mailing list