annotate agent/src/os/win32/windbg/Makefile @ 6782:5a98bf7d847b

6879063: SA should use hsdis for disassembly Summary: We should in SA to use hsdis for it like the JVM does to replace the current java based disassembler. Reviewed-by: twisti, jrose, sla Contributed-by: yumin.qi@oracle.com
author minqi
date Mon, 24 Sep 2012 12:44:00 -0700
parents c18cbe5936b8
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
a61af66fc99e Initial load
duke
parents:
diff changeset
1 #
6782
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 1552
diff changeset
2 # Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved.
0
a61af66fc99e Initial load
duke
parents:
diff changeset
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
a61af66fc99e Initial load
duke
parents:
diff changeset
4 #
a61af66fc99e Initial load
duke
parents:
diff changeset
5 # This code is free software; you can redistribute it and/or modify it
a61af66fc99e Initial load
duke
parents:
diff changeset
6 # under the terms of the GNU General Public License version 2 only, as
a61af66fc99e Initial load
duke
parents:
diff changeset
7 # published by the Free Software Foundation.
a61af66fc99e Initial load
duke
parents:
diff changeset
8 #
a61af66fc99e Initial load
duke
parents:
diff changeset
9 # This code is distributed in the hope that it will be useful, but WITHOUT
a61af66fc99e Initial load
duke
parents:
diff changeset
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
a61af66fc99e Initial load
duke
parents:
diff changeset
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
a61af66fc99e Initial load
duke
parents:
diff changeset
12 # version 2 for more details (a copy is included in the LICENSE file that
a61af66fc99e Initial load
duke
parents:
diff changeset
13 # accompanied this code).
a61af66fc99e Initial load
duke
parents:
diff changeset
14 #
a61af66fc99e Initial load
duke
parents:
diff changeset
15 # You should have received a copy of the GNU General Public License version
a61af66fc99e Initial load
duke
parents:
diff changeset
16 # 2 along with this work; if not, write to the Free Software Foundation,
a61af66fc99e Initial load
duke
parents:
diff changeset
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
a61af66fc99e Initial load
duke
parents:
diff changeset
18 #
1552
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 0
diff changeset
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 0
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: 0
diff changeset
21 # questions.
0
a61af66fc99e Initial load
duke
parents:
diff changeset
22 #
a61af66fc99e Initial load
duke
parents:
diff changeset
23 #
a61af66fc99e Initial load
duke
parents:
diff changeset
24
a61af66fc99e Initial load
duke
parents:
diff changeset
25 # set WINDBG_HOME and JAVA_HOME environment variables before this make.
a61af66fc99e Initial load
duke
parents:
diff changeset
26
a61af66fc99e Initial load
duke
parents:
diff changeset
27 SAWINDBGDLL = sawindbg.dll
a61af66fc99e Initial load
duke
parents:
diff changeset
28 CPP32=cl.exe
a61af66fc99e Initial load
duke
parents:
diff changeset
29 CPP64=cl.exe
a61af66fc99e Initial load
duke
parents:
diff changeset
30 LINK32=link.exe
a61af66fc99e Initial load
duke
parents:
diff changeset
31 LINK64=link.exe
a61af66fc99e Initial load
duke
parents:
diff changeset
32 JAVAH=$(JAVA_HOME)/bin/javah
a61af66fc99e Initial load
duke
parents:
diff changeset
33 WINDBG_INCLUDE=$(WINDBG_HOME)/sdk/inc
a61af66fc99e Initial load
duke
parents:
diff changeset
34 WINDBG_LIB32=$(WINDBG_HOME)/sdk/lib/i386
a61af66fc99e Initial load
duke
parents:
diff changeset
35 WINDBG_LIB_IA64=$(WINDBG_HOME)/sdk/lib/ia64
a61af66fc99e Initial load
duke
parents:
diff changeset
36 WINDBG_LIB_AMD64=$(WINDBG_HOME)/sdk/lib/amd64
a61af66fc99e Initial load
duke
parents:
diff changeset
37
6782
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 1552
diff changeset
38 SADIS=../../../share/native/sadis.c
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 1552
diff changeset
39
0
a61af66fc99e Initial load
duke
parents:
diff changeset
40 # These do not need to be optimized (don't run a lot of code) and it
a61af66fc99e Initial load
duke
parents:
diff changeset
41 # will be useful to have the assertion checks in place
a61af66fc99e Initial load
duke
parents:
diff changeset
42
a61af66fc99e Initial load
duke
parents:
diff changeset
43 CFLAGS32=/nologo /MD /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_WINDOWS" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
a61af66fc99e Initial load
duke
parents:
diff changeset
44
a61af66fc99e Initial load
duke
parents:
diff changeset
45 CFLAGS64=/nologo /MD /W3 /GX /Od /D "WIN32" /D "WIN64" /D "_WINDOWS" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
a61af66fc99e Initial load
duke
parents:
diff changeset
46
a61af66fc99e Initial load
duke
parents:
diff changeset
47 LIBS32= $(WINDBG_LIB32)/dbgeng.lib \
a61af66fc99e Initial load
duke
parents:
diff changeset
48 /nologo /subsystem:console /debug /machine:I386
a61af66fc99e Initial load
duke
parents:
diff changeset
49
a61af66fc99e Initial load
duke
parents:
diff changeset
50 LIBS_IA64= $(WINDBG_LIB_IA64)/dbgeng.lib \
a61af66fc99e Initial load
duke
parents:
diff changeset
51 /nologo /subsystem:console /debug /machine:IA64
a61af66fc99e Initial load
duke
parents:
diff changeset
52
a61af66fc99e Initial load
duke
parents:
diff changeset
53 LIBS_AMD64= $(WINDBG_LIB_AMD64)/dbgeng.lib bufferoverflowU.lib \
a61af66fc99e Initial load
duke
parents:
diff changeset
54 /nologo /subsystem:console /debug /machine:AMD64
a61af66fc99e Initial load
duke
parents:
diff changeset
55
a61af66fc99e Initial load
duke
parents:
diff changeset
56 default: i386/$(SAWINDBGDLL)
a61af66fc99e Initial load
duke
parents:
diff changeset
57
a61af66fc99e Initial load
duke
parents:
diff changeset
58 ia64: ia64/$(SAWINDBGDLL)
a61af66fc99e Initial load
duke
parents:
diff changeset
59
a61af66fc99e Initial load
duke
parents:
diff changeset
60 amd64: amd64/$(SAWINDBGDLL)
a61af66fc99e Initial load
duke
parents:
diff changeset
61
6782
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 1552
diff changeset
62 i386/$(SAWINDBGDLL) : sawindbg.cpp $(SADIS)
0
a61af66fc99e Initial load
duke
parents:
diff changeset
63 @ mkdir -p i386
6782
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 1552
diff changeset
64 @ $(JAVAH) -jni -classpath ../../../../build/classes sun.jvm.hotspot.debugger.windbg.WindbgDebuggerLocal sun.jvm.hotspot.debugger.x86.X86ThreadContext
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 1552
diff changeset
65 @ $(JAVAH) -jni -classpath ../../../../build/classes sun.jvm.hotspot.asm.Disassembler
0
a61af66fc99e Initial load
duke
parents:
diff changeset
66 @ $(CPP32) /I$(JAVA_HOME)/include /I$(JAVA_HOME)/include/win32 /I$(WINDBG_INCLUDE) $(CFLAGS32) /Fp"i386/sawindbg.pch" /Fo"i386/" /Fd"i386/" /c sawindbg.cpp
6782
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 1552
diff changeset
67 @ $(CPP32) /I$(JAVA_HOME)/include /I$(JAVA_HOME)/include/win32 /I$(WINDBG_INCLUDE) $(CFLAGS32) /Fp"i386/sadis.pch" /Fo"i386/" /Fd"i386/" /c $(SADIS)
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 1552
diff changeset
68 $(LINK32) /out:$@ /DLL i386/sawindbg.obj i386/sadis.obj $(LIBS32)
0
a61af66fc99e Initial load
duke
parents:
diff changeset
69
6782
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 1552
diff changeset
70 ia64/$(SAWINDBGDLL) : sawindbg.cpp $(SADIS)
0
a61af66fc99e Initial load
duke
parents:
diff changeset
71 @ mkdir -p ia64
a61af66fc99e Initial load
duke
parents:
diff changeset
72 @ $(JAVAH) -jni -classpath ../../../../build/classes sun.jvm.hotspot.debugger.windbg.WindbgDebuggerLocal sun.jvm.hotspot.debugger.ia64.IA64ThreadContext
6782
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 1552
diff changeset
73 @ $(JAVAH) -jni -classpath ../../../../build/classes sun.jvm.hotspot.asm.Disassembler
0
a61af66fc99e Initial load
duke
parents:
diff changeset
74 @ $(CPP64) /I$(JAVA_HOME)/include /I$(JAVA_HOME)/include/win32 /I$(WINDBG_INCLUDE) $(CFLAGS64) /Fp"ia64/sawindbg.pch" /Fo"ia64/" /Fd"ia64/" /c sawindbg.cpp
6782
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 1552
diff changeset
75 @ $(CPP64) /I$(JAVA_HOME)/include /I$(JAVA_HOME)/include/win32 /I$(WINDBG_INCLUDE) $(CFLAGS64) /Fp"ia64/sadis.pch" /Fo"ia64/" /Fd"ia64/" /c $(SADIS)
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 1552
diff changeset
76 $(LINK64) /out:$@ /DLL ia64/sawindbg.obj ia64/sadis.obj $(LIBS_IA64)
0
a61af66fc99e Initial load
duke
parents:
diff changeset
77
6782
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 1552
diff changeset
78 amd64/$(SAWINDBGDLL) : sawindbg.cpp $(SADIS)
0
a61af66fc99e Initial load
duke
parents:
diff changeset
79 @ mkdir -p amd64
a61af66fc99e Initial load
duke
parents:
diff changeset
80 @ $(JAVAH) -jni -classpath ../../../../build/classes sun.jvm.hotspot.debugger.windbg.WindbgDebuggerLocal sun.jvm.hotspot.debugger.amd64.AMD64ThreadContext
6782
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 1552
diff changeset
81 @ $(JAVAH) -jni -classpath ../../../../build/classes sun.jvm.hotspot.asm.Disassembler
0
a61af66fc99e Initial load
duke
parents:
diff changeset
82 @ $(CPP64) /I$(JAVA_HOME)/include /I$(JAVA_HOME)/include/win32 /I$(WINDBG_INCLUDE) $(CFLAGS64) /Fp"amd64/sawindbg.pch" /Fo"amd64/" /Fd"amd64/" /c sawindbg.cpp
6782
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 1552
diff changeset
83 @ $(CPP64) /I$(JAVA_HOME)/include /I$(JAVA_HOME)/include/win32 /I$(WINDBG_INCLUDE) $(CFLAGS64) /Fp"amd64/sadis.pch" /Fo"amd64/" /Fd"amd64/" /c $(SADIS)
5a98bf7d847b 6879063: SA should use hsdis for disassembly
minqi
parents: 1552
diff changeset
84 $(LINK64) /out:$@ /DLL amd64/sawindbg.obj amd64/sadis.obj $(LIBS_AMD64)
0
a61af66fc99e Initial load
duke
parents:
diff changeset
85
a61af66fc99e Initial load
duke
parents:
diff changeset
86 clean:
a61af66fc99e Initial load
duke
parents:
diff changeset
87 rm *.h
a61af66fc99e Initial load
duke
parents:
diff changeset
88 rm -rf i386
a61af66fc99e Initial load
duke
parents:
diff changeset
89 rm -rf ia64
a61af66fc99e Initial load
duke
parents:
diff changeset
90 rm -rf amd64
a61af66fc99e Initial load
duke
parents:
diff changeset
91