Generate debugging information during compilation. (bug 5227, r=ds)
authorAsher Baker <asherkin@gmail.com>
Thu Feb 16 19:26:49 2012 +0000 (2012-02-16)
changeset 3457387b27fb575b
parent 3456 78b3766d8029
child 3458 62ad320dd01a
Generate debugging information during compilation. (bug 5227, r=ds)
AMBuildScript
core/AMBuilder
core/logic/AMBuilder
extensions/bintools/AMBuilder
extensions/clientprefs/AMBuilder
extensions/cstrike/AMBuilder
extensions/curl/AMBuilder
extensions/geoip/AMBuilder
extensions/mysql/AMBuilder
extensions/regex/AMBuilder
extensions/sdktools/AMBuilder
extensions/sqlite/AMBuilder
extensions/tf2/AMBuilder
extensions/topmenus/AMBuilder
extensions/updater/AMBuilder
loader/AMBuilder
sourcepawn/compiler/AMBuilder
sourcepawn/jit/AMBuilder
     1.1 --- a/AMBuildScript	Fri Dec 16 09:43:05 2011 -0500
     1.2 +++ b/AMBuildScript	Thu Feb 16 19:26:49 2012 +0000
     1.3 @@ -2,6 +2,7 @@
     1.4  import os
     1.5  import sys
     1.6  from ambuild.command import SymlinkCommand
     1.7 +from ambuild.command import ShellCommand
     1.8  
     1.9  class SM:
    1.10  	def __init__(self):
    1.11 @@ -113,6 +114,7 @@
    1.12  				self.compiler.AddToListVar('CFLAGS', '-Wno-switch')
    1.13  				self.compiler.AddToListVar('CFLAGS', '-msse')
    1.14  				self.compiler.AddToListVar('CFLAGS', '-m32')
    1.15 +				self.compiler.AddToListVar('CFLAGS', '-g3')
    1.16  				self.compiler.AddToListVar('POSTLINKFLAGS', '-m32')
    1.17  				self.compiler.AddToListVar('CXXFLAGS', '-fno-exceptions')
    1.18  				self.compiler.AddToListVar('CXXFLAGS', '-fno-rtti')
    1.19 @@ -169,9 +171,7 @@
    1.20  			if AMBuild.options.debug == '1':
    1.21  				self.compiler.AddToListVar('CDEFINES', 'DEBUG')
    1.22  				self.compiler.AddToListVar('CDEFINES', '_DEBUG')
    1.23 -				if self.vendor == 'gcc' or self.vendor == 'clang':
    1.24 -					self.compiler.AddToListVar('CFLAGS', '-g3')
    1.25 -				elif self.vendor == 'msvc':
    1.26 +				if self.vendor == 'msvc':
    1.27  					self.compiler.AddToListVar('CFLAGS', '/Od')
    1.28  					self.compiler.AddToListVar('CFLAGS', '/RTC1')
    1.29  
    1.30 @@ -257,6 +257,17 @@
    1.31  		else:
    1.32  			return
    1.33  
    1.34 +	def StripBinary(self, job, binary):
    1.35 +		workFolder = os.path.join(AMBuild.outputFolder, job.workFolder)
    1.36 +		src = os.path.join('..', workFolder, binary.binaryFile)
    1.37 +		if AMBuild.target['platform'] == 'linux':
    1.38 +			job.AddCommand(ShellCommand('objcopy --only-keep-debug ' + src + ' ' + src + '.dbg'))
    1.39 +			job.AddCommand(ShellCommand('objcopy --strip-debug ' + src))
    1.40 +			job.AddCommand(ShellCommand('objcopy --add-gnu-debuglink=' + src + '.dbg ' + src))
    1.41 +		elif AMBuild.target['platform'] == 'darwin':
    1.42 +			job.AddCommand(ShellCommand('dsymutil ' + src))
    1.43 +			job.AddCommand(ShellCommand('strip -S ' + src))
    1.44 +
    1.45  	def PreSetupHL2Job(self, job, builder, sdk):
    1.46  		info = self.sdkInfo[sdk]
    1.47  		sdkPath = AMBuild.cache[info['sdk']]
    1.48 @@ -304,7 +315,7 @@
    1.49  	def PostSetupHL2Job(self, job, builder, sdk):
    1.50  		if AMBuild.target['platform'] in ['linux', 'darwin']:
    1.51  			builder.AddObjectFiles(['tier1_i486.a', 'mathlib_i486.a'])
    1.52 -
    1.53 +	
    1.54  	def DefaultHL2Compiler(self, path, sdk, noLink = False, oldMms = '-legacy'):
    1.55  		compiler = self.DefaultExtCompiler(path)
    1.56  
     2.1 --- a/core/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
     2.2 +++ b/core/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
     2.3 @@ -75,4 +75,4 @@
     2.4  	SM.PostSetupHL2Job(extension, binary, i)
     2.5  	SM.AutoVersion('core', binary)
     2.6  	binary.SendToJob()
     2.7 -
     2.8 +	SM.StripBinary(extension, binary)
     3.1 --- a/core/logic/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
     3.2 +++ b/core/logic/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
     3.3 @@ -56,4 +56,5 @@
     3.4  binary.AddSourceFiles('core/logic', files)
     3.5  SM.AutoVersion('core/logic', binary)
     3.6  binary.SendToJob()
     3.7 +SM.StripBinary(extension, binary)
     3.8  
     4.1 --- a/extensions/bintools/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
     4.2 +++ b/extensions/bintools/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
     4.3 @@ -20,5 +20,4 @@
     4.4  	])
     4.5  SM.AutoVersion('extensions/bintools', binary)
     4.6  binary.SendToJob()
     4.7 -
     4.8 -
     4.9 +SM.StripBinary(extension, binary)
     5.1 --- a/extensions/clientprefs/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
     5.2 +++ b/extensions/clientprefs/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
     5.3 @@ -16,4 +16,4 @@
     5.4  	])
     5.5  SM.AutoVersion('extensions/clientprefs', binary)
     5.6  binary.SendToJob()
     5.7 -
     5.8 +SM.StripBinary(extension, binary)
     6.1 --- a/extensions/cstrike/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
     6.2 +++ b/extensions/cstrike/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
     6.3 @@ -22,4 +22,5 @@
     6.4  		])
     6.5  	SM.PostSetupHL2Job(extension, binary, 'ep2v')
     6.6  	SM.AutoVersion('extensions/cstrike', binary)
     6.7 -	binary.SendToJob()
     6.8 \ No newline at end of file
     6.9 +	binary.SendToJob()
    6.10 +	SM.StripBinary(extension, binary)
     7.1 --- a/extensions/curl/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
     7.2 +++ b/extensions/curl/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
     7.3 @@ -84,4 +84,4 @@
     7.4  
     7.5  SM.AutoVersion('extensions/curl', binary)
     7.6  binary.SendToJob()
     7.7 -
     7.8 +SM.StripBinary(extension, binary)
     8.1 --- a/extensions/geoip/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
     8.2 +++ b/extensions/geoip/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
     8.3 @@ -12,4 +12,4 @@
     8.4  	binary['POSTLINKFLAGS'].append('wsock32.lib')
     8.5  SM.AutoVersion('extensions/geoip', binary)
     8.6  binary.SendToJob()
     8.7 -
     8.8 +SM.StripBinary(extension, binary)
     9.1 --- a/extensions/mysql/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
     9.2 +++ b/extensions/mysql/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
     9.3 @@ -35,4 +35,4 @@
     9.4  	])
     9.5  SM.AutoVersion('extensions/mysql', binary)
     9.6  binary.SendToJob()
     9.7 -
     9.8 +SM.StripBinary(extension, binary)
    10.1 --- a/extensions/regex/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
    10.2 +++ b/extensions/regex/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
    10.3 @@ -24,4 +24,4 @@
    10.4  	])
    10.5  SM.AutoVersion('extensions/regex', binary)
    10.6  binary.SendToJob()
    10.7 -
    10.8 +SM.StripBinary(extension, binary)
    11.1 --- a/extensions/sdktools/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
    11.2 +++ b/extensions/sdktools/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
    11.3 @@ -49,4 +49,4 @@
    11.4  	SM.PostSetupHL2Job(extension, binary, i)
    11.5  	SM.AutoVersion('extensions/sdktools', binary)
    11.6  	binary.SendToJob()
    11.7 -
    11.8 +	SM.StripBinary(extension, binary)
    12.1 --- a/extensions/sqlite/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
    12.2 +++ b/extensions/sqlite/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
    12.3 @@ -37,4 +37,4 @@
    12.4  binary.AddSourceFiles('extensions/sqlite', files)
    12.5  SM.AutoVersion('extensions/sqlite', binary)
    12.6  binary.SendToJob()
    12.7 -
    12.8 +SM.StripBinary(extension, binary)
    13.1 --- a/extensions/tf2/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
    13.2 +++ b/extensions/tf2/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
    13.3 @@ -26,4 +26,4 @@
    13.4  SM.PostSetupHL2Job(extension, binary, 'ep2v')
    13.5  SM.AutoVersion('extensions/tf2', binary)
    13.6  binary.SendToJob()
    13.7 -
    13.8 +SM.StripBinary(extension, binary)
    14.1 --- a/extensions/topmenus/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
    14.2 +++ b/extensions/topmenus/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
    14.3 @@ -16,4 +16,4 @@
    14.4  	])
    14.5  SM.AutoVersion('extensions/topmenus', binary)
    14.6  binary.SendToJob()
    14.7 -
    14.8 +SM.StripBinary(extension, binary)
    15.1 --- a/extensions/updater/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
    15.2 +++ b/extensions/updater/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
    15.3 @@ -15,4 +15,4 @@
    15.4  	])
    15.5  SM.AutoVersion('extensions/updater', binary)
    15.6  binary.SendToJob()
    15.7 -
    15.8 +SM.StripBinary(extension, binary)
    16.1 --- a/loader/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
    16.2 +++ b/loader/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
    16.3 @@ -18,4 +18,4 @@
    16.4  	])
    16.5  SM.AutoVersion('loader', binary)
    16.6  binary.SendToJob()
    16.7 -
    16.8 +SM.StripBinary(loader, binary)
    17.1 --- a/sourcepawn/compiler/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
    17.2 +++ b/sourcepawn/compiler/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
    17.3 @@ -65,4 +65,4 @@
    17.4  	binary.AddResourceFile('sourcepawn/compiler/libpawnc.rc', env)
    17.5  
    17.6  binary.SendToJob()
    17.7 -
    17.8 +SM.StripBinary(extension, binary)
    18.1 --- a/sourcepawn/jit/AMBuilder	Fri Dec 16 09:43:05 2011 -0500
    18.2 +++ b/sourcepawn/jit/AMBuilder	Thu Feb 16 19:26:49 2012 +0000
    18.3 @@ -40,4 +40,4 @@
    18.4  	])
    18.5  SM.AutoVersion('sourcepawn/jit', binary)
    18.6  binary.SendToJob()
    18.7 -
    18.8 +SM.StripBinary(extension, binary)