OLD | NEW |
(Empty) | |
| 1 # Copyright (c) 2012 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 { |
| 6 'variables': { |
| 7 'conditions': [ |
| 8 ['OS == "linux" and chromeos==0', { |
| 9 'use_system_libexif%': 1, |
| 10 }, { # OS != "linux" and chromeos==0 |
| 11 'use_system_libexif%': 0, |
| 12 }], |
| 13 ], |
| 14 }, |
| 15 'conditions': [ |
| 16 ['use_system_libexif==0', { |
| 17 'targets': [ |
| 18 { |
| 19 'target_name': 'libexif', |
| 20 'type': 'loadable_module', |
| 21 'sources': [ |
| 22 'sources/libexif/exif-byte-order.c', |
| 23 'sources/libexif/exif-content.c', |
| 24 'sources/libexif/exif-data.c', |
| 25 'sources/libexif/exif-entry.c', |
| 26 'sources/libexif/exif-format.c', |
| 27 'sources/libexif/exif-ifd.c', |
| 28 'sources/libexif/exif-loader.c', |
| 29 'sources/libexif/exif-log.c', |
| 30 'sources/libexif/exif-mem.c', |
| 31 'sources/libexif/exif-mnote-data.c', |
| 32 'sources/libexif/exif-tag.c', |
| 33 'sources/libexif/exif-utils.c', |
| 34 'sources/libexif/canon/exif-mnote-data-canon.c', |
| 35 'sources/libexif/canon/mnote-canon-entry.c', |
| 36 'sources/libexif/canon/mnote-canon-tag.c', |
| 37 'sources/libexif/fuji/exif-mnote-data-fuji.c', |
| 38 'sources/libexif/fuji/mnote-fuji-entry.c', |
| 39 'sources/libexif/fuji/mnote-fuji-tag.c', |
| 40 'sources/libexif/olympus/exif-mnote-data-olympus.c', |
| 41 'sources/libexif/olympus/mnote-olympus-entry.c', |
| 42 'sources/libexif/olympus/mnote-olympus-tag.c', |
| 43 'sources/libexif/pentax/exif-mnote-data-pentax.c', |
| 44 'sources/libexif/pentax/mnote-pentax-entry.c', |
| 45 'sources/libexif/pentax/mnote-pentax-tag.c', |
| 46 ], |
| 47 'include_dirs': [ |
| 48 'sources', |
| 49 ], |
| 50 'direct_dependent_settings': { |
| 51 'include_dirs': [ |
| 52 'sources', |
| 53 ], |
| 54 }, |
| 55 'variables': { |
| 56 'clang_warning_flags': [ |
| 57 '-Wno-enum-conversion', |
| 58 '-Wno-switch', |
| 59 '-Wno-format', |
| 60 # libexif uses fabs(int) to cast to float. |
| 61 '-Wno-absolute-value', |
| 62 ], |
| 63 }, |
| 64 'conditions': [ |
| 65 ['os_posix==1 and OS!="mac"', { |
| 66 'cflags!': ['-fvisibility=hidden'], |
| 67 'libraries': ['-lm'], |
| 68 }], |
| 69 ['OS=="mac"', { |
| 70 'conditions': [ |
| 71 ['mac_breakpad==1', { |
| 72 'variables': { |
| 73 'mac_real_dsym': 1, |
| 74 }, |
| 75 }], |
| 76 ], |
| 77 'xcode_settings': { |
| 78 'GCC_SYMBOLS_PRIVATE_EXTERN': 'NO', # no -fvisibility=hidden |
| 79 }, |
| 80 }], |
| 81 ['OS=="win"', { |
| 82 'product_name': 'libexif', |
| 83 'sources': [ |
| 84 'libexif.def', |
| 85 ], |
| 86 'conditions': [ |
| 87 ['MSVS_VERSION < "2015"', { |
| 88 'defines': [ |
| 89 # This seems like a hack, but this is what Safari Win does. |
| 90 # Luckily it is no longer needed/allowed with VS 2015. |
| 91 'snprintf=_snprintf', |
| 92 ], |
| 93 }], |
| 94 ], |
| 95 'defines': [ |
| 96 'inline=__inline', |
| 97 ], |
| 98 'msvs_disabled_warnings': [ |
| 99 4018, # size/unsigned mismatch |
| 100 4267, # size_t -> ExifLong truncation on amd64 |
| 101 ], |
| 102 # As of VS 2013 Update 3, building this project with /analyze hits |
| 103 # an internal compiler error on exif-entry.c. This halts the build |
| 104 # and prevents subsequent analysis. Therefore, /analyze is |
| 105 # disabled for this project. See this bug for details: |
| 106 # https://connect.microsoft.com/VisualStudio/feedback/details/1014
689/internal-compiler-error |
| 107 'msvs_settings': { |
| 108 'VCCLCompilerTool': { |
| 109 'AdditionalOptions!': [ '/analyze:WX-' ] |
| 110 }, |
| 111 }, |
| 112 }], |
| 113 ], |
| 114 }, |
| 115 ], |
| 116 }, { # 'use_system_libexif!=0 |
| 117 'targets': [ |
| 118 { |
| 119 'target_name': 'libexif', |
| 120 'type': 'none', |
| 121 'direct_dependent_settings': { |
| 122 'cflags': [ |
| 123 '<!@(<(pkg-config) --cflags libexif)', |
| 124 ], |
| 125 'defines': [ |
| 126 'USE_SYSTEM_LIBEXIF', |
| 127 ], |
| 128 }, |
| 129 } |
| 130 ], |
| 131 }], |
| 132 ] |
| 133 } |
OLD | NEW |