DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Mercurial (d38398e5144e)

VCS Links

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
# -*- Mode: python; 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/.

EXPORTS += [
    'BRNameMatchingPolicy.h',
    'CertVerifier.h',
    'CTLog.h',
    'CTPolicyEnforcer.h',
    'CTVerifyResult.h',
    'OCSPCache.h',
    'SignedCertificateTimestamp.h',
    'SignedTreeHead.h',
]

UNIFIED_SOURCES += [
    'BRNameMatchingPolicy.cpp',
    'CertVerifier.cpp',
    'CTDiversityPolicy.cpp',
    'CTLogVerifier.cpp',
    'CTObjectsExtractor.cpp',
    'CTPolicyEnforcer.cpp',
    'CTSerialization.cpp',
    'CTVerifyResult.cpp',
    'MultiLogCTVerifier.cpp',
    'NSSCertDBTrustDomain.cpp',
    'OCSPCache.cpp',
    'OCSPRequestor.cpp',
    'OCSPVerificationTrustDomain.cpp',
    'SignedCertificateTimestamp.cpp',
]

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

LOCAL_INCLUDES += [
    '/security/manager/ssl',
    '/security/pkix/include',
    '/security/pkix/lib',
]

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

TEST_DIRS += [
    'tests/gtest',
]

CXXFLAGS += ['-Wall']
if CONFIG['_MSC_VER']:
    # -Wall with Visual C++ enables too many problematic warnings
    CXXFLAGS += [
        '-wd4355', # 'this' used in base member initializer list
        '-wd4464', # relative include path contains '..'
        '-wd4480', # nonstandard extension used: specifying underlying type for
                   # enum 'enum'
        '-wd4481', # nonstandard extension used: override specifier 'keyword'
        '-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'
        '-wd4623', # default constructor could not be generated because a base
                   # class default constructor is inaccessible or deleted
        '-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
        '-wd4640', # construction of local static object is not thread-safe
        '-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
    ]

    # MSVC 2015 triggers these
    CXXFLAGS += [
        '-wd4456', # declaration of 'rv' hides previous local declaration
        '-wd4458', # declaration of 'input' hides class member
    ]

    # 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
    ]

if CONFIG['GNU_CXX']:
    CXXFLAGS += [
        '-Wextra',
        '-Wunreachable-code',
    ]

    # Gecko headers aren't warning-free enough for us to enable these warnings.
    CXXFLAGS += [
        '-Wno-unused-parameter',
    ]

FINAL_LIBRARY = 'xul'