nss.gyp (12171B)
1 # This Source Code Form is subject to the terms of the Mozilla Public 2 # License, v. 2.0. If a copy of the MPL was not distributed with this 3 # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 { 5 'includes': [ 6 'coreconf/config.gypi' 7 ], 8 'conditions': [ 9 [ 'mozpkix_only==0', { 10 'targets': [ 11 { 12 'target_name': 'nss_libs', 13 'type': 'none', 14 'dependencies': [ 15 'lib/softoken/softoken.gyp:softokn3', 16 ], 17 'conditions': [ 18 [ 'OS=="solaris" and target_arch=="sparc64"', { 19 'dependencies': [ 20 'lib/freebl/freebl.gyp:freebl_64int_3', 21 'lib/freebl/freebl.gyp:freebl_64fpu_3', 22 ], 23 }, { 24 'dependencies': [ 25 'lib/freebl/freebl.gyp:freebl3', 26 ], 27 }], 28 [ 'moz_fold_libs==0', { 29 'dependencies': [ 30 'lib/nss/nss.gyp:nss3', 31 'lib/smime/smime.gyp:smime3', 32 'lib/sqlite/sqlite.gyp:sqlite3', 33 'lib/ssl/ssl.gyp:ssl3', 34 'lib/util/util.gyp:nssutil3', 35 ], 36 }], 37 [ 'OS=="linux"', { 38 'dependencies': [ 39 'lib/freebl/freebl.gyp:freeblpriv3', 40 ], 41 }], 42 [ 'OS=="linux" and mozilla_client==0', { 43 'dependencies': [ 44 'lib/sysinit/sysinit.gyp:nsssysinit', 45 ], 46 }], 47 [ 'disable_dbm==0', { 48 'dependencies': [ 49 'lib/softoken/legacydb/legacydb.gyp:nssdbm3', 50 ], 51 }], 52 [ 'disable_ckbi==0', { 53 'dependencies': [ 54 'lib/ckfw/builtins/builtins.gyp:nssckbi', 55 ], 56 }], 57 ], 58 }, 59 { 60 'target_name': 'nss_static_libs', 61 'type': 'none', 62 'dependencies': [ 63 'cmd/lib/lib.gyp:sectool', 64 'lib/base/base.gyp:nssb', 65 'lib/certdb/certdb.gyp:certdb', 66 'lib/certhigh/certhigh.gyp:certhi', 67 'lib/ckfw/ckfw.gyp:nssckfw', 68 'lib/crmf/crmf.gyp:crmf', 69 'lib/cryptohi/cryptohi.gyp:cryptohi', 70 'lib/dev/dev.gyp:nssdev', 71 'lib/freebl/freebl.gyp:freebl', 72 'lib/jar/jar.gyp:jar', 73 'lib/libpkix/libpkix.gyp:libpkix', 74 # mozpkix and mozpkix-testlib are static C++ libs 75 'lib/mozpkix/mozpkix.gyp:mozpkix', 76 'lib/mozpkix/mozpkix.gyp:mozpkix-testlib', 77 'lib/nss/nss.gyp:nss_static', 78 'lib/pk11wrap/pk11wrap.gyp:pk11wrap', 79 'lib/pkcs12/pkcs12.gyp:pkcs12', 80 'lib/pkcs7/pkcs7.gyp:pkcs7', 81 'lib/pki/pki.gyp:nsspki', 82 'lib/smime/smime.gyp:smime', 83 'lib/softoken/softoken.gyp:softokn', 84 'lib/ssl/ssl.gyp:ssl', 85 'lib/util/util.gyp:nssutil', 86 ], 87 'conditions': [ 88 [ 'OS=="linux" and mozilla_client==0', { 89 'dependencies': [ 90 'lib/sysinit/sysinit.gyp:nsssysinit_static', 91 ], 92 }], 93 [ 'disable_dbm==0', { 94 'dependencies': [ 95 'lib/dbm/src/src.gyp:dbm', 96 'lib/softoken/legacydb/legacydb.gyp:nssdbm', 97 ], 98 }], 99 [ 'use_system_sqlite==0', { 100 'dependencies': [ 101 'lib/sqlite/sqlite.gyp:sqlite', 102 ], 103 }], 104 [ 'moz_fold_libs==1', { 105 'dependencies': [ 106 'lib/nss/nss.gyp:nss3_static', 107 'lib/smime/smime.gyp:smime3_static', 108 ], 109 }], 110 ], 111 }, 112 { 113 'target_name': 'nss_cmds', 114 'type': 'none', 115 'dependencies': [ 116 'cmd/certutil/certutil.gyp:certutil', 117 'cmd/pk12util/pk12util.gyp:pk12util', 118 ], 119 'conditions': [ 120 [ 'comm_client==1', { 121 'dependencies': [ 122 'cmd/smimetools/smimetools.gyp:cmsutil', 123 'cmd/atob/atob.gyp:atob', 124 'cmd/btoa/btoa.gyp:btoa', 125 ], 126 }], 127 [ 'mozilla_client==0', { 128 'dependencies': [ 129 'cmd/crlutil/crlutil.gyp:crlutil', 130 'cmd/dbtool/dbtool.gyp:dbtool', 131 'cmd/modutil/modutil.gyp:modutil', 132 'cmd/nssdefaults/nssdefaults.gyp:nssdefaults', 133 'cmd/pwdecrypt/pwdecrypt.gyp:pwdecrypt', 134 'cmd/shlibsign/shlibsign.gyp:shlibsign', 135 'cmd/signtool/signtool.gyp:signtool', 136 'cmd/signver/signver.gyp:signver', 137 'cmd/smimetools/smimetools.gyp:cmsutil', 138 'cmd/ssltap/ssltap.gyp:ssltap', 139 'cmd/symkeyutil/symkeyutil.gyp:symkeyutil', 140 'cmd/validation/validation.gyp:validation', 141 'nss-tool/nss_tool.gyp:nss', 142 'nss-tool/nss_tool.gyp:hw-support', 143 ], 144 }], 145 ], 146 }, 147 ], 148 }, { # else, i.e. mozpkix_only==1 149 # Build only mozpkix. 150 'targets': [ 151 { 152 'target_name': 'nss_mozpkix_libs', 153 'type': 'none', 154 'dependencies': [ 155 # mozpkix and mozpkix-testlib are static C++ libs 156 'lib/mozpkix/mozpkix.gyp:mozpkix', 157 'lib/mozpkix/mozpkix.gyp:mozpkix-testlib', 158 ], 159 }, 160 ], 161 }], 162 [ 'disable_tests==0', { 163 'targets': [ 164 { 165 'target_name': 'nss_tests', 166 'type': 'none', 167 'dependencies': [ 168 'cmd/addbuiltin/addbuiltin.gyp:addbuiltin', 169 'cmd/atob/atob.gyp:atob', 170 'cmd/bltest/bltest.gyp:bltest', 171 'cmd/btoa/btoa.gyp:btoa', 172 'cmd/chktest/chktest.gyp:chktest', 173 'cmd/crmftest/crmftest.gyp:crmftest', 174 'cmd/dbtest/dbtest.gyp:dbtest', 175 'cmd/derdump/derdump.gyp:derdump', 176 'cmd/digest/digest.gyp:digest', 177 'cmd/ecperf/ecperf.gyp:ecperf', 178 'cmd/fbectest/fbectest.gyp:fbectest', 179 'cmd/httpserv/httpserv.gyp:httpserv', 180 'cmd/listsuites/listsuites.gyp:listsuites', 181 'cmd/makepqg/makepqg.gyp:makepqg', 182 'cmd/multinit/multinit.gyp:multinit', 183 'cmd/nss-policy-check/nss-policy-check.gyp:nss-policy-check', 184 'cmd/ocspclnt/ocspclnt.gyp:ocspclnt', 185 'cmd/ocspresp/ocspresp.gyp:ocspresp', 186 'cmd/oidcalc/oidcalc.gyp:oidcalc', 187 'cmd/p7content/p7content.gyp:p7content', 188 'cmd/p7env/p7env.gyp:p7env', 189 'cmd/p7sign/p7sign.gyp:p7sign', 190 'cmd/p7verify/p7verify.gyp:p7verify', 191 'cmd/pk11ectest/pk11ectest.gyp:pk11ectest', 192 'cmd/pk11gcmtest/pk11gcmtest.gyp:pk11gcmtest', 193 'cmd/pk11mode/pk11mode.gyp:pk11mode', 194 'cmd/pk11importtest/pk11importtest.gyp:pk11importtest', 195 'cmd/pk1sign/pk1sign.gyp:pk1sign', 196 'cmd/pp/pp.gyp:pp', 197 'cmd/rsaperf/rsaperf.gyp:rsaperf', 198 'cmd/rsapoptst/rsapoptst.gyp:rsapoptst', 199 'cmd/sdbthreadtst/sdbthreadtst.gyp:sdbthreadtst', 200 'cmd/sdrtest/sdrtest.gyp:sdrtest', 201 'cmd/selfserv/selfserv.gyp:selfserv', 202 'cmd/shlibsign/mangle/mangle.gyp:mangle', 203 'cmd/strsclnt/strsclnt.gyp:strsclnt', 204 'cmd/tests/tests.gyp:baddbdir', 205 'cmd/tests/tests.gyp:conflict', 206 'cmd/tests/tests.gyp:dertimetest', 207 'cmd/tests/tests.gyp:encodeinttest', 208 'cmd/tests/tests.gyp:nonspr10', 209 'cmd/tests/tests.gyp:remtest', 210 'cmd/tests/tests.gyp:secmodtest', 211 'cmd/tstclnt/tstclnt.gyp:tstclnt', 212 'cmd/vfychain/vfychain.gyp:vfychain', 213 'cmd/vfyserv/vfyserv.gyp:vfyserv', 214 'cmd/mpitests/mpitests.gyp:mpi_tests', 215 'gtests/base_gtest/base_gtest.gyp:base_gtest', 216 'gtests/certhigh_gtest/certhigh_gtest.gyp:certhigh_gtest', 217 'gtests/cryptohi_gtest/cryptohi_gtest.gyp:cryptohi_gtest', 218 'gtests/der_gtest/der_gtest.gyp:der_gtest', 219 'gtests/certdb_gtest/certdb_gtest.gyp:certdb_gtest', 220 'gtests/freebl_gtest/freebl_gtest.gyp:freebl_gtest', 221 'gtests/mozpkix_gtest/mozpkix_gtest.gyp:mozpkix_gtest', 222 'gtests/nss_bogo_shim/nss_bogo_shim.gyp:nss_bogo_shim', 223 'gtests/pkcs11testmodule/pkcs11testmodule.gyp:pkcs11testmodule', 224 'gtests/pk11_gtest/pk11_gtest.gyp:pk11_gtest', 225 'gtests/smime_gtest/smime_gtest.gyp:smime_gtest', 226 'gtests/softoken_gtest/softoken_gtest.gyp:softoken_gtest', 227 'gtests/ssl_gtest/ssl_gtest.gyp:ssl_gtest', 228 'gtests/util_gtest/util_gtest.gyp:util_gtest', 229 'lib/ckfw/builtins/testlib/builtins-testlib.gyp:nssckbi-testlib', 230 ], 231 'conditions': [ 232 [ 'OS=="linux"', { 233 'dependencies': [ 234 'cmd/lowhashtest/lowhashtest.gyp:lowhashtest', 235 ], 236 }], 237 [ 'OS=="linux" and mozilla_client==0', { 238 'dependencies': [ 239 'gtests/sysinit_gtest/sysinit_gtest.gyp:sysinit_gtest', 240 ], 241 }], 242 [ 'disable_libpkix==0', { 243 'dependencies': [ 244 'cmd/pkix-errcodes/pkix-errcodes.gyp:pkix-errcodes', 245 ], 246 }], 247 [ 'disable_fips==0', { 248 'dependencies': [ 249 'cmd/fipstest/fipstest.gyp:fipstest', 250 ], 251 }], 252 ], 253 }, 254 ], 255 }], 256 [ 'sign_libs==1', { 257 'targets': [ 258 { 259 'target_name': 'nss_sign_shared_libs', 260 'type': 'none', 261 'dependencies': [ 262 'cmd/shlibsign/shlibsign.gyp:shlibsign', 263 ], 264 'actions': [ 265 { 266 'action_name': 'shlibsign', 267 'msvs_cygwin_shell': 0, 268 'inputs': [ 269 '<(nss_dist_obj_dir)/lib/<(dll_prefix)freebl3.<(dll_suffix)', 270 '<(nss_dist_obj_dir)/lib/<(dll_prefix)freeblpriv3.<(dll_suffix)', 271 '<(nss_dist_obj_dir)/lib/<(dll_prefix)nssdbm3.<(dll_suffix)', 272 '<(nss_dist_obj_dir)/lib/<(dll_prefix)softokn3.<(dll_suffix)', 273 ], 274 'outputs': [ 275 '<(nss_dist_obj_dir)/lib/<(dll_prefix)freebl3.chk', 276 '<(nss_dist_obj_dir)/lib/<(dll_prefix)freeblpriv3.chk', 277 '<(nss_dist_obj_dir)/lib/<(dll_prefix)nssdbm3.chk', 278 '<(nss_dist_obj_dir)/lib/<(dll_prefix)softokn3.chk' 279 ], 280 'conditions': [ 281 ['OS!="linux"', { 282 'inputs/': [['exclude', 'freeblpriv']], 283 'outputs/': [['exclude', 'freeblpriv']] 284 }], 285 ['disable_dbm==1', { 286 'inputs/': [['exclude', 'nssdbm3']], 287 'outputs/': [['exclude', 'nssdbm3']] 288 }], 289 ], 290 'action': ['<(python)', '<(DEPTH)/coreconf/shlibsign.py', '<@(_inputs)'] 291 } 292 ], 293 }, 294 ], 295 }], 296 [ 'fuzz_tls==1', { 297 'targets': [ 298 { 299 'target_name': 'fuzz_warning', 300 'type': 'none', 301 'actions': [ 302 { 303 'action_name': 'fuzz_warning', 304 'action': ['cat', 'fuzz/warning.txt'], 305 'inputs': ['fuzz/warning.txt'], 306 'ninja_use_console': 1, 307 'outputs': ['dummy'], 308 } 309 ], 310 }, 311 ], 312 }], 313 [ 'fuzz==1', { 314 'targets': [ 315 { 316 'target_name': 'fuzz', 317 'type': 'none', 318 'dependencies': [ 319 'fuzz/fuzz.gyp:fuzz', 320 ], 321 }, 322 ], 323 }], 324 [ 'mozilla_central==1', { 325 'targets': [ 326 { 327 'target_name': 'test_nssckbi', 328 'type': 'none', 329 'dependencies': [ 330 'lib/ckfw/builtins/testlib/builtins-testlib.gyp:nssckbi-testlib', 331 ], 332 }, 333 ], 334 }], 335 ], 336 }