OLD | NEW |
1 { | 1 { |
2 'targets': [ | 2 'targets': [ |
3 # Due to an unfortunate intersection of lameness between gcc and gyp, | 3 # Due to an unfortunate intersection of lameness between gcc and gyp, |
4 # we have to build the *_SSE2.cpp files in a separate target. The | 4 # we have to build the *_SSE2.cpp files in a separate target. The |
5 # gcc lameness is that, in order to compile SSE2 intrinsics code, it | 5 # gcc lameness is that, in order to compile SSE2 intrinsics code, it |
6 # must be passed the -msse2 flag. However, with this flag, it may | 6 # must be passed the -msse2 flag. However, with this flag, it may |
7 # emit SSE2 instructions even for scalar code, such as the CPUID | 7 # emit SSE2 instructions even for scalar code, such as the CPUID |
8 # test used to test for the presence of SSE2. So that, and all other | 8 # test used to test for the presence of SSE2. So that, and all other |
9 # code must be compiled *without* -msse2. The gyp lameness is that it | 9 # code must be compiled *without* -msse2. The gyp lameness is that it |
10 # does not allow file-specific CFLAGS, so we must create this extra | 10 # does not allow file-specific CFLAGS, so we must create this extra |
(...skipping 15 matching lines...) Expand all Loading... |
26 'dependencies': [ | 26 'dependencies': [ |
27 'core.gyp:*', | 27 'core.gyp:*', |
28 ], | 28 ], |
29 'include_dirs': [ | 29 'include_dirs': [ |
30 '../src/core', | 30 '../src/core', |
31 '../src/opts', | 31 '../src/opts', |
32 ], | 32 ], |
33 'conditions': [ | 33 'conditions': [ |
34 [ 'skia_arch_type == "x86" and skia_os != "ios"', { | 34 [ 'skia_arch_type == "x86" and skia_os != "ios"', { |
35 'conditions': [ | 35 'conditions': [ |
36 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "ch
romeos"]', { | 36 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "ch
romeos", "android"]', { |
37 'cflags': [ | 37 'cflags': [ |
38 '-msse2', | 38 '-msse2', |
39 ], | 39 ], |
40 }], | 40 }], |
41 [ 'skia_os != "android"', { | |
42 'dependencies': [ | |
43 'opts_ssse3', | |
44 ], | |
45 }], | |
46 ], | 41 ], |
47 'include_dirs': [ | 42 'include_dirs': [ |
48 '../include/utils', | 43 '../include/utils', |
49 ], | 44 ], |
| 45 'dependencies': [ |
| 46 'opts_ssse3', |
| 47 ], |
50 'sources': [ | 48 'sources': [ |
51 '../src/opts/opts_check_SSE2.cpp', | 49 '../src/opts/opts_check_SSE2.cpp', |
52 '../src/opts/SkBitmapProcState_opts_SSE2.cpp', | 50 '../src/opts/SkBitmapProcState_opts_SSE2.cpp', |
53 '../src/opts/SkBitmapFilter_opts_SSE2.cpp', | 51 '../src/opts/SkBitmapFilter_opts_SSE2.cpp', |
54 '../src/opts/SkBlitRow_opts_SSE2.cpp', | 52 '../src/opts/SkBlitRow_opts_SSE2.cpp', |
55 '../src/opts/SkBlitRect_opts_SSE2.cpp', | 53 '../src/opts/SkBlitRect_opts_SSE2.cpp', |
56 '../src/opts/SkUtils_opts_SSE2.cpp', | 54 '../src/opts/SkUtils_opts_SSE2.cpp', |
57 ], | 55 ], |
58 }], | 56 }], |
59 [ 'skia_arch_type == "arm" and armv7 == 1', { | 57 [ 'skia_arch_type == "arm" and armv7 == 1', { |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
112 'product_name': 'skia_opts_ssse3', | 110 'product_name': 'skia_opts_ssse3', |
113 'type': 'static_library', | 111 'type': 'static_library', |
114 'standalone_static_library': 1, | 112 'standalone_static_library': 1, |
115 'dependencies': [ | 113 'dependencies': [ |
116 'core.gyp:*', | 114 'core.gyp:*', |
117 ], | 115 ], |
118 'include_dirs': [ | 116 'include_dirs': [ |
119 '../src/core', | 117 '../src/core', |
120 ], | 118 ], |
121 'conditions': [ | 119 'conditions': [ |
122 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "chrome
os"]', { | 120 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "chrome
os", "android"]', { |
123 'cflags': [ | 121 'cflags': [ |
124 '-mssse3', | 122 '-mssse3', |
125 ], | 123 ], |
126 }], | 124 }], |
127 # TODO(epoger): the following will enable SSSE3 on Macs, but it will | 125 # TODO(epoger): the following will enable SSSE3 on Macs, but it will |
128 # break once we set OTHER_CFLAGS anywhere else (the first setting will | 126 # break once we set OTHER_CFLAGS anywhere else (the first setting will |
129 # be replaced, not added to) | 127 # be replaced, not added to) |
130 [ 'skia_os in ["mac"]', { | 128 [ 'skia_os in ["mac"]', { |
131 'xcode_settings': { | 129 'xcode_settings': { |
132 'OTHER_CFLAGS': ['-mssse3',], | 130 'OTHER_CFLAGS': ['-mssse3',], |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
180 ], | 178 ], |
181 }, | 179 }, |
182 ], | 180 ], |
183 } | 181 } |
184 | 182 |
185 # Local Variables: | 183 # Local Variables: |
186 # tab-width:2 | 184 # tab-width:2 |
187 # indent-tabs-mode:nil | 185 # indent-tabs-mode:nil |
188 # End: | 186 # End: |
189 # vim: set expandtab tabstop=2 shiftwidth=2: | 187 # vim: set expandtab tabstop=2 shiftwidth=2: |
OLD | NEW |