summaryrefslogtreecommitdiffstats
path: root/lib/crypto_backend/meson.build
diff options
context:
space:
mode:
Diffstat (limited to 'lib/crypto_backend/meson.build')
-rw-r--r--lib/crypto_backend/meson.build40
1 files changed, 40 insertions, 0 deletions
diff --git a/lib/crypto_backend/meson.build b/lib/crypto_backend/meson.build
new file mode 100644
index 0000000..d6c31fd
--- /dev/null
+++ b/lib/crypto_backend/meson.build
@@ -0,0 +1,40 @@
+if use_internal_argon2
+ subdir('argon2')
+endif
+
+libcrypto_backend_dependencies = [
+ crypto_backend_library,
+ clock_gettime,
+]
+libcrypto_backend_link_with = []
+
+libcrypto_backend_sources = files(
+ 'argon2_generic.c',
+ 'base64.c',
+ 'cipher_check.c',
+ 'cipher_generic.c',
+ 'crc32.c',
+ 'crypto_cipher_kernel.c',
+ 'crypto_storage.c',
+ 'pbkdf_check.c',
+ 'utf8.c',
+)
+
+crypto_backend = get_option('crypto-backend')
+libcrypto_backend_sources += files('crypto_@0@.c'.format(crypto_backend))
+
+if use_internal_pbkdf2
+ libcrypto_backend_sources += files('pbkdf2_generic.c')
+endif
+
+if use_internal_argon2 and get_option('argon-implementation') == 'internal'
+ libcrypto_backend_link_with += libargon2
+elif get_option('argon-implementation') == 'libargon2'
+ libcrypto_backend_dependencies += libargon2_external
+endif
+
+libcrypto_backend = static_library('crypto_backend',
+ libcrypto_backend_sources,
+ include_directories: includes_lib,
+ dependencies: libcrypto_backend_dependencies,
+ link_with: libcrypto_backend_link_with)