Separate target architecture type and width into separate variables.
authordjsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>
Thu, 28 Jun 2012 16:08:05 +0000 (16:08 +0000)
committerdjsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>
Thu, 28 Jun 2012 16:08:05 +0000 (16:08 +0000)
Also add support for building mac in 64 bit mode.
Review URL: https://codereview.appspot.com/6343050

git-svn-id: http://skia.googlecode.com/svn/trunk@4385 2bbb7eff-a529-9590-31e7-b0007b416f81

gyp/common.gypi
gyp/common_conditions.gypi
gyp/common_variables.gypi
gyp/core.gyp
gyp/opts.gyp

index 717e6eb..85c590d 100644 (file)
@@ -24,6 +24,9 @@
         ['skia_angle and not skia_os == "win"',
           {'error': '<!(skia_angle=1 only supported with skia_os="win".)'
         }],
+        ['skia_arch_width != 32 or skia_arch_width != 64',
+          {'error': '<!(skia_arch_width can only be 32 or 64 bits not <(skia_arch_width) bits)'
+        }],
       ],
     },
     'includes': [
index f73fa50..92113e3 100644 (file)
         'defines': [
           'SK_BUILD_FOR_MAC',
         ],
+        'conditions' : [
+          ['skia_arch_width == 64', {
+            'xcode_settings': {
+              'ARCHS': 'x86_64',
+            },
+          }],
+          ['skia_arch_width == 32', {
+            'xcode_settings': {
+              'ARCHS': 'i386',
+            },
+          }],
+        ],
         'configurations': {
           'Debug': {
             'xcode_settings': {
           '-fno-rtti',
         ],
         'conditions': [
-          [ 'skia_target_arch == "arm"', {
+          [ 'skia_arch_type == "arm"', {
             'ldflags': [
               '-Wl',
               '--fix-cortex-a8',
             ],
           }],
-          [ 'skia_target_arch == "arm" and arm_thumb == 1', {
+          [ 'skia_arch_type == "arm" and arm_thumb == 1', {
             'cflags': [
               '-mthumb',
             ],
           }],
-          [ 'skia_target_arch == "arm" and armv7 == 1', {
+          [ 'skia_arch_type == "arm" and armv7 == 1', {
             'variables': {
               'arm_neon_optional%': 0,
             },
index 4a5f4a4..49aaddd 100644 (file)
@@ -63,7 +63,8 @@
       'skia_mesa%': 0,
       # Do not turn on 'skia_angle' - it is currently experimental
       'skia_angle%': 0,
-      'skia_target_arch%': 'x86',
+      'skia_arch_type%': 'x86',
+      'skia_arch_width%': '32',
     },
 
     # Re-define all variables defined within the level-2 'variables' dict,
@@ -73,7 +74,8 @@
     'skia_scalar%': '<(skia_scalar)',
     'skia_mesa%': '<(skia_mesa)',
     'skia_angle%': '<(skia_angle)',
-    'skia_target_arch%': '<(skia_target_arch)',
+    'skia_arch_type%': '<(skia_arch_type)',
+    'skia_arch_width%': '<(skia_arch_width)',
   },
 }
 # Local Variables:
index 5386407..a109d7b 100644 (file)
              'android_system.gyp:ft2',
           ],
         }],
-        [ 'skia_os == "android" and skia_target_arch == "arm" and armv7 == 1', {
+        [ 'skia_os == "android" and skia_arch_type == "arm" and armv7 == 1', {
           # The code in SkUtilsArm.cpp can be used on an ARM-based Linux system, not only Android.
           'sources': [
             '../src/core/SkUtilsArm.cpp',
index 41cb0ed..ca2b1c1 100644 (file)
@@ -28,7 +28,7 @@
         '../src/opts',
       ],
       'conditions': [
-        [ 'skia_target_arch == "x86"', {
+        [ 'skia_arch_type == "x86"', {
           'conditions': [
             [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris"]', {
               'cflags': [
@@ -47,7 +47,7 @@
             'opts_ssse3',
           ],
         }],
-        [ 'skia_target_arch == "arm" and armv7 == 1', {
+        [ 'skia_arch_type == "arm" and armv7 == 1', {
           # The assembly uses the frame pointer register (r7 in Thumb/r11 in
           # ARM), the compiler doesn't like that.
           'cflags!': [
@@ -73,7 +73,7 @@
             }]
           ],
         }],
-        [ 'skia_target_arch == "arm" and armv7 != 1', {
+        [ 'skia_arch_type == "arm" and armv7 != 1', {
           'sources': [
             '../src/opts/SkBitmapProcState_opts_none.cpp',
             '../src/opts/SkBlitRow_opts_none.cpp',
             'OTHER_CFLAGS': ['-mssse3',],
           },
         }],
-        [ 'skia_target_arch == "x86"', {
+        [ 'skia_arch_type == "x86"', {
           'sources': [
             '../src/opts/SkBitmapProcState_opts_SSSE3.cpp',
           ],