Chromium Code Reviews| Index: nss.gyp |
| =================================================================== |
| --- nss.gyp (revision 290919) |
| +++ nss.gyp (working copy) |
| @@ -454,6 +454,53 @@ |
| }, |
| }, |
| { |
| + # This target contains files compiled for AVX. The code calling the |
| + # functions in this target has to check if the current CPU supports AVX. |
| + 'target_name': 'nss_static_avx', |
| + # This target is an implementation detail - the public dependencies |
| + # should be on 'nss'. |
|
wtc
2014/08/21 23:27:49
Nit: we probably don't need to copy this comment.
Nico
2014/08/25 17:35:09
Done.
|
| + 'suppress_wildcard': 1, |
| + 'conditions': [ |
| + ['OS!="win" or target_arch!="ia32"', { |
| + 'type': 'none', |
| + }, { |
| + 'type': 'static_library', |
| + 'sources': [ |
| + 'nss/lib/freebl/intel-gcm-wrap.c', |
| + 'nss/lib/freebl/intel-gcm-x86-masm.asm', |
| + 'nss/lib/freebl/intel-gcm.h', |
| + ], |
| + 'defines': [ |
|
wtc
2014/08/21 23:27:49
BUG?: I believe we also need these, at least to be
Nico
2014/08/25 17:35:09
Done.
|
| + 'NSS_X86_OR_X64', |
| + 'NSS_X86', |
| + '_X86_', |
| + 'MP_ASSEMBLY_MULTIPLY', |
| + 'MP_ASSEMBLY_SQUARE', |
| + 'MP_ASSEMBLY_DIV_2DX1D', |
| + 'MP_USE_UINT_DIGIT', |
| + 'MP_NO_MP_WORD', |
| + 'USE_HW_AES', |
|
wtc
2014/08/21 23:27:49
Nit: it's safer to add 'INTEL_GCM'. It's actually
Nico
2014/08/25 17:35:09
Done.
|
| + ], |
| + 'include_dirs': [ |
| + 'nspr/pr/include', |
| + 'nspr/lib/ds', |
| + 'nspr/lib/libc/include', |
| + 'nss/lib/freebl/ecl', |
|
wtc
2014/08/21 23:27:49
Do we really need this directory?
Nico
2014/08/25 17:35:09
Yes, I only added directories that were necessary
|
| + 'nss/lib/util', |
| + ], |
| + 'msvs_disabled_warnings': [4018], |
| + 'msvs_settings': { |
| + 'MASM': { |
| + 'UseSafeExceptionHandlers': 'true', |
| + }, |
| + 'VCCLCompilerTool': { |
| + 'EnableEnhancedInstructionSet': '3', # Enable AVX. |
| + }, |
| + }, |
| + }], |
| + ], |
| + }, |
| + { |
| 'target_name': 'nss_static', |
| 'type': 'static_library', |
| # This target is an implementation detail - the public dependencies |
| @@ -584,9 +631,6 @@ |
| 'nss/lib/freebl/gcm.h', |
| 'nss/lib/freebl/intel-aes-x86-masm.asm', |
| 'nss/lib/freebl/intel-aes.h', |
| - 'nss/lib/freebl/intel-gcm-wrap.c', |
| - 'nss/lib/freebl/intel-gcm-x86-masm.asm', |
| - 'nss/lib/freebl/intel-gcm.h', |
| 'nss/lib/freebl/hmacct.c', |
| 'nss/lib/freebl/hmacct.h', |
| 'nss/lib/freebl/jpake.c', |
| @@ -982,6 +1026,7 @@ |
| ], |
| 'dependencies': [ |
| 'nspr', |
| + 'nss_static_avx', |
| '../sqlite/sqlite.gyp:sqlite', |
| ], |
| 'export_dependent_settings': [ |
| @@ -1202,8 +1247,6 @@ |
| ], |
| 'sources!': [ |
| 'nss/lib/freebl/intel-aes-x86-masm.asm', |
| - 'nss/lib/freebl/intel-gcm-wrap.c', |
| - 'nss/lib/freebl/intel-gcm-x86-masm.asm', |
| 'nss/lib/freebl/mpi/mpi_amd64.c', |
| 'nss/lib/freebl/mpi/mpi_x86_asm.c', |
| ], |
| @@ -1212,8 +1255,6 @@ |
| }, { # else: OS!="win" |
| 'sources!': [ |
| 'nss/lib/freebl/intel-aes-x86-masm.asm', |
| - 'nss/lib/freebl/intel-gcm-wrap.c', |
| - 'nss/lib/freebl/intel-gcm-x86-masm.asm', |
| # mpi_x86_asm.c contains MSVC inline assembly code. |
| 'nss/lib/freebl/mpi/mpi_x86_asm.c', |
| ], |