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 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
66 '-fomit-frame-pointer', | 66 '-fomit-frame-pointer', |
67 '-mno-apcs-frame', | 67 '-mno-apcs-frame', |
68 ], | 68 ], |
69 'variables': { | 69 'variables': { |
70 'arm_neon_optional%': '<(arm_neon_optional>', | 70 'arm_neon_optional%': '<(arm_neon_optional>', |
71 }, | 71 }, |
72 'sources': [ | 72 'sources': [ |
73 '../src/opts/opts_check_arm.cpp', | 73 '../src/opts/opts_check_arm.cpp', |
74 '../src/opts/memset.arm.S', | 74 '../src/opts/memset.arm.S', |
75 '../src/opts/SkBitmapProcState_opts_arm.cpp', | 75 '../src/opts/SkBitmapProcState_opts_arm.cpp', |
| 76 '../src/opts/SkBlitMask_opts_arm.cpp', |
76 '../src/opts/SkBlitRow_opts_arm.cpp', | 77 '../src/opts/SkBlitRow_opts_arm.cpp', |
77 '../src/opts/SkBlitRow_opts_arm.h', | 78 '../src/opts/SkBlitRow_opts_arm.h', |
78 ], | 79 ], |
79 'conditions': [ | 80 'conditions': [ |
80 [ 'arm_neon == 1 or arm_neon_optional == 1', { | 81 [ 'arm_neon == 1 or arm_neon_optional == 1', { |
81 'dependencies': [ | 82 'dependencies': [ |
82 'opts_neon', | 83 'opts_neon', |
83 ] | 84 ] |
84 }], | 85 }], |
85 [ 'skia_os == "ios"', { | 86 [ 'skia_os == "ios"', { |
86 'sources!': [ | 87 'sources!': [ |
87 # these fail to compile under xcode for ios | 88 # these fail to compile under xcode for ios |
88 '../src/opts/memset.arm.S', | 89 '../src/opts/memset.arm.S', |
89 '../src/opts/SkBitmapProcState_opts_arm.cpp', | 90 '../src/opts/SkBitmapProcState_opts_arm.cpp', |
90 '../src/opts/SkBlitRow_opts_arm.cpp', | 91 '../src/opts/SkBlitRow_opts_arm.cpp', |
91 ], | 92 ], |
92 }], | 93 }], |
93 ], | 94 ], |
94 }], | 95 }], |
95 [ '(skia_arch_type == "arm" and arm_version < 7) or (skia_os == "ios")',
{ | 96 [ '(skia_arch_type == "arm" and arm_version < 7) or (skia_os == "ios")',
{ |
96 'sources': [ | 97 'sources': [ |
97 '../src/opts/SkBitmapProcState_opts_none.cpp', | 98 '../src/opts/SkBitmapProcState_opts_none.cpp', |
| 99 '../src/opts/SkBlitMask_opts_none.cpp', |
98 '../src/opts/SkBlitRow_opts_none.cpp', | 100 '../src/opts/SkBlitRow_opts_none.cpp', |
99 '../src/opts/SkUtils_opts_none.cpp', | 101 '../src/opts/SkUtils_opts_none.cpp', |
100 ], | 102 ], |
101 }], | 103 }], |
102 ], | 104 ], |
103 }, | 105 }, |
104 # For the same lame reasons as what is done for skia_opts, we have to | 106 # For the same lame reasons as what is done for skia_opts, we have to |
105 # create another target specifically for SSSE3 code as we would not want | 107 # create another target specifically for SSSE3 code as we would not want |
106 # to compile the SSE2 code with -mssse3 which would potentially allow | 108 # to compile the SSE2 code with -mssse3 which would potentially allow |
107 # gcc to generate SSSE3 code. | 109 # gcc to generate SSSE3 code. |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
171 ], | 173 ], |
172 }, | 174 }, |
173 ], | 175 ], |
174 } | 176 } |
175 | 177 |
176 # Local Variables: | 178 # Local Variables: |
177 # tab-width:2 | 179 # tab-width:2 |
178 # indent-tabs-mode:nil | 180 # indent-tabs-mode:nil |
179 # End: | 181 # End: |
180 # vim: set expandtab tabstop=2 shiftwidth=2: | 182 # vim: set expandtab tabstop=2 shiftwidth=2: |
OLD | NEW |