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