6 # under the terms of the GNU General Public License version 2 only, as
7 # published by the Free Software Foundation. Oracle designates this
8 # particular file as subject to the "Classpath" exception as provided
9 # by Oracle in the LICENSE file that accompanied this code.
10 #
11 # This code is distributed in the hope that it will be useful, but WITHOUT
12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 # version 2 for more details (a copy is included in the LICENSE file that
15 # accompanied this code).
16 #
17 # You should have received a copy of the GNU General Public License version
18 # 2 along with this work; if not, write to the Free Software Foundation,
19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 #
21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 # or visit www.oracle.com if you need additional information or have any
23 # questions.
24 #
25
26 WIN_VERIFY_LIB := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libverify/verify.lib
27
28 # Hook to include the corresponding custom file, if present.
29 $(eval $(call IncludeCustomExtension, lib/CoreLibraries.gmk))
30
31
32 ##########################################################################################
33 # libfdlibm is statically linked with libjava below and not delivered into the
34 # product on its own.
35
36 BUILD_LIBFDLIBM_OPTIMIZATION := NONE
37
38 ifeq ($(call isTargetOs, solaris), true)
39 BUILD_LIBFDLIBM_OPTIMIZATION := HIGH
40 endif
41
42 # If FDLIBM_CFLAGS is non-empty we know that we can optimize
43 # fdlibm when adding those extra C flags. Currently GCC,
44 # and clang only.
45 ifneq ($(FDLIBM_CFLAGS), )
46 BUILD_LIBFDLIBM_OPTIMIZATION := LOW
47 endif
93 ifeq ($(call isTargetOs, macosx), true)
94 BUILD_LIBJAVA_java_props_md.c_CFLAGS := -x objective-c
95 BUILD_LIBJAVA_java_props_macosx.c_CFLAGS := -x objective-c
96 endif
97
98 $(eval $(call SetupJdkLibrary, BUILD_LIBJAVA, \
99 NAME := java, \
100 OPTIMIZATION := HIGH, \
101 CFLAGS := $(CFLAGS_JDKLIB) \
102 $(LIBJAVA_CFLAGS), \
103 jdk_util.c_CFLAGS := $(VERSION_CFLAGS), \
104 EXTRA_HEADER_DIRS := libfdlibm, \
105 WARNINGS_AS_ERRORS_xlc := false, \
106 DISABLED_WARNINGS_gcc := unused-result unused-function, \
107 DISABLED_WARNINGS_solstudio := E_STATEMENT_NOT_REACHED, \
108 LDFLAGS := $(LDFLAGS_JDKLIB) \
109 $(call SET_SHARED_LIBRARY_ORIGIN), \
110 LDFLAGS_macosx := -L$(SUPPORT_OUTPUTDIR)/native/$(MODULE)/, \
111 LDFLAGS_windows := -delayload:shell32.dll, \
112 LIBS := $(BUILD_LIBFDLIBM_TARGET), \
113 LIBS_unix := -ljvm -lverify, \
114 LIBS_linux := $(LIBDL), \
115 LIBS_solaris := -lsocket -lnsl -lscf $(LIBDL), \
116 LIBS_aix := $(LIBDL) $(LIBM),\
117 LIBS_macosx := -framework CoreFoundation \
118 -framework Foundation \
119 -framework SystemConfiguration, \
120 LIBS_windows := jvm.lib $(WIN_VERIFY_LIB) \
121 shell32.lib delayimp.lib \
122 advapi32.lib version.lib, \
123 ))
124
125 TARGETS += $(BUILD_LIBJAVA)
126
127 $(BUILD_LIBJAVA): $(BUILD_LIBVERIFY)
128
129 $(BUILD_LIBJAVA): $(BUILD_LIBFDLIBM)
130
131 ##########################################################################################
132
133 BUILD_LIBZIP_EXCLUDES :=
134 ifeq ($(USE_EXTERNAL_LIBZ), true)
135 LIBZIP_EXCLUDES += zlib
136 endif
137
138 ifeq ($(LIBZIP_CAN_USE_MMAP), true)
139 BUILD_LIBZIP_MMAP := -DUSE_MMAP
140 endif
|
6 # under the terms of the GNU General Public License version 2 only, as
7 # published by the Free Software Foundation. Oracle designates this
8 # particular file as subject to the "Classpath" exception as provided
9 # by Oracle in the LICENSE file that accompanied this code.
10 #
11 # This code is distributed in the hope that it will be useful, but WITHOUT
12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 # version 2 for more details (a copy is included in the LICENSE file that
15 # accompanied this code).
16 #
17 # You should have received a copy of the GNU General Public License version
18 # 2 along with this work; if not, write to the Free Software Foundation,
19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 #
21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 # or visit www.oracle.com if you need additional information or have any
23 # questions.
24 #
25
26 # Hook to include the corresponding custom file, if present.
27 $(eval $(call IncludeCustomExtension, lib/CoreLibraries.gmk))
28
29
30 ##########################################################################################
31 # libfdlibm is statically linked with libjava below and not delivered into the
32 # product on its own.
33
34 BUILD_LIBFDLIBM_OPTIMIZATION := NONE
35
36 ifeq ($(call isTargetOs, solaris), true)
37 BUILD_LIBFDLIBM_OPTIMIZATION := HIGH
38 endif
39
40 # If FDLIBM_CFLAGS is non-empty we know that we can optimize
41 # fdlibm when adding those extra C flags. Currently GCC,
42 # and clang only.
43 ifneq ($(FDLIBM_CFLAGS), )
44 BUILD_LIBFDLIBM_OPTIMIZATION := LOW
45 endif
91 ifeq ($(call isTargetOs, macosx), true)
92 BUILD_LIBJAVA_java_props_md.c_CFLAGS := -x objective-c
93 BUILD_LIBJAVA_java_props_macosx.c_CFLAGS := -x objective-c
94 endif
95
96 $(eval $(call SetupJdkLibrary, BUILD_LIBJAVA, \
97 NAME := java, \
98 OPTIMIZATION := HIGH, \
99 CFLAGS := $(CFLAGS_JDKLIB) \
100 $(LIBJAVA_CFLAGS), \
101 jdk_util.c_CFLAGS := $(VERSION_CFLAGS), \
102 EXTRA_HEADER_DIRS := libfdlibm, \
103 WARNINGS_AS_ERRORS_xlc := false, \
104 DISABLED_WARNINGS_gcc := unused-result unused-function, \
105 DISABLED_WARNINGS_solstudio := E_STATEMENT_NOT_REACHED, \
106 LDFLAGS := $(LDFLAGS_JDKLIB) \
107 $(call SET_SHARED_LIBRARY_ORIGIN), \
108 LDFLAGS_macosx := -L$(SUPPORT_OUTPUTDIR)/native/$(MODULE)/, \
109 LDFLAGS_windows := -delayload:shell32.dll, \
110 LIBS := $(BUILD_LIBFDLIBM_TARGET), \
111 LIBS_unix := -ljvm, \
112 LIBS_linux := $(LIBDL), \
113 LIBS_solaris := -lsocket -lnsl -lscf $(LIBDL), \
114 LIBS_aix := $(LIBDL) $(LIBM),\
115 LIBS_macosx := -framework CoreFoundation \
116 -framework Foundation \
117 -framework SystemConfiguration, \
118 LIBS_windows := jvm.lib \
119 shell32.lib delayimp.lib \
120 advapi32.lib version.lib, \
121 ))
122
123 TARGETS += $(BUILD_LIBJAVA)
124
125 $(BUILD_LIBJAVA): $(BUILD_LIBVERIFY)
126
127 $(BUILD_LIBJAVA): $(BUILD_LIBFDLIBM)
128
129 ##########################################################################################
130
131 BUILD_LIBZIP_EXCLUDES :=
132 ifeq ($(USE_EXTERNAL_LIBZ), true)
133 LIBZIP_EXCLUDES += zlib
134 endif
135
136 ifeq ($(LIBZIP_CAN_USE_MMAP), true)
137 BUILD_LIBZIP_MMAP := -DUSE_MMAP
138 endif
|