< prev index next >

make/modules/java.base/Lib.gmk

Print this page
rev 59383 : [mq]: final


  30 
  31 # Prepare the find cache.
  32 $(call FillFindCache, $(wildcard $(TOPDIR)/src/java.base/*/native))
  33 
  34 ################################################################################
  35 # Create all the core libraries
  36 
  37 include lib/CoreLibraries.gmk
  38 
  39 ################################################################################
  40 # Create the network library
  41 
  42 $(eval $(call SetupJdkLibrary, BUILD_LIBNET, \
  43     NAME := net, \
  44     OPTIMIZATION := LOW, \
  45     CFLAGS := $(CFLAGS_JDKLIB), \
  46     DISABLED_WARNINGS_gcc := format-nonliteral unused-function, \
  47     DISABLED_WARNINGS_clang := parentheses-equality constant-logical-operand \
  48         format-nonliteral undef, \
  49     DISABLED_WARNINGS_microsoft := 4244 4047 4133 4996, \
  50     DISABLED_WARNINGS_solstudio := E_ARG_INCOMPATIBLE_WITH_ARG_L, \
  51     LDFLAGS := $(LDFLAGS_JDKLIB) \
  52         $(call SET_SHARED_LIBRARY_ORIGIN), \
  53     LDFLAGS_windows := -delayload:secur32.dll -delayload:iphlpapi.dll, \
  54     LIBS_unix := -ljvm -ljava, \
  55     LIBS_linux := $(LIBDL) -lpthread, \
  56     LIBS_solaris := -lnsl -lsocket $(LIBDL), \
  57     LIBS_aix := $(LIBDL),\
  58     LIBS_windows := ws2_32.lib jvm.lib secur32.lib iphlpapi.lib winhttp.lib \
  59         delayimp.lib $(WIN_JAVA_LIB) advapi32.lib, \
  60     LIBS_macosx := -framework CoreFoundation -framework CoreServices, \
  61 ))
  62 
  63 $(BUILD_LIBNET): $(BUILD_LIBJAVA)
  64 
  65 TARGETS += $(BUILD_LIBNET)
  66 
  67 ################################################################################
  68 # Create the nio library
  69 
  70 $(eval $(call SetupJdkLibrary, BUILD_LIBNIO, \
  71     NAME := nio, \
  72     OPTIMIZATION := HIGH, \
  73     WARNINGS_AS_ERRORS_xlc := false, \
  74     CFLAGS := $(CFLAGS_JDKLIB), \
  75     DISABLED_WARNINGS_gcc := undef, \
  76     DISABLED_WARNINGS_clang := undef, \
  77     EXTRA_HEADER_DIRS := \
  78         libnio/ch \
  79         libnio/fs \
  80         libnet, \
  81     LDFLAGS := $(LDFLAGS_JDKLIB) \
  82         $(call SET_SHARED_LIBRARY_ORIGIN), \
  83     LIBS_unix := -ljava -lnet, \
  84     LIBS_linux := -lpthread $(LIBDL), \
  85     LIBS_solaris := -ljvm -lsocket -lposix4 $(LIBDL) \
  86         -lsendfile, \
  87     LIBS_aix := $(LIBDL), \
  88     LIBS_macosx := \
  89         -framework CoreFoundation -framework CoreServices, \
  90     LIBS_windows := jvm.lib ws2_32.lib $(WIN_JAVA_LIB) \
  91         $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libnet/net.lib \
  92         advapi32.lib, \
  93 ))
  94 
  95 TARGETS += $(BUILD_LIBNIO)
  96 
  97 $(BUILD_LIBNIO): $(BUILD_LIBNET)
  98 
  99 ################################################################################
 100 # Create the macosx security library
 101 
 102 ifeq ($(call isTargetOs, macosx), true)
 103   # JavaNativeFoundation framework not supported in static builds
 104   ifneq ($(STATIC_BUILD), true)
 105 
 106     $(eval $(call SetupJdkLibrary, BUILD_LIBOSXSECURITY, \


 123     $(BUILD_LIBOSXSECURITY): $(BUILD_LIBJAVA)
 124 
 125     TARGETS += $(BUILD_LIBOSXSECURITY)
 126 
 127   endif
 128 endif
 129 
 130 ################################################################################
 131 # Create the jsig library
 132 
 133 ifeq ($(call isTargetOsType, unix), true)
 134   ifeq ($(STATIC_BUILD), false)
 135     $(eval $(call SetupJdkLibrary, BUILD_LIBJSIG, \
 136         NAME := jsig, \
 137         OPTIMIZATION := LOW, \
 138         CFLAGS := $(CFLAGS_JDKLIB) $(LIBJSIG_CFLAGS), \
 139         DISABLED_WARNINGS_gcc := undef, \
 140         LDFLAGS := $(LDFLAGS_JDKLIB) \
 141             $(call SET_SHARED_LIBRARY_ORIGIN), \
 142         LIBS_linux := $(LIBDL), \
 143         LIBS_solaris := $(LIBDL), \
 144         LIBS_aix := $(LIBDL), \
 145     ))
 146 
 147     TARGETS += $(BUILD_LIBJSIG)
 148 
 149     ############################################################################
 150     # Create symlinks to libjsig in each JVM variant sub dir
 151     ifneq ($(STATIC_LIBS), true)
 152       LIB_OUTPUTDIR := $(call FindLibDirForModule, java.base)
 153 
 154       # $1 variant subdir
 155       define CreateSymlinks
 156         # Always symlink from libdir/variant/libjsig.so -> ../libjsig.so.
 157         $(LIB_OUTPUTDIR)/$1/$(call SHARED_LIBRARY,jsig): \
 158             $(LIB_OUTPUTDIR)/$(call SHARED_LIBRARY,jsig)
 159                 $$(call MakeDir, $$(@D))
 160                 $(RM) $$@
 161                 $(LN) -s ../$$(@F) $$@
 162 
 163         TARGETS += $(LIB_OUTPUTDIR)/$1/$(call SHARED_LIBRARY,jsig)




  30 
  31 # Prepare the find cache.
  32 $(call FillFindCache, $(wildcard $(TOPDIR)/src/java.base/*/native))
  33 
  34 ################################################################################
  35 # Create all the core libraries
  36 
  37 include lib/CoreLibraries.gmk
  38 
  39 ################################################################################
  40 # Create the network library
  41 
  42 $(eval $(call SetupJdkLibrary, BUILD_LIBNET, \
  43     NAME := net, \
  44     OPTIMIZATION := LOW, \
  45     CFLAGS := $(CFLAGS_JDKLIB), \
  46     DISABLED_WARNINGS_gcc := format-nonliteral unused-function, \
  47     DISABLED_WARNINGS_clang := parentheses-equality constant-logical-operand \
  48         format-nonliteral undef, \
  49     DISABLED_WARNINGS_microsoft := 4244 4047 4133 4996, \

  50     LDFLAGS := $(LDFLAGS_JDKLIB) \
  51         $(call SET_SHARED_LIBRARY_ORIGIN), \
  52     LDFLAGS_windows := -delayload:secur32.dll -delayload:iphlpapi.dll, \
  53     LIBS_unix := -ljvm -ljava, \
  54     LIBS_linux := $(LIBDL) -lpthread, \

  55     LIBS_aix := $(LIBDL),\
  56     LIBS_windows := ws2_32.lib jvm.lib secur32.lib iphlpapi.lib winhttp.lib \
  57         delayimp.lib $(WIN_JAVA_LIB) advapi32.lib, \
  58     LIBS_macosx := -framework CoreFoundation -framework CoreServices, \
  59 ))
  60 
  61 $(BUILD_LIBNET): $(BUILD_LIBJAVA)
  62 
  63 TARGETS += $(BUILD_LIBNET)
  64 
  65 ################################################################################
  66 # Create the nio library
  67 
  68 $(eval $(call SetupJdkLibrary, BUILD_LIBNIO, \
  69     NAME := nio, \
  70     OPTIMIZATION := HIGH, \
  71     WARNINGS_AS_ERRORS_xlc := false, \
  72     CFLAGS := $(CFLAGS_JDKLIB), \
  73     DISABLED_WARNINGS_gcc := undef, \
  74     DISABLED_WARNINGS_clang := undef, \
  75     EXTRA_HEADER_DIRS := \
  76         libnio/ch \
  77         libnio/fs \
  78         libnet, \
  79     LDFLAGS := $(LDFLAGS_JDKLIB) \
  80         $(call SET_SHARED_LIBRARY_ORIGIN), \
  81     LIBS_unix := -ljava -lnet, \
  82     LIBS_linux := -lpthread $(LIBDL), \


  83     LIBS_aix := $(LIBDL), \
  84     LIBS_macosx := \
  85         -framework CoreFoundation -framework CoreServices, \
  86     LIBS_windows := jvm.lib ws2_32.lib $(WIN_JAVA_LIB) \
  87         $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libnet/net.lib \
  88         advapi32.lib, \
  89 ))
  90 
  91 TARGETS += $(BUILD_LIBNIO)
  92 
  93 $(BUILD_LIBNIO): $(BUILD_LIBNET)
  94 
  95 ################################################################################
  96 # Create the macosx security library
  97 
  98 ifeq ($(call isTargetOs, macosx), true)
  99   # JavaNativeFoundation framework not supported in static builds
 100   ifneq ($(STATIC_BUILD), true)
 101 
 102     $(eval $(call SetupJdkLibrary, BUILD_LIBOSXSECURITY, \


 119     $(BUILD_LIBOSXSECURITY): $(BUILD_LIBJAVA)
 120 
 121     TARGETS += $(BUILD_LIBOSXSECURITY)
 122 
 123   endif
 124 endif
 125 
 126 ################################################################################
 127 # Create the jsig library
 128 
 129 ifeq ($(call isTargetOsType, unix), true)
 130   ifeq ($(STATIC_BUILD), false)
 131     $(eval $(call SetupJdkLibrary, BUILD_LIBJSIG, \
 132         NAME := jsig, \
 133         OPTIMIZATION := LOW, \
 134         CFLAGS := $(CFLAGS_JDKLIB) $(LIBJSIG_CFLAGS), \
 135         DISABLED_WARNINGS_gcc := undef, \
 136         LDFLAGS := $(LDFLAGS_JDKLIB) \
 137             $(call SET_SHARED_LIBRARY_ORIGIN), \
 138         LIBS_linux := $(LIBDL), \

 139         LIBS_aix := $(LIBDL), \
 140     ))
 141 
 142     TARGETS += $(BUILD_LIBJSIG)
 143 
 144     ############################################################################
 145     # Create symlinks to libjsig in each JVM variant sub dir
 146     ifneq ($(STATIC_LIBS), true)
 147       LIB_OUTPUTDIR := $(call FindLibDirForModule, java.base)
 148 
 149       # $1 variant subdir
 150       define CreateSymlinks
 151         # Always symlink from libdir/variant/libjsig.so -> ../libjsig.so.
 152         $(LIB_OUTPUTDIR)/$1/$(call SHARED_LIBRARY,jsig): \
 153             $(LIB_OUTPUTDIR)/$(call SHARED_LIBRARY,jsig)
 154                 $$(call MakeDir, $$(@D))
 155                 $(RM) $$@
 156                 $(LN) -s ../$$(@F) $$@
 157 
 158         TARGETS += $(LIB_OUTPUTDIR)/$1/$(call SHARED_LIBRARY,jsig)


< prev index next >