OLD | NEW |
1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 # Linux should use system libexif | 5 # Linux should use system libexif |
6 if (!is_linux || is_chromeos) { | 6 if (!is_linux || is_chromeos) { |
7 | |
8 # TODO(thestig): Properly support building on Linux. | 7 # TODO(thestig): Properly support building on Linux. |
9 config("libexif_config") { | 8 config("libexif_config") { |
10 include_dirs = [ "sources" ] | 9 include_dirs = [ "sources" ] |
| 10 if (is_clang) { |
| 11 cflags = [ |
| 12 "-Wno-enum-conversion", |
| 13 "-Wno-switch", |
| 14 "-Wno-format", |
| 15 |
| 16 # libexif uses fabs(int) to cast to float. |
| 17 "-Wno-absolute-value", |
| 18 ] |
| 19 } |
11 } | 20 } |
12 | 21 |
13 static_library("libexif") { | 22 static_library("libexif") { |
14 sources = [ | 23 sources = [ |
15 "sources/libexif/exif-byte-order.c", | 24 "sources/libexif/exif-byte-order.c", |
16 "sources/libexif/exif-content.c", | 25 "sources/libexif/exif-content.c", |
17 "sources/libexif/exif-data.c", | 26 "sources/libexif/exif-data.c", |
18 "sources/libexif/exif-entry.c", | 27 "sources/libexif/exif-entry.c", |
19 "sources/libexif/exif-format.c", | 28 "sources/libexif/exif-format.c", |
20 "sources/libexif/exif-ifd.c", | 29 "sources/libexif/exif-ifd.c", |
(...skipping 23 matching lines...) Expand all Loading... |
44 | 53 |
45 if (is_win) { | 54 if (is_win) { |
46 defines = [ | 55 defines = [ |
47 # This seems like a hack, but this is what WebKit Win does. | 56 # This seems like a hack, but this is what WebKit Win does. |
48 "snprintf=_snprintf", | 57 "snprintf=_snprintf", |
49 "inline=__inline", | 58 "inline=__inline", |
50 ] | 59 ] |
51 | 60 |
52 ldflags = [ "/DEF:" + rebase_path("libexif.def") ] | 61 ldflags = [ "/DEF:" + rebase_path("libexif.def") ] |
53 | 62 |
54 cflags = [ | 63 cflags = [ "/wd4018" ] # size/unsigned mismatch |
55 "/wd4018", # size/unsigned mismatch | |
56 ] | |
57 | 64 |
58 # TODO(GYP): Handle /analyze switch, when it will be used in GN. | 65 # TODO(GYP): Handle /analyze switch, when it will be used in GN. |
59 } else if (is_linux) { | 66 } else if (is_linux) { |
60 libs = [ "m" ] | 67 libs = [ "m" ] |
61 } | 68 } |
62 | 69 |
63 configs -= [ "//build/config/compiler:chromium_code" ] | 70 configs -= [ "//build/config/compiler:chromium_code" ] |
64 configs += [ "//build/config/compiler:no_chromium_code" ] | 71 configs += [ "//build/config/compiler:no_chromium_code" ] |
65 | 72 |
66 public_configs = [ ":libexif_config" ] | 73 public_configs = [ ":libexif_config" ] |
67 } | 74 } |
68 } | 75 } |
OLD | NEW |