Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(125)

Side by Side Diff: build/secondary/third_party/nss/BUILD.gn

Issue 1841863002: Update monet. (Closed) Base URL: https://github.com/domokit/monet.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import("//build/config/linux/pkg_config.gni") 5 import("//build/config/linux/pkg_config.gni")
6 6
7 if (is_linux) { 7 if (is_linux) {
8 # This is a dependency on NSS with no libssl. On Linux we use a built-in SSL 8 # This is a dependency on NSS with no libssl. On Linux we use a built-in SSL
9 # library but the system NSS libraries. Non-Linux platforms using NSS use the 9 # library but the system NSS libraries. Non-Linux platforms using NSS use the
10 # hermetic one in //third_party/nss. 10 # hermetic one in //third_party/nss.
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after
204 "nspr/pr/src/threads/prdump.c", 204 "nspr/pr/src/threads/prdump.c",
205 "nspr/pr/src/threads/prmon.c", 205 "nspr/pr/src/threads/prmon.c",
206 "nspr/pr/src/threads/prrwlock.c", 206 "nspr/pr/src/threads/prrwlock.c",
207 "nspr/pr/src/threads/prsem.c", 207 "nspr/pr/src/threads/prsem.c",
208 "nspr/pr/src/threads/prtpd.c", 208 "nspr/pr/src/threads/prtpd.c",
209 ] 209 ]
210 210
211 public_configs = [ ":nspr_config" ] 211 public_configs = [ ":nspr_config" ]
212 212
213 configs -= [ "//build/config/compiler:chromium_code" ] 213 configs -= [ "//build/config/compiler:chromium_code" ]
214 if (is_win) {
215 configs -= [
216 "//build/config/win:unicode", # Requires 8-bit mode.
217 "//build/config/win:lean_and_mean", # Won"t compile with lean and mean.
218 ]
219 }
220 configs += [ 214 configs += [
221 "//build/config/compiler:no_chromium_code", 215 "//build/config/compiler:no_chromium_code",
222 "//build/config/compiler:no_size_t_to_int_warning", 216 "//build/config/compiler:no_size_t_to_int_warning",
223 ] 217 ]
224 218
225 cflags = [] 219 cflags = []
226 defines = [ 220 defines = [
227 "_NSPR_BUILD_", 221 "_NSPR_BUILD_",
228 "FORCE_PR_LOG", 222 "FORCE_PR_LOG",
229 ] 223 ]
230 224
231 include_dirs = [ "nspr/pr/include/private" ] 225 include_dirs = [ "nspr/pr/include/private" ]
232 226
233 if (is_win) { 227 sources -= [
234 cflags = [ "/wd4554" ] # Check precidence. 228 "nspr/pr/src/md/windows/ntgc.c",
235 defines += [ 229 "nspr/pr/src/md/windows/ntinrval.c",
236 "XP_PC", 230 "nspr/pr/src/md/windows/ntmisc.c",
237 "WIN32", 231 "nspr/pr/src/md/windows/ntsec.c",
238 "WIN95", 232 "nspr/pr/src/md/windows/ntsem.c",
239 "_PR_GLOBAL_THREADS_ONLY", 233 "nspr/pr/src/md/windows/w32ipcsem.c",
240 "_CRT_SECURE_NO_WARNINGS", 234 "nspr/pr/src/md/windows/w32poll.c",
241 ] 235 "nspr/pr/src/md/windows/w32rng.c",
242 } else { 236 "nspr/pr/src/md/windows/w32shm.c",
243 sources -= [ 237 "nspr/pr/src/md/windows/w95cv.c",
244 "nspr/pr/src/md/windows/ntgc.c", 238 "nspr/pr/src/md/windows/w95dllmain.c",
245 "nspr/pr/src/md/windows/ntinrval.c", 239 "nspr/pr/src/md/windows/w95io.c",
246 "nspr/pr/src/md/windows/ntmisc.c", 240 "nspr/pr/src/md/windows/w95sock.c",
247 "nspr/pr/src/md/windows/ntsec.c", 241 "nspr/pr/src/md/windows/w95thred.c",
248 "nspr/pr/src/md/windows/ntsem.c", 242 "nspr/pr/src/md/windows/win32_errors.c",
249 "nspr/pr/src/md/windows/w32ipcsem.c", 243 "nspr/pr/src/threads/combined/prucpu.c",
250 "nspr/pr/src/md/windows/w32poll.c", 244 "nspr/pr/src/threads/combined/prucv.c",
251 "nspr/pr/src/md/windows/w32rng.c", 245 "nspr/pr/src/threads/combined/prulock.c",
252 "nspr/pr/src/md/windows/w32shm.c", 246 "nspr/pr/src/threads/combined/prustack.c",
253 "nspr/pr/src/md/windows/w95cv.c", 247 "nspr/pr/src/threads/combined/pruthr.c",
254 "nspr/pr/src/md/windows/w95dllmain.c", 248 ]
255 "nspr/pr/src/md/windows/w95io.c",
256 "nspr/pr/src/md/windows/w95sock.c",
257 "nspr/pr/src/md/windows/w95thred.c",
258 "nspr/pr/src/md/windows/win32_errors.c",
259 "nspr/pr/src/threads/combined/prucpu.c",
260 "nspr/pr/src/threads/combined/prucv.c",
261 "nspr/pr/src/threads/combined/prulock.c",
262 "nspr/pr/src/threads/combined/prustack.c",
263 "nspr/pr/src/threads/combined/pruthr.c",
264 ]
265 }
266 249
267 if (!is_posix) { 250 if (!is_posix) {
268 sources -= [ 251 sources -= [
269 "nspr/pr/src/md/unix/darwin.c", 252 "nspr/pr/src/md/unix/darwin.c",
270 "nspr/pr/src/md/unix/os_Darwin.s", 253 "nspr/pr/src/md/unix/os_Darwin.s",
271 "nspr/pr/src/md/unix/unix.c", 254 "nspr/pr/src/md/unix/unix.c",
272 "nspr/pr/src/md/unix/unix_errors.c", 255 "nspr/pr/src/md/unix/unix_errors.c",
273 "nspr/pr/src/md/unix/uxproces.c", 256 "nspr/pr/src/md/unix/uxproces.c",
274 "nspr/pr/src/md/unix/uxrng.c", 257 "nspr/pr/src/md/unix/uxrng.c",
275 "nspr/pr/src/md/unix/uxshm.c", 258 "nspr/pr/src/md/unix/uxshm.c",
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
351 ":nss_static", 334 ":nss_static",
352 ] 335 ]
353 336
354 if (include_nss_root_certs) { 337 if (include_nss_root_certs) {
355 public_deps += [ ":nssckbi" ] 338 public_deps += [ ":nssckbi" ]
356 } 339 }
357 340
358 if (component_mode == "shared_library") { 341 if (component_mode == "shared_library") {
359 if (is_mac) { 342 if (is_mac) {
360 ldflags = [ "-all_load" ] 343 ldflags = [ "-all_load" ]
361 } else if (is_win) {
362 # Pass the def file to the linker.
363 ldflags =
364 [ "/DEF:" + rebase_path("nss/exports_win.def", root_build_dir) ]
365 } 344 }
366 } 345 }
367 } 346 }
368 347
369 config("nssckbi_config") { 348 config("nssckbi_config") {
370 include_dirs = [ "nss/lib/ckfw/builtins" ] 349 include_dirs = [ "nss/lib/ckfw/builtins" ]
371 } 350 }
372 351
373 # This is really more of a pseudo-target to work around the fact that 352 # This is really more of a pseudo-target to work around the fact that
374 # a single static_library target cannot contain two object files of the 353 # a single static_library target cannot contain two object files of the
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
423 "nss/lib/ckfw/nssckt.h", 402 "nss/lib/ckfw/nssckt.h",
424 "nss/lib/ckfw/object.c", 403 "nss/lib/ckfw/object.c",
425 "nss/lib/ckfw/session.c", 404 "nss/lib/ckfw/session.c",
426 "nss/lib/ckfw/sessobj.c", 405 "nss/lib/ckfw/sessobj.c",
427 "nss/lib/ckfw/slot.c", 406 "nss/lib/ckfw/slot.c",
428 "nss/lib/ckfw/token.c", 407 "nss/lib/ckfw/token.c",
429 "nss/lib/ckfw/wrap.c", 408 "nss/lib/ckfw/wrap.c",
430 ] 409 ]
431 410
432 configs -= [ "//build/config/compiler:chromium_code" ] 411 configs -= [ "//build/config/compiler:chromium_code" ]
433
434 if (is_win) {
435 configs -= [ "//build/config/win:unicode" ] # Requires 8-bit mode.
436 }
437 configs += [ "//build/config/compiler:no_chromium_code" ] 412 configs += [ "//build/config/compiler:no_chromium_code" ]
438 413
439 include_dirs = [ "nss/lib/ckfw" ] 414 include_dirs = [ "nss/lib/ckfw" ]
440 public_configs = [ ":nssckbi_config" ] 415 public_configs = [ ":nssckbi_config" ]
441 416
442 public_deps = [ 417 public_deps = [
443 ":nss_static", 418 ":nss_static",
444 ] 419 ]
445 } 420 }
446 421
447 config("nss_static_config") { 422 config("nss_static_config") {
448 defines = [ 423 defines = [
449 "NSS_STATIC", 424 "NSS_STATIC",
450 "NSS_USE_STATIC_LIBS", 425 "NSS_USE_STATIC_LIBS",
451 "USE_UTIL_DIRECTLY", 426 "USE_UTIL_DIRECTLY",
452 ] 427 ]
453 if (is_win) {
454 defines += [ "_WINDOWS" ]
455 }
456 include_dirs = [ 428 include_dirs = [
457 "nspr/pr/include", 429 "nspr/pr/include",
458 "nspr/lib/ds", 430 "nspr/lib/ds",
459 "nspr/lib/libc/include", 431 "nspr/lib/libc/include",
460 "nss/lib/base", 432 "nss/lib/base",
461 "nss/lib/certdb", 433 "nss/lib/certdb",
462 "nss/lib/certhigh", 434 "nss/lib/certhigh",
463 "nss/lib/cryptohi", 435 "nss/lib/cryptohi",
464 "nss/lib/dev", 436 "nss/lib/dev",
465 "nss/lib/freebl", 437 "nss/lib/freebl",
466 "nss/lib/freebl/ecl", 438 "nss/lib/freebl/ecl",
467 "nss/lib/nss", 439 "nss/lib/nss",
468 "nss/lib/pk11wrap", 440 "nss/lib/pk11wrap",
469 "nss/lib/pkcs7", 441 "nss/lib/pkcs7",
470 "nss/lib/pki", 442 "nss/lib/pki",
471 "nss/lib/smime", 443 "nss/lib/smime",
472 "nss/lib/softoken", 444 "nss/lib/softoken",
473 "nss/lib/util", 445 "nss/lib/util",
474 ] 446 ]
475 } 447 }
476 448
477 if (is_win && current_cpu == "x86") {
478 source_set("nss_static_avx") {
479 sources = [
480 "nss/lib/freebl/intel-gcm-wrap.c",
481 "nss/lib/freebl/intel-gcm-x86-masm.asm",
482 "nss/lib/freebl/intel-gcm.h",
483 ]
484 defines = [
485 "_WINDOWS",
486 "_X86_",
487 "INTEL_GCM",
488 "MP_API_COMPATIBLE",
489 "MP_ASSEMBLY_DIV_2DX1D",
490 "MP_ASSEMBLY_MULTIPLY",
491 "MP_ASSEMBLY_SQUARE",
492 "MP_NO_MP_WORD",
493 "MP_USE_UINT_DIGIT",
494 "NSS_DISABLE_DBM",
495 "NSS_STATIC",
496 "NSS_USE_STATIC_LIBS",
497 "NSS_X86",
498 "NSS_X86_OR_X64",
499 "RIJNDAEL_INCLUDE_TABLES",
500 "SHLIB_PREFIX=\"\"",
501 "SHLIB_SUFFIX=\"dll\"",
502 "SHLIB_VERSION=\"3\"",
503 "SOFTOKEN_LIB_NAME=\"softokn3.dll\"",
504 "SOFTOKEN_SHLIB_VERSION=\"3\"",
505 "USE_HW_AES",
506 "USE_UTIL_DIRECTLY",
507 "WIN32",
508 "WIN95",
509 "XP_PC",
510 ]
511 include_dirs = [
512 "nspr/pr/include",
513 "nspr/lib/ds",
514 "nspr/lib/libc/include",
515 "nss/lib/freebl/ecl",
516 "nss/lib/util",
517 ]
518 }
519 }
520
521 source_set("nss_static") { 449 source_set("nss_static") {
522 visibility = [ ":*" ] # Internal implementation detail. 450 visibility = [ ":*" ] # Internal implementation detail.
523 451
524 sources = [ 452 sources = [
525 "nss/lib/base/arena.c", 453 "nss/lib/base/arena.c",
526 "nss/lib/base/base.h", 454 "nss/lib/base/base.h",
527 "nss/lib/base/baset.h", 455 "nss/lib/base/baset.h",
528 "nss/lib/base/error.c", 456 "nss/lib/base/error.c",
529 "nss/lib/base/errorval.c", 457 "nss/lib/base/errorval.c",
530 "nss/lib/base/hash.c", 458 "nss/lib/base/hash.c",
(...skipping 341 matching lines...) Expand 10 before | Expand all | Expand 10 after
872 800
873 # unix_rand.c and win_rand.c are included by sysrand.c. 801 # unix_rand.c and win_rand.c are included by sysrand.c.
874 "nss/lib/freebl/unix_rand.c", 802 "nss/lib/freebl/unix_rand.c",
875 "nss/lib/freebl/win_rand.c", 803 "nss/lib/freebl/win_rand.c",
876 804
877 # debug_module.c is included by pk11load.c. 805 # debug_module.c is included by pk11load.c.
878 "nss/lib/pk11wrap/debug_module.c", 806 "nss/lib/pk11wrap/debug_module.c",
879 ] 807 ]
880 808
881 configs -= [ "//build/config/compiler:chromium_code" ] 809 configs -= [ "//build/config/compiler:chromium_code" ]
882 if (is_win) {
883 configs -= [ "//build/config/win:unicode" ] # Requires 8-bit mode.
884 }
885 configs += [ 810 configs += [
886 "//build/config/compiler:no_chromium_code", 811 "//build/config/compiler:no_chromium_code",
887 "//build/config/compiler:no_size_t_to_int_warning", 812 "//build/config/compiler:no_size_t_to_int_warning",
888 ] 813 ]
889 public_configs = [ ":nss_static_config" ] 814 public_configs = [ ":nss_static_config" ]
890 815
891 cflags = [] 816 cflags = []
892 817
893 # Only need the defines and includes not in nss_static_config. 818 # Only need the defines and includes not in nss_static_config.
894 defines = [ 819 defines = [
895 "MP_API_COMPATIBLE", 820 "MP_API_COMPATIBLE",
896 "NSS_DISABLE_DBM", 821 "NSS_DISABLE_DBM",
897 "RIJNDAEL_INCLUDE_TABLES", 822 "RIJNDAEL_INCLUDE_TABLES",
898 "SHLIB_VERSION=\"3\"", 823 "SHLIB_VERSION=\"3\"",
899 "SOFTOKEN_SHLIB_VERSION=\"3\"", 824 "SOFTOKEN_SHLIB_VERSION=\"3\"",
900 ] 825 ]
901 include_dirs = [ 826 include_dirs = [
902 "nss/lib/freebl/mpi", 827 "nss/lib/freebl/mpi",
903 "nss/lib/ssl", 828 "nss/lib/ssl",
904 ] 829 ]
905 830
906 if (is_win) {
907 cflags += [ "/wd4101" ] # Unreferenced local variable.
908 }
909
910 if (include_nss_libpkix) { 831 if (include_nss_libpkix) {
911 sources += [ 832 sources += [
912 "nss/lib/certhigh/certvfypkix.c", 833 "nss/lib/certhigh/certvfypkix.c",
913 "nss/lib/certhigh/certvfypkixprint.c", 834 "nss/lib/certhigh/certvfypkixprint.c",
914 "nss/lib/libpkix/include/pkix.h", 835 "nss/lib/libpkix/include/pkix.h",
915 "nss/lib/libpkix/include/pkix_certsel.h", 836 "nss/lib/libpkix/include/pkix_certsel.h",
916 "nss/lib/libpkix/include/pkix_certstore.h", 837 "nss/lib/libpkix/include/pkix_certstore.h",
917 "nss/lib/libpkix/include/pkix_checker.h", 838 "nss/lib/libpkix/include/pkix_checker.h",
918 "nss/lib/libpkix/include/pkix_crlsel.h", 839 "nss/lib/libpkix/include/pkix_crlsel.h",
919 "nss/lib/libpkix/include/pkix_errorstrings.h", 840 "nss/lib/libpkix/include/pkix_errorstrings.h",
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after
1087 "nss/lib/libpkix/pkix_pl_nss/system", 1008 "nss/lib/libpkix/pkix_pl_nss/system",
1088 ] 1009 ]
1089 } else { 1010 } else {
1090 defines += [ "NSS_DISABLE_LIBPKIX" ] 1011 defines += [ "NSS_DISABLE_LIBPKIX" ]
1091 } 1012 }
1092 1013
1093 if (!include_nss_root_certs) { 1014 if (!include_nss_root_certs) {
1094 defines += [ "NSS_DISABLE_ROOT_CERTS" ] 1015 defines += [ "NSS_DISABLE_ROOT_CERTS" ]
1095 } 1016 }
1096 1017
1097 if (current_cpu == "x64" && !is_win) { 1018 if (current_cpu == "x64") {
1098 sources -= [ 1019 sources -= [
1099 "nss/lib/freebl/chacha20/chacha20.c", 1020 "nss/lib/freebl/chacha20/chacha20.c",
1100 "nss/lib/freebl/poly1305/poly1305.c", 1021 "nss/lib/freebl/poly1305/poly1305.c",
1101 ] 1022 ]
1102 } else { 1023 } else {
1103 sources -= [ 1024 sources -= [
1104 "nss/lib/freebl/chacha20/chacha20_vec.c", 1025 "nss/lib/freebl/chacha20/chacha20_vec.c",
1105 "nss/lib/freebl/poly1305/poly1305-donna-x64-sse2-incremental-source.c", 1026 "nss/lib/freebl/poly1305/poly1305-donna-x64-sse2-incremental-source.c",
1106 ] 1027 ]
1107 } 1028 }
(...skipping 14 matching lines...) Expand all
1122 "SHLIB_PREFIX=\"lib\"", 1043 "SHLIB_PREFIX=\"lib\"",
1123 "SOFTOKEN_LIB_NAME=\"libsoftokn3.dylib\"", 1044 "SOFTOKEN_LIB_NAME=\"libsoftokn3.dylib\"",
1124 ] 1045 ]
1125 1046
1126 configs -= [ "//build/config/gcc:symbol_visibility_hidden" ] 1047 configs -= [ "//build/config/gcc:symbol_visibility_hidden" ]
1127 } else { 1048 } else {
1128 # Not Mac/iOS. 1049 # Not Mac/iOS.
1129 sources -= [ "nss/lib/freebl/mpi/mpi_arm_mac.c" ] 1050 sources -= [ "nss/lib/freebl/mpi/mpi_arm_mac.c" ]
1130 } 1051 }
1131 1052
1132 if (is_win) { 1053 sources -= [
1133 defines += [ 1054 # mpi_x86_asm.c contains MSVC inline assembly code.
1134 "SHLIB_SUFFIX=\"dll\"", 1055 "nss/lib/freebl/mpi/mpi_x86_asm.c",
1135 "SHLIB_PREFIX=\"\"", 1056 ]
1136 "SOFTOKEN_LIB_NAME=\"softokn3.dll\"",
1137 "XP_PC",
1138 "WIN32",
1139 "WIN95",
1140 ]
1141
1142 if (current_cpu == "x86") {
1143 defines += [
1144 "NSS_X86_OR_X64",
1145 "NSS_X86",
1146 "_X86_",
1147 "MP_ASSEMBLY_MULTIPLY",
1148 "MP_ASSEMBLY_SQUARE",
1149 "MP_ASSEMBLY_DIV_2DX1D",
1150 "MP_USE_UINT_DIGIT",
1151 "MP_NO_MP_WORD",
1152 "USE_HW_AES",
1153 "INTEL_GCM",
1154 ]
1155 sources -= [ "nss/lib/freebl/mpi/mpi_amd64.c" ]
1156 } else if (current_cpu == "x64") {
1157 sources -= [
1158 "nss/lib/freebl/intel-aes-x86-masm.asm",
1159 "nss/lib/freebl/mpi/mpi_amd64.c",
1160 "nss/lib/freebl/mpi/mpi_x86_asm.c",
1161 ]
1162 defines += [
1163 "NSS_USE_64",
1164 "NSS_X86_OR_X64",
1165 "NSS_X64",
1166 "_AMD64_",
1167 "MP_CHAR_STORE_SLOW",
1168 "MP_IS_LITTLE_ENDIAN",
1169 "WIN64",
1170 ]
1171 }
1172 } else {
1173 # Not Windows.
1174 sources -= [
1175 # mpi_x86_asm.c contains MSVC inline assembly code.
1176 "nss/lib/freebl/mpi/mpi_x86_asm.c",
1177 ]
1178 }
1179 1057
1180 if (is_clang) { 1058 if (is_clang) {
1181 cflags += [ 1059 cflags += [
1182 # nss doesn"t explicitly cast between different enum types. 1060 # nss doesn"t explicitly cast between different enum types.
1183 "-Wno-conversion", 1061 "-Wno-conversion",
1184 1062
1185 # nss passes "const char*" through "void*". 1063 # nss passes "const char*" through "void*".
1186 "-Wno-incompatible-pointer-types", 1064 "-Wno-incompatible-pointer-types",
1187 1065
1188 # nss prefers `a && b || c` over `(a && b) || c`. 1066 # nss prefers `a && b || c` over `(a && b) || c`.
1189 "-Wno-logical-op-parentheses", 1067 "-Wno-logical-op-parentheses",
1190 1068
1191 # nss doesn"t use exhaustive switches on enums 1069 # nss doesn"t use exhaustive switches on enums
1192 "-Wno-switch", 1070 "-Wno-switch",
1193 1071
1194 # nss has some `unsigned < 0` checks. 1072 # nss has some `unsigned < 0` checks.
1195 "-Wno-tautological-compare", 1073 "-Wno-tautological-compare",
1196 ] 1074 ]
1197 } 1075 }
1198 1076
1199 public_deps = [ 1077 public_deps = [
1200 ":nspr", 1078 ":nspr",
1201 ] 1079 ]
1202 deps = [ 1080 deps = [
1203 ":nspr", 1081 ":nspr",
1204 "//third_party/sqlite", 1082 "//third_party/sqlite",
1205 ] 1083 ]
1206
1207 if (is_win && current_cpu == "x86") {
1208 deps += [ ":nss_static_avx" ]
1209 }
1210 } 1084 }
1211 } # Windows/Mac/iOS. 1085 } # Mac/iOS.
OLDNEW
« no previous file with comments | « build/secondary/third_party/leveldatabase/BUILD.gn ('k') | build/secondary/tools/grit/grit_rule.gni » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698