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

Side by Side Diff: net/net.gyp

Issue 881213004: Support building BoringSSL with NSS certificates. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: more ios Created 5 years, 9 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 2013 The Chromium Authors. All rights reserved. 1 # Copyright 2013 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 { 5 {
6 'variables': { 6 'variables': {
7 'chromium_code': 1, 7 'chromium_code': 1,
8 8
9 'linux_link_kerberos%': 0, 9 'linux_link_kerberos%': 0,
10 'conditions': [ 10 'conditions': [
(...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after
197 ] 197 ]
198 }, { # else 198 }, { # else
199 'sources!': [ 199 'sources!': [
200 'dns/address_sorter_posix.cc', 200 'dns/address_sorter_posix.cc',
201 'dns/address_sorter_posix.h', 201 'dns/address_sorter_posix.h',
202 'dns/dns_client.cc', 202 'dns/dns_client.cc',
203 ], 203 ],
204 }], 204 }],
205 ['use_openssl==1', { 205 ['use_openssl==1', {
206 'sources!': [ 206 'sources!': [
207 'base/crypto_module_nss.cc',
208 'base/keygen_handler_nss.cc',
209 'base/nss_memio.c', 207 'base/nss_memio.c',
210 'base/nss_memio.h', 208 'base/nss_memio.h',
211 'cert/cert_database_nss.cc',
212 'cert/cert_verify_proc_nss.cc',
213 'cert/cert_verify_proc_nss.h',
214 'cert/ct_log_verifier_nss.cc', 209 'cert/ct_log_verifier_nss.cc',
215 'cert/ct_objects_extractor_nss.cc', 210 'cert/ct_objects_extractor_nss.cc',
216 'cert/jwk_serializer_nss.cc', 211 'cert/jwk_serializer_nss.cc',
217 'cert/nss_cert_database.cc',
218 'cert/nss_cert_database.h',
219 'cert/nss_cert_database_chromeos.cc',
220 'cert/nss_cert_database_chromeos.h',
221 'cert/nss_profile_filter_chromeos.cc', 212 'cert/nss_profile_filter_chromeos.cc',
222 'cert/nss_profile_filter_chromeos.h', 213 'cert/nss_profile_filter_chromeos.h',
223 'cert/scoped_nss_types.h', 214 'cert/scoped_nss_types.h',
224 'cert/sha256_legacy_support_nss_win.cc', 215 'cert/sha256_legacy_support_nss_win.cc',
225 'cert/test_root_certs_nss.cc',
226 'cert/x509_certificate_nss.cc',
227 'cert/x509_util_nss.cc', 216 'cert/x509_util_nss.cc',
228 'cert/x509_util_nss.h',
229 'ocsp/nss_ocsp.cc',
230 'ocsp/nss_ocsp.h',
231 'quic/crypto/aead_base_decrypter_nss.cc', 217 'quic/crypto/aead_base_decrypter_nss.cc',
232 'quic/crypto/aead_base_encrypter_nss.cc', 218 'quic/crypto/aead_base_encrypter_nss.cc',
233 'quic/crypto/aes_128_gcm_12_decrypter_nss.cc', 219 'quic/crypto/aes_128_gcm_12_decrypter_nss.cc',
234 'quic/crypto/aes_128_gcm_12_encrypter_nss.cc', 220 'quic/crypto/aes_128_gcm_12_encrypter_nss.cc',
235 'quic/crypto/chacha20_poly1305_decrypter_nss.cc', 221 'quic/crypto/chacha20_poly1305_decrypter_nss.cc',
236 'quic/crypto/chacha20_poly1305_encrypter_nss.cc', 222 'quic/crypto/chacha20_poly1305_encrypter_nss.cc',
237 'quic/crypto/channel_id_nss.cc', 223 'quic/crypto/channel_id_nss.cc',
238 'quic/crypto/p256_key_exchange_nss.cc', 224 'quic/crypto/p256_key_exchange_nss.cc',
239 'socket/nss_ssl_util.cc', 225 'socket/nss_ssl_util.cc',
240 'socket/nss_ssl_util.h', 226 'socket/nss_ssl_util.h',
241 'socket/ssl_client_socket_nss.cc', 227 'socket/ssl_client_socket_nss.cc',
242 'socket/ssl_client_socket_nss.h', 228 'socket/ssl_client_socket_nss.h',
243 'socket/ssl_server_socket_nss.cc', 229 'socket/ssl_server_socket_nss.cc',
244 'socket/ssl_server_socket_nss.h', 230 'socket/ssl_server_socket_nss.h',
245 'third_party/mozilla_security_manager/nsKeygenHandler.cpp',
246 'third_party/mozilla_security_manager/nsKeygenHandler.h',
247 'third_party/mozilla_security_manager/nsNSSCertificateDB.cpp',
248 'third_party/mozilla_security_manager/nsNSSCertificateDB.h',
249 'third_party/mozilla_security_manager/nsPKCS12Blob.cpp',
250 'third_party/mozilla_security_manager/nsPKCS12Blob.h',
251 ], 231 ],
252 'dependencies': [ 232 'dependencies': [
253 '../third_party/boringssl/boringssl.gyp:boringssl', 233 '../third_party/boringssl/boringssl.gyp:boringssl',
254 ], 234 ],
255 }, 235 },
256 { # else !use_openssl: remove the unneeded files and depend on NSS. 236 { # else !use_openssl: remove the unneeded files and depend on NSS.
257 'sources!': [ 237 'sources!': [
258 'base/crypto_module_openssl.cc',
259 'cert/ct_log_verifier_openssl.cc', 238 'cert/ct_log_verifier_openssl.cc',
260 'cert/ct_objects_extractor_openssl.cc', 239 'cert/ct_objects_extractor_openssl.cc',
261 'cert/jwk_serializer_openssl.cc', 240 'cert/jwk_serializer_openssl.cc',
262 'cert/sha256_legacy_support_openssl_win.cc', 241 'cert/sha256_legacy_support_openssl_win.cc',
263 'cert/x509_util_openssl.cc', 242 'cert/x509_util_openssl.cc',
264 'cert/x509_util_openssl.h', 243 'cert/x509_util_openssl.h',
265 'quic/crypto/aead_base_decrypter_openssl.cc', 244 'quic/crypto/aead_base_decrypter_openssl.cc',
266 'quic/crypto/aead_base_encrypter_openssl.cc', 245 'quic/crypto/aead_base_encrypter_openssl.cc',
267 'quic/crypto/aes_128_gcm_12_decrypter_openssl.cc', 246 'quic/crypto/aes_128_gcm_12_decrypter_openssl.cc',
268 'quic/crypto/aes_128_gcm_12_encrypter_openssl.cc', 247 'quic/crypto/aes_128_gcm_12_encrypter_openssl.cc',
269 'quic/crypto/chacha20_poly1305_decrypter_openssl.cc', 248 'quic/crypto/chacha20_poly1305_decrypter_openssl.cc',
270 'quic/crypto/chacha20_poly1305_encrypter_openssl.cc', 249 'quic/crypto/chacha20_poly1305_encrypter_openssl.cc',
271 'quic/crypto/channel_id_openssl.cc', 250 'quic/crypto/channel_id_openssl.cc',
272 'quic/crypto/p256_key_exchange_openssl.cc', 251 'quic/crypto/p256_key_exchange_openssl.cc',
273 'quic/crypto/scoped_evp_aead_ctx.cc', 252 'quic/crypto/scoped_evp_aead_ctx.cc',
274 'quic/crypto/scoped_evp_aead_ctx.h', 253 'quic/crypto/scoped_evp_aead_ctx.h',
275 'socket/ssl_client_socket_openssl.cc', 254 'socket/ssl_client_socket_openssl.cc',
276 'socket/ssl_client_socket_openssl.h', 255 'socket/ssl_client_socket_openssl.h',
277 'socket/ssl_server_socket_openssl.cc', 256 'socket/ssl_server_socket_openssl.cc',
278 'socket/ssl_server_socket_openssl.h', 257 'socket/ssl_server_socket_openssl.h',
279 'socket/ssl_session_cache_openssl.cc', 258 'socket/ssl_session_cache_openssl.cc',
280 'socket/ssl_session_cache_openssl.h', 259 'socket/ssl_session_cache_openssl.h',
281 'ssl/openssl_platform_key.h', 260 'ssl/openssl_platform_key.h',
282 'ssl/openssl_platform_key_mac.cc', 261 'ssl/openssl_platform_key_mac.cc',
262 'ssl/openssl_platform_key_nss.cc',
283 'ssl/openssl_platform_key_win.cc', 263 'ssl/openssl_platform_key_win.cc',
284 'ssl/openssl_ssl_util.cc', 264 'ssl/openssl_ssl_util.cc',
285 'ssl/openssl_ssl_util.h', 265 'ssl/openssl_ssl_util.h',
286 ], 266 ],
267 },
268 ],
269 [ 'use_nss == 1 or OS == "ios" or use_openssl == 0', {
287 'conditions': [ 270 'conditions': [
288 # Pull in the bundled or system NSS as appropriate. 271 # Pull in the bundled or system NSS as appropriate.
289 [ 'desktop_linux == 1 or chromeos == 1', { 272 [ 'desktop_linux == 1 or chromeos == 1', {
290 'dependencies': [ 273 'dependencies': [
291 '../build/linux/system.gyp:ssl', 274 '../build/linux/system.gyp:ssl',
292 ], 275 ],
293 }, { 276 }, {
294 'dependencies': [ 277 'dependencies': [
295 '../third_party/nss/nss.gyp:nspr', 278 '../third_party/nss/nss.gyp:nspr',
296 '../third_party/nss/nss.gyp:nss', 279 '../third_party/nss/nss.gyp:nss',
297 'third_party/nss/ssl.gyp:libssl', 280 'third_party/nss/ssl.gyp:libssl',
298 ], 281 ],
299 }] 282 }]
300 ], 283 ],
301 }, 284 }, {
302 ], 285 'sources!': [
286 'cert/x509_util_nss.h',
287 ],
288 }],
303 [ 'use_openssl_certs == 0', { 289 [ 'use_openssl_certs == 0', {
304 'sources!': [ 290 'sources!': [
291 'base/crypto_module_openssl.cc',
305 'base/keygen_handler_openssl.cc', 292 'base/keygen_handler_openssl.cc',
306 'base/openssl_private_key_store.h', 293 'base/openssl_private_key_store.h',
307 'base/openssl_private_key_store_android.cc', 294 'base/openssl_private_key_store_android.cc',
308 'base/openssl_private_key_store_memory.cc', 295 'base/openssl_private_key_store_memory.cc',
309 'cert/cert_database_openssl.cc', 296 'cert/cert_database_openssl.cc',
310 'cert/cert_verify_proc_openssl.cc', 297 'cert/cert_verify_proc_openssl.cc',
311 'cert/cert_verify_proc_openssl.h', 298 'cert/cert_verify_proc_openssl.h',
312 'cert/test_root_certs_openssl.cc', 299 'cert/test_root_certs_openssl.cc',
313 'cert/x509_certificate_openssl.cc', 300 'cert/x509_certificate_openssl.cc',
314 'ssl/openssl_client_key_store.cc', 301 'ssl/openssl_client_key_store.cc',
(...skipping 21 matching lines...) Expand all
336 }], 323 }],
337 ['OS=="solaris"', { 324 ['OS=="solaris"', {
338 'link_settings': { 325 'link_settings': {
339 'ldflags': [ 326 'ldflags': [
340 '-R/usr/lib/mps', 327 '-R/usr/lib/mps',
341 ], 328 ],
342 }, 329 },
343 }], 330 }],
344 ], 331 ],
345 }, 332 },
346 { # else: OS is not in the above list 333 ],
334 [ 'use_nss != 1', {
347 'sources!': [ 335 'sources!': [
348 'base/crypto_module_nss.cc', 336 'base/crypto_module_nss.cc',
349 'base/keygen_handler_nss.cc', 337 'base/keygen_handler_nss.cc',
350 'cert/cert_database_nss.cc', 338 'cert/cert_database_nss.cc',
339 'cert/cert_verify_proc_nss.cc',
340 'cert/cert_verify_proc_nss.h',
351 'cert/nss_cert_database.cc', 341 'cert/nss_cert_database.cc',
352 'cert/nss_cert_database.h', 342 'cert/nss_cert_database.h',
343 'ssl/openssl_platform_key_nss.cc',
353 'cert/test_root_certs_nss.cc', 344 'cert/test_root_certs_nss.cc',
354 'cert/x509_certificate_nss.cc', 345 'cert/x509_certificate_nss.cc',
346 'cert/x509_util_nss_certs.cc',
355 'ocsp/nss_ocsp.cc', 347 'ocsp/nss_ocsp.cc',
356 'ocsp/nss_ocsp.h', 348 'ocsp/nss_ocsp.h',
349 'ssl/client_cert_store_chromeos.cc',
350 'ssl/client_cert_store_chromeos.h',
351 'ssl/client_cert_store_nss.cc',
352 'ssl/client_cert_store_nss.h',
357 'third_party/mozilla_security_manager/nsKeygenHandler.cpp', 353 'third_party/mozilla_security_manager/nsKeygenHandler.cpp',
358 'third_party/mozilla_security_manager/nsKeygenHandler.h', 354 'third_party/mozilla_security_manager/nsKeygenHandler.h',
359 'third_party/mozilla_security_manager/nsNSSCertificateDB.cpp', 355 'third_party/mozilla_security_manager/nsNSSCertificateDB.cpp',
360 'third_party/mozilla_security_manager/nsNSSCertificateDB.h', 356 'third_party/mozilla_security_manager/nsNSSCertificateDB.h',
361 'third_party/mozilla_security_manager/nsPKCS12Blob.cpp', 357 'third_party/mozilla_security_manager/nsPKCS12Blob.cpp',
362 'third_party/mozilla_security_manager/nsPKCS12Blob.h', 358 'third_party/mozilla_security_manager/nsPKCS12Blob.h',
363 ], 359 ],
364 }, 360 }],
365 ], 361 # client_cert_store_nss.c requires NSS_CmpCertChainWCANames from NSS's
366 [ 'use_nss != 1', { 362 # libssl, but our bundled copy is not built in OpenSSL ports. Pull that
367 'sources!': [ 363 # file in directly.
368 'cert/cert_verify_proc_nss.cc', 364 [ 'use_nss == 1 and use_openssl == 1', {
369 'cert/cert_verify_proc_nss.h', 365 'sources': [
370 'ssl/client_cert_store_chromeos.cc', 366 'third_party/nss/ssl/cmpcert.c',
371 'ssl/client_cert_store_chromeos.h',
372 'ssl/client_cert_store_nss.cc',
373 'ssl/client_cert_store_nss.h',
374 ], 367 ],
375 }], 368 }],
376 [ 'enable_websockets != 1', { 369 [ 'enable_websockets != 1', {
377 'sources/': [ 370 'sources/': [
378 ['exclude', '^websockets/'], 371 ['exclude', '^websockets/'],
379 ], 372 ],
380 }], 373 }],
381 [ 'enable_mdns != 1', { 374 [ 'enable_mdns != 1', {
382 'sources!' : [ 375 'sources!' : [
383 'dns/mdns_cache.cc', 376 'dns/mdns_cache.cc',
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
502 ['include', '^base/net_util_mac\\.h$'], 495 ['include', '^base/net_util_mac\\.h$'],
503 ['include', '^base/network_change_notifier_mac\\.cc$'], 496 ['include', '^base/network_change_notifier_mac\\.cc$'],
504 ['include', '^base/network_config_watcher_mac\\.cc$'], 497 ['include', '^base/network_config_watcher_mac\\.cc$'],
505 ['include', '^base/platform_mime_util_mac\\.mm$'], 498 ['include', '^base/platform_mime_util_mac\\.mm$'],
506 # The iOS implementation only partially uses NSS and thus does not 499 # The iOS implementation only partially uses NSS and thus does not
507 # defines |use_nss|. In particular the |USE_NSS| preprocessor 500 # defines |use_nss|. In particular the |USE_NSS| preprocessor
508 # definition is not used. The following files are needed though: 501 # definition is not used. The following files are needed though:
509 ['include', '^cert/cert_verify_proc_nss\\.cc$'], 502 ['include', '^cert/cert_verify_proc_nss\\.cc$'],
510 ['include', '^cert/cert_verify_proc_nss\\.h$'], 503 ['include', '^cert/cert_verify_proc_nss\\.h$'],
511 ['include', '^cert/test_root_certs_nss\\.cc$'], 504 ['include', '^cert/test_root_certs_nss\\.cc$'],
512 ['include', '^cert/x509_util_nss\\.cc$'], 505 ['include', '^cert/x509_util_nss_certs\\.cc$'],
513 ['include', '^cert/x509_util_nss\\.h$'],
514 ['include', '^proxy/proxy_resolver_mac\\.cc$'], 506 ['include', '^proxy/proxy_resolver_mac\\.cc$'],
515 ['include', '^proxy/proxy_server_mac\\.cc$'], 507 ['include', '^proxy/proxy_server_mac\\.cc$'],
516 ['include', '^ocsp/nss_ocsp\\.cc$'], 508 ['include', '^ocsp/nss_ocsp\\.cc$'],
517 ['include', '^ocsp/nss_ocsp\\.h$'], 509 ['include', '^ocsp/nss_ocsp\\.h$'],
518 ], 510 ],
519 }], 511 }],
520 ], 512 ],
521 }, 513 },
522 { 514 {
523 'target_name': 'net_unittests', 515 'target_name': 'net_unittests',
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
582 'sources!': [ 574 'sources!': [
583 'ssl/client_cert_store_chromeos_unittest.cc', 575 'ssl/client_cert_store_chromeos_unittest.cc',
584 'ssl/client_cert_store_nss_unittest.cc', 576 'ssl/client_cert_store_nss_unittest.cc',
585 ], 577 ],
586 }], 578 }],
587 [ 'use_openssl == 1', { 579 [ 'use_openssl == 1', {
588 # Avoid compiling/linking with the system library. 580 # Avoid compiling/linking with the system library.
589 'dependencies': [ 581 'dependencies': [
590 '../third_party/boringssl/boringssl.gyp:boringssl', 582 '../third_party/boringssl/boringssl.gyp:boringssl',
591 ], 583 ],
592 }, { # use_openssl == 0 584 }, { # use_openssl == 0
haavardm 2015/03/11 14:42:51 For shared library builds, like you did on line 26
davidben 2015/03/11 23:32:42 Done. I suspect this is redundant with a bunch of
593 'conditions': [ 585 'conditions': [
594 [ 'desktop_linux == 1 or chromeos == 1', { 586 [ 'desktop_linux == 1 or chromeos == 1', {
595 'dependencies': [ 587 'dependencies': [
596 '../build/linux/system.gyp:ssl', 588 '../build/linux/system.gyp:ssl',
597 ], 589 ],
598 }, { # desktop_linux == 0 and chromeos == 0 590 }, { # desktop_linux == 0 and chromeos == 0
599 'dependencies': [ 591 'dependencies': [
600 '../third_party/nss/nss.gyp:nspr', 592 '../third_party/nss/nss.gyp:nspr',
601 '../third_party/nss/nss.gyp:nss', 593 '../third_party/nss/nss.gyp:nss',
602 'third_party/nss/ssl.gyp:libssl', 594 'third_party/nss/ssl.gyp:libssl',
(...skipping 1260 matching lines...) Expand 10 before | Expand all | Expand 10 after
1863 '../build/isolate.gypi', 1855 '../build/isolate.gypi',
1864 ], 1856 ],
1865 'sources': [ 1857 'sources': [
1866 'net_unittests.isolate', 1858 'net_unittests.isolate',
1867 ], 1859 ],
1868 }, 1860 },
1869 ], 1861 ],
1870 }], 1862 }],
1871 ], 1863 ],
1872 } 1864 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698