comparison make/windows/makefiles/sa.make @ 6020:d652a62d6e03

7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris Summary: Add support for ENABLE_FULL_DEBUG_SYMBOLS and ZIP_DEBUGINFO_FILES build flags. Add support for .diz files. Reviewed-by: dholmes, ohair, sspitsyn
author dcubed
date Fri, 23 Mar 2012 11:50:33 -0700
parents 719f7007c8e8
children 0d8e265ba727
comparison
equal deleted inserted replaced
4958:3b24e7e01d20 6020:d652a62d6e03
1 # 1 #
2 # Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved. 2 # Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 # 4 #
5 # This code is free software; you can redistribute it and/or modify it 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 6 # under the terms of the GNU General Public License version 2 only, as
7 # published by the Free Software Foundation. 7 # published by the Free Software Foundation.
92 # On amd64, VS2005 compiler requires bufferoverflowU.lib on the link command line, 92 # On amd64, VS2005 compiler requires bufferoverflowU.lib on the link command line,
93 # otherwise we get missing __security_check_cookie externals at link time. 93 # otherwise we get missing __security_check_cookie externals at link time.
94 SA_LD_FLAGS = bufferoverflowU.lib 94 SA_LD_FLAGS = bufferoverflowU.lib
95 !endif 95 !endif
96 !else 96 !else
97 SA_CFLAGS = /nologo $(MS_RUNTIME_OPTION) /W3 /Gm $(GX_OPTION) /ZI /Od /D "WIN32" /D "_WINDOWS" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c 97 SA_CFLAGS = /nologo $(MS_RUNTIME_OPTION) /W3 /Gm $(GX_OPTION) /Od /D "WIN32" /D "_WINDOWS" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
98 !if "$(ENABLE_FULL_DEBUG_SYMBOLS)" == "1"
99 SA_CFLAGS = $(SA_CFLAGS) /ZI
100 !endif
98 !endif 101 !endif
99 !if "$(MT)" != "" 102 !if "$(MT)" != ""
100 SA_LD_FLAGS = /manifest $(SA_LD_FLAGS) 103 SA_LD_FLAGS = /manifest $(SA_LD_FLAGS)
101 !endif 104 !endif
102 SASRCFILE = $(AGENT_DIR)/src/os/win32/windbg/sawindbg.cpp 105 SASRCFILE = $(AGENT_DIR)/src/os/win32/windbg/sawindbg.cpp
103 SA_LFLAGS = $(SA_LD_FLAGS) /nologo /subsystem:console /map /debug /machine:$(MACHINE) 106 SA_LFLAGS = $(SA_LD_FLAGS) /nologo /subsystem:console /machine:$(MACHINE)
107 !if "$(ENABLE_FULL_DEBUG_SYMBOLS)" == "1"
108 SA_LFLAGS = $(SA_LFLAGS) /map /debug
109 !endif
104 110
105 # Note that we do not keep sawindbj.obj around as it would then 111 # Note that we do not keep sawindbj.obj around as it would then
106 # get included in the dumpbin command in build_vm_def.sh 112 # get included in the dumpbin command in build_vm_def.sh
107 113
108 # In VS2005 or VS2008 the link command creates a .manifest file that we want 114 # In VS2005 or VS2008 the link command creates a .manifest file that we want
112 set INCLUDE=$(SA_INCLUDE)$(INCLUDE) 118 set INCLUDE=$(SA_INCLUDE)$(INCLUDE)
113 $(CXX) @<< 119 $(CXX) @<<
114 /I"$(BootStrapDir)/include" /I"$(BootStrapDir)/include/win32" 120 /I"$(BootStrapDir)/include" /I"$(BootStrapDir)/include/win32"
115 /I"$(GENERATED)" $(SA_CFLAGS) 121 /I"$(GENERATED)" $(SA_CFLAGS)
116 $(SASRCFILE) 122 $(SASRCFILE)
117 /out:sawindbg.obj 123 /out:$*.obj
118 << 124 <<
119 set LIB=$(SA_LIB)$(LIB) 125 set LIB=$(SA_LIB)$(LIB)
120 $(LD) /out:$@ /DLL sawindbg.obj dbgeng.lib $(SA_LFLAGS) 126 $(LD) /out:$@ /DLL $*.obj dbgeng.lib $(SA_LFLAGS)
121 !if "$(MT)" != "" 127 !if "$(MT)" != ""
122 $(MT) /manifest $(@F).manifest /outputresource:$(@F);#2 128 $(MT) /manifest $(@F).manifest /outputresource:$(@F);#2
123 !endif 129 !endif
124 -@rm -f sawindbg.obj 130 !if "$(ENABLE_FULL_DEBUG_SYMBOLS)" == "1"
131 !if "$(ZIP_DEBUGINFO_FILES)" == "1"
132 $(ZIPEXE) -q $*.diz $*.map $*.pdb
133 $(RM) $*.map $*.pdb
134 !endif
135 !endif
136 -@rm -f $*.obj
125 137
126 cleanall : 138 cleanall :
127 rm -rf $(GENERATED:\=/)/saclasses 139 rm -rf $(GENERATED:\=/)/saclasses
128 rm -rf $(GENERATED:\=/)/sa-jdi.jar 140 rm -rf $(GENERATED:\=/)/sa-jdi.jar
129 !endif 141 !endif