Home | History | Annotate | Download | only in qcms
      1 # Copyright 2014 The Chromium Authors. All rights reserved.
      2 # Use of this source code is governed by a BSD-style license that can be
      3 # found in the LICENSE file.
      4 
      5 config("qcms_config") {
      6   include_dirs = [ "src" ]
      7 }
      8 
      9 source_set("qcms") {
     10   sources = [
     11     "src/chain.c",
     12     "src/chain.h",
     13     "src/iccread.c",
     14     "src/matrix.c",
     15     "src/matrix.h",
     16     "src/qcms.h",
     17     "src/qcmsint.h",
     18     "src/qcmstypes.h",
     19     "src/transform.c",
     20     "src/transform_util.c",
     21     "src/transform_util.h",
     22   ]
     23 
     24   configs -= [ "//build/config/compiler:chromium_code" ]
     25   configs += [ "//build/config/compiler:no_chromium_code" ]
     26   direct_dependent_configs = [ ":qcms_config" ]
     27 
     28   if (cpu_arch == "x86" || cpu_arch == "x64") {
     29     defines = [ "SSE2_ENABLE" ]
     30     sources += [ "src/transform-sse2.c" ]
     31     if (!(is_win && cpu_arch == "x64")) {
     32       # QCMS assumes this target isn't compiled since MSVC x64 doesn't support
     33       # the MMX intrinsics present in the SSE1 code.
     34       sources += [ "src/transform-sse1.c" ]
     35     }
     36   }
     37 
     38   if (is_win) {
     39     cflags = [
     40       "/wd4056",  # Overflow in floating-point constant arithmetic (INFINITY).
     41       "/wd4756",  # Overflow in constant arithmetic (INFINITY).
     42     ]
     43   }
     44 }
     45