freebl_gtest.gyp 2.92 KB
Newer Older
1 2 3 4 5 6 7 8 9 10
# 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/.
{
  'includes': [
    '../../coreconf/config.gypi',
    '../common/gtest.gypi',
  ],
  'targets': [
    {
11 12 13
      # Dependencies for tests.
      'target_name': 'freebl_gtest_deps',
      'type': 'none',
14
      'dependencies': [
15
        '<(DEPTH)/lib/util/util.gyp:nssutil3',
16
        '<(DEPTH)/gtests/google_test/google_test.gyp:gtest',
17 18 19 20 21 22 23 24 25
        '<(DEPTH)/lib/nss/nss.gyp:nss_static',
        '<(DEPTH)/lib/pk11wrap/pk11wrap.gyp:pk11wrap_static',
        '<(DEPTH)/lib/cryptohi/cryptohi.gyp:cryptohi',
        '<(DEPTH)/lib/certhigh/certhigh.gyp:certhi',
        '<(DEPTH)/lib/certdb/certdb.gyp:certdb',
        '<(DEPTH)/lib/base/base.gyp:nssb',
        '<(DEPTH)/lib/dev/dev.gyp:nssdev',
        '<(DEPTH)/lib/pki/pki.gyp:nsspki',
        '<(DEPTH)/lib/ssl/ssl.gyp:ssl',
26
        '<(DEPTH)/lib/libpkix/libpkix.gyp:libpkix',
27
      ],
28
    },
29 30 31 32 33 34 35 36
    {
      'target_name': 'freebl_gtest',
      'type': 'executable',
      'sources': [
        'mpi_unittest.cc',
        'dh_unittest.cc',
        'ecl_unittest.cc',
        'ghash_unittest.cc',
37
        'rsa_unittest.cc',
38
        'cmac_unittests.cc',
39 40 41 42 43 44
        '<(DEPTH)/gtests/common/gtests.cc'
      ],
      'dependencies': [
        'freebl_gtest_deps',
        '<(DEPTH)/exports.gyp:nss_exports',
      ],
45 46 47 48 49 50 51
      'conditions': [
      [ 'cc_is_gcc==1 and (target_arch=="ia32" or target_arch=="x64")', {
         'cflags_cc': [
          '-msse2',
          ],
        }],
      ],
52
    },
53 54 55 56 57 58 59
    {
      'target_name': 'prng_gtest',
      'type': 'executable',
      'sources': [
        'prng_kat_unittest.cc',
      ],
      'dependencies': [
60
        'freebl_gtest_deps',
61 62
        '<(DEPTH)/exports.gyp:nss_exports',
      ],
63 64 65 66 67 68
    },
    {
      'target_name': 'blake2b_gtest',
      'type': 'executable',
      'sources': [
        'blake2b_unittest.cc',
69
      ],
70 71 72
      'dependencies': [
        'freebl_gtest_deps',
        '<(DEPTH)/exports.gyp:nss_exports',
73
      ],
74
    },
75 76 77
  ],
  'target_defaults': {
    'include_dirs': [
78
      '<(DEPTH)/lib/freebl/ecl',
79
      '<(DEPTH)/lib/freebl/mpi',
80
      '<(DEPTH)/lib/freebl/',
81 82 83 84 85 86 87 88
      '<(DEPTH)/lib/ssl/',
      '<(DEPTH)/lib/util/',
      '<(DEPTH)/lib/certdb/',
      '<(DEPTH)/lib/cryptohi/',
      '<(DEPTH)/lib/pk11wrap/',
    ],
    'defines': [
      'NSS_USE_STATIC_LIBS',
89
    ],
90
    # For static builds we have to set MPI defines.
91 92 93 94 95 96 97 98 99 100 101 102 103 104
    'conditions': [
      [ 'ct_verif==1', {
        'defines': [
          'CT_VERIF',
        ],
      }],
      [ 'target_arch=="ia32"', {
        'defines': [
          'MP_USE_UINT_DIGIT',
          'MP_ASSEMBLY_MULTIPLY',
          'MP_ASSEMBLY_SQUARE',
          'MP_ASSEMBLY_DIV_2DX1D',
        ],
      }],
105 106 107 108 109
      [ 'OS=="win"', {
        'libraries': [
          'advapi32.lib',
        ],
      }],
110
    ],
111 112 113 114 115
  },
  'variables': {
    'module': 'nss'
  }
}