8136556: Add the ability to perform static builds of MacOSX x64 binaries
Reviewed-by: ihse, bdelsart, gadams, lfoltan, rriggs, hseigel, twisti
This commit is contained in:
parent
780e19cb1e
commit
3dc2d02585
@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
# Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
@ -45,8 +45,16 @@ endif
|
||||
#
|
||||
# Import hotspot
|
||||
#
|
||||
|
||||
# Don't import jsig library for static builds
|
||||
ifneq ($(STATIC_BUILD), true)
|
||||
JSIG_IMPORT = jsig.*
|
||||
else
|
||||
JSIG_IMPORT =
|
||||
endif
|
||||
|
||||
HOTSPOT_BASE_IMPORT_FILES := \
|
||||
$(addprefix $(LIBRARY_PREFIX), jvm.* jsig.* jvm_db.* jvm_dtrace.*) \
|
||||
$(addprefix $(LIBRARY_PREFIX), jvm.* $(JSIG_IMPORT) jvm_db.* jvm_dtrace.*) \
|
||||
Xusage.txt \
|
||||
#
|
||||
|
||||
@ -79,32 +87,34 @@ SA_TARGETS := $(COPY_HOTSPOT_SA)
|
||||
|
||||
################################################################################
|
||||
|
||||
ifeq ($(OPENJDK_TARGET_OS), macosx)
|
||||
JSIG_DEBUGINFO := $(strip $(wildcard $(HOTSPOT_DIST)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjsig$(SHARED_LIBRARY_SUFFIX).dSYM) \
|
||||
$(wildcard $(HOTSPOT_DIST)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjsig.diz) )
|
||||
else
|
||||
JSIG_DEBUGINFO := $(strip $(wildcard $(HOTSPOT_DIST)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjsig.debuginfo) \
|
||||
$(wildcard $(HOTSPOT_DIST)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjsig.diz) )
|
||||
endif
|
||||
ifneq ($(STATIC_BUILD), true)
|
||||
ifeq ($(OPENJDK_TARGET_OS), macosx)
|
||||
JSIG_DEBUGINFO := $(strip $(wildcard $(HOTSPOT_DIST)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjsig$(SHARED_LIBRARY_SUFFIX).dSYM) \
|
||||
$(wildcard $(HOTSPOT_DIST)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjsig.diz) )
|
||||
else
|
||||
JSIG_DEBUGINFO := $(strip $(wildcard $(HOTSPOT_DIST)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjsig.debuginfo) \
|
||||
$(wildcard $(HOTSPOT_DIST)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjsig.diz) )
|
||||
endif
|
||||
|
||||
ifneq ($(OPENJDK_TARGET_OS), windows)
|
||||
ifeq ($(JVM_VARIANT_SERVER), true)
|
||||
BASE_TARGETS += $(BASE_INSTALL_LIBRARIES_HERE)/server/$(LIBRARY_PREFIX)jsig$(SHARED_LIBRARY_SUFFIX)
|
||||
ifneq (, $(JSIG_DEBUGINFO))
|
||||
BASE_TARGETS += $(BASE_INSTALL_LIBRARIES_HERE)/server/$(foreach I,$(JSIG_DEBUGINFO),$(notdir $I))
|
||||
ifneq ($(OPENJDK_TARGET_OS), windows)
|
||||
ifeq ($(JVM_VARIANT_SERVER), true)
|
||||
BASE_TARGETS += $(BASE_INSTALL_LIBRARIES_HERE)/server/$(LIBRARY_PREFIX)jsig$(SHARED_LIBRARY_SUFFIX)
|
||||
ifneq (, $(JSIG_DEBUGINFO))
|
||||
BASE_TARGETS += $(BASE_INSTALL_LIBRARIES_HERE)/server/$(foreach I,$(JSIG_DEBUGINFO),$(notdir $I))
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
ifeq ($(JVM_VARIANT_CLIENT), true)
|
||||
BASE_TARGETS += $(BASE_INSTALL_LIBRARIES_HERE)/client/$(LIBRARY_PREFIX)jsig$(SHARED_LIBRARY_SUFFIX)
|
||||
ifneq (, $(JSIG_DEBUGINFO))
|
||||
BASE_TARGETS += $(BASE_INSTALL_LIBRARIES_HERE)/client/$(foreach I,$(JSIG_DEBUGINFO),$(notdir $I))
|
||||
ifeq ($(JVM_VARIANT_CLIENT), true)
|
||||
BASE_TARGETS += $(BASE_INSTALL_LIBRARIES_HERE)/client/$(LIBRARY_PREFIX)jsig$(SHARED_LIBRARY_SUFFIX)
|
||||
ifneq (, $(JSIG_DEBUGINFO))
|
||||
BASE_TARGETS += $(BASE_INSTALL_LIBRARIES_HERE)/client/$(foreach I,$(JSIG_DEBUGINFO),$(notdir $I))
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
ifneq ($(OPENJDK_TARGET_OS), macosx)
|
||||
ifeq ($(JVM_VARIANT_MINIMAL1), true)
|
||||
BASE_TARGETS += $(BASE_INSTALL_LIBRARIES_HERE)/minimal/$(LIBRARY_PREFIX)jsig$(SHARED_LIBRARY_SUFFIX)
|
||||
ifneq (,$(JSIG_DEBUGINFO))
|
||||
BASE_TARGETS += $(BASE_INSTALL_LIBRARIES_HERE)/minimal/$(foreach I,$(JSIG_DEBUGINFO),$(notdir $I))
|
||||
ifneq ($(OPENJDK_TARGET_OS), macosx)
|
||||
ifeq ($(JVM_VARIANT_MINIMAL1), true)
|
||||
BASE_TARGETS += $(BASE_INSTALL_LIBRARIES_HERE)/minimal/$(LIBRARY_PREFIX)jsig$(SHARED_LIBRARY_SUFFIX)
|
||||
ifneq (,$(JSIG_DEBUGINFO))
|
||||
BASE_TARGETS += $(BASE_INSTALL_LIBRARIES_HERE)/minimal/$(foreach I,$(JSIG_DEBUGINFO),$(notdir $I))
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
@ -106,10 +106,30 @@ define SetupLauncher
|
||||
endif
|
||||
endif
|
||||
|
||||
$1_LDFLAGS += -Wl,-all_load $(SUPPORT_OUTPUTDIR)/native/java.base/libjli_static.a \
|
||||
-framework Cocoa -framework Security -framework ApplicationServices \
|
||||
-sectcreate __TEXT __info_plist $(MACOSX_PLIST_DIR)/$$($1_PLIST_FILE)
|
||||
$1_LDFLAGS_SUFFIX += -pthread
|
||||
ifeq ($(STATIC_BUILD), true)
|
||||
$1_LDFLAGS += -Wl,-all_load \
|
||||
$(shell $(FIND) $(SUPPORT_OUTPUTDIR)/modules_libs/java.base -name "*.a") \
|
||||
$(SUPPORT_OUTPUTDIR)/modules_libs/jdk.jdwp.agent/libdt_socket.a \
|
||||
$(SUPPORT_OUTPUTDIR)/modules_libs/jdk.jdwp.agent/libjdwp.a \
|
||||
$(SUPPORT_OUTPUTDIR)/native/java.base/$(LIBRARY_PREFIX)fdlibm$(STATIC_LIBRARY_SUFFIX) \
|
||||
-framework CoreFoundation \
|
||||
-framework Foundation \
|
||||
-framework SystemConfiguration \
|
||||
-framework Cocoa -framework Security \
|
||||
-framework ApplicationServices \
|
||||
-lstdc++ -liconv \
|
||||
-sectcreate __TEXT __info_plist \
|
||||
$(MACOSX_PLIST_DIR)/$$($1_PLIST_FILE) \
|
||||
-exported_symbols_list \
|
||||
$(SUPPORT_OUTPUTDIR)/build-static/exported.symbols
|
||||
else
|
||||
$1_LDFLAGS += -Wl,-all_load $(SUPPORT_OUTPUTDIR)/native/java.base/libjli_static.a \
|
||||
-framework Cocoa -framework Security -framework ApplicationServices \
|
||||
-sectcreate __TEXT __info_plist $(MACOSX_PLIST_DIR)/$$($1_PLIST_FILE)
|
||||
$1_LDFLAGS_SUFFIX += -pthread
|
||||
endif
|
||||
|
||||
|
||||
endif
|
||||
|
||||
ifeq ($(OPENJDK_TARGET_OS), aix)
|
||||
|
@ -436,10 +436,14 @@ else ifeq ($(OPENJDK_TARGET_OS), macosx)
|
||||
OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjli_static, \
|
||||
DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
|
||||
|
||||
$(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjli_static.a: $(BUILD_LIBJLI_STATIC)
|
||||
ifeq ($(STATIC_BUILD), true)
|
||||
TARGETS += $(BUILD_LIBJLI_STATIC)
|
||||
else
|
||||
$(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjli_static.a: $(BUILD_LIBJLI_STATIC)
|
||||
$(call install-file)
|
||||
|
||||
TARGETS += $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjli_static.a
|
||||
TARGETS += $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjli_static.a
|
||||
endif
|
||||
|
||||
else ifeq ($(OPENJDK_TARGET_OS), aix)
|
||||
# AIX also requires a static libjli because the compiler doesn't support '-rpath'
|
||||
|
@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
@ -33,3 +33,28 @@ include CoreLibraries.gmk
|
||||
include NetworkingLibraries.gmk
|
||||
include NioLibraries.gmk
|
||||
include SecurityLibraries.gmk
|
||||
|
||||
ifeq ($(STATIC_BUILD), true)
|
||||
JAVA_BASE_EXPORT_SYMBOLS_SRC := \
|
||||
$(SUPPORT_OUTPUTDIR)/modules_libs/java.base/jli/$(LIBRARY_PREFIX)jli.symbols \
|
||||
$(SUPPORT_OUTPUTDIR)/modules_libs/java.base/$(LIBRARY_PREFIX)java.symbols \
|
||||
$(SUPPORT_OUTPUTDIR)/modules_libs/java.base/$(LIBRARY_PREFIX)net.symbols \
|
||||
$(SUPPORT_OUTPUTDIR)/modules_libs/java.base/$(LIBRARY_PREFIX)nio.symbols \
|
||||
$(SUPPORT_OUTPUTDIR)/modules_libs/java.base/$(LIBRARY_PREFIX)verify.symbols \
|
||||
$(SUPPORT_OUTPUTDIR)/modules_libs/java.base/$(LIBRARY_PREFIX)zip.symbols \
|
||||
$(SUPPORT_OUTPUTDIR)/modules_libs/java.base/$(LIBRARY_PREFIX)jimage.symbols \
|
||||
$(SUPPORT_OUTPUTDIR)/modules_libs/java.base/server/$(LIBRARY_PREFIX)jvm.symbols \
|
||||
#
|
||||
|
||||
JAVA_BASE_EXPORT_SYMBOL_FILE := $(SUPPORT_OUTPUTDIR)/modules_libs/java.base/java.base.symbols
|
||||
|
||||
$(JAVA_BASE_EXPORT_SYMBOL_FILE): $(JAVA_BASE_EXPORT_SYMBOLS_SRC)
|
||||
$(ECHO) $(LOG_INFO) "Generating java.base.symbols file"
|
||||
$(CAT) $^ > $@
|
||||
|
||||
# The individual symbol files is generated when the respective lib is built
|
||||
$(JAVA_BASE_EXPORT_SYMBOLS_SRC): $(BUILD_LIBJLI) $(BUILD_LIBJAVA) \
|
||||
$(BUILD_LIBNET) $(BUILD_LIBNIO) $(BUILD_LIBVERIFY) $(BUILD_LIBZIP)
|
||||
|
||||
TARGETS += $(JAVA_BASE_EXPORT_SYMBOL_FILE)
|
||||
endif
|
||||
|
@ -100,3 +100,23 @@ $(BUILD_LIBJDWP): $(call FindLib, java.base, java)
|
||||
TARGETS += $(BUILD_LIBJDWP)
|
||||
|
||||
################################################################################
|
||||
|
||||
ifeq ($(STATIC_BUILD), true)
|
||||
JDK_JDWP_AGENT_EXPORT_SYMBOLS_SRC := \
|
||||
$(SUPPORT_OUTPUTDIR)/modules_libs/jdk.jdwp.agent/$(LIBRARY_PREFIX)dt_socket.symbols \
|
||||
$(SUPPORT_OUTPUTDIR)/modules_libs/jdk.jdwp.agent/$(LIBRARY_PREFIX)jdwp.symbols
|
||||
|
||||
JDK_JDWP_AGENT_EXPORT_SYMBOL_FILE := $(SUPPORT_OUTPUTDIR)/modules_libs/jdk.jdwp.agent/jdk.jdwp.agent.symbols
|
||||
|
||||
$(JDK_JDWP_AGENT_EXPORT_SYMBOL_FILE): $(JDK_JDWP_AGENT_EXPORT_SYMBOLS_SRC)
|
||||
$(ECHO) $(LOG_INFO) "Generating jdk.jdwp.agent symbols file"
|
||||
$(CAT) $^ > $@
|
||||
|
||||
# The individual symbol files is generated when the respective lib is built
|
||||
$(JDK_JDWP_AGENT_EXPORT_SYMBOLS_SRC): $(BUILD_LIBDT_SOCKET) $(BUILD_LIBJDWP)
|
||||
|
||||
TARGETS += $(JDK_JDWP_AGENT_EXPORT_SYMBOL_FILE)
|
||||
|
||||
endif
|
||||
|
||||
################################################################################
|
||||
|
@ -26,38 +26,42 @@
|
||||
include LibCommon.gmk
|
||||
|
||||
ifeq ($(OPENJDK_TARGET_OS), macosx)
|
||||
# JavaNativeFoundation framework not supported in static builds
|
||||
ifneq ($(STATIC_BUILD), true)
|
||||
|
||||
################################################################################
|
||||
|
||||
LIBOSXSECURITY_DIRS := $(JDK_TOPDIR)/src/java.base/macosx/native/libosxsecurity
|
||||
LIBOSXSECURITY_CFLAGS := -I$(LIBOSXSECURITY_DIRS) \
|
||||
$(LIBJAVA_HEADER_FLAGS) \
|
||||
-I$(SUPPORT_OUTPUTDIR)/headers/java.base \
|
||||
LIBOSXSECURITY_DIRS := $(JDK_TOPDIR)/src/java.base/macosx/native/libosxsecurity
|
||||
LIBOSXSECURITY_CFLAGS := -I$(LIBOSXSECURITY_DIRS) \
|
||||
$(LIBJAVA_HEADER_FLAGS) \
|
||||
-I$(SUPPORT_OUTPUTDIR)/headers/java.base \
|
||||
|
||||
$(eval $(call SetupNativeCompilation,BUILD_LIBOSXSECURITY, \
|
||||
LIBRARY := osxsecurity, \
|
||||
OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
|
||||
SRC := $(LIBOSXSECURITY_DIRS), \
|
||||
OPTIMIZATION := LOW, \
|
||||
CFLAGS := $(CFLAGS_JDKLIB) \
|
||||
$(LIBOSXSECURITY_CFLAGS), \
|
||||
DISABLED_WARNINGS_clang := deprecated-declarations, \
|
||||
LDFLAGS := $(LDFLAGS_JDKLIB) \
|
||||
-L$(SUPPORT_OUTPUTDIR)/modules_libs/java.base \
|
||||
$(call SET_SHARED_LIBRARY_ORIGIN), \
|
||||
LDFLAGS_SUFFIX_macosx := \
|
||||
-fobjc-link-runtime \
|
||||
-framework JavaNativeFoundation \
|
||||
-framework CoreServices \
|
||||
-framework Security \
|
||||
$(LDFLAGS_JDKLIB_SUFFIX), \
|
||||
OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libosxsecurity, \
|
||||
DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
|
||||
$(eval $(call SetupNativeCompilation,BUILD_LIBOSXSECURITY, \
|
||||
LIBRARY := osxsecurity, \
|
||||
OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
|
||||
SRC := $(LIBOSXSECURITY_DIRS), \
|
||||
OPTIMIZATION := LOW, \
|
||||
CFLAGS := $(CFLAGS_JDKLIB) \
|
||||
$(LIBOSXSECURITY_CFLAGS), \
|
||||
DISABLED_WARNINGS_clang := deprecated-declarations, \
|
||||
LDFLAGS := $(LDFLAGS_JDKLIB) \
|
||||
-L$(SUPPORT_OUTPUTDIR)/modules_libs/java.base \
|
||||
$(call SET_SHARED_LIBRARY_ORIGIN), \
|
||||
LDFLAGS_SUFFIX_macosx := \
|
||||
-fobjc-link-runtime \
|
||||
-framework JavaNativeFoundation \
|
||||
-framework CoreServices \
|
||||
-framework Security \
|
||||
$(LDFLAGS_JDKLIB_SUFFIX), \
|
||||
OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libosxsecurity, \
|
||||
DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
|
||||
|
||||
$(BUILD_LIBOSXSECURITY): $(BUILD_LIBJAVA)
|
||||
$(BUILD_LIBOSXSECURITY): $(BUILD_LIBJAVA)
|
||||
|
||||
TARGETS += $(BUILD_LIBOSXSECURITY)
|
||||
TARGETS += $(BUILD_LIBOSXSECURITY)
|
||||
|
||||
################################################################################
|
||||
|
||||
endif
|
||||
endif
|
||||
|
||||
|
@ -75,6 +75,7 @@ SUNWprivate_1.1 {
|
||||
Java_sun_nio_ch_IOUtil_makePipe;
|
||||
Java_sun_nio_ch_IOUtil_randomBytes;
|
||||
Java_sun_nio_ch_IOUtil_setfdVal;
|
||||
Java_sun_nio_ch_IOUtil_iovMax;
|
||||
Java_sun_nio_ch_KQueue_kqueue;
|
||||
Java_sun_nio_ch_KQueue_keventRegister;
|
||||
Java_sun_nio_ch_KQueue_keventPoll;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
@ -65,6 +65,51 @@ void deallocate(jvmtiEnv *jvmti, void *ptr);
|
||||
void *allocate(jvmtiEnv *jvmti, jint len);
|
||||
void add_demo_jar_to_bootclasspath(jvmtiEnv *jvmti, char *demo_name);
|
||||
|
||||
#ifdef STATIC_BUILD
|
||||
/* Macros for handling declaration of static/dynamic
|
||||
* Agent library Load/Attach/Unload functions
|
||||
*
|
||||
* DEF_Agent_OnLoad, DEF_Agent_OnAttach or DEF_Agent_OnUnload
|
||||
* generate the appropriate entrypoint names based on static
|
||||
* versus dynamic builds.
|
||||
*
|
||||
* STATIC_BUILD must be defined to build static versions of these libraries.
|
||||
* LIBRARY_NAME must be set to the name of the library for static builds.
|
||||
*/
|
||||
#define ADD_LIB_NAME3(name, lib) name ## lib
|
||||
#define ADD_LIB_NAME2(name, lib) ADD_LIB_NAME3(name, lib)
|
||||
#define ADD_LIB_NAME(entry) ADD_LIB_NAME2(entry, LIBRARY_NAME)
|
||||
|
||||
#define DEF_Agent_OnLoad \
|
||||
ADD_LIB_NAME(Agent_OnLoad_)(JavaVM *vm, char *options, void *reserved) \
|
||||
{ \
|
||||
jint JNICALL ADD_LIB_NAME(Agent_OnLoad_dynamic_)(JavaVM *vm, char *options, void *reserved); \
|
||||
return ADD_LIB_NAME(Agent_OnLoad_dynamic_)(vm, options, reserved); \
|
||||
} \
|
||||
jint JNICALL ADD_LIB_NAME(Agent_OnLoad_dynamic_)
|
||||
|
||||
#define DEF_Agent_OnAttach \
|
||||
ADD_LIB_NAME(Agent_OnAttach_)(JavaVM *vm, char *options, void *reserved) \
|
||||
{ \
|
||||
jint JNICALL ADD_LIB_NAME(Agent_OnAttach_dynamic_)(JavaVM *vm, char *options, void *reserved); \
|
||||
return ADD_LIB_NAME(Agent_OnAttach_dynamic_)(vm, options, reserved); \
|
||||
} \
|
||||
jint JNICALL ADD_LIB_NAME(Agent_OnAttach_dynamic_)
|
||||
|
||||
#define DEF_Agent_OnUnload \
|
||||
ADD_LIB_NAME(Agent_OnUnload_)(JavaVM *vm) \
|
||||
{ \
|
||||
void JNICALL ADD_LIB_NAME(Agent_OnUnload_dynamic_)(JavaVM *vm); \
|
||||
ADD_LIB_NAME(Agent_OnUnload_dynamic_)(vm); \
|
||||
} \
|
||||
void JNICALL ADD_LIB_NAME(Agent_OnUnload_dynamic_)
|
||||
|
||||
#else
|
||||
#define DEF_Agent_OnLoad Agent_OnLoad
|
||||
#define DEF_Agent_OnAttach Agent_OnAttach
|
||||
#define DEF_Agent_OnUnload Agent_OnUnload
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif /* __cplusplus */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2010, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
@ -225,7 +225,7 @@ compiled_method_load(jvmtiEnv *jvmti, jmethodID method, jint code_size,
|
||||
* event here.
|
||||
*/
|
||||
JNIEXPORT jint JNICALL
|
||||
Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
DEF_Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
{
|
||||
jint rc;
|
||||
jvmtiError err;
|
||||
@ -272,6 +272,6 @@ Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
|
||||
/* Agent_OnUnload() is called last */
|
||||
JNIEXPORT void JNICALL
|
||||
Agent_OnUnload(JavaVM *vm)
|
||||
DEF_Agent_OnUnload(JavaVM *vm)
|
||||
{
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
@ -148,7 +148,7 @@ gc_finish(jvmtiEnv* jvmti_env)
|
||||
|
||||
/* Agent_OnLoad() is called first, we prepare for a VM_INIT event here. */
|
||||
JNIEXPORT jint JNICALL
|
||||
Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
DEF_Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
{
|
||||
jint rc;
|
||||
jvmtiError err;
|
||||
@ -193,6 +193,6 @@ Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
|
||||
/* Agent_OnUnload() is called last */
|
||||
JNIEXPORT void JNICALL
|
||||
Agent_OnUnload(JavaVM *vm)
|
||||
DEF_Agent_OnUnload(JavaVM *vm)
|
||||
{
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
@ -894,7 +894,7 @@ parse_agent_options(char *options)
|
||||
* loaded. This is the first code executed.
|
||||
*/
|
||||
JNIEXPORT jint JNICALL
|
||||
Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
DEF_Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
{
|
||||
static GlobalAgentData data;
|
||||
jvmtiEnv *jvmti;
|
||||
@ -1010,7 +1010,7 @@ Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
* unloaded. This is the last code executed.
|
||||
*/
|
||||
JNIEXPORT void JNICALL
|
||||
Agent_OnUnload(JavaVM *vm)
|
||||
DEF_Agent_OnUnload(JavaVM *vm)
|
||||
{
|
||||
/* Skip any cleanup, VM is about to die anyway */
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
@ -64,9 +64,4 @@
|
||||
|
||||
#include "agent_util.h"
|
||||
|
||||
/* Agent library externals to export. */
|
||||
|
||||
JNIEXPORT jint JNICALL Agent_OnLoad(JavaVM *vm, char *options, void *reserved);
|
||||
JNIEXPORT void JNICALL Agent_OnUnload(JavaVM *vm);
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
@ -235,7 +235,7 @@ vmDeath(jvmtiEnv *jvmti, JNIEnv *env)
|
||||
|
||||
/* Agent_OnLoad() is called first, we prepare for a VM_INIT event here. */
|
||||
JNIEXPORT jint JNICALL
|
||||
Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
DEF_Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
{
|
||||
jint rc;
|
||||
jvmtiError err;
|
||||
@ -283,6 +283,6 @@ Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
|
||||
/* Agent_OnUnload() is called last */
|
||||
JNIEXPORT void JNICALL
|
||||
Agent_OnUnload(JavaVM *vm)
|
||||
DEF_Agent_OnUnload(JavaVM *vm)
|
||||
{
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
@ -373,7 +373,7 @@ parse_agent_options(char *options)
|
||||
* loaded. This is the first code executed.
|
||||
*/
|
||||
JNIEXPORT jint JNICALL
|
||||
Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
DEF_Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
{
|
||||
static GlobalAgentData data;
|
||||
jvmtiEnv *jvmti;
|
||||
@ -467,7 +467,7 @@ Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
* unloaded. This is the last code executed.
|
||||
*/
|
||||
JNIEXPORT void JNICALL
|
||||
Agent_OnUnload(JavaVM *vm)
|
||||
DEF_Agent_OnUnload(JavaVM *vm)
|
||||
{
|
||||
/* Make sure all malloc/calloc/strdup space is freed */
|
||||
if ( gdata->include != NULL ) {
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
@ -64,9 +64,4 @@
|
||||
|
||||
#include "agent_util.h"
|
||||
|
||||
/* Agent library externals to export. */
|
||||
|
||||
JNIEXPORT jint JNICALL Agent_OnLoad(JavaVM *vm, char *options, void *reserved);
|
||||
JNIEXPORT void JNICALL Agent_OnUnload(JavaVM *vm);
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
@ -697,7 +697,7 @@ parse_agent_options(char *options)
|
||||
* loaded. This is the first code executed.
|
||||
*/
|
||||
JNIEXPORT jint JNICALL
|
||||
Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
DEF_Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
{
|
||||
static GlobalAgentData data;
|
||||
jvmtiEnv *jvmti;
|
||||
@ -795,7 +795,7 @@ Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
* unloaded. This is the last code executed.
|
||||
*/
|
||||
JNIEXPORT void JNICALL
|
||||
Agent_OnUnload(JavaVM *vm)
|
||||
DEF_Agent_OnUnload(JavaVM *vm)
|
||||
{
|
||||
/* Make sure all malloc/calloc/strdup space is freed */
|
||||
if ( gdata->include != NULL ) {
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
@ -64,9 +64,4 @@
|
||||
|
||||
#include "agent_util.h"
|
||||
|
||||
/* Agent library externals to export. */
|
||||
|
||||
JNIEXPORT jint JNICALL Agent_OnLoad(JavaVM *vm, char *options, void *reserved);
|
||||
JNIEXPORT void JNICALL Agent_OnUnload(JavaVM *vm);
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
@ -89,7 +89,7 @@ vm_init(jvmtiEnv *jvmti, JNIEnv *env, jthread thread)
|
||||
|
||||
/* Agent_OnLoad() is called first, we prepare for a VM_INIT event here. */
|
||||
JNIEXPORT jint JNICALL
|
||||
Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
DEF_Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
{
|
||||
jint rc;
|
||||
jvmtiError err;
|
||||
@ -116,6 +116,6 @@ Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
|
||||
/* Agent_OnUnload() is called last */
|
||||
JNIEXPORT void JNICALL
|
||||
Agent_OnUnload(JavaVM *vm)
|
||||
DEF_Agent_OnUnload(JavaVM *vm)
|
||||
{
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
@ -37,6 +37,10 @@
|
||||
* this sample code.
|
||||
*/
|
||||
|
||||
#ifdef STATIC_BUILD
|
||||
#define Monitor WaiterMonitor
|
||||
#endif
|
||||
|
||||
|
||||
/* C++ Monitor class */
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
@ -37,6 +37,9 @@
|
||||
* this sample code.
|
||||
*/
|
||||
|
||||
#ifdef STATIC_BUILD
|
||||
#define Thread WaiterThread
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
@ -243,7 +243,7 @@ extern "C" {
|
||||
|
||||
/* Agent_OnLoad() is called first, we prepare for a VM_INIT event here. */
|
||||
JNIEXPORT jint JNICALL
|
||||
Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
DEF_Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
{
|
||||
jvmtiEnv *jvmti;
|
||||
jint rc;
|
||||
@ -288,7 +288,7 @@ extern "C" {
|
||||
|
||||
/* Agent_OnUnload() is called last */
|
||||
JNIEXPORT void JNICALL
|
||||
Agent_OnUnload(JavaVM *vm)
|
||||
DEF_Agent_OnUnload(JavaVM *vm)
|
||||
{
|
||||
}
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -35,13 +35,15 @@
|
||||
|
||||
#include "java_props_macosx.h"
|
||||
|
||||
|
||||
// need dlopen/dlsym trick to avoid pulling in JavaRuntimeSupport before libjava.dylib is loaded
|
||||
static void *getJRSFramework() {
|
||||
static void *jrsFwk = NULL;
|
||||
#ifndef STATIC_BUILD
|
||||
// JavaRuntimeSupport doesn't support static Java runtimes
|
||||
if (jrsFwk == NULL) {
|
||||
jrsFwk = dlopen("/System/Library/Frameworks/JavaVM.framework/Frameworks/JavaRuntimeSupport.framework/JavaRuntimeSupport", RTLD_LAZY | RTLD_LOCAL);
|
||||
}
|
||||
#endif
|
||||
return jrsFwk;
|
||||
}
|
||||
|
||||
|
@ -245,6 +245,8 @@ static InvocationFunctions *GetExportedJNIFunctions() {
|
||||
return sExportedJNIFunctions = fxns;
|
||||
}
|
||||
|
||||
#ifndef STATIC_BUILD
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
JNI_GetDefaultJavaVMInitArgs(void *args) {
|
||||
InvocationFunctions *ifn = GetExportedJNIFunctions();
|
||||
@ -265,6 +267,7 @@ JNI_GetCreatedJavaVMs(JavaVM **vmBuf, jsize bufLen, jsize *nVMs) {
|
||||
if (ifn == NULL) return JNI_ERR;
|
||||
return ifn->GetCreatedJavaVMs(vmBuf, bufLen, nVMs);
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Allow JLI-aware launchers to specify a client/server preference
|
||||
@ -303,7 +306,12 @@ static void *apple_main (void *arg)
|
||||
objc_registerThreadWithCollector();
|
||||
|
||||
if (main_fptr == NULL) {
|
||||
#ifdef STATIC_BUILD
|
||||
extern int main(int argc, char **argv);
|
||||
main_fptr = &main;
|
||||
#else
|
||||
main_fptr = (int (*)())dlsym(RTLD_DEFAULT, "main");
|
||||
#endif
|
||||
if (main_fptr == NULL) {
|
||||
JLI_ReportErrorMessageSys("error locating main entrypoint\n");
|
||||
exit(1);
|
||||
@ -588,6 +596,9 @@ GetJVMPath(const char *jrepath, const char *jvmtype,
|
||||
|
||||
JLI_TraceLauncher("Does `%s' exist ... ", jvmpath);
|
||||
|
||||
#ifdef STATIC_BUILD
|
||||
return JNI_TRUE;
|
||||
#else
|
||||
if (stat(jvmpath, &s) == 0) {
|
||||
JLI_TraceLauncher("yes.\n");
|
||||
return JNI_TRUE;
|
||||
@ -595,6 +606,7 @@ GetJVMPath(const char *jrepath, const char *jvmtype,
|
||||
JLI_TraceLauncher("no.\n");
|
||||
return JNI_FALSE;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
/*
|
||||
@ -607,10 +619,18 @@ GetJREPath(char *path, jint pathsize, const char * arch, jboolean speculative)
|
||||
|
||||
if (GetApplicationHome(path, pathsize)) {
|
||||
/* Is JRE co-located with the application? */
|
||||
#ifdef STATIC_BUILD
|
||||
char jvm_cfg[MAXPATHLEN];
|
||||
JLI_Snprintf(jvm_cfg, sizeof(jvm_cfg), "%s/lib/jvm.cfg", path);
|
||||
if (access(jvm_cfg, F_OK) == 0) {
|
||||
return JNI_TRUE;
|
||||
}
|
||||
#else
|
||||
JLI_Snprintf(libjava, sizeof(libjava), "%s/lib/" JAVA_DLL, path);
|
||||
if (access(libjava, F_OK) == 0) {
|
||||
return JNI_TRUE;
|
||||
}
|
||||
#endif
|
||||
/* ensure storage for path + /jre + NULL */
|
||||
if ((JLI_StrLen(path) + 4 + 1) > (size_t) pathsize) {
|
||||
JLI_TraceLauncher("Insufficient space to store JRE path\n");
|
||||
@ -629,6 +649,24 @@ GetJREPath(char *path, jint pathsize, const char * arch, jboolean speculative)
|
||||
Dl_info selfInfo;
|
||||
dladdr(&GetJREPath, &selfInfo);
|
||||
|
||||
#ifdef STATIC_BUILD
|
||||
char jvm_cfg[MAXPATHLEN];
|
||||
char *p = NULL;
|
||||
strncpy(jvm_cfg, selfInfo.dli_fname, MAXPATHLEN);
|
||||
p = strrchr(jvm_cfg, '/'); *p = '\0';
|
||||
p = strrchr(jvm_cfg, '/');
|
||||
if (strcmp(p, "/.") == 0) {
|
||||
*p = '\0';
|
||||
p = strrchr(jvm_cfg, '/'); *p = '\0';
|
||||
}
|
||||
else *p = '\0';
|
||||
strncpy(path, jvm_cfg, pathsize);
|
||||
strncat(jvm_cfg, "/lib/jvm.cfg", MAXPATHLEN);
|
||||
if (access(jvm_cfg, F_OK) == 0) {
|
||||
return JNI_TRUE;
|
||||
}
|
||||
#endif
|
||||
|
||||
char *realPathToSelf = realpath(selfInfo.dli_fname, path);
|
||||
if (realPathToSelf != path) {
|
||||
return JNI_FALSE;
|
||||
@ -664,7 +702,11 @@ LoadJavaVM(const char *jvmpath, InvocationFunctions *ifn)
|
||||
|
||||
JLI_TraceLauncher("JVM path is %s\n", jvmpath);
|
||||
|
||||
#ifndef STATIC_BUILD
|
||||
libjvm = dlopen(jvmpath, RTLD_NOW + RTLD_GLOBAL);
|
||||
#else
|
||||
libjvm = dlopen(NULL, RTLD_FIRST);
|
||||
#endif
|
||||
if (libjvm == NULL) {
|
||||
JLI_ReportErrorMessage(DLL_ERROR1, __LINE__);
|
||||
JLI_ReportErrorMessage(DLL_ERROR2, jvmpath, dlerror());
|
||||
@ -714,9 +756,14 @@ SetExecname(char **argv)
|
||||
char* exec_path = NULL;
|
||||
{
|
||||
Dl_info dlinfo;
|
||||
int (*fptr)();
|
||||
|
||||
#ifdef STATIC_BUILD
|
||||
void *fptr;
|
||||
fptr = (void *)&SetExecname;
|
||||
#else
|
||||
int (*fptr)();
|
||||
fptr = (int (*)())dlsym(RTLD_DEFAULT, "main");
|
||||
#endif
|
||||
if (fptr == NULL) {
|
||||
JLI_ReportErrorMessage(DLL_ERROR3, dlerror());
|
||||
return JNI_FALSE;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -24,10 +24,11 @@
|
||||
*/
|
||||
|
||||
#include "jni.h"
|
||||
#include "jni_util.h"
|
||||
#include "jvm.h"
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
DEF_JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
{
|
||||
jint vm_version = JVM_GetInterfaceVersion();
|
||||
if (vm_version != JVM_INTERFACE_VERSION) {
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -27,6 +27,7 @@
|
||||
|
||||
#include "jni.h"
|
||||
|
||||
#ifndef STATIC_BUILD
|
||||
|
||||
/* This is a temporary solution until we figure out how to let native
|
||||
* libraries use jio_* without linking with the VM.
|
||||
@ -63,3 +64,6 @@ jio_fprintf(FILE *fp, const char *fmt, ...)
|
||||
|
||||
return len;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -389,6 +389,117 @@ void buildJniFunctionName(const char *sym, const char *cname,
|
||||
|
||||
extern size_t getLastErrorString(char *buf, size_t len);
|
||||
extern int getErrorString(int err, char *buf, size_t len);
|
||||
|
||||
#ifdef STATIC_BUILD
|
||||
/* Macros for handling declaration of static/dynamic
|
||||
* JNI library Load/Unload functions
|
||||
*
|
||||
* Use DEF_JNI_On{Un}Load when you want a static and non-static entry points.
|
||||
* Use DEF_STATIC_JNI_On{Un}Load when you only want a static one.
|
||||
*
|
||||
* LIBRARY_NAME must be set to the name of the library
|
||||
*/
|
||||
|
||||
/* These three macros are needed to get proper concatenation of
|
||||
* the LIBRARY_NAME
|
||||
*
|
||||
* NOTE: LIBRARY_NAME must be set for static builds.
|
||||
*/
|
||||
#define ADD_LIB_NAME3(name, lib) name ## lib
|
||||
#define ADD_LIB_NAME2(name, lib) ADD_LIB_NAME3(name, lib)
|
||||
#define ADD_LIB_NAME(entry) ADD_LIB_NAME2(entry, LIBRARY_NAME)
|
||||
|
||||
#define DEF_JNI_OnLoad \
|
||||
ADD_LIB_NAME(JNI_OnLoad_)(JavaVM *vm, void *reserved) \
|
||||
{ \
|
||||
jint JNICALL ADD_LIB_NAME(JNI_OnLoad_dynamic_)(JavaVM *vm, void *reserved); \
|
||||
ADD_LIB_NAME(JNI_OnLoad_dynamic_)(vm, reserved); \
|
||||
return JNI_VERSION_1_8; \
|
||||
} \
|
||||
jint JNICALL ADD_LIB_NAME(JNI_OnLoad_dynamic_)
|
||||
|
||||
#define DEF_STATIC_JNI_OnLoad \
|
||||
JNIEXPORT jint JNICALL ADD_LIB_NAME(JNI_OnLoad_)(JavaVM *vm, void *reserved) { \
|
||||
return JNI_VERSION_1_8; \
|
||||
}
|
||||
|
||||
#define DEF_JNI_OnUnload \
|
||||
ADD_LIB_NAME(JNI_OnUnload_)(JavaVM *vm, void *reserved) \
|
||||
{ \
|
||||
void JNICALL ADD_LIB_NAME(JNI_OnUnload_dynamic_)(JavaVM *vm, void *reserved); \
|
||||
ADD_LIB_NAME(JNI_OnUnload_dynamic_)(vm, reserved); \
|
||||
} \
|
||||
void JNICALL ADD_LIB_NAME(JNI_OnUnload_dynamic_)
|
||||
|
||||
#define DEF_STATIC_JNI_OnUnload \
|
||||
ADD_LIB_NAME(JNI_OnUnload_)
|
||||
|
||||
#else
|
||||
|
||||
#define DEF_JNI_OnLoad JNI_OnLoad
|
||||
#define DEF_STATIC_JNI_OnLoad
|
||||
#define DEF_JNI_OnUnload JNI_OnUnload
|
||||
#define DEF_STATIC_JNI_OnUnload
|
||||
#endif
|
||||
|
||||
#ifdef STATIC_BUILD
|
||||
/* Macros for handling declaration of static/dynamic
|
||||
* Agent library Load/Attach/Unload functions
|
||||
*
|
||||
* Use DEF_Agent_OnLoad, DEF_Agent_OnAttach or DEF_Agent_OnUnload
|
||||
* when you want both static and non-static entry points.
|
||||
* Use DEF_STATIC_Agent_OnLoad, DEF_STATIC_Agent_OnAttach or
|
||||
* DEF_STATIC_Agent_OnUnload when you only want a static one.
|
||||
*
|
||||
* LIBRARY_NAME must be set to the name of the library for static builds.
|
||||
*/
|
||||
|
||||
#define DEF_Agent_OnLoad \
|
||||
ADD_LIB_NAME(Agent_OnLoad_)(JavaVM *vm, char *options, void *reserved) \
|
||||
{ \
|
||||
jint JNICALL ADD_LIB_NAME(Agent_OnLoad_dynamic_)(JavaVM *vm, char *options, void *reserved); \
|
||||
return ADD_LIB_NAME(Agent_OnLoad_dynamic_)(vm, options, reserved); \
|
||||
} \
|
||||
jint JNICALL ADD_LIB_NAME(Agent_OnLoad_dynamic_)
|
||||
|
||||
#define DEF_STATIC_Agent_OnLoad \
|
||||
JNIEXPORT jint JNICALL ADD_LIB_NAME(Agent_OnLoad_)(JavaVM *vm, char *options, void *reserved) { \
|
||||
return JNI_FALSE; \
|
||||
}
|
||||
|
||||
#define DEF_Agent_OnAttach \
|
||||
ADD_LIB_NAME(Agent_OnAttach_)(JavaVM *vm, char *options, void *reserved) \
|
||||
{ \
|
||||
jint JNICALL ADD_LIB_NAME(Agent_OnAttach_dynamic_)(JavaVM *vm, char *options, void *reserved); \
|
||||
return ADD_LIB_NAME(Agent_OnAttach_dynamic_)(vm, options, reserved); \
|
||||
} \
|
||||
jint JNICALL ADD_LIB_NAME(Agent_OnAttach_dynamic_)
|
||||
|
||||
#define DEF_STATIC_Agent_OnAttach \
|
||||
JNIEXPORT jint JNICALL ADD_LIB_NAME(Agent_OnLoad_)(JavaVM *vm, char *options, void *reserved) { \
|
||||
return JNI_FALSE; \
|
||||
}
|
||||
|
||||
#define DEF_Agent_OnUnload \
|
||||
ADD_LIB_NAME(Agent_OnUnload_)(JavaVM *vm) \
|
||||
{ \
|
||||
void JNICALL ADD_LIB_NAME(Agent_OnUnload_dynamic_)(JavaVM *vm); \
|
||||
ADD_LIB_NAME(Agent_OnUnload_dynamic_)(vm); \
|
||||
} \
|
||||
void JNICALL ADD_LIB_NAME(Agent_OnUnload_dynamic_)
|
||||
|
||||
#define DEF_STATIC_Agent_OnUnload \
|
||||
ADD_LIB_NAME(Agent_OnUnload_)
|
||||
|
||||
#else
|
||||
#define DEF_Agent_OnLoad Agent_OnLoad
|
||||
#define DEF_Agent_OnAttach Agent_OnAttach
|
||||
#define DEF_Agent_OnUnload Agent_OnUnload
|
||||
#define DEF_STATIC_Agent_OnLoad
|
||||
#define DEF_STATIC_Agent_OnAttach
|
||||
#define DEF_STATIC_Agent_OnUnload
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif /* __cplusplus */
|
||||
|
@ -236,7 +236,7 @@ static unsigned int JIMAGE_AttributeOffsetsLength(JNIEnv *env, jlong id) {
|
||||
}
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
JNI_OnLoad(JavaVM *vm, void *reserved) {
|
||||
DEF_JNI_OnLoad(JavaVM *vm, void *reserved) {
|
||||
JNIEnv *env;
|
||||
|
||||
if (vm->GetEnv((void**) &env, JNI_VERSION_1_2) != JNI_OK) {
|
||||
@ -594,6 +594,6 @@ JNIEXPORT jstring JNICALL Java_jdk_internal_jimage_ImageNativeSubstrate_JIMAGE_1
|
||||
return module;
|
||||
}
|
||||
|
||||
JNIEXPORT void JNICALL JNI_OnUnload(JavaVM *vm, void *reserved) {
|
||||
JNIEXPORT void JNICALL DEF_JNI_OnUnload(JavaVM *vm, void *reserved) {
|
||||
ImageDecompressor::image_decompressor_close();
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -38,7 +38,7 @@ JNIEXPORT jint JNICALL ipv6_available()
|
||||
}
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
DEF_JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
{
|
||||
JNIEnv *env;
|
||||
jclass iCls;
|
||||
|
@ -28,7 +28,7 @@
|
||||
#include "jni_util.h"
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
DEF_JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
{
|
||||
JNIEnv *env;
|
||||
|
||||
|
@ -86,6 +86,7 @@
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "jni.h"
|
||||
#include "jni_util.h"
|
||||
#include "jvm.h"
|
||||
#include "classfile_constants.h"
|
||||
#include "opcodes.in_out"
|
||||
@ -481,6 +482,11 @@ static void print_formatted_fieldname(context_type *context, int index);
|
||||
static void print_formatted_methodname(context_type *context, int index);
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
void initialize_class_hash(context_type *context)
|
||||
{
|
||||
hash_table_type *class_hash = &(context->class_hash);
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -55,6 +55,12 @@ static jfieldID jzfileID;
|
||||
static int OPEN_READ = java_util_zip_ZipFile_OPEN_READ;
|
||||
static int OPEN_DELETE = java_util_zip_ZipFile_OPEN_DELETE;
|
||||
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
JNIEXPORT void JNICALL
|
||||
Java_java_util_zip_ZipFile_initIDs(JNIEnv *env, jclass cls)
|
||||
{
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -65,11 +65,19 @@
|
||||
#define jlong_zero_init ((jlong) 0L)
|
||||
|
||||
#ifdef _LP64
|
||||
#define jlong_to_ptr(a) ((void*)(a))
|
||||
#define ptr_to_jlong(a) ((jlong)(a))
|
||||
#ifndef jlong_to_ptr
|
||||
#define jlong_to_ptr(a) ((void*)(a))
|
||||
#endif
|
||||
#ifndef ptr_to_jlong
|
||||
#define ptr_to_jlong(a) ((jlong)(a))
|
||||
#endif
|
||||
#else
|
||||
#define jlong_to_ptr(a) ((void*)(int)(a))
|
||||
#define ptr_to_jlong(a) ((jlong)(int)(a))
|
||||
#ifndef jlong_to_ptr
|
||||
#define jlong_to_ptr(a) ((void*)(int)(a))
|
||||
#endif
|
||||
#ifndef ptr_to_jlong
|
||||
#define ptr_to_jlong(a) ((jlong)(int)(a))
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#define jint_to_jlong(a) ((jlong)(a))
|
||||
|
@ -740,7 +740,7 @@ Java_sun_lwawt_macosx_LWCToolkit_initAppkit
|
||||
JNF_COCOA_EXIT(env)
|
||||
}
|
||||
|
||||
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) {
|
||||
JNIEXPORT jint JNICALL DEF_JNI_OnLoad(JavaVM *vm, void *reserved) {
|
||||
OSXAPP_SetJavaVM(vm);
|
||||
|
||||
// We need to let Foundation know that this is a multithreaded application, if it isn't already.
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -24,11 +24,17 @@
|
||||
*/
|
||||
|
||||
#import <jawt.h>
|
||||
#import "jni_util.h"
|
||||
|
||||
#import <jawt_md.h>
|
||||
|
||||
#import "awt_DrawingSurface.h"
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
/*
|
||||
* Get the AWT native structure.
|
||||
* This function returns JNI_FALSE if an error occurs.
|
||||
|
@ -23,6 +23,12 @@
|
||||
* questions.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Must include this before JavaNativeFoundation.h to get jni.h from build
|
||||
*/
|
||||
#include "jni.h"
|
||||
#include "jni_util.h"
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import <JavaNativeFoundation/JavaNativeFoundation.h>
|
||||
|
||||
|
@ -33,6 +33,10 @@
|
||||
#import "QueuingApplicationDelegate.h"
|
||||
#import "AWTIconData.h"
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
static BOOL sUsingDefaultNIB = YES;
|
||||
static NSString *SHARED_FRAMEWORK_BUNDLE = @"/System/Library/Frameworks/JavaVM.framework";
|
||||
@ -432,10 +436,10 @@ AWT_ASSERT_APPKIT_THREAD;
|
||||
@end
|
||||
|
||||
|
||||
void OSXAPP_SetApplicationDelegate(id <NSApplicationDelegate> delegate)
|
||||
void OSXAPP_SetApplicationDelegate(id <NSApplicationDelegate> newdelegate)
|
||||
{
|
||||
AWT_ASSERT_APPKIT_THREAD;
|
||||
applicationDelegate = delegate;
|
||||
applicationDelegate = newdelegate;
|
||||
|
||||
if (NSApp != nil) {
|
||||
[NSApp setDelegate: applicationDelegate];
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -23,6 +23,10 @@
|
||||
* questions.
|
||||
*/
|
||||
|
||||
// Must include this before JavaNativeFoundation.h to get jni.h from build
|
||||
#include "jni.h"
|
||||
#include "jni_util.h"
|
||||
|
||||
#import <JavaNativeFoundation/JavaNativeFoundation.h>
|
||||
|
||||
/*
|
||||
@ -30,6 +34,7 @@
|
||||
* <rdar://4984599> AWT's JNI_OnLoad called multiple times
|
||||
* Please remove when <rdar://5121166> has been resolved.
|
||||
*/
|
||||
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) {
|
||||
JNIEXPORT jint JNICALL DEF_JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
{
|
||||
return JNI_VERSION_1_4;
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -37,6 +37,10 @@
|
||||
static void *theNullScalerContext = NULL;
|
||||
extern void AccelGlyphCache_RemoveAllCellInfos(GlyphInfo *glyph);
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
JNIEXPORT jlong JNICALL
|
||||
Java_sun_font_NullFontScaler_getNullScalerContext
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1995, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1995, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -67,7 +67,7 @@ static jmethodID InputStream_availableID;
|
||||
JavaVM *jvm;
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
DEF_JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
{
|
||||
jvm = vm;
|
||||
return JNI_VERSION_1_2;
|
||||
|
@ -28,6 +28,10 @@
|
||||
// Platform.java includes
|
||||
#include "com_sun_media_sound_Platform.h"
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
/*
|
||||
* Class: com_sun_media_sound_Platform
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -24,6 +24,7 @@
|
||||
*/
|
||||
|
||||
#include <jni.h>
|
||||
#include "jni_util.h"
|
||||
#include "SoundDefs.h"
|
||||
#include "Configure.h" // put flags for debug msgs etc. here
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2007, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -134,7 +134,7 @@ void errorHandler(cmsContext ContextID, cmsUInt32Number errorCode,
|
||||
JNU_ThrowByName(env, "java/awt/color/CMMException", errMsg);
|
||||
}
|
||||
|
||||
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserved) {
|
||||
JNIEXPORT jint JNICALL DEF_JNI_OnLoad(JavaVM *jvm, void *reserved) {
|
||||
javaVM = jvm;
|
||||
|
||||
cmsSetLogErrorHandler(errorHandler);
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -26,6 +26,14 @@
|
||||
|
||||
#include "mlib_image.h"
|
||||
|
||||
#include <jni.h>
|
||||
#include "jni_util.h"
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
/***************************************************************/
|
||||
typedef union {
|
||||
mlib_d64 db;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -30,7 +30,7 @@
|
||||
#include <sizecalc.h>
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
JNI_OnLoad(JavaVM * vm, void *reserved)
|
||||
DEF_JNI_OnLoad(JavaVM * vm, void *reserved)
|
||||
{
|
||||
return JNI_VERSION_1_2;
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -178,7 +178,7 @@ AWT_OnLoad(JavaVM *vm, void *reserved)
|
||||
}
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
DEF_JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
{
|
||||
return AWT_OnLoad(vm, reserved);
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -31,14 +31,17 @@
|
||||
extern JavaVM *jvm;
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
DEF_JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
{
|
||||
jvm = vm;
|
||||
return JNI_VERSION_1_2;
|
||||
}
|
||||
|
||||
#ifndef STATIC_BUILD
|
||||
// The same function exists in libawt.a::awt_LoadLibrary.c
|
||||
JNIEXPORT jboolean JNICALL AWTIsHeadless() {
|
||||
return JNI_TRUE;
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
@ -151,7 +151,7 @@ JNIEXPORT jlong JNICALL Java_sun_awt_X11_XToolkit_getDefaultScreenData
|
||||
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
DEF_JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
{
|
||||
jvm = vm;
|
||||
return JNI_VERSION_1_2;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -24,9 +24,15 @@
|
||||
*/
|
||||
|
||||
#include <jawt.h>
|
||||
#include "jni_util.h"
|
||||
|
||||
#include "awt_DrawingSurface.h"
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
/*
|
||||
* Get the AWT native structure. This function returns JNI_FALSE if
|
||||
* an error occurs.
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -44,6 +44,11 @@ static int alsa_inited = 0;
|
||||
static int alsa_enumerate_pcm_subdevices = FALSE; // default: no
|
||||
static int alsa_enumerate_midi_subdevices = FALSE; // default: no
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
void initAlsaSupport() {
|
||||
char* enumerate;
|
||||
if (!alsa_inited) {
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1996, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1996, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -91,7 +91,7 @@ extern void DWMResetCompositionEnabled();
|
||||
JavaVM *jvm = NULL;
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
DEF_JNI_OnLoad(JavaVM *vm, void *reserved)
|
||||
{
|
||||
TRY;
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1999, 2008, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -25,10 +25,16 @@
|
||||
|
||||
#define _JNI_IMPLEMENTATION_
|
||||
#include <jawt.h>
|
||||
#include "jni_util.h"
|
||||
|
||||
#include "awt.h"
|
||||
#include "awt_DrawingSurface.h"
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
/*
|
||||
* Get the AWT native structure. This function returns JNI_FALSE if
|
||||
* an error occurs.
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -49,6 +49,11 @@
|
||||
* Native methods
|
||||
*/
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
/*
|
||||
* Class: sun_instrument_InstrumentationImpl
|
||||
* Method: isModifiableClass0
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -141,7 +141,7 @@ convertCapabilityAtrributes(const jarAttribute* attributes, JPLISAgent* agent) {
|
||||
* to create boot class path segments to append to the boot class path.
|
||||
*/
|
||||
JNIEXPORT jint JNICALL
|
||||
Agent_OnLoad(JavaVM *vm, char *tail, void * reserved) {
|
||||
DEF_Agent_OnLoad(JavaVM *vm, char *tail, void * reserved) {
|
||||
JPLISInitializationError initerror = JPLIS_INIT_ERROR_NONE;
|
||||
jint result = JNI_OK;
|
||||
JPLISAgent * agent = NULL;
|
||||
@ -290,7 +290,7 @@ Agent_OnLoad(JavaVM *vm, char *tail, void * reserved) {
|
||||
* the JPLIS library.
|
||||
*/
|
||||
JNIEXPORT jint JNICALL
|
||||
Agent_OnAttach(JavaVM* vm, char *args, void * reserved) {
|
||||
DEF_Agent_OnAttach(JavaVM* vm, char *args, void * reserved) {
|
||||
JPLISInitializationError initerror = JPLIS_INIT_ERROR_NONE;
|
||||
jint result = JNI_OK;
|
||||
JPLISAgent * agent = NULL;
|
||||
@ -435,7 +435,7 @@ Agent_OnAttach(JavaVM* vm, char *args, void * reserved) {
|
||||
|
||||
|
||||
JNIEXPORT void JNICALL
|
||||
Agent_OnUnload(JavaVM *vm) {
|
||||
DEF_Agent_OnUnload(JavaVM *vm) {
|
||||
}
|
||||
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2004, 2005, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -23,6 +23,10 @@
|
||||
* questions.
|
||||
*/
|
||||
|
||||
#ifdef STATIC_BUILD
|
||||
#define getAttribute JarGetAttribute
|
||||
#endif
|
||||
|
||||
typedef struct _jarAttribute {
|
||||
char* name;
|
||||
char* value;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2003, 2007, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -32,6 +32,13 @@
|
||||
|
||||
#include <jni.h>
|
||||
#include <jvmti.h>
|
||||
#include "jni_util.h"
|
||||
|
||||
#ifdef STATIC_BUILD
|
||||
#define allocate instAllocate
|
||||
#define deallocate instDeallocate
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2003, 2005, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -25,6 +25,7 @@
|
||||
|
||||
#include <stdio.h>
|
||||
#include <jni.h>
|
||||
#include "jni_util.h"
|
||||
#include "jvm.h"
|
||||
#include "management.h"
|
||||
|
||||
@ -35,7 +36,7 @@ JavaVM* jvm = NULL;
|
||||
jint jmm_version = 0;
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
JNI_OnLoad(JavaVM *vm, void *reserved) {
|
||||
DEF_JNI_OnLoad(JavaVM *vm, void *reserved) {
|
||||
JNIEnv* env;
|
||||
|
||||
jvm = vm;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -64,6 +64,11 @@
|
||||
#include "jlong.h"
|
||||
#include "jvm.h"
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
|
||||
// Throw an OutOfMemoryError with the given message.
|
||||
static void throwOutOfMemoryError(JNIEnv *env, const char *msg)
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -35,6 +35,11 @@
|
||||
#include <utime.h>
|
||||
#include "jni_util.h"
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
Java_java_util_prefs_FileSystemPreferences_chmod(JNIEnv *env,
|
||||
jclass thisclass, jstring java_fname, jint permission) {
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2000, 2002, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -31,6 +31,12 @@
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
JNIEXPORT jintArray JNICALL Java_java_util_prefs_WindowsPreferences_WindowsRegOpenKey
|
||||
(JNIEnv* env, jclass this_class, jint hKey, jbyteArray lpSubKey, jint securityMask) {
|
||||
HKEY handle;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -28,6 +28,8 @@
|
||||
#import <string.h>
|
||||
#import <time.h>
|
||||
|
||||
#include "jni_util.h"
|
||||
|
||||
/*
|
||||
* Based largely on klist.c,
|
||||
*
|
||||
@ -92,7 +94,7 @@ static jclass FindClass(JNIEnv *env, char *className)
|
||||
* Class: sun_security_krb5_KrbCreds
|
||||
* Method: JNI_OnLoad
|
||||
*/
|
||||
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserved)
|
||||
JNIEXPORT jint JNICALL DEF_JNI_OnLoad(JavaVM *jvm, void *reserved)
|
||||
{
|
||||
JNIEnv *env;
|
||||
|
||||
@ -191,7 +193,7 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserved)
|
||||
* Class: sun_security_jgss_KrbCreds
|
||||
* Method: JNI_OnUnload
|
||||
*/
|
||||
JNIEXPORT void JNICALL JNI_OnUnload(JavaVM *jvm, void *reserved)
|
||||
JNIEXPORT void JNICALL DEF_JNI_OnUnload(JavaVM *jvm, void *reserved)
|
||||
{
|
||||
JNIEnv *env;
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -27,6 +27,7 @@
|
||||
#include "NativeFunc.h"
|
||||
#include "jlong.h"
|
||||
#include <jni.h>
|
||||
#include "jni_util.h"
|
||||
|
||||
const int JAVA_DUPLICATE_TOKEN_CODE = 19; /* DUPLICATE_TOKEN */
|
||||
const int JAVA_OLD_TOKEN_CODE = 20; /* OLD_TOKEN */
|
||||
@ -94,7 +95,7 @@ jfieldID FID_NativeGSSContext_actualMech;
|
||||
int JGSS_DEBUG;
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
JNI_OnLoad(JavaVM *jvm, void *reserved) {
|
||||
DEF_JNI_OnLoad(JavaVM *jvm, void *reserved) {
|
||||
JNIEnv *env;
|
||||
jclass cls;
|
||||
|
||||
@ -363,7 +364,7 @@ JNI_OnLoad(JavaVM *jvm, void *reserved) {
|
||||
}
|
||||
|
||||
JNIEXPORT void JNICALL
|
||||
JNI_OnUnload(JavaVM *jvm, void *reserved) {
|
||||
DEF_JNI_OnUnload(JavaVM *jvm, void *reserved) {
|
||||
JNIEnv *env;
|
||||
|
||||
if ((*jvm)->GetEnv(jvm, (void **)&env, JNI_VERSION_1_2)) {
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -54,9 +54,6 @@ extern "C" {
|
||||
extern jstring getMinorMessage(JNIEnv *, jobject, OM_uint32);
|
||||
extern int sameMech(gss_OID, gss_OID);
|
||||
|
||||
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *, void *);
|
||||
JNIEXPORT void JNICALL JNI_OnUnload(JavaVM *, void *);
|
||||
|
||||
extern int JGSS_DEBUG;
|
||||
|
||||
extern jclass CLS_Object;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -42,6 +42,7 @@
|
||||
#include <lmcons.h>
|
||||
#include <lmapibuf.h>
|
||||
#include <jni.h>
|
||||
#include "jni_util.h"
|
||||
#include <winsock.h>
|
||||
|
||||
#undef LSA_SUCCESS
|
||||
@ -107,7 +108,7 @@ jobject BuildKerberosTime(JNIEnv *env, PLARGE_INTEGER kerbtime);
|
||||
* Method: JNI_OnLoad
|
||||
*/
|
||||
|
||||
JNIEXPORT jint JNICALL JNI_OnLoad(
|
||||
JNIEXPORT jint JNICALL DEF_JNI_OnLoad(
|
||||
JavaVM *jvm,
|
||||
void *reserved) {
|
||||
|
||||
@ -329,7 +330,7 @@ JNIEXPORT jint JNICALL JNI_OnLoad(
|
||||
* Method: JNI_OnUnload
|
||||
*/
|
||||
|
||||
JNIEXPORT void JNICALL JNI_OnUnload(
|
||||
JNIEXPORT void JNICALL DEF_JNI_OnUnload(
|
||||
JavaVM *jvm,
|
||||
void *reserved) {
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -55,6 +55,8 @@
|
||||
|
||||
#include "pcsc_md.h"
|
||||
|
||||
#include "jni_util.h"
|
||||
|
||||
#define MAX_STACK_BUFFER_SIZE 8192
|
||||
|
||||
// make the buffers larger than what should be necessary, just in case
|
||||
@ -101,7 +103,7 @@ jboolean handleRV(JNIEnv* env, LONG code) {
|
||||
}
|
||||
}
|
||||
|
||||
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) {
|
||||
JNIEXPORT jint JNICALL DEF_JNI_OnLoad(JavaVM *vm, void *reserved) {
|
||||
return JNI_VERSION_1_4;
|
||||
}
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -49,6 +49,11 @@
|
||||
} while((_result == -1) && (errno == EINTR)); \
|
||||
} while(0)
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
/*
|
||||
* Defines a callback that is invoked for each process
|
||||
*/
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -50,6 +50,11 @@
|
||||
} while((_result == -1) && (errno == EINTR)); \
|
||||
} while(0)
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
/*
|
||||
* Class: sun_tools_attach_VirtualMachineImpl
|
||||
* Method: socket
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -45,6 +45,11 @@
|
||||
} while((_result == -1) && (errno == EINTR)); \
|
||||
} while(0)
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
/*
|
||||
* Class: sun_tools_attach_VirtualMachineImpl
|
||||
* Method: open
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -87,6 +87,10 @@ typedef struct {
|
||||
#define ERR_OPEN_JVM_FAIL 200
|
||||
#define ERR_GET_ENQUEUE_FUNC_FAIL 201
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
/*
|
||||
* Code copied to target process
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2009, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2009, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -24,6 +24,7 @@
|
||||
*/
|
||||
|
||||
#include <jni.h>
|
||||
#include "jni_util.h"
|
||||
#include "impl/ecc_impl.h"
|
||||
|
||||
#define ILLEGAL_STATE_EXCEPTION "java/lang/IllegalStateException"
|
||||
@ -35,6 +36,11 @@
|
||||
|
||||
extern "C" {
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
/*
|
||||
* Throws an arbitrary Java exception.
|
||||
*/
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -29,6 +29,7 @@
|
||||
//
|
||||
|
||||
#include <jni.h>
|
||||
#include "jni_util.h"
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <windows.h>
|
||||
@ -50,6 +51,11 @@
|
||||
|
||||
extern "C" {
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
/*
|
||||
* Throws an arbitrary Java exception.
|
||||
* The exception message is a Windows system error message.
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
*/
|
||||
|
||||
/* Copyright (c) 2002 Graz University of Technology. All rights reserved.
|
||||
@ -73,7 +73,7 @@ jclass jLongClass;
|
||||
|
||||
JavaVM* jvm = NULL;
|
||||
|
||||
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) {
|
||||
JNIEXPORT jint JNICALL DEF_JNI_OnLoad(JavaVM *vm, void *reserved) {
|
||||
jvm = vm;
|
||||
return JNI_VERSION_1_4;
|
||||
}
|
||||
|
@ -27,6 +27,7 @@
|
||||
#include <string.h>
|
||||
#include <strings.h>
|
||||
#include <jni.h>
|
||||
#include "jni_util.h"
|
||||
#include <libsoftcrypto.h>
|
||||
#include "nativeCrypto.h"
|
||||
#include "nativeFunc.h"
|
||||
@ -59,7 +60,7 @@ void throwOutOfMemoryError(JNIEnv *env, const char *msg)
|
||||
(*env)->DeleteLocalRef(env, jExClass);
|
||||
}
|
||||
|
||||
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) {
|
||||
JNIEXPORT jint JNICALL DEF_JNI_OnLoad(JavaVM *vm, void *reserved) {
|
||||
return JNI_VERSION_1_4;
|
||||
}
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -26,6 +26,10 @@
|
||||
#import "apple_applescript_AppleScriptEngine.h"
|
||||
#import "apple_applescript_AppleScriptEngineFactory.h"
|
||||
|
||||
// Must include this before JavaNativeFoundation.h to get jni.h from build
|
||||
#include "jni.h"
|
||||
#include "jni_util.h"
|
||||
|
||||
#import <JavaNativeFoundation/JavaNativeFoundation.h>
|
||||
|
||||
#import "NS_Java_ConversionUtils.h"
|
||||
@ -33,6 +37,10 @@
|
||||
|
||||
//#define DEBUG 1
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
/*
|
||||
* Class: apple_applescript_AppleScriptEngineFactory
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -23,11 +23,21 @@
|
||||
* questions.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Must include this before JavaNativeFoundation.h to get jni.h from build
|
||||
*/
|
||||
#include "jni.h"
|
||||
#include "jni_util.h"
|
||||
|
||||
#import "com_apple_concurrent_LibDispatchNative.h"
|
||||
|
||||
#import <dispatch/dispatch.h>
|
||||
#import <JavaNativeFoundation/JavaNativeFoundation.h>
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
/*
|
||||
* Class: com_apple_concurrent_LibDispatchNative
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -194,7 +194,7 @@ compatible_versions(jint major_runtime, jint minor_runtime,
|
||||
* Returning JNI_ERR will cause the java_g VM to core dump, be careful.
|
||||
*/
|
||||
JNIEXPORT jint JNICALL
|
||||
Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
DEF_Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
{
|
||||
jvmtiError error;
|
||||
jvmtiCapabilities needed_capabilities;
|
||||
@ -380,7 +380,7 @@ Agent_OnLoad(JavaVM *vm, char *options, void *reserved)
|
||||
}
|
||||
|
||||
JNIEXPORT void JNICALL
|
||||
Agent_OnUnload(JavaVM *vm)
|
||||
DEF_Agent_OnUnload(JavaVM *vm)
|
||||
{
|
||||
|
||||
gdata->isLoaded = JNI_FALSE;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998, 2005, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -39,7 +39,4 @@ void debugInit_reset(JNIEnv *env);
|
||||
void debugInit_exit(jvmtiError, const char *);
|
||||
void forceExit(int);
|
||||
|
||||
JNIEXPORT jint JNICALL Agent_OnLoad(JavaVM *, char *, void *);
|
||||
JNIEXPORT void JNICALL Agent_OnUnload(JavaVM *);
|
||||
|
||||
#endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -101,9 +101,10 @@ findTransportOnLoad(void *handle)
|
||||
static void *
|
||||
loadTransportLibrary(const char *libdir, const char *name)
|
||||
{
|
||||
char buf[MAXPATHLEN*2+100];
|
||||
#ifndef STATIC_BUILD
|
||||
void *handle;
|
||||
char libname[MAXPATHLEN+2];
|
||||
char buf[MAXPATHLEN*2+100];
|
||||
const char *plibdir;
|
||||
|
||||
/* Convert libdir from UTF-8 to platform encoding */
|
||||
@ -125,6 +126,9 @@ loadTransportLibrary(const char *libdir, const char *name)
|
||||
/* dlopen (unix) / LoadLibrary (windows) the transport library */
|
||||
handle = dbgsysLoadLibrary(libname, buf, sizeof(buf));
|
||||
return handle;
|
||||
#else
|
||||
return (dbgsysLoadLibrary(NULL, buf, sizeof(buf)));
|
||||
#endif
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -277,18 +277,6 @@ typedef struct ObjectBatch {
|
||||
*/
|
||||
#define MOD_SYNTHETIC 0xf0000000 /* not in source code */
|
||||
|
||||
/*
|
||||
* jlong conversion macros
|
||||
*/
|
||||
#define jlong_zero ((jlong) 0)
|
||||
#define jlong_one ((jlong) 1)
|
||||
|
||||
#define jlong_to_ptr(a) ((void*)(intptr_t)(a))
|
||||
#define ptr_to_jlong(a) ((jlong)(intptr_t)(a))
|
||||
#define jint_to_jlong(a) ((jlong)(a))
|
||||
#define jlong_to_jint(a) ((jint)(a))
|
||||
|
||||
|
||||
/*
|
||||
* util funcs
|
||||
*/
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -33,6 +33,7 @@
|
||||
#include <jni.h>
|
||||
#include <jvm.h>
|
||||
#include <jvmti.h>
|
||||
#include "jni_util.h"
|
||||
|
||||
#include "log_messages.h"
|
||||
|
||||
|
@ -25,6 +25,7 @@
|
||||
|
||||
#include <stdio.h>
|
||||
#include <jni.h>
|
||||
#include "jni_util.h"
|
||||
#include "jvm.h"
|
||||
#include "management_ext.h"
|
||||
|
||||
@ -35,7 +36,7 @@ JavaVM* jvm = NULL;
|
||||
jint jmm_version = 0;
|
||||
|
||||
JNIEXPORT jint JNICALL
|
||||
JNI_OnLoad(JavaVM *vm, void *reserved) {
|
||||
DEF_JNI_OnLoad(JavaVM *vm, void *reserved) {
|
||||
JNIEnv* env;
|
||||
|
||||
jvm = vm;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -77,6 +77,8 @@ void mkdirs(int oklen, char* path) {
|
||||
|
||||
|
||||
#ifndef PRODUCT
|
||||
#ifndef STATIC_BUILD
|
||||
// use the definition in libjvm when building statically
|
||||
void breakpoint() { } // hook for debugger
|
||||
int assert_failed(const char* p) {
|
||||
char message[1<<12];
|
||||
@ -87,6 +89,7 @@ int assert_failed(const char* p) {
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
||||
void unpack_abort(const char* msg, unpacker* u) {
|
||||
if (msg == null) msg = "corrupt pack file or internal error";
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -95,6 +95,11 @@ static char* dbg = null;
|
||||
} while (JNI_FALSE)
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
static jlong read_input_via_jni(unpacker* self,
|
||||
void* buf, jlong minlen, jlong maxlen);
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2009, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -43,7 +43,7 @@ static jmethodID isaCtrID = 0;
|
||||
static const char* nativeSctpLib = "libsctp.so.1";
|
||||
static jboolean funcsLoaded = JNI_FALSE;
|
||||
|
||||
JNIEXPORT jint JNICALL JNI_OnLoad
|
||||
JNIEXPORT jint JNICALL DEF_JNI_OnLoad
|
||||
(JavaVM *vm, void *reserved) {
|
||||
return JNI_VERSION_1_2;
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -28,6 +28,7 @@
|
||||
#endif
|
||||
|
||||
#include <jni.h>
|
||||
#include "jni_util.h"
|
||||
#include "com_sun_security_auth_module_UnixSystem.h"
|
||||
#include <stdio.h>
|
||||
#include <pwd.h>
|
||||
@ -36,6 +37,11 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
JNIEXPORT void JNICALL
|
||||
Java_com_sun_security_auth_module_UnixSystem_getUnixInfo
|
||||
(JNIEnv *env, jobject obj) {
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -24,6 +24,7 @@
|
||||
*/
|
||||
|
||||
#include <jni.h>
|
||||
#include "jni_util.h"
|
||||
#include "com_sun_security_auth_module_NTSystem.h"
|
||||
|
||||
#include <windows.h>
|
||||
@ -49,6 +50,11 @@ static void throwIllegalArgumentException(JNIEnv *env, const char *msg) {
|
||||
(*env)->ThrowNew(env, clazz, msg);
|
||||
}
|
||||
|
||||
/*
|
||||
* Declare library specific JNI_Onload entry if static build
|
||||
*/
|
||||
DEF_STATIC_JNI_OnLoad
|
||||
|
||||
JNIEXPORT jlong JNICALL
|
||||
Java_com_sun_security_auth_module_NTSystem_getImpersonationToken0
|
||||
(JNIEnv *env, jobject obj) {
|
||||
|
Loading…
Reference in New Issue
Block a user