author | ihse |
Tue, 15 Dec 2015 11:02:12 +0100 | |
changeset 34695 | 7a6cc9982d22 |
parent 33406 | 4680f7495292 |
child 35276 | 50b3cdcef339 |
permissions | -rw-r--r-- |
30355
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
1 |
# |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
2 |
# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved. |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
3 |
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
4 |
# |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
5 |
# This code is free software; you can redistribute it and/or modify it |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
6 |
# under the terms of the GNU General Public License version 2 only, as |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
7 |
# published by the Free Software Foundation. Oracle designates this |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
8 |
# particular file as subject to the "Classpath" exception as provided |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
9 |
# by Oracle in the LICENSE file that accompanied this code. |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
10 |
# |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
11 |
# This code is distributed in the hope that it will be useful, but WITHOUT |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
12 |
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
13 |
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
14 |
# version 2 for more details (a copy is included in the LICENSE file that |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
15 |
# accompanied this code). |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
16 |
# |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
17 |
# You should have received a copy of the GNU General Public License version |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
18 |
# 2 along with this work; if not, write to the Free Software Foundation, |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
19 |
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
20 |
# |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
21 |
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
22 |
# or visit www.oracle.com if you need additional information or have any |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
23 |
# questions. |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
24 |
# |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
25 |
|
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
26 |
include LibCommon.gmk |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
27 |
|
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
28 |
# Hook to include the corresponding custom file, if present. |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
29 |
$(eval $(call IncludeCustomExtension, jdk, lib/Lib-jdk.management.gmk)) |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
30 |
|
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
31 |
################################################################################ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
32 |
|
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
33 |
LIBMANAGEMENT_EXT_SRC += $(JDK_TOPDIR)/src/jdk.management/share/native/libmanagement_ext \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
34 |
$(JDK_TOPDIR)/src/jdk.management/$(OPENJDK_TARGET_OS_TYPE)/native/libmanagement_ext \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
35 |
$(JDK_TOPDIR)/src/jdk.management/$(OPENJDK_TARGET_OS)/native/libmanagement_ext |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
36 |
LIBMANAGEMENT_EXT_CFLAGS := -I$(JDK_TOPDIR)/src/java.management/share/native/include \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
37 |
$(addprefix -I,$(LIBMANAGEMENT_EXT_SRC)) \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
38 |
-I$(SUPPORT_OUTPUTDIR)/headers/jdk.management \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
39 |
$(LIBJAVA_HEADER_FLAGS) \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
40 |
# |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
41 |
|
30667
cd5b7fd6c0cf
8079345: After 8079248 fixed JDK still fails with "jdk\\bin\\management_ext.dll: The specified procedure could not be found"
sla
parents:
30366
diff
changeset
|
42 |
ifeq ($(OPENJDK_TARGET_OS), windows) |
cd5b7fd6c0cf
8079345: After 8079248 fixed JDK still fails with "jdk\\bin\\management_ext.dll: The specified procedure could not be found"
sla
parents:
30366
diff
changeset
|
43 |
# In (at least) VS2013 and later, -DPSAPI_VERSION=1 is needed to generate |
cd5b7fd6c0cf
8079345: After 8079248 fixed JDK still fails with "jdk\\bin\\management_ext.dll: The specified procedure could not be found"
sla
parents:
30366
diff
changeset
|
44 |
# a binary that is compatible with windows versions older than 7/2008R2. |
cd5b7fd6c0cf
8079345: After 8079248 fixed JDK still fails with "jdk\\bin\\management_ext.dll: The specified procedure could not be found"
sla
parents:
30366
diff
changeset
|
45 |
# See MSDN documentation for GetProcessMemoryInfo for more information. |
cd5b7fd6c0cf
8079345: After 8079248 fixed JDK still fails with "jdk\\bin\\management_ext.dll: The specified procedure could not be found"
sla
parents:
30366
diff
changeset
|
46 |
LIBMANAGEMENT_EXT_CFLAGS += -DPSAPI_VERSION=1 |
cd5b7fd6c0cf
8079345: After 8079248 fixed JDK still fails with "jdk\\bin\\management_ext.dll: The specified procedure could not be found"
sla
parents:
30366
diff
changeset
|
47 |
endif |
30366
74651100cf08
8079248: JDK fails with "jdk\\bin\\management_ext.dll: The specified procedure could not be found"
sla
parents:
30355
diff
changeset
|
48 |
|
30355
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
49 |
LIBMANAGEMENT_EXT_OPTIMIZATION := HIGH |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
50 |
ifneq ($(findstring $(OPENJDK_TARGET_OS), solaris linux), ) |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
51 |
ifeq ($(ENABLE_DEBUG_SYMBOLS), true) |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
52 |
LIBMANAGEMENT_EXT_OPTIMIZATION := LOW |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
53 |
endif |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
54 |
endif |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
55 |
|
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
56 |
$(eval $(call SetupNativeCompilation,BUILD_LIBMANAGEMENT_EXT, \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
57 |
LIBRARY := management_ext, \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
58 |
OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
59 |
SRC := $(LIBMANAGEMENT_EXT_SRC), \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
60 |
LANG := C, \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
61 |
OPTIMIZATION := $(LIBMANAGEMENT_EXT_OPTIMIZATION), \ |
31069
14be2fa211f6
8081616: Remove hard-coded CFLAGS_WARNINGS_ARE_ERRORS to fully respect --disable-warnings-as-errors
ihse
parents:
30667
diff
changeset
|
62 |
CFLAGS := $(CFLAGS_JDKLIB) $(LIBMANAGEMENT_EXT_CFLAGS), \ |
30355
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
63 |
MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libmanagement_ext/mapfile-vers, \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
64 |
LDFLAGS := $(LDFLAGS_JDKLIB) \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
65 |
$(call SET_SHARED_LIBRARY_ORIGIN), \ |
33406 | 66 |
LIBS := $(JDKLIB_LIBS), \ |
67 |
LIBS_solaris := -lkstat, \ |
|
68 |
LIBS_aix := -lperfstat,\ |
|
69 |
LIBS_windows := jvm.lib psapi.lib $(WIN_JAVA_LIB) advapi32.lib, \ |
|
30355
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
70 |
VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
71 |
RC_FLAGS := $(RC_FLAGS) \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
72 |
-D "JDK_FNAME=management_ext.dll" \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
73 |
-D "JDK_INTERNAL_NAME=management_ext" \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
74 |
-D "JDK_FTYPE=0x2L", \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
75 |
OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libmanagement_ext, \ |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
76 |
DEBUG_SYMBOLS := true)) |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
77 |
|
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
78 |
$(BUILD_LIBMANAGEMENT_EXT): $(call FindLib, java.base, java) |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
79 |
|
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
80 |
TARGETS += $(BUILD_LIBMANAGEMENT_EXT) |
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
81 |
|
e37c7eba132f
8042901: Allow com.sun.management to be in a different module to java.lang.management
sjiang
parents:
diff
changeset
|
82 |
################################################################################ |