summaryrefslogtreecommitdiff
path: root/src/third_party/kms-message
diff options
context:
space:
mode:
authorMark Benvenuto <mark.benvenuto@mongodb.com>2019-03-14 13:38:03 -0400
committerMark Benvenuto <mark.benvenuto@mongodb.com>2019-03-14 13:38:03 -0400
commit5c5631bcf6e793825d1f8f07e2d43654dc659e28 (patch)
tree67669488e17aa2843e63742df8aaa41b7bf6985b /src/third_party/kms-message
parent9ab0bdb10d97418b47f403fdac7a1e3953d1374e (diff)
downloadmongo-5c5631bcf6e793825d1f8f07e2d43654dc659e28.tar.gz
SERVER-39891 Vendor KMS Message Library
Diffstat (limited to 'src/third_party/kms-message')
-rw-r--r--src/third_party/kms-message/SConscript48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/third_party/kms-message/SConscript b/src/third_party/kms-message/SConscript
new file mode 100644
index 00000000000..85dee6fc012
--- /dev/null
+++ b/src/third_party/kms-message/SConscript
@@ -0,0 +1,48 @@
+# -*- mode: python; -*-
+Import("env")
+
+env = env.Clone()
+
+def removeIfPresent(lst, item):
+ try:
+ lst.remove(item)
+ except ValueError:
+ pass
+
+for to_remove in ['-Werror', "-Wsign-compare","-Wall","-Werror=unused-result"]:
+ removeIfPresent(env['CCFLAGS'], to_remove)
+ removeIfPresent(env['CFLAGS'], to_remove)
+
+env.Append(CPPDEFINES=['KMS_MSG_STATIC'])
+
+additional_sources = []
+
+if env.TargetOSIs('windows'):
+ additional_sources.append(['src/kms_crypto_windows.c'])
+ # Disable warnings about deprecated functions
+ env.Append(CFLAGS=['/wd4996'])
+elif env.TargetOSIs('darwin'):
+ additional_sources.append(['src/kms_crypto_apple.c'])
+else:
+ additional_sources.append(['src/kms_crypto_openssl.c'])
+
+env.Library(
+ target="kms-message",
+ source=[
+ 'src/hexlify.c',
+ 'src/kms_b64.c',
+ 'src/kms_decrypt_request.c',
+ 'src/kms_encrypt_request.c',
+ 'src/kms_kv_list.c',
+ 'src/kms_message.c',
+ 'src/kms_request.c',
+ 'src/kms_request_opt.c',
+ 'src/kms_request_str.c',
+ 'src/kms_response.c',
+ 'src/kms_response_parser.c',
+ 'src/sort.c',
+ ] + additional_sources,
+ LIBDEPS_TAGS=[
+ 'init-no-global-side-effects',
+ ],
+)