security/certverifier/moz.build
author Brian Smith <brian@briansmith.org>
Thu, 15 May 2014 21:56:23 -0700
changeset 205156 e307284f7fa0f46ef9622293e959d10b4a17455a
parent 200532 daee17c1458115ef05b91c19a13a407052bf9b9e
child 210331 e74c19c18f01a5340e00ecfbc44c774c9a71d11d
permissions -rw-r--r--
Bug 1010634, Part 6: Enable -Wall with a few exceptions for certverifier, r=cviecco

# -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

UNIFIED_SOURCES += [
    'CertVerifier.cpp',
    'NSSCertDBTrustDomain.cpp',
    'OCSPCache.cpp',
    'OCSPRequestor.cpp',
]

if not CONFIG['NSS_NO_EV_CERTS']:
    UNIFIED_SOURCES += [
        'ExtendedValidation.cpp',
    ]

LOCAL_INCLUDES += [
    '../manager/boot/src',
    '../manager/ssl/src',
    '../pkix/include',
]

DIRS += [
    '../pkix',
]

CXXFLAGS += ['-Wall']
if CONFIG['_MSC_VER']:
  # -Wall with Visual C++ enables too many problematic warnings
  CXXFLAGS += [
    '-wd4510', # default constructor could not be generated
    '-wd4512', # assignment operator could not be generated
    '-wd4514', # 'function': unreferenced inline function has been removed
    '-wd4610', # struct 'symbol' can never be instantiated - user defined
               # constructor required
    '-wd4619', # pragma warning: there is no warning 'warning'
    '-wd4625', # copy constructor could not be generated because a base
               # class copy constructor is inaccessible or deleted
    '-wd4626', # assignment operator could not be generated because a base
               # class assignment operator is inaccessible or deleted
    '-wd4710', # 'function': function not inlined
    '-wd4711', # function 'function' selected for inline expansion
    '-wd4820', # 'bytes' bytes padding added after construct 'member_name'
  ]

  # MSVC 2010's headers trigger these
  CXXFLAGS += [
      '-wd4548', # expression before comma has no effect; ...
      '-wd4668', # 'symbol' is not defined as a preprocessor macro...
      '-wd4987', # nonstandard extension used
  ]

  # Gecko headers aren't warning-free enough for us to enable these warnings
  CXXFLAGS += [
    '-wd4100', # 'symbol' : unreferenced formal parameter
    '-wd4127', # conditional expression is constant
    '-wd4946', # reinterpret_cast used between related types
  ]

FAIL_ON_WARNINGS = True

LIBRARY_NAME = 'certverifier'

FINAL_LIBRARY = 'xul'