44 $(addprefix -I, $(SA_SRC)) \ |
44 $(addprefix -I, $(SA_SRC)) \ |
45 -I$(SUPPORT_OUTPUTDIR)/headers/jdk.hotspot.agent \ |
45 -I$(SUPPORT_OUTPUTDIR)/headers/jdk.hotspot.agent \ |
46 -I$(TOPDIR)/src/hotspot/os/$(OPENJDK_TARGET_OS) \ |
46 -I$(TOPDIR)/src/hotspot/os/$(OPENJDK_TARGET_OS) \ |
47 # |
47 # |
48 |
48 |
49 ifeq ($(OPENJDK_TARGET_CPU), x86_64) |
49 ifeq ($(OPENJDK_TARGET_OS), linux) |
50 SA_MACHINE_FLAG_windows := -machine:AMD64 |
50 SA_CFLAGS := $(CFLAGS_JDKLIB) -D_FILE_OFFSET_BITS=64 |
51 else ifeq ($(OPENJDK_TARGET_CPU), x86) |
51 ifeq ($(OPENJDK_TARGET_CPU), x86) |
52 SA_MACHINE_FLAG_linux := -march=i586 |
52 SA_LDFLAGS := -march=i586 |
53 SA_MACHINE_FLAG_windows := -machine:I386 |
53 endif |
54 endif |
|
55 |
54 |
56 ifeq ($(OPENJDK_TARGET_OS), linux) |
|
57 SA_CFLAGS := $(CFLAGS_JDKLIB) -D_FILE_OFFSET_BITS=64 \ |
|
58 $(SA_MACHINE_FLAG_linux) |
|
59 SA_LDFLAGS := $(LDFLAGS_JDKLIB) $(SA_MACHINE_FLAG_linux) |
|
60 SA_LIBS := -lthread_db $(LIBDL) |
55 SA_LIBS := -lthread_db $(LIBDL) |
61 |
56 |
62 else ifeq ($(OPENJDK_TARGET_OS), solaris) |
57 else ifeq ($(OPENJDK_TARGET_OS), solaris) |
63 SA_TOOLCHAIN := TOOLCHAIN_LINK_CXX |
58 SA_TOOLCHAIN := TOOLCHAIN_LINK_CXX |
64 SA_CFLAGS := $(CFLAGS_JDKLIB) |
59 SA_CFLAGS := $(CFLAGS_JDKLIB) |
65 SA_CXXFLAGS := $(CXXFLAGS_JDKLIB) |
60 SA_CXXFLAGS := $(CXXFLAGS_JDKLIB) |
66 SA_LDFLAGS := $(subst -Wl$(COMMA)-z$(COMMA)defs,, $(LDFLAGS_JDKLIB)) \ |
61 SA_LDFLAGS := -mt $(LDFLAGS_CXX_JDK) |
67 -mt $(LDFLAGS_CXX_JDK) |
62 SA_LIBS := -ldl -ldemangle -lthread -lc -lproc |
68 SA_LIBS := -ldl -ldemangle -lthread -lc |
|
69 |
63 |
70 else ifeq ($(OPENJDK_TARGET_OS), macosx) |
64 else ifeq ($(OPENJDK_TARGET_OS), macosx) |
71 SA_EXCLUDE_FILES := BsdDebuggerLocal.c ps_proc.c salibelf.c StubDebuggerLocal.c |
65 SA_EXCLUDE_FILES := BsdDebuggerLocal.c ps_proc.c salibelf.c StubDebuggerLocal.c |
72 SA_CFLAGS := $(CFLAGS_JDKLIB) \ |
66 SA_CFLAGS := $(CFLAGS_JDKLIB) \ |
73 -Damd64 -D_GNU_SOURCE -mno-omit-leaf-frame-pointer \ |
67 -Damd64 -D_GNU_SOURCE -mno-omit-leaf-frame-pointer \ |
74 -mstack-alignment=16 -fPIC |
68 -mstack-alignment=16 -fPIC |
75 SA_LDFLAGS := $(LDFLAGS_JDKLIB) |
|
76 SA_LIBS := -framework Foundation -framework JavaNativeFoundation \ |
69 SA_LIBS := -framework Foundation -framework JavaNativeFoundation \ |
77 -framework JavaRuntimeSupport -framework Security -framework CoreFoundation |
70 -framework JavaRuntimeSupport -framework Security -framework CoreFoundation |
78 |
71 |
79 else ifeq ($(OPENJDK_TARGET_OS), windows) |
72 else ifeq ($(OPENJDK_TARGET_OS), windows) |
80 SA_NAME := sawindbg |
73 SA_NAME := sawindbg |
81 COMMON_CFLAGS := -D_WINDOWS -D_DEBUG -D_CONSOLE -D_MBCS -EHsc |
74 COMMON_CFLAGS := -D_WINDOWS -D_DEBUG -D_CONSOLE -D_MBCS -EHsc |
82 SA_CFLAGS := $(subst -DWIN32_LEAN_AND_MEAN,, $(CFLAGS_JDKLIB)) \ |
75 SA_CFLAGS := $(subst -DWIN32_LEAN_AND_MEAN,, $(CFLAGS_JDKLIB)) \ |
83 $(COMMON_CFLAGS) |
76 $(COMMON_CFLAGS) |
84 SA_CXXFLAGS := $(subst -DWIN32_LEAN_AND_MEAN,, $(CXXFLAGS_JDKLIB)) \ |
77 SA_CXXFLAGS := $(subst -DWIN32_LEAN_AND_MEAN,, $(CXXFLAGS_JDKLIB)) \ |
85 $(COMMON_CFLAGS) |
78 $(COMMON_CFLAGS) |
86 SA_LDFLAGS := $(LDFLAGS_JDKLIB) \ |
79 SA_LDFLAGS := -manifest |
87 $(SA_MACHINE_FLAG_windows) -manifest \ |
|
88 -subsystem:console -map |
|
89 SA_LIBS := dbgeng.lib |
80 SA_LIBS := dbgeng.lib |
90 ifeq ($(OPENJDK_TARGET_CPU), x86_64) |
81 ifeq ($(OPENJDK_TARGET_CPU), x86_64) |
91 SA_CXXFLAGS += -DWIN64 |
82 SA_CXXFLAGS += -DWIN64 |
92 else |
83 else |
93 SA_CXXFLAGS += -RTC1 |
84 SA_CXXFLAGS += -RTC1 |
94 SA_LDFLAGS += -SAFESEH |
|
95 endif |
85 endif |
96 endif |
86 endif |
97 |
87 |
98 ################################################################################ |
88 ################################################################################ |
99 |
89 |
107 OUTPUT_DIR := $(call FindLibDirForModule, $(MODULE)), \ |
97 OUTPUT_DIR := $(call FindLibDirForModule, $(MODULE)), \ |
108 SRC := $(SA_SRC), \ |
98 SRC := $(SA_SRC), \ |
109 EXCLUDE_FILES := test.c saproc_audit.cpp $(SA_EXCLUDE_FILES), \ |
99 EXCLUDE_FILES := test.c saproc_audit.cpp $(SA_EXCLUDE_FILES), \ |
110 CFLAGS := $(SA_INCLUDES) $(SA_CFLAGS) $(SA_CUSTOM_CFLAGS), \ |
100 CFLAGS := $(SA_INCLUDES) $(SA_CFLAGS) $(SA_CUSTOM_CFLAGS), \ |
111 CXXFLAGS := $(SA_INCLUDES) $(SA_CXXFLAGS) $(SA_CUSTOM_CXXFLAGS), \ |
101 CXXFLAGS := $(SA_INCLUDES) $(SA_CXXFLAGS) $(SA_CUSTOM_CXXFLAGS), \ |
112 LDFLAGS := $(SA_LDFLAGS) $(SA_CUSTOM_LDFLAGS), \ |
102 LDFLAGS := $(LDFLAGS_JDKLIB) $(SA_LDFLAGS), \ |
113 LIBS := $(SA_LIBS), \ |
103 LIBS := $(SA_LIBS), \ |
114 MAPFILE := $(SA_MAPFILE), \ |
104 MAPFILE := $(SA_MAPFILE), \ |
115 OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libsa, \ |
105 OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libsa, \ |
116 )) |
106 )) |
117 |
107 |