diff --git a/lib/freebl/freebl.gyp b/lib/freebl/freebl.gyp index 004807483e..a73c6febcc 100644 --- a/lib/freebl/freebl.gyp +++ b/lib/freebl/freebl.gyp @@ -6,6 +6,30 @@ '../../coreconf/config.gypi' ], 'targets': [ + { + 'target_name': 'intel-gcm-s_lib', + 'type': 'static_library', + 'sources': [ + 'intel-aes.s', + 'intel-gcm.s', + ], + 'dependencies': [ + '<(DEPTH)/exports.gyp:nss_exports' + ], + 'conditions': [ + [ 'cc_is_clang==1', { + 'cflags': [ + '-no-integrated-as', + ], + }], + ], + 'cflags_mozilla': [ + '-no-integrated-as', + ], + 'asflags_mozilla': [ + '-no-integrated-as', + ], + }, { 'target_name': 'intel-gcm-wrap_c_lib', 'type': 'static_library', @@ -15,12 +39,19 @@ 'dependencies': [ '<(DEPTH)/exports.gyp:nss_exports' ], + 'conditions': [ + [ 'OS=="linux" and target_arch=="x64"', { + 'dependencies': [ + 'intel-gcm-s_lib', + ], + }], + ], 'cflags': [ - '-mssse3' + '-mssse3', ], 'cflags_mozilla': [ '-mssse3' - ] + ], }, { # TODO: make this so that all hardware accelerated code is in here. diff --git a/lib/freebl/freebl_base.gypi b/lib/freebl/freebl_base.gypi index 9c5680abb4..76df714972 100644 --- a/lib/freebl/freebl_base.gypi +++ b/lib/freebl/freebl_base.gypi @@ -67,14 +67,12 @@ [ 'target_arch=="x64"', { 'sources': [ 'arcfour-amd64-gas.s', - 'intel-aes.s', - 'intel-gcm.s', 'mpi/mpi_amd64.c', 'mpi/mpi_amd64_gas.s', 'mpi/mp_comba.c', ], 'conditions': [ - [ 'cc_is_clang==1', { + [ 'cc_is_clang==1 and fuzz!=1', { 'cflags': [ '-no-integrated-as', ],