--- a/make/lib/Lib-jdk.hotspot.agent.gmk Tue Feb 13 15:28:07 2018 +0100
+++ b/make/lib/Lib-jdk.hotspot.agent.gmk Mon Jun 11 11:23:20 2018 +0200
@@ -23,90 +23,46 @@
# questions.
#
-include NativeCompilation.gmk
+include LibCommon.gmk
$(eval $(call IncludeCustomExtension, hotspot/lib/Lib-jdk.hotspot.agent.gmk))
################################################################################
-SA_TOPDIR := $(TOPDIR)/src/jdk.hotspot.agent
-
-# Defaults for most platforms
-SA_TOOLCHAIN := TOOLCHAIN_DEFAULT
-SA_NAME := saproc
-SA_SRC += $(SA_TOPDIR)/share/native/libsaproc $(SA_TOPDIR)/$(OPENJDK_TARGET_OS)/native/libsaproc
-SA_INCLUDES := \
- $(addprefix -I, $(SA_SRC)) \
- -I$(SUPPORT_OUTPUTDIR)/headers/jdk.hotspot.agent \
- -I$(TOPDIR)/src/hotspot/os/$(OPENJDK_TARGET_OS) \
- #
-
-ifeq ($(OPENJDK_TARGET_CPU), x86_64)
- SA_MACHINE_FLAG_windows := -machine:AMD64
-else ifeq ($(OPENJDK_TARGET_CPU), x86)
- SA_MACHINE_FLAG_linux := -march=i586
- SA_MACHINE_FLAG_windows := -machine:I386
-endif
-
ifeq ($(OPENJDK_TARGET_OS), linux)
- SA_CFLAGS := $(CFLAGS_JDKLIB) -D_FILE_OFFSET_BITS=64 \
- $(SA_MACHINE_FLAG_linux)
- SA_LDFLAGS := $(LDFLAGS_JDKLIB) $(SA_MACHINE_FLAG_linux)
- SA_LIBS := -lthread_db $(LIBDL)
+ SA_CFLAGS := -D_FILE_OFFSET_BITS=64
else ifeq ($(OPENJDK_TARGET_OS), solaris)
- SA_TOOLCHAIN := TOOLCHAIN_LINK_CXX
- SA_CFLAGS := $(CFLAGS_JDKLIB)
- SA_CXXFLAGS := $(CXXFLAGS_JDKLIB)
- SA_LDFLAGS := $(subst -Wl$(COMMA)-z$(COMMA)defs,, $(LDFLAGS_JDKLIB)) \
- -mt $(LDFLAGS_CXX_JDK)
- SA_LIBS := -ldl -ldemangle -lthread -lc
+ SA_LDFLAGS := -mt
else ifeq ($(OPENJDK_TARGET_OS), macosx)
- SA_EXCLUDE_FILES := BsdDebuggerLocal.c ps_proc.c salibelf.c StubDebuggerLocal.c
- SA_CFLAGS := $(CFLAGS_JDKLIB) \
- -Damd64 -D_GNU_SOURCE -mno-omit-leaf-frame-pointer \
+ SA_CFLAGS := -Damd64 -D_GNU_SOURCE -mno-omit-leaf-frame-pointer \
-mstack-alignment=16 -fPIC
- SA_LDFLAGS := $(LDFLAGS_JDKLIB)
- SA_LIBS := -framework Foundation -framework JavaNativeFoundation \
- -framework JavaRuntimeSupport -framework Security -framework CoreFoundation
-
else ifeq ($(OPENJDK_TARGET_OS), windows)
- SA_NAME := sawindbg
- COMMON_CFLAGS := -D_WINDOWS -D_DEBUG -D_CONSOLE -D_MBCS -EHsc -FD
- SA_CFLAGS := $(subst -DWIN32_LEAN_AND_MEAN,, $(CFLAGS_JDKLIB)) \
- $(COMMON_CFLAGS)
- SA_CXXFLAGS := $(subst -DWIN32_LEAN_AND_MEAN,, $(CXXFLAGS_JDKLIB)) \
- $(COMMON_CFLAGS)
- SA_LDFLAGS := $(LDFLAGS_JDKLIB) \
- $(SA_MACHINE_FLAG_windows) -manifest \
- -subsystem:console -map
- SA_LIBS := dbgeng.lib
+ SA_CFLAGS := -D_WINDOWS -D_DEBUG -D_CONSOLE -D_MBCS -EHsc
ifeq ($(OPENJDK_TARGET_CPU), x86_64)
- SA_CXXFLAGS += -DWIN64
+ SA_CXXFLAGS := -DWIN64
else
- SA_CXXFLAGS += -RTC1
- SA_LDFLAGS += -SAFESEH
+ SA_CXXFLAGS := -RTC1
endif
endif
################################################################################
-$(eval $(call SetupNativeCompilation, BUILD_LIBSA, \
- TOOLCHAIN := $(SA_TOOLCHAIN), \
+$(eval $(call SetupJdkLibrary, BUILD_LIBSA, \
+ NAME := saproc, \
OPTIMIZATION := NONE, \
DISABLED_WARNINGS_microsoft := 4267, \
DISABLED_WARNINGS_gcc := sign-compare, \
DISABLED_WARNINGS_CXX_solstudio := truncwarn unknownpragma, \
- LIBRARY := $(SA_NAME), \
- OUTPUT_DIR := $(call FindLibDirForModule, $(MODULE)), \
- SRC := $(SA_SRC), \
- EXCLUDE_FILES := test.c saproc_audit.cpp $(SA_EXCLUDE_FILES), \
- CFLAGS := $(SA_INCLUDES) $(SA_CFLAGS) $(SA_CUSTOM_CFLAGS), \
- CXXFLAGS := $(SA_INCLUDES) $(SA_CXXFLAGS) $(SA_CUSTOM_CXXFLAGS), \
- LDFLAGS := $(SA_LDFLAGS) $(SA_CUSTOM_LDFLAGS), \
- LIBS := $(SA_LIBS), \
- OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libsa, \
+ CFLAGS := $(CFLAGS_JDKLIB) $(SA_CFLAGS), \
+ CXXFLAGS := $(CXXFLAGS_JDKLIB) $(SA_CFLAGS) $(SA_CXXFLAGS), \
+ LDFLAGS := $(LDFLAGS_JDKLIB) $(SA_LDFLAGS), \
+ LIBS_linux := -lthread_db $(LIBDL), \
+ LIBS_solaris := -ldl -ldemangle -lthread -lproc, \
+ LIBS_macosx := -framework Foundation -framework JavaNativeFoundation \
+ -framework JavaRuntimeSupport -framework Security -framework CoreFoundation, \
+ LIBS_windows := dbgeng.lib, \
))
TARGETS += $(BUILD_LIBSA)