annotate make/bsd/makefiles/saproc.make @ 9153:bc63dd2539a4

Merge
author kvn
date Fri, 12 Apr 2013 20:37:18 -0400
parents 39432a1cefdd
children f509b8f4699b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3960
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
1 #
8750
39432a1cefdd 8003348: SA can not read core file on OS
minqi
parents: 7408
diff changeset
2 # Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
3960
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
4 #
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
5 # This code is free software; you can redistribute it and/or modify it
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
6 # under the terms of the GNU General Public License version 2 only, as
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
7 # published by the Free Software Foundation.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
8 #
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
9 # This code is distributed in the hope that it will be useful, but WITHOUT
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
12 # version 2 for more details (a copy is included in the LICENSE file that
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
13 # accompanied this code).
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
14 #
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
15 # You should have received a copy of the GNU General Public License version
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
16 # 2 along with this work; if not, write to the Free Software Foundation,
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
18 #
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
20 # or visit www.oracle.com if you need additional information or have any
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
21 # questions.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
22 #
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
23 #
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
24
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
25 # Rules to build serviceability agent library, used by vm.make
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
26
8750
39432a1cefdd 8003348: SA can not read core file on OS
minqi
parents: 7408
diff changeset
27 # libsaproc.so(dylib): serviceability agent
3960
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
28 SAPROC = saproc
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
29
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
30 ifeq ($(OS_VENDOR), Darwin)
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
31 LIBSAPROC = lib$(SAPROC).dylib
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
32 else
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
33 LIBSAPROC = lib$(SAPROC).so
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
34 endif
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
35
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
36 AGENT_DIR = $(GAMMADIR)/agent
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
37
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
38 SASRCDIR = $(AGENT_DIR)/src/os/$(Platform_os_family)
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
39
8750
39432a1cefdd 8003348: SA can not read core file on OS
minqi
parents: 7408
diff changeset
40 BSD_NON_STUB_SASRCFILES = $(SASRCDIR)/salibelf.c \
6782
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 4006
diff changeset
41 $(SASRCDIR)/symtab.c \
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 4006
diff changeset
42 $(SASRCDIR)/libproc_impl.c \
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 4006
diff changeset
43 $(SASRCDIR)/ps_proc.c \
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 4006
diff changeset
44 $(SASRCDIR)/ps_core.c \
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 4006
diff changeset
45 $(SASRCDIR)/BsdDebuggerLocal.c \
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 4006
diff changeset
46 $(AGENT_DIR)/src/share/native/sadis.c
4006
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
47
8750
39432a1cefdd 8003348: SA can not read core file on OS
minqi
parents: 7408
diff changeset
48 DARWIN_NON_STUB_SASRCFILES = $(SASRCDIR)/symtab.c \
39432a1cefdd 8003348: SA can not read core file on OS
minqi
parents: 7408
diff changeset
49 $(SASRCDIR)/libproc_impl.c \
39432a1cefdd 8003348: SA can not read core file on OS
minqi
parents: 7408
diff changeset
50 $(SASRCDIR)/ps_core.c \
39432a1cefdd 8003348: SA can not read core file on OS
minqi
parents: 7408
diff changeset
51 $(SASRCDIR)/MacosxDebuggerLocal.m \
39432a1cefdd 8003348: SA can not read core file on OS
minqi
parents: 7408
diff changeset
52 $(AGENT_DIR)/src/share/native/sadis.c
39432a1cefdd 8003348: SA can not read core file on OS
minqi
parents: 7408
diff changeset
53
4006
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
54 ifeq ($(OS_VENDOR), FreeBSD)
8750
39432a1cefdd 8003348: SA can not read core file on OS
minqi
parents: 7408
diff changeset
55 SASRCFILES = $(BSD_NON_STUB_SASRCFILES)
4006
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
56 SALIBS = -lutil -lthread_db
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
57 SAARCH = $(ARCHFLAG)
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
58 else
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
59 ifeq ($(OS_VENDOR), Darwin)
8750
39432a1cefdd 8003348: SA can not read core file on OS
minqi
parents: 7408
diff changeset
60 SASRCFILES = $(DARWIN_NON_STUB_SASRCFILES)
4006
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
61 SALIBS = -g -framework Foundation -F/System/Library/Frameworks/JavaVM.framework/Frameworks -framework JavaNativeFoundation -framework Security -framework CoreFoundation
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
62 #objc compiler blows up on -march=i586, perhaps it should not be included in the macosx intel 32-bit C++ compiles?
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
63 SAARCH = $(subst -march=i586,,$(ARCHFLAG))
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
64 else
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
65 SASRCFILES = $(SASRCDIR)/StubDebuggerLocal.c
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
66 SALIBS =
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
67 SAARCH = $(ARCHFLAG)
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
68 endif
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
69 endif
3960
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
70
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
71 SAMAPFILE = $(SASRCDIR)/mapfile
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
72
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
73 DEST_SAPROC = $(JDK_LIBDIR)/$(LIBSAPROC)
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
74
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
75 # DEBUG_BINARIES overrides everything, use full -g debug information
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
76 ifeq ($(DEBUG_BINARIES), true)
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
77 SA_DEBUG_CFLAGS = -g
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
78 endif
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
79
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
80 # if $(AGENT_DIR) does not exist, we don't build SA
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
81 # also, we don't build SA on Itanium, PPC, ARM or zero.
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
82
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
83 ifneq ($(wildcard $(AGENT_DIR)),)
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
84 ifneq ($(filter-out ia64 arm ppc zero,$(SRCARCH)),)
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
85 BUILDLIBSAPROC = $(LIBSAPROC)
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
86 endif
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
87 endif
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
88
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
89
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
90 ifneq ($(OS_VENDOR), Darwin)
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
91 SA_LFLAGS = $(MAPFLAG:FILENAME=$(SAMAPFILE))
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
92 endif
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
93 SA_LFLAGS += $(LDFLAGS_HASH_STYLE)
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
94
4006
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
95 ifeq ($(OS_VENDOR), Darwin)
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
96 BOOT_JAVA_INCLUDES = -I$(BOOT_JAVA_HOME)/include \
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
97 -I$(BOOT_JAVA_HOME)/include/$(shell uname -s | tr "[:upper:]" "[:lower:]") \
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
98 -I/System/Library/Frameworks/JavaVM.framework/Headers
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
99 else
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
100 BOOT_JAVA_INCLUDES = -I$(BOOT_JAVA_HOME)/include \
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
101 -I$(BOOT_JAVA_HOME)/include/$(shell uname -s | tr "[:upper:]" "[:lower:]")
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
102 endif
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
103
3960
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
104 $(LIBSAPROC): $(SASRCFILES) $(SAMAPFILE)
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
105 $(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
106 echo "ALT_BOOTDIR, BOOTDIR or JAVA_HOME needs to be defined to build SA"; \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
107 exit 1; \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
108 fi
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
109 @echo Making SA debugger back-end...
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
110 $(QUIETLY) $(CC) -D$(BUILDARCH) -D_GNU_SOURCE \
8750
39432a1cefdd 8003348: SA can not read core file on OS
minqi
parents: 7408
diff changeset
111 $(SYMFLAG) $(SAARCH) $(SHARED_FLAG) $(PICFLAG) \
3960
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
112 -I$(SASRCDIR) \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
113 -I$(GENERATED) \
4006
436b4a3231bf 7098194: integrate macosx-port changes
dcubed
parents: 3960
diff changeset
114 $(BOOT_JAVA_INCLUDES) \
3960
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
115 $(SASRCFILES) \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
116 $(SA_LFLAGS) \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
117 $(SA_DEBUG_CFLAGS) \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
118 -o $@ \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
119 $(SALIBS)
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
120
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
121 install_saproc: $(BUILDLIBSAPROC)
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
122 $(QUIETLY) if [ -e $(LIBSAPROC) ] ; then \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
123 echo "Copying $(LIBSAPROC) to $(DEST_SAPROC)"; \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
124 cp -f $(LIBSAPROC) $(DEST_SAPROC) && echo "Done"; \
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
125 fi
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
126
f08d439fab8c 7089790: integrate bsd-port changes
never
parents:
diff changeset
127 .PHONY: install_saproc