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 |
11 # target for those files to be compiled with -msse2. | 11 # target for those files to be compiled with -msse2. |
12 # | 12 # |
13 # This is actually only a problem on 32-bit Linux (all Intel Macs have | 13 # This is actually only a problem on 32-bit Linux (all Intel Macs have |
14 # SSE2, Linux x86_64 has SSE2 by definition, and MSC will happily emit | 14 # SSE2, Linux x86_64 has SSE2 by definition, and MSC will happily emit |
15 # SSE2 from instrinsics, while generating plain ol' 386 for everything | 15 # SSE2 from instrinsics, while generating plain ol' 386 for everything |
16 # else). However, to keep the .gyp file simple and avoid platform-specific | 16 # else). However, to keep the .gyp file simple and avoid platform-specific |
17 # build breakage, we do this on all platforms. | 17 # build breakage, we do this on all platforms. |
18 | 18 |
19 # For about the same reason, we need to compile the ARM opts files | 19 # For about the same reason, we need to compile the ARM opts files |
20 # separately as well. | 20 # separately as well. |
21 { | 21 { |
22 'target_name': 'opts', | 22 'target_name': 'opts', |
23 'product_name': 'skia_opts', | 23 'product_name': 'skia_opts', |
24 'type': 'static_library', | 24 'type': 'static_library', |
25 'standalone_static_library': 1, | 25 'standalone_static_library': 1, |
26 'dependencies': [ | 26 'dependencies': [ |
27 'core.gyp:*', | 27 'core.gyp:*', |
| 28 'effects.gyp:*' |
28 ], | 29 ], |
29 'include_dirs': [ | 30 'include_dirs': [ |
30 '../src/core', | 31 '../src/core', |
31 '../src/opts', | 32 '../src/opts', |
32 ], | 33 ], |
33 'conditions': [ | 34 'conditions': [ |
34 [ 'skia_arch_type == "x86" and skia_os != "ios"', { | 35 [ 'skia_arch_type == "x86" and skia_os != "ios"', { |
35 'conditions': [ | 36 'conditions': [ |
36 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "ch
romeos", "android"]', { | 37 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "nacl", "ch
romeos", "android"]', { |
37 'cflags': [ | 38 'cflags': [ |
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
178 '../src/opts/SkBitmapProcState_matrix_repeat_neon.h', | 179 '../src/opts/SkBitmapProcState_matrix_repeat_neon.h', |
179 '../src/opts/SkBlitMask_opts_arm_neon.cpp', | 180 '../src/opts/SkBlitMask_opts_arm_neon.cpp', |
180 '../src/opts/SkBlitRow_opts_arm_neon.cpp', | 181 '../src/opts/SkBlitRow_opts_arm_neon.cpp', |
181 '../src/opts/SkBlurImage_opts_neon.cpp', | 182 '../src/opts/SkBlurImage_opts_neon.cpp', |
182 '../src/opts/SkMorphology_opts_neon.cpp', | 183 '../src/opts/SkMorphology_opts_neon.cpp', |
183 '../src/opts/SkXfermode_opts_arm_neon.cpp', | 184 '../src/opts/SkXfermode_opts_arm_neon.cpp', |
184 ], | 185 ], |
185 }, | 186 }, |
186 ], | 187 ], |
187 } | 188 } |
OLD | NEW |