Index: tools/gn/secondary/third_party/libjpeg_turbo/BUILD.gn |
diff --git a/tools/gn/secondary/third_party/libjpeg_turbo/BUILD.gn b/tools/gn/secondary/third_party/libjpeg_turbo/BUILD.gn |
new file mode 100644 |
index 0000000000000000000000000000000000000000..2e73df71969cf60298befe781bc06ab1fdc27ca1 |
--- /dev/null |
+++ b/tools/gn/secondary/third_party/libjpeg_turbo/BUILD.gn |
@@ -0,0 +1,169 @@ |
+# Copyright (c) 2014 The Chromium Authors. All rights reserved. |
+# Use of this source code is governed by a BSD-style license that can be |
+# found in the LICENSE file. |
+ |
+source_set("simd") { |
+ if (cpu_arch == "ia32") { |
brettw
2014/05/03 04:38:33
ia32 -> x86
ckocagil
2014/05/03 06:43:46
Done.
|
+ sources = [ |
+ "simd/jsimd_i386.c", |
+ "simd/jccolmmx.asm", |
+ "simd/jccolss2.asm", |
+ "simd/jcgrammx.asm", |
+ "simd/jcgrass2.asm", |
+ "simd/jcqnt3dn.asm", |
+ "simd/jcqntmmx.asm", |
+ "simd/jcqnts2f.asm", |
+ "simd/jcqnts2i.asm", |
+ "simd/jcqntsse.asm", |
+ "simd/jcsammmx.asm", |
+ "simd/jcsamss2.asm", |
+ "simd/jdcolmmx.asm", |
+ "simd/jdcolss2.asm", |
+ "simd/jdmermmx.asm", |
+ "simd/jdmerss2.asm", |
+ "simd/jdsammmx.asm", |
+ "simd/jdsamss2.asm", |
+ "simd/jf3dnflt.asm", |
+ "simd/jfmmxfst.asm", |
+ "simd/jfmmxint.asm", |
+ "simd/jfss2fst.asm", |
+ "simd/jfss2int.asm", |
+ "simd/jfsseflt.asm", |
+ "simd/ji3dnflt.asm", |
+ "simd/jimmxfst.asm", |
+ "simd/jimmxint.asm", |
+ "simd/jimmxred.asm", |
+ "simd/jiss2flt.asm", |
+ "simd/jiss2fst.asm", |
+ "simd/jiss2int.asm", |
+ "simd/jiss2red.asm", |
+ "simd/jisseflt.asm", |
+ "simd/jsimdcpu.asm", |
+ ] |
+ } else if (cpu_arch == "x64" && !is_msan) { |
+ sources = [ |
+ "simd/jsimd_x86_64.c", |
+ "simd/jccolss2-64.asm", |
+ "simd/jcgrass2-64.asm", |
+ "simd/jcqnts2f-64.asm", |
+ "simd/jcqnts2i-64.asm", |
+ "simd/jcsamss2-64.asm", |
+ "simd/jdcolss2-64.asm", |
+ "simd/jdmerss2-64.asm", |
+ "simd/jdsamss2-64.asm", |
+ "simd/jfss2fst-64.asm", |
+ "simd/jfss2int-64.asm", |
+ "simd/jfsseflt-64.asm", |
+ "simd/jiss2flt-64.asm", |
+ "simd/jiss2fst-64.asm", |
+ "simd/jiss2int-64.asm", |
+ "simd/jiss2red-64.asm", |
+ ] |
+ } else { |
+ sources = [ "jsimd_none.c" ] |
+ } |
+} |
+ |
+config("libjpeg_config") { |
+ include_dirs = [ "." ] |
+} |
+ |
+source_set("libjpeg") { |
+ sources = [ |
+ "jcapimin.c", |
+ "jcapistd.c", |
+ "jccoefct.c", |
+ "jccolor.c", |
+ "jcdctmgr.c", |
+ "jchuff.c", |
+ "jchuff.h", |
+ "jcinit.c", |
+ "jcmainct.c", |
+ "jcmarker.c", |
+ "jcmaster.c", |
+ "jcomapi.c", |
+ "jconfig.h", |
+ "jcparam.c", |
+ "jcphuff.c", |
+ "jcprepct.c", |
+ "jcsample.c", |
+ "jdapimin.c", |
+ "jdapistd.c", |
+ "jdatadst.c", |
+ "jdatasrc.c", |
+ "jdcoefct.c", |
+ "jdcolor.c", |
+ "jdct.h", |
+ "jddctmgr.c", |
+ "jdhuff.c", |
+ "jdhuff.h", |
+ "jdinput.c", |
+ "jdmainct.c", |
+ "jdmarker.c", |
+ "jdmaster.c", |
+ "jdmerge.c", |
+ "jdphuff.c", |
+ "jdpostct.c", |
+ "jdsample.c", |
+ "jerror.c", |
+ "jerror.h", |
+ "jfdctflt.c", |
+ "jfdctfst.c", |
+ "jfdctint.c", |
+ "jidctflt.c", |
+ "jidctfst.c", |
+ "jidctint.c", |
+ "jidctred.c", |
+ "jinclude.h", |
+ "jmemmgr.c", |
+ "jmemnobs.c", |
+ "jmemsys.h", |
+ "jmorecfg.h", |
+ "jpegint.h", |
+ "jpeglib.h", |
+ "jpeglibmangler.h", |
+ "jquant1.c", |
+ "jquant2.c", |
+ "jutils.c", |
+ "jversion.h", |
+ ] |
+ |
+ defines = [ |
+ "WITH_SIMD", |
+ "MOTION_JPEG_SUPPORTED", |
+ "NO_GETENV", |
+ ] |
+ |
+ configs += [ ":libjpeg_config" ] |
+ |
+ direct_dependent_configs = [ ":libjpeg_config" ] |
+ |
+ deps = [] |
+ |
+ # MemorySanitizer doesn't support assembly code, so keep it disabled in |
+ # MSan builds for now. |
+ if (is_msan || cpu_arch == "arm64" || cpu_arch == "mipsel") { |
+ sources += [ "jsimd_none.c" ] |
+ } else { |
+ deps += [ ":simd" ] |
+ } |
+ |
+ # TODO: |
+ # The ARM SIMD implementation can be used for devices that support |
+ # the NEON instruction set. This can safely be done dynamically by |
+ # probing CPU features at runtime, if you wish. |
+ # [ 'target_arch=="arm"', { |
brettw
2014/05/03 04:38:33
This should be pretty easy to finish now:
at the t
ckocagil
2014/05/03 06:43:46
Done.
|
+ # 'conditions': [ |
+ # [ 'arm_version >= 7 and (arm_neon == 1 or arm_neon_optional == 1)', { |
+ # 'sources': [ |
+ # 'simd/jsimd_arm.c', |
+ # 'simd/jsimd_arm_neon.S', |
+ # ], |
+ # }, { |
+ # 'sources': [ |
+ # 'jsimd_none.c', |
+ # ], |
+ # }] |
+ # ], |
+ # }], |
brettw
2014/05/03 04:38:33
Can you put a TODO here about Windows & Mac?
ckocagil
2014/05/03 06:43:46
About what exactly?
brettw
2014/05/05 18:09:04
It looks like there's a whole bunch of stuff in th
ckocagil
2014/05/05 23:29:42
Done.
|
+} |