1 # 2 # Copyright 2002-2005 Sun Microsystems, Inc. All Rights Reserved. 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 # 19 # Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, 20 # CA 95054 USA or visit www.sun.com if you need additional information or 21 # have any questions. 22 # 23 # 24 25 # set WINDBG_HOME and JAVA_HOME environment variables before this make. 26 27 SAWINDBGDLL = sawindbg.dll 28 CPP32=cl.exe 29 CPP64=cl.exe 30 LINK32=link.exe 31 LINK64=link.exe 32 JAVAH=$(JAVA_HOME)/bin/javah 33 WINDBG_INCLUDE=$(WINDBG_HOME)/sdk/inc 34 WINDBG_LIB32=$(WINDBG_HOME)/sdk/lib/i386 35 WINDBG_LIB_IA64=$(WINDBG_HOME)/sdk/lib/ia64 36 WINDBG_LIB_AMD64=$(WINDBG_HOME)/sdk/lib/amd64 37 38 # These do not need to be optimized (don't run a lot of code) and it 39 # will be useful to have the assertion checks in place 40 41 CFLAGS32=/nologo /MD /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_WINDOWS" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c 42 43 CFLAGS64=/nologo /MD /W3 /GX /Od /D "WIN32" /D "WIN64" /D "_WINDOWS" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c 44 45 LIBS32= $(WINDBG_LIB32)/dbgeng.lib \ 46 /nologo /subsystem:console /debug /machine:I386 47 48 LIBS_IA64= $(WINDBG_LIB_IA64)/dbgeng.lib \ 49 /nologo /subsystem:console /debug /machine:IA64 50 51 LIBS_AMD64= $(WINDBG_LIB_AMD64)/dbgeng.lib bufferoverflowU.lib \ 52 /nologo /subsystem:console /debug /machine:AMD64 53 54 default: i386/$(SAWINDBGDLL) 55 56 ia64: ia64/$(SAWINDBGDLL) 57 58 amd64: amd64/$(SAWINDBGDLL) 59 60 i386/$(SAWINDBGDLL) : sawindbg.cpp 61 @ mkdir -p i386 62 @ $(JAVAH) -jni -classpath ../../../../build/classes sun.jvm.hotspot.debugger.windbg.WindbgDebuggerLocal sun.jvm.hotspot.debugger.x86.X86ThreadContext 63 @ $(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 64 $(LINK32) /out:$@ /DLL i386/sawindbg.obj $(LIBS32) 65 66 ia64/$(SAWINDBGDLL) : sawindbg.cpp 67 @ mkdir -p ia64 68 @ $(JAVAH) -jni -classpath ../../../../build/classes sun.jvm.hotspot.debugger.windbg.WindbgDebuggerLocal sun.jvm.hotspot.debugger.ia64.IA64ThreadContext 69 @ $(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 70 $(LINK64) /out:$@ /DLL ia64/sawindbg.obj $(LIBS_IA64) 71 72 amd64/$(SAWINDBGDLL) : sawindbg.cpp 73 @ mkdir -p amd64 74 @ $(JAVAH) -jni -classpath ../../../../build/classes sun.jvm.hotspot.debugger.windbg.WindbgDebuggerLocal sun.jvm.hotspot.debugger.amd64.AMD64ThreadContext 75 @ $(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 76 $(LINK64) /out:$@ /DLL amd64/sawindbg.obj $(LIBS_AMD64) 77 78 clean: 79 rm *.h 80 rm -rf i386 81 rm -rf ia64 82 rm -rf amd64 83