Added 'fat' option for bits param on scons for osx, this will produce a fat binary that contains both 32 bits and 64 bits binaries

(cherry picked from commit eeb83982e2)
This commit is contained in:
marcelofg55 2016-05-20 17:31:30 -03:00 committed by Rémi Verschelde
parent c2f48421d1
commit 4dc2d78d2e
2 changed files with 7 additions and 2 deletions

View File

@ -117,7 +117,7 @@ if profile:
opts=Variables(customs, ARGUMENTS) opts=Variables(customs, ARGUMENTS)
opts.Add('target', 'Compile Target (debug/release_debug/release).', "debug") opts.Add('target', 'Compile Target (debug/release_debug/release).', "debug")
opts.Add('bits', 'Compile Target Bits (default/32/64).', "default") opts.Add('bits', 'Compile Target Bits (default/32/64/fat).', "default")
opts.Add('platform','Platform: '+str(platform_list)+'.',"") opts.Add('platform','Platform: '+str(platform_list)+'.',"")
opts.Add('p','Platform (same as platform=).',"") opts.Add('p','Platform (same as platform=).',"")
opts.Add('tools','Build Tools (Including Editor): (yes/no)','yes') opts.Add('tools','Build Tools (Including Editor): (yes/no)','yes')
@ -276,6 +276,8 @@ if selected_platform in platform_list:
suffix+=".32" suffix+=".32"
elif (env["bits"]=="64"): elif (env["bits"]=="64"):
suffix+=".64" suffix+=".64"
elif (env["bits"]=="fat"):
suffix+=".fat"
suffix+=env.extra_suffix suffix+=env.extra_suffix

View File

@ -68,9 +68,12 @@ def configure(env):
if (env["bits"]=="64"): if (env["bits"]=="64"):
env.Append(CCFLAGS=['-arch', 'x86_64']) env.Append(CCFLAGS=['-arch', 'x86_64'])
env.Append(LINKFLAGS=['-arch', 'x86_64']) env.Append(LINKFLAGS=['-arch', 'x86_64'])
else: elif (env["bits"]=="32"):
env.Append(CCFLAGS=['-arch', 'i386']) env.Append(CCFLAGS=['-arch', 'i386'])
env.Append(LINKFLAGS=['-arch', 'i386']) env.Append(LINKFLAGS=['-arch', 'i386'])
else:
env.Append(CCFLAGS=['-arch', 'i386', '-arch', 'x86_64'])
env.Append(LINKFLAGS=['-arch', 'i386', '-arch', 'x86_64'])
else: else:
#osxcross build #osxcross build
root=os.environ.get("OSXCROSS_ROOT",0) root=os.environ.get("OSXCROSS_ROOT",0)