< prev index next >

make/hotspot/lib/JvmMapfile.gmk

Print this page
rev 59102 : imported patch build


  31 ifeq ($(call And, $(call isTargetOs, windows) $(call isTargetCpu, x86_64)), false)
  32   # On Windows x86_64, we should not have any symbols at all, since that
  33   # results in duplicate warnings from the linker (JDK-8043491).
  34   SYMBOLS_SRC += $(TOPDIR)/make/hotspot/symbols/symbols-shared
  35 endif
  36 
  37 ifeq ($(call isTargetOsType, unix), true)
  38   SYMBOLS_SRC += $(TOPDIR)/make/hotspot/symbols/symbols-unix
  39 endif
  40 
  41 ifneq ($(wildcard $(TOPDIR)/make/hotspot/symbols/symbols-$(OPENJDK_TARGET_OS)), )
  42   SYMBOLS_SRC += $(TOPDIR)/make/hotspot/symbols/symbols-$(OPENJDK_TARGET_OS)
  43 endif
  44 
  45 ifneq ($(findstring debug, $(DEBUG_LEVEL)), )
  46   ifneq ($(wildcard $(TOPDIR)/make/hotspot/symbols/symbols-$(OPENJDK_TARGET_OS)-debug), )
  47     SYMBOLS_SRC += $(TOPDIR)/make/hotspot/symbols/symbols-$(OPENJDK_TARGET_OS)-debug
  48   endif
  49 endif
  50 
  51 ifeq ($(call isTargetOs, solaris), true)
  52   ifeq ($(call check-jvm-feature, dtrace), true)
  53     # Additional mapfiles that are only used when dtrace is enabled
  54     ifeq ($(call check-jvm-feature, compiler2), true)
  55       # This also covers the case of compiler1+compiler2.
  56       SYMBOLS_SRC += $(TOPDIR)/make/hotspot/symbols/symbols-solaris-dtrace-compiler2
  57     else ifeq ($(call check-jvm-feature, compiler1), true)
  58       SYMBOLS_SRC += $(TOPDIR)/make/hotspot/symbols/symbols-solaris-dtrace-compiler1
  59     endif
  60   endif
  61 endif
  62 
  63 ################################################################################
  64 # Create a dynamic list of symbols from the built object files. This is highly
  65 # platform dependent.
  66 
  67 ifeq ($(call isTargetOs, linux), true)
  68   DUMP_SYMBOLS_CMD := $(NM) --defined-only *.o
  69   ifneq ($(FILTER_SYMBOLS_PATTERN), )
  70     FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|
  71   endif
  72   FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)^_ZTV|^gHotSpotVM|^UseSharedSpaces$$
  73   FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|^_ZN9Arguments17SharedArchivePathE$$
  74   FILTER_SYMBOLS_AWK_SCRIPT := \
  75       '{ \
  76         if ($$3 ~ /$(FILTER_SYMBOLS_PATTERN)/) print $$3; \
  77       }'
  78 
  79 else ifeq ($(call isTargetOs, solaris), true)
  80   DUMP_SYMBOLS_CMD := $(NM) -p *.o
  81   ifneq ($(FILTER_SYMBOLS_PATTERN), )
  82     FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|
  83   endif
  84   FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)^__1c.*__vtbl_$$|^gHotSpotVM
  85   FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|^UseSharedSpaces$$
  86   FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|^__1cJArgumentsRSharedArchivePath_$$
  87   FILTER_SYMBOLS_AWK_SCRIPT := \
  88       '{ \
  89         if ($$2 == "U") next; \
  90         if ($$3 ~ /$(FILTER_SYMBOLS_PATTERN)/) print $$3; \
  91       }'
  92 
  93 else ifeq ($(call isTargetOs, macosx), true)
  94   # nm on macosx prints out "warning: nm: no name list" to stderr for
  95   # files without symbols. Hide this, even at the expense of hiding real errors.
  96   DUMP_SYMBOLS_CMD := $(NM) -Uj *.o 2> /dev/null
  97   ifneq ($(FILTER_SYMBOLS_PATTERN), )
  98     FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|
  99   endif
 100   FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)^_ZTV|^gHotSpotVM
 101   FILTER_SYMBOLS_AWK_SCRIPT := \
 102       '{ \
 103         if ($$3 ~ /$(FILTER_SYMBOLS_PATTERN)/) print $$3; \
 104       }'
 105 
 106 # NOTE: The script is from the old build. It is broken and finds no symbols.
 107 # The script below might be what was intended, but it failes to link with tons
 108 # of 'cannot export hidden symbol vtable for X'.
 109 #  '{ if ($$1 ~ /^__ZTV/ || $$1 ~ /^_gHotSpotVM/) print substr($$1, 2) }'




  31 ifeq ($(call And, $(call isTargetOs, windows) $(call isTargetCpu, x86_64)), false)
  32   # On Windows x86_64, we should not have any symbols at all, since that
  33   # results in duplicate warnings from the linker (JDK-8043491).
  34   SYMBOLS_SRC += $(TOPDIR)/make/hotspot/symbols/symbols-shared
  35 endif
  36 
  37 ifeq ($(call isTargetOsType, unix), true)
  38   SYMBOLS_SRC += $(TOPDIR)/make/hotspot/symbols/symbols-unix
  39 endif
  40 
  41 ifneq ($(wildcard $(TOPDIR)/make/hotspot/symbols/symbols-$(OPENJDK_TARGET_OS)), )
  42   SYMBOLS_SRC += $(TOPDIR)/make/hotspot/symbols/symbols-$(OPENJDK_TARGET_OS)
  43 endif
  44 
  45 ifneq ($(findstring debug, $(DEBUG_LEVEL)), )
  46   ifneq ($(wildcard $(TOPDIR)/make/hotspot/symbols/symbols-$(OPENJDK_TARGET_OS)-debug), )
  47     SYMBOLS_SRC += $(TOPDIR)/make/hotspot/symbols/symbols-$(OPENJDK_TARGET_OS)-debug
  48   endif
  49 endif
  50 












  51 ################################################################################
  52 # Create a dynamic list of symbols from the built object files. This is highly
  53 # platform dependent.
  54 
  55 ifeq ($(call isTargetOs, linux), true)
  56   DUMP_SYMBOLS_CMD := $(NM) --defined-only *.o
  57   ifneq ($(FILTER_SYMBOLS_PATTERN), )
  58     FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|
  59   endif
  60   FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)^_ZTV|^gHotSpotVM|^UseSharedSpaces$$
  61   FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|^_ZN9Arguments17SharedArchivePathE$$
  62   FILTER_SYMBOLS_AWK_SCRIPT := \
  63       '{ \














  64         if ($$3 ~ /$(FILTER_SYMBOLS_PATTERN)/) print $$3; \
  65       }'
  66 
  67 else ifeq ($(call isTargetOs, macosx), true)
  68   # nm on macosx prints out "warning: nm: no name list" to stderr for
  69   # files without symbols. Hide this, even at the expense of hiding real errors.
  70   DUMP_SYMBOLS_CMD := $(NM) -Uj *.o 2> /dev/null
  71   ifneq ($(FILTER_SYMBOLS_PATTERN), )
  72     FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|
  73   endif
  74   FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)^_ZTV|^gHotSpotVM
  75   FILTER_SYMBOLS_AWK_SCRIPT := \
  76       '{ \
  77         if ($$3 ~ /$(FILTER_SYMBOLS_PATTERN)/) print $$3; \
  78       }'
  79 
  80 # NOTE: The script is from the old build. It is broken and finds no symbols.
  81 # The script below might be what was intended, but it failes to link with tons
  82 # of 'cannot export hidden symbol vtable for X'.
  83 #  '{ if ($$1 ~ /^__ZTV/ || $$1 ~ /^_gHotSpotVM/) print substr($$1, 2) }'


< prev index next >