RFR: 8244417: support static build for Windows

Johan Vos jvos at openjdk.java.net
Fri May 8 19:03:40 UTC 2020


On Thu, 7 May 2020 21:15:02 GMT, Joeri Sykora <sykora at openjdk.org> wrote:

> Adds support for building static libraries of the OpenJFX modules for the Windows platform. Building static libraries
> is done by providing the gradle property `-PSTATIC_BUILD=true`.
> Changes include:
> 
> - add static flags for the compiler and linker
> - use `lib` for linking instead of `link`
> - only build and include version.rc once (from GlassResources.rc)
> - include library specific `JNI_OnLoad_xxx` methods
> - functionality loaded via `DllMain` has been implemented at a different location

modules/javafx.graphics/src/main/native-prism-d3d/D3DPipeline.cc line 39:

> 38:
> 39: static jboolean checkAndClearException(JNIEnv *env) {
> 40:     if (!env->ExceptionCheck()) {

while this looks ok to me, I'm not sure why the old code had `extern` followed by the implementation. There might be
reasons I don't understand, and in that case it might be safer to #ifdef here with STATIC_BUILD. But maybe
@kevinrushforth  knows why this construct is here?

-------------

PR: https://git.openjdk.java.net/jfx/pull/214


More information about the openjfx-dev mailing list