{ 'variables': { 'privacy_crypto_impl%': 'boringssl', 'boringssl_libcrypto_path%': 'boringssl/boringssl.gyp:crypto', }, 'targets': [ { 'target_name': 'cose-c', 'type': 'static_library', 'sources': [ 'COSE-C/src/Cose.cpp', 'COSE-C/src/cbor.cpp', 'COSE-C/src/CoseKey.cpp', 'COSE-C/src/Sign.cpp', 'COSE-C/src/Sign1.cpp', 'COSE-C/src/openssl.cpp', ], 'includes': [ 'cn-cbor.gypi', '../util/libcrypto_dependency.gypi', ], 'include_dirs': [ 'COSE-C/include', 'COSE-C/src', 'open-dice/third_party/cose-c/include', ], 'defines': [ 'UNIT_TEST', 'COSE_C_USE_OPENSSL', # vanilla COSE-C does not build with boringssl due to lack of ccm. We # do not use the COSE-C functions that call these ccm ciphers, so just # redefining the symbols to avoid headache 'EVP_aes_128_ccm()=EVP_aes_128_gcm()', 'EVP_aes_256_ccm()=EVP_aes_256_gcm()', 'EVP_aes_192_ccm()=EVP_aes_192_gcm()', 'EVP_CTRL_CCM_SET_L=0x14', 'EVP_CTRL_CCM_GET_TAG=EVP_CTRL_GCM_GET_TAG', 'EVP_CTRL_CCM_SET_TAG=EVP_CTRL_GCM_SET_TAG', ], 'direct_dependent_settings': { 'include_dirs': [ 'COSE-C/include', 'COSE-C/src', 'open-dice/third_party/cose-c/include', ], } }, ], }