Mercurial > hg > truffle
annotate agent/src/os/linux/Makefile @ 20888:0f3d81231ecb
Truffle/Instrumentation: Javadoc
author | Michael Van De Vanter <michael.van.de.vanter@oracle.com> |
---|---|
date | Fri, 10 Apr 2015 17:56:10 -0700 |
parents | 5a98bf7d847b |
children |
rev | line source |
---|---|
0 | 1 # |
4919
54d3535a6dd3
7009098: SA cannot open core files larger than 2GB on Linux 32-bit
poonam
parents:
1552
diff
changeset
|
2 # Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved. |
0 | 3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 # | |
5 # This code is free software; you can redistribute it and/or modify it | |
6 # under the terms of the GNU General Public License version 2 only, as | |
7 # published by the Free Software Foundation. | |
8 # | |
9 # This code is distributed in the hope that it will be useful, but WITHOUT | |
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
12 # version 2 for more details (a copy is included in the LICENSE file that | |
13 # accompanied this code). | |
14 # | |
15 # You should have received a copy of the GNU General Public License version | |
16 # 2 along with this work; if not, write to the Free Software Foundation, | |
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | |
18 # | |
1552
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
844
diff
changeset
|
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
844
diff
changeset
|
20 # or visit www.oracle.com if you need additional information or have any |
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
844
diff
changeset
|
21 # questions. |
0 | 22 # |
23 # | |
24 | |
25 ARCH := $(shell if ([ `uname -m` = "ia64" ]) ; then echo ia64 ; elif ([ `uname -m` = "x86_64" ]) ; then echo amd64; elif ([ `uname -m` = "sparc64" ]) ; then echo sparc; else echo i386 ; fi ) | |
26 GCC = gcc | |
27 | |
28 JAVAH = ${JAVA_HOME}/bin/javah | |
29 | |
30 SOURCES = salibelf.c \ | |
31 symtab.c \ | |
32 libproc_impl.c \ | |
33 ps_proc.c \ | |
34 ps_core.c \ | |
35 LinuxDebuggerLocal.c | |
36 | |
37 INCLUDES = -I${JAVA_HOME}/include -I${JAVA_HOME}/include/linux | |
38 | |
6782 | 39 OBJS = $(SOURCES:%.c=$(ARCH)/%.o) $(ARCH)/sadis.o |
0 | 40 |
41 LIBS = -lthread_db | |
42 | |
6782 | 43 CFLAGS = -c -fPIC -g -D_GNU_SOURCE -D$(ARCH) $(INCLUDES) -I$(ARCH) |
0 | 44 |
45 LIBSA = $(ARCH)/libsaproc.so | |
46 | |
47 all: $(LIBSA) | |
48 | |
6782 | 49 $(ARCH): |
50 mkdir $(ARCH) | |
51 | |
52 $(ARCH)/LinuxDebuggerLocal.o: LinuxDebuggerLocal.c | |
53 $(JAVAH) -jni -classpath ../../../build/classes -d $(ARCH) \ | |
0 | 54 sun.jvm.hotspot.debugger.x86.X86ThreadContext \ |
55 sun.jvm.hotspot.debugger.sparc.SPARCThreadContext \ | |
56 sun.jvm.hotspot.debugger.amd64.AMD64ThreadContext | |
6782 | 57 $(GCC) $(CFLAGS) $< -o $@ |
0 | 58 |
6782 | 59 $(ARCH)/sadis.o: ../../share/native/sadis.c |
60 $(JAVAH) -jni -classpath ../../../build/classes -d $(ARCH) \ | |
61 sun.jvm.hotspot.asm.Disassembler | |
62 $(GCC) $(CFLAGS) $< -o $@ | |
63 | |
64 $(ARCH)/%.o: %.c | |
65 $(GCC) $(CFLAGS) $< -o $@ | |
0 | 66 |
67 ifndef LDNOMAP | |
68 LFLAGS_LIBSA = -Xlinker --version-script=mapfile | |
69 endif | |
70 | |
754
2b25645dab33
6837224: libsaproc.so on linux needs version of 6799141
never
parents:
0
diff
changeset
|
71 # If this is a --hash-style=gnu system, use --hash-style=both |
2b25645dab33
6837224: libsaproc.so on linux needs version of 6799141
never
parents:
0
diff
changeset
|
72 # The gnu .hash section won't work on some Linux systems like SuSE 10. |
2b25645dab33
6837224: libsaproc.so on linux needs version of 6799141
never
parents:
0
diff
changeset
|
73 _HAS_HASH_STYLE_GNU:=$(shell $(CC) -dumpspecs | grep -- '--hash-style=gnu') |
2b25645dab33
6837224: libsaproc.so on linux needs version of 6799141
never
parents:
0
diff
changeset
|
74 ifneq ($(_HAS_HASH_STYLE_GNU),) |
2b25645dab33
6837224: libsaproc.so on linux needs version of 6799141
never
parents:
0
diff
changeset
|
75 LDFLAGS_HASH_STYLE = -Wl,--hash-style=both |
2b25645dab33
6837224: libsaproc.so on linux needs version of 6799141
never
parents:
0
diff
changeset
|
76 endif |
2b25645dab33
6837224: libsaproc.so on linux needs version of 6799141
never
parents:
0
diff
changeset
|
77 LFLAGS_LIBSA += $(LDFLAGS_HASH_STYLE) |
2b25645dab33
6837224: libsaproc.so on linux needs version of 6799141
never
parents:
0
diff
changeset
|
78 |
6782 | 79 $(LIBSA): $(ARCH) $(OBJS) mapfile |
80 $(GCC) -shared $(LFLAGS_LIBSA) -o $(LIBSA) $(OBJS) $(LIBS) | |
0 | 81 |
82 test.o: test.c | |
83 $(GCC) -c -o test.o -g -D_GNU_SOURCE -D$(ARCH) $(INCLUDES) test.c | |
84 | |
85 test: test.o | |
86 $(GCC) -o test test.o -L$(ARCH) -lsaproc $(LIBS) | |
87 | |
88 clean: | |
6782 | 89 rm -fr $(ARCH) |