Disable warning 4267 in pdfium until it is fixed.
[pdfium.git] / pdfium.gyp
index 390b3f0..55a7db8 100644 (file)
@@ -1,6 +1,5 @@
 {
   'variables': {
-    'win_third_party_warn_as_error': 'false',
     'pdf_use_skia%': 0,
   },
   'target_defaults': {
       ['OS=="mac"', {
         'xcode_settings': {
           'GCC_ENABLE_CPP_EXCEPTIONS': 'YES',
-          'GCC_TREAT_WARNINGS_AS_ERRORS': 'NO',    # -Werror
         },
       }],
-      ['clang==1', {
-         'cflags!': [
-           '-Werror',
-         ],
-      }],
     ],
     'msvs_disabled_warnings': [
-      4005, 4018, 4146, 4333, 4345
+      4005, 4018, 4146, 4333, 4345, 4267
     ],
   },
   'targets': [
@@ -55,6 +48,7 @@
       'target_name': 'pdfium',
       'type': 'static_library',
       'dependencies': [
+        'safemath',
         'fdrm',
         'fpdfdoc',
         'fpdfapi',
       },
     },
     {
+      'target_name': 'safemath',
+      'type': 'none',
+      'sources': [
+        'third_party/logging.h',
+        'third_party/macros.h',
+        'third_party/template_util.h',
+        'third_party/numerics/safe_conversions.h',
+        'third_party/numerics/safe_conversions_impl.h',
+        'third_party/numerics/safe_math.h',
+        'third_party/numerics/safe_math_impl.h',
+      ],
+    },
+    {
       'target_name': 'fdrm',
       'type': 'static_library',
       'ldflags': [ '-L<(PRODUCT_DIR)',],
         'core/src/fxcodec/libjpeg/makefile',
         'core/src/fxcodec/libjpeg/transupp.h',
       ],
+      'conditions': [
+        ['os_posix==1', {
+          # core/src/fxcodec/fx_libopenjpeg/src/fx_mct.c does an pointer-to-int
+          # conversion to check that an address is 16-bit aligned (benign).
+          'cflags_c': [ '-Wno-pointer-to-int-cast' ],
+        }],
+      ],
     },
     {
       'target_name': 'fxcrt',
         'core/src/fxcrt/fx_basic_list.cpp',
         'core/src/fxcrt/fx_basic_maps.cpp',
         'core/src/fxcrt/fx_basic_memmgr.cpp',
-        'core/src/fxcrt/fx_basic_memmgr_mini.cpp',
         'core/src/fxcrt/fx_basic_plex.cpp',
         'core/src/fxcrt/fx_basic_utf.cpp',
         'core/src/fxcrt/fx_basic_util.cpp',
         'core/src/fxcrt/fx_unicode.cpp',
         'core/src/fxcrt/fx_xml_composer.cpp',
         'core/src/fxcrt/fx_xml_parser.cpp',
-        'core/src/fxcrt/mem_int.h',
         'core/src/fxcrt/plex.h',
         'core/src/fxcrt/xml_int.h',
       ],