| Index: nss.gyp
|
| diff --git a/nss.gyp b/nss.gyp
|
| index a24c6cef25b0d88b229565d9a6c27b8a6ac0ecd4..9117a5b832ce52b051fba843afb84258ced8d262 100644
|
| --- a/nss.gyp
|
| +++ b/nss.gyp
|
| @@ -329,6 +329,113 @@
|
| 'target_name': 'nss',
|
| 'product_name': 'crnss',
|
| 'type': '<(component)',
|
| + 'dependencies': [
|
| + 'nss_static',
|
| + ],
|
| + 'export_dependent_settings': [
|
| + 'nss_static',
|
| + ],
|
| + 'sources': [
|
| + 'mozilla/security/nss/lib/nss/nssver.c',
|
| + ],
|
| + 'conditions': [
|
| + ['exclude_nss_root_certs==0', {
|
| + 'dependencies': [
|
| + 'nssckbi',
|
| + ],
|
| + 'export_dependent_settings': [
|
| + 'nssckbi',
|
| + ],
|
| + }],
|
| + ['OS == "mac" and component == "shared_library"', {
|
| + 'xcode_settings': {
|
| + 'GCC_SYMBOLS_PRIVATE_EXTERN': 'NO', # no -fvisibility=hidden
|
| + },
|
| + }],
|
| + ['OS == "win" and component == "shared_library"', {
|
| + 'sources': [
|
| + 'mozilla/security/nss/exports_win.def',
|
| + ],
|
| + }],
|
| + ],
|
| + },
|
| + {
|
| + # This is really more of a pseudo-target to work around the fact that
|
| + # a single static_library target cannot contain two object files of the
|
| + # same name (hash.o / hash.obj). Logically, this is part of the
|
| + # 'nss_static' target. By separating it out, it creates a possible
|
| + # circular dependency between 'nss_static' and 'nssckbi' when
|
| + # 'exclude_nss_root_certs' is not specified, as 'nss_static' depends on
|
| + # the 'builtinsC_GetFunctionList' exported by this target. This is an
|
| + # artifact of how NSS is being statically built, which is not an
|
| + # officially supported configuration - normally, 'nssckbi.dll/so' would
|
| + # depend on libnss3.dll/so, and the higher layer caller would instruct
|
| + # libnss3.dll to dynamically load nssckbi.dll, breaking the circle.
|
| + #
|
| + # TODO(rsleevi): http://crbug.com/128134 - Break the circular dependency
|
| + # without requiring nssckbi to be built as a shared library.
|
| + 'target_name': 'nssckbi',
|
| + 'product_name': 'crnssckbi',
|
| + 'type': 'static_library',
|
| + 'sources': [
|
| + 'mozilla/security/nss/lib/ckfw/builtins/anchor.c',
|
| + 'mozilla/security/nss/lib/ckfw/builtins/bfind.c',
|
| + 'mozilla/security/nss/lib/ckfw/builtins/binst.c',
|
| + 'mozilla/security/nss/lib/ckfw/builtins/bobject.c',
|
| + 'mozilla/security/nss/lib/ckfw/builtins/bsession.c',
|
| + 'mozilla/security/nss/lib/ckfw/builtins/bslot.c',
|
| + 'mozilla/security/nss/lib/ckfw/builtins/btoken.c',
|
| + 'mozilla/security/nss/lib/ckfw/builtins/builtins.h',
|
| + 'mozilla/security/nss/lib/ckfw/builtins/certdata.c',
|
| + 'mozilla/security/nss/lib/ckfw/builtins/ckbiver.c',
|
| + 'mozilla/security/nss/lib/ckfw/builtins/constants.c',
|
| + 'mozilla/security/nss/lib/ckfw/builtins/nssckbi.h',
|
| + 'mozilla/security/nss/lib/ckfw/ck.h',
|
| + 'mozilla/security/nss/lib/ckfw/ckfw.h',
|
| + 'mozilla/security/nss/lib/ckfw/ckfwm.h',
|
| + 'mozilla/security/nss/lib/ckfw/ckfwtm.h',
|
| + 'mozilla/security/nss/lib/ckfw/ckmd.h',
|
| + 'mozilla/security/nss/lib/ckfw/ckt.h',
|
| + 'mozilla/security/nss/lib/ckfw/crypto.c',
|
| + 'mozilla/security/nss/lib/ckfw/find.c',
|
| + 'mozilla/security/nss/lib/ckfw/hash.c',
|
| + 'mozilla/security/nss/lib/ckfw/instance.c',
|
| + 'mozilla/security/nss/lib/ckfw/mechanism.c',
|
| + 'mozilla/security/nss/lib/ckfw/mutex.c',
|
| + 'mozilla/security/nss/lib/ckfw/nssck.api',
|
| + 'mozilla/security/nss/lib/ckfw/nssckepv.h',
|
| + 'mozilla/security/nss/lib/ckfw/nssckft.h',
|
| + 'mozilla/security/nss/lib/ckfw/nssckfw.h',
|
| + 'mozilla/security/nss/lib/ckfw/nssckfwc.h',
|
| + 'mozilla/security/nss/lib/ckfw/nssckfwt.h',
|
| + 'mozilla/security/nss/lib/ckfw/nssckg.h',
|
| + 'mozilla/security/nss/lib/ckfw/nssckmdt.h',
|
| + 'mozilla/security/nss/lib/ckfw/nssckt.h',
|
| + 'mozilla/security/nss/lib/ckfw/object.c',
|
| + 'mozilla/security/nss/lib/ckfw/session.c',
|
| + 'mozilla/security/nss/lib/ckfw/sessobj.c',
|
| + 'mozilla/security/nss/lib/ckfw/slot.c',
|
| + 'mozilla/security/nss/lib/ckfw/token.c',
|
| + 'mozilla/security/nss/lib/ckfw/wrap.c',
|
| + ],
|
| + 'dependencies': [
|
| + 'nss_static',
|
| + ],
|
| + 'export_dependent_settings': [
|
| + 'nss_static',
|
| + ],
|
| + 'include_dirs': [
|
| + 'mozilla/security/nss/lib/ckfw',
|
| + ],
|
| + 'direct_dependent_settings': {
|
| + 'include_dirs': [
|
| + 'mozilla/security/nss/lib/ckfw/builtins',
|
| + ],
|
| + },
|
| + },
|
| + {
|
| + 'target_name': 'nss_static',
|
| + 'type': 'static_library',
|
| 'sources': [
|
| 'mozilla/security/nss/lib/base/arena.c',
|
| 'mozilla/security/nss/lib/base/base.h',
|
| @@ -376,45 +483,6 @@
|
| 'mozilla/security/nss/lib/certhigh/ocspt.h',
|
| 'mozilla/security/nss/lib/certhigh/ocspti.h',
|
| 'mozilla/security/nss/lib/certhigh/xcrldist.c',
|
| - 'mozilla/security/nss/lib/ckfw/builtins/anchor.c',
|
| - 'mozilla/security/nss/lib/ckfw/builtins/bfind.c',
|
| - 'mozilla/security/nss/lib/ckfw/builtins/binst.c',
|
| - 'mozilla/security/nss/lib/ckfw/builtins/bobject.c',
|
| - 'mozilla/security/nss/lib/ckfw/builtins/bsession.c',
|
| - 'mozilla/security/nss/lib/ckfw/builtins/bslot.c',
|
| - 'mozilla/security/nss/lib/ckfw/builtins/btoken.c',
|
| - 'mozilla/security/nss/lib/ckfw/builtins/builtins.h',
|
| - 'mozilla/security/nss/lib/ckfw/builtins/certdata.c',
|
| - 'mozilla/security/nss/lib/ckfw/builtins/ckbiver.c',
|
| - 'mozilla/security/nss/lib/ckfw/builtins/constants.c',
|
| - 'mozilla/security/nss/lib/ckfw/builtins/nssckbi.h',
|
| - 'mozilla/security/nss/lib/ckfw/ck.h',
|
| - 'mozilla/security/nss/lib/ckfw/ckfw.h',
|
| - 'mozilla/security/nss/lib/ckfw/ckfwm.h',
|
| - 'mozilla/security/nss/lib/ckfw/ckfwtm.h',
|
| - 'mozilla/security/nss/lib/ckfw/ckmd.h',
|
| - 'mozilla/security/nss/lib/ckfw/ckt.h',
|
| - 'mozilla/security/nss/lib/ckfw/crypto.c',
|
| - 'mozilla/security/nss/lib/ckfw/find.c',
|
| - 'mozilla/security/nss/lib/ckfw/hash.c',
|
| - 'mozilla/security/nss/lib/ckfw/instance.c',
|
| - 'mozilla/security/nss/lib/ckfw/mechanism.c',
|
| - 'mozilla/security/nss/lib/ckfw/mutex.c',
|
| - 'mozilla/security/nss/lib/ckfw/nssck.api',
|
| - 'mozilla/security/nss/lib/ckfw/nssckepv.h',
|
| - 'mozilla/security/nss/lib/ckfw/nssckft.h',
|
| - 'mozilla/security/nss/lib/ckfw/nssckfw.h',
|
| - 'mozilla/security/nss/lib/ckfw/nssckfwc.h',
|
| - 'mozilla/security/nss/lib/ckfw/nssckfwt.h',
|
| - 'mozilla/security/nss/lib/ckfw/nssckg.h',
|
| - 'mozilla/security/nss/lib/ckfw/nssckmdt.h',
|
| - 'mozilla/security/nss/lib/ckfw/nssckt.h',
|
| - 'mozilla/security/nss/lib/ckfw/object.c',
|
| - 'mozilla/security/nss/lib/ckfw/session.c',
|
| - 'mozilla/security/nss/lib/ckfw/sessobj.c',
|
| - 'mozilla/security/nss/lib/ckfw/slot.c',
|
| - 'mozilla/security/nss/lib/ckfw/token.c',
|
| - 'mozilla/security/nss/lib/ckfw/wrap.c',
|
| 'mozilla/security/nss/lib/cryptohi/cryptohi.h',
|
| 'mozilla/security/nss/lib/cryptohi/cryptoht.h',
|
| 'mozilla/security/nss/lib/cryptohi/dsautil.c',
|
| @@ -683,7 +751,6 @@
|
| 'mozilla/security/nss/lib/nss/nss.h',
|
| 'mozilla/security/nss/lib/nss/nssinit.c',
|
| 'mozilla/security/nss/lib/nss/nssrenam.h',
|
| - 'mozilla/security/nss/lib/nss/nssver.c',
|
| 'mozilla/security/nss/lib/nss/utilwrap.c',
|
| 'mozilla/security/nss/lib/pk11wrap/debug_module.c',
|
| 'mozilla/security/nss/lib/pk11wrap/dev3hack.c',
|
| @@ -853,16 +920,23 @@
|
| # debug_module.c is included by pk11load.c.
|
| 'mozilla/security/nss/lib/pk11wrap/debug_module.c',
|
| ],
|
| + 'dependencies': [
|
| + 'nspr',
|
| + '../sqlite/sqlite.gyp:sqlite',
|
| + ],
|
| + 'export_dependent_settings': [
|
| + 'nspr',
|
| + ],
|
| 'defines': [
|
| - 'NSS_ENABLE_ECC',
|
| - 'USE_UTIL_DIRECTLY',
|
| 'MP_API_COMPATIBLE',
|
| - 'RIJNDAEL_INCLUDE_TABLES',
|
| 'NSS_DISABLE_DBM',
|
| + 'NSS_ENABLE_ECC',
|
| 'NSS_STATIC',
|
| 'NSS_USE_STATIC_LIBS',
|
| + 'RIJNDAEL_INCLUDE_TABLES',
|
| 'SHLIB_VERSION=\"3\"',
|
| 'SOFTOKEN_SHLIB_VERSION=\"3\"',
|
| + 'USE_UTIL_DIRECTLY',
|
| ],
|
| 'defines!': [
|
| # Regrettably, NSS can't be compiled with NO_NSPR_10_SUPPORT yet.
|
| @@ -872,7 +946,6 @@
|
| 'mozilla/security/nss/lib/base',
|
| 'mozilla/security/nss/lib/certdb',
|
| 'mozilla/security/nss/lib/certhigh',
|
| - 'mozilla/security/nss/lib/ckfw',
|
| 'mozilla/security/nss/lib/cryptohi',
|
| 'mozilla/security/nss/lib/dev',
|
| 'mozilla/security/nss/lib/freebl',
|
| @@ -899,13 +972,9 @@
|
| 'mozilla/security/nss/lib/ssl',
|
| 'mozilla/security/nss/lib/util',
|
| ],
|
| - 'dependencies': [
|
| - 'nspr',
|
| - '../sqlite/sqlite.gyp:sqlite',
|
| - ],
|
| 'direct_dependent_settings': {
|
| 'defines': [
|
| - 'NO_NSPR_10_SUPPORT',
|
| + 'NSS_ENABLE_ECC',
|
| 'NSS_STATIC',
|
| 'NSS_USE_STATIC_LIBS',
|
| 'USE_UTIL_DIRECTLY',
|
| @@ -936,12 +1005,6 @@
|
| 'defines': [
|
| 'NSS_DISABLE_ROOT_CERTS',
|
| ],
|
| - 'sources/': [
|
| - ['exclude', '^mozilla/security/nss/lib/ckfw/'],
|
| - ],
|
| - 'include_dirs!': [
|
| - 'mozilla/security/nss/lib/ckfw',
|
| - ],
|
| }],
|
| ['exclude_nss_libpkix==1', {
|
| 'defines': [
|
| @@ -992,24 +1055,22 @@
|
| 'NSS_X64',
|
| ],
|
| },
|
| - 'conditions': [
|
| - ['component == "shared_library"', {
|
| - 'xcode_settings': {
|
| - 'GCC_SYMBOLS_PRIVATE_EXTERN': 'NO', # no -fvisibility=hidden
|
| - },
|
| - }],
|
| - ],
|
| }],
|
| ['OS=="win"', {
|
| 'defines': [
|
| - 'XP_PC',
|
| - 'WIN32',
|
| - '_WINDOWS',
|
| - 'WIN95',
|
| 'SHLIB_SUFFIX=\"dll\"',
|
| 'SHLIB_PREFIX=\"\"',
|
| 'SOFTOKEN_LIB_NAME=\"softokn3.dll\"',
|
| + 'XP_PC',
|
| + 'WIN32',
|
| + 'WIN95',
|
| + '_WINDOWS',
|
| ],
|
| + 'direct_dependent_settings': {
|
| + 'defines': [
|
| + '_WINDOWS',
|
| + ],
|
| + },
|
| 'conditions': [
|
| ['target_arch=="ia32"', {
|
| 'defines': [
|
| @@ -1023,11 +1084,6 @@
|
| 'MP_NO_MP_WORD',
|
| ],
|
| }],
|
| - ['component == "shared_library"', {
|
| - 'sources': [
|
| - 'mozilla/security/nss/exports_win.def',
|
| - ],
|
| - }],
|
| ],
|
| }],
|
| ['clang==1', {
|
|
|