jdk/make/lib/CoreLibraries.gmk
changeset 29374 f031a666744a
parent 28999 86a1284f1128
child 29742 b73f38796859
equal deleted inserted replaced
29373:8f41a04d1a02 29374:f031a666744a
     1 #
     1 #
     2 # Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
     2 # Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
     3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4 #
     4 #
     5 # This code is free software; you can redistribute it and/or modify it
     5 # This code is free software; you can redistribute it and/or modify it
     6 # under the terms of the GNU General Public License version 2 only, as
     6 # under the terms of the GNU General Public License version 2 only, as
     7 # published by the Free Software Foundation.  Oracle designates this
     7 # published by the Free Software Foundation.  Oracle designates this
    24 #
    24 #
    25 
    25 
    26 WIN_VERIFY_LIB := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libverify/verify.lib
    26 WIN_VERIFY_LIB := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libverify/verify.lib
    27 
    27 
    28 ##########################################################################################
    28 ##########################################################################################
    29 # libfdlibm is statically linked with libjava below and not delivered into the 
    29 # libfdlibm is statically linked with libjava below and not delivered into the
    30 # product on its own.
    30 # product on its own.
    31 
    31 
    32 BUILD_LIBFDLIBM_OPTIMIZATION := HIGH
    32 BUILD_LIBFDLIBM_OPTIMIZATION := HIGH
    33 
    33 
    34 ifneq ($(OPENJDK_TARGET_OS), solaris)
    34 ifneq ($(OPENJDK_TARGET_OS), solaris)
    46       LANG := C, \
    46       LANG := C, \
    47       OPTIMIZATION := $(BUILD_LIBFDLIBM_OPTIMIZATION), \
    47       OPTIMIZATION := $(BUILD_LIBFDLIBM_OPTIMIZATION), \
    48       CFLAGS := $(CFLAGS_JDKLIB) $(LIBFDLIBM_CFLAGS), \
    48       CFLAGS := $(CFLAGS_JDKLIB) $(LIBFDLIBM_CFLAGS), \
    49       CFLAGS_windows_debug := -DLOGGING, \
    49       CFLAGS_windows_debug := -DLOGGING, \
    50       CFLAGS_aix := -qfloat=nomaf, \
    50       CFLAGS_aix := -qfloat=nomaf, \
       
    51       DISABLED_WARNINGS_gcc := sign-compare, \
       
    52       DISABLED_WARNINGS_microsoft := 4146 4244 4018, \
    51       ARFLAGS := $(ARFLAGS), \
    53       ARFLAGS := $(ARFLAGS), \
    52       OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfdlibm, \
    54       OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfdlibm, \
    53       DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
    55       DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
    54 
    56 
    55 else
    57 else
    92     OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
    94     OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
    93     SRC := $(JDK_TOPDIR)/src/java.base/share/native/libverify, \
    95     SRC := $(JDK_TOPDIR)/src/java.base/share/native/libverify, \
    94     LANG := C, \
    96     LANG := C, \
    95     OPTIMIZATION := $(LIBVERIFY_OPTIMIZATION), \
    97     OPTIMIZATION := $(LIBVERIFY_OPTIMIZATION), \
    96     CFLAGS := $(CFLAGS_JDKLIB), \
    98     CFLAGS := $(CFLAGS_JDKLIB), \
       
    99     DISABLED_WARNINGS_microsoft := 4244 4267, \
    97     MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libverify/mapfile-vers, \
   100     MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libverify/mapfile-vers, \
    98     LDFLAGS := $(LDFLAGS_JDKLIB) \
   101     LDFLAGS := $(LDFLAGS_JDKLIB) \
    99         $(call SET_SHARED_LIBRARY_ORIGIN), \
   102         $(call SET_SHARED_LIBRARY_ORIGIN), \
   100     LDFLAGS_SUFFIX_unix := -ljvm -lc, \
   103     LDFLAGS_SUFFIX_unix := -ljvm -lc, \
   101     LDFLAGS_SUFFIX_windows := jvm.lib, \
   104     LDFLAGS_SUFFIX_windows := jvm.lib, \
   145     SRC := $(LIBJAVA_SRC_DIRS), \
   148     SRC := $(LIBJAVA_SRC_DIRS), \
   146     LANG := C, \
   149     LANG := C, \
   147     OPTIMIZATION := HIGH, \
   150     OPTIMIZATION := HIGH, \
   148     CFLAGS := $(CFLAGS_JDKLIB) \
   151     CFLAGS := $(CFLAGS_JDKLIB) \
   149         $(LIBJAVA_CFLAGS), \
   152         $(LIBJAVA_CFLAGS), \
       
   153     DISABLED_WARNINGS_gcc := type-limits format-nonliteral, \
       
   154     DISABLED_WARNINGS_clang := int-conversion, \
       
   155     DISABLED_WARNINGS_solstudio := E_DECLARATION_IN_CODE, \
       
   156     DISABLED_WARNINGS_microsoft := 4022 4267, \
   150     MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjava/mapfile-vers, \
   157     MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjava/mapfile-vers, \
   151     LDFLAGS := $(LDFLAGS_JDKLIB) \
   158     LDFLAGS := $(LDFLAGS_JDKLIB) \
   152         $(call SET_SHARED_LIBRARY_ORIGIN), \
   159         $(call SET_SHARED_LIBRARY_ORIGIN), \
   153     LDFLAGS_SUFFIX_unix := -ljvm -lverify, \
   160     LDFLAGS_SUFFIX_unix := -ljvm -lverify, \
   154     LDFLAGS_SUFFIX_solaris := -lsocket -lnsl -lscf $(LIBDL) $(BUILD_LIBFDLIBM) -lc, \
   161     LDFLAGS_SUFFIX_solaris := -lsocket -lnsl -lscf $(LIBDL) $(BUILD_LIBFDLIBM) -lc, \
   207         $(ZLIB_CPPFLAGS) \
   214         $(ZLIB_CPPFLAGS) \
   208         -I$(JDK_TOPDIR)/src/java.base/share/native/libjava \
   215         -I$(JDK_TOPDIR)/src/java.base/share/native/libjava \
   209         -I$(JDK_TOPDIR)/src/java.base/$(OPENJDK_TARGET_OS_TYPE)/native/libjava \
   216         -I$(JDK_TOPDIR)/src/java.base/$(OPENJDK_TARGET_OS_TYPE)/native/libjava \
   210         -I$(SUPPORT_OUTPUTDIR)/headers/java.base, \
   217         -I$(SUPPORT_OUTPUTDIR)/headers/java.base, \
   211     CFLAGS_unix := $(BUILD_LIBZIP_MMAP) -UDEBUG, \
   218     CFLAGS_unix := $(BUILD_LIBZIP_MMAP) -UDEBUG, \
       
   219     DISABLED_WARNINGS_gcc := parentheses, \
       
   220     DISABLED_WARNINGS_clang := dangling-else, \
       
   221     DISABLED_WARNINGS_microsoft := 4267, \
   212     MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libzip/mapfile-vers, \
   222     MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libzip/mapfile-vers, \
   213     REORDER := $(BUILD_LIBZIP_REORDER), \
   223     REORDER := $(BUILD_LIBZIP_REORDER), \
   214     LDFLAGS := $(LDFLAGS_JDKLIB) \
   224     LDFLAGS := $(LDFLAGS_JDKLIB) \
   215         $(call SET_SHARED_LIBRARY_ORIGIN) \
   225         $(call SET_SHARED_LIBRARY_ORIGIN) \
   216         $(EXPORT_ZIP_FUNCS), \
   226         $(EXPORT_ZIP_FUNCS), \
   305     EXCLUDE_FILES := $(LIBJLI_EXCLUDE_FILES), \
   315     EXCLUDE_FILES := $(LIBJLI_EXCLUDE_FILES), \
   306     EXTRA_FILES := $(LIBJLI_EXTRA_FILES), \
   316     EXTRA_FILES := $(LIBJLI_EXTRA_FILES), \
   307     LANG := C, \
   317     LANG := C, \
   308     OPTIMIZATION := HIGH, \
   318     OPTIMIZATION := HIGH, \
   309     CFLAGS := $(LIBJLI_CFLAGS), \
   319     CFLAGS := $(LIBJLI_CFLAGS), \
       
   320     DISABLED_WARNINGS_gcc := pointer-to-int-cast sign-compare format-nonliteral \
       
   321         parentheses, \
       
   322     DISABLED_WARNINGS_clang := implicit-function-declaration parentheses \
       
   323         int-conversion, \
       
   324     DISABLED_WARNINGS_solstudio := E_ASM_DISABLES_OPTIMIZATION E_NEWLINE_NOT_LAST, \
       
   325     DISABLED_WARNINGS_microsoft := 4244 4047 4267, \
   310     MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjli/mapfile-vers, \
   326     MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjli/mapfile-vers, \
   311     LDFLAGS := $(LDFLAGS_JDKLIB) \
   327     LDFLAGS := $(LDFLAGS_JDKLIB) \
   312         $(call SET_SHARED_LIBRARY_ORIGIN), \
   328         $(call SET_SHARED_LIBRARY_ORIGIN), \
   313     LDFLAGS_linux := $(call SET_SHARED_LIBRARY_ORIGIN,/..), \
   329     LDFLAGS_linux := $(call SET_SHARED_LIBRARY_ORIGIN,/..), \
   314     LDFLAGS_solaris := $(call SET_SHARED_LIBRARY_ORIGIN,/..), \
   330     LDFLAGS_solaris := $(call SET_SHARED_LIBRARY_ORIGIN,/..), \
   353       EXCLUDE_FILES := $(LIBJLI_EXCLUDE_FILES), \
   369       EXCLUDE_FILES := $(LIBJLI_EXCLUDE_FILES), \
   354       EXTRA_FILES := $(LIBJLI_EXTRA_FILES), \
   370       EXTRA_FILES := $(LIBJLI_EXTRA_FILES), \
   355       LANG := C, \
   371       LANG := C, \
   356       OPTIMIZATION := HIGH, \
   372       OPTIMIZATION := HIGH, \
   357       CFLAGS := $(STATIC_LIBRARY_FLAGS) $(LIBJLI_CFLAGS), \
   373       CFLAGS := $(STATIC_LIBRARY_FLAGS) $(LIBJLI_CFLAGS), \
       
   374       DISABLED_WARNINGS_microsoft := 4244 4047 4267, \
   358       ARFLAGS := $(ARFLAGS), \
   375       ARFLAGS := $(ARFLAGS), \
   359       OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjli_static, \
   376       OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjli_static, \
   360       DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
   377       DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
   361 
   378 
   362   TARGETS += $(BUILD_LIBJLI_STATIC)
   379   TARGETS += $(BUILD_LIBJLI_STATIC)
   373       EXCLUDE_FILES := $(LIBJLI_EXCLUDE_FILES), \
   390       EXCLUDE_FILES := $(LIBJLI_EXCLUDE_FILES), \
   374       EXTRA_FILES := $(LIBJLI_EXTRA_FILES), \
   391       EXTRA_FILES := $(LIBJLI_EXTRA_FILES), \
   375       LANG := C, \
   392       LANG := C, \
   376       OPTIMIZATION := HIGH, \
   393       OPTIMIZATION := HIGH, \
   377       CFLAGS := $(CFLAGS_JDKLIB) $(LIBJLI_CFLAGS), \
   394       CFLAGS := $(CFLAGS_JDKLIB) $(LIBJLI_CFLAGS), \
       
   395       DISABLED_WARNINGS_clang := implicit-function-declaration parentheses \
       
   396           int-conversion, \
   378       LDFLAGS := -nostdlib -r, \
   397       LDFLAGS := -nostdlib -r, \
   379       OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjli_static, \
   398       OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjli_static, \
   380       DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
   399       DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES)))
   381 
   400 
   382   $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjli_static.a: $(BUILD_LIBJLI_STATIC)
   401   $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjli_static.a: $(BUILD_LIBJLI_STATIC)
   399       OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjli_static))
   418       OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjli_static))
   400 
   419 
   401   TARGETS += $(BUILD_LIBJLI_STATIC)
   420   TARGETS += $(BUILD_LIBJLI_STATIC)
   402 
   421 
   403 endif
   422 endif
   404