mirror of
https://github.com/systemd/systemd.git
synced 2025-03-31 14:50:15 +03:00
meson: drop three more single-use convenience libraries
The way that the cryptsetup plugins were built was unnecessarilly complicated. We would build three static libraries that would then be linked into dynamic libraries. No need to do this. While at it, let's use a convenience library to avoid compiling the shared code more than once. We want the output .so files to be located in the main build directory, like with all consumable build artifacts, so we need to maintain the split between src/cryptsetup/cryptsetup-token/meson.build and the main meson.build file. AFAICT, the build artifacts are the same: exported and undefined symbols are identical. There is a tiny difference in size, but I think it might be caused by a different build directory name.
This commit is contained in:
parent
3a4524116a
commit
c01543fdd5
30
meson.build
30
meson.build
@ -1836,11 +1836,15 @@ if conf.get('HAVE_LIBCRYPTSETUP_PLUGINS') == 1
|
||||
if conf.get('HAVE_TPM2') == 1
|
||||
cryptsetup_token_systemd_tpm2 = shared_library(
|
||||
'cryptsetup-token-systemd-tpm2',
|
||||
cryptsetup_token_systemd_tpm2_sources,
|
||||
include_directories : includes,
|
||||
link_args : ['-shared',
|
||||
'-Wl,--version-script=' + cryptsetup_token_sym_path],
|
||||
dependencies : libshared_deps + [libcryptsetup, versiondep],
|
||||
link_with : [libshared],
|
||||
link_whole : [cryptsetup_token_systemd_tpm2_static],
|
||||
link_with : [lib_cryptsetup_token_common,
|
||||
libshared],
|
||||
dependencies : [libcryptsetup,
|
||||
tpm2,
|
||||
versiondep],
|
||||
link_depends : cryptsetup_token_sym,
|
||||
install_rpath : rootlibexecdir,
|
||||
install : true,
|
||||
@ -1850,11 +1854,15 @@ if conf.get('HAVE_LIBCRYPTSETUP_PLUGINS') == 1
|
||||
if conf.get('HAVE_LIBFIDO2') == 1
|
||||
cryptsetup_token_systemd_fido2 = shared_library(
|
||||
'cryptsetup-token-systemd-fido2',
|
||||
cryptsetup_token_systemd_fido2_sources,
|
||||
include_directories : includes,
|
||||
link_args : ['-shared',
|
||||
'-Wl,--version-script=' + cryptsetup_token_sym_path],
|
||||
dependencies : libshared_deps + [libcryptsetup, versiondep],
|
||||
link_with : [libshared],
|
||||
link_whole : [cryptsetup_token_systemd_fido2_static],
|
||||
link_with : [lib_cryptsetup_token_common,
|
||||
libshared],
|
||||
dependencies : [libcryptsetup,
|
||||
libfido2,
|
||||
versiondep],
|
||||
link_depends : cryptsetup_token_sym,
|
||||
install_rpath : rootlibexecdir,
|
||||
install : true,
|
||||
@ -1864,11 +1872,15 @@ if conf.get('HAVE_LIBCRYPTSETUP_PLUGINS') == 1
|
||||
if conf.get('HAVE_P11KIT') == 1
|
||||
cryptsetup_token_systemd_pkcs11 = shared_library(
|
||||
'cryptsetup-token-systemd-pkcs11',
|
||||
cryptsetup_token_systemd_pkcs11_sources,
|
||||
include_directories : includes,
|
||||
link_args : ['-shared',
|
||||
'-Wl,--version-script=' + cryptsetup_token_sym_path],
|
||||
dependencies : libshared_deps + [libcryptsetup, versiondep],
|
||||
link_with : [libshared],
|
||||
link_whole : [cryptsetup_token_systemd_pkcs11_static],
|
||||
link_with : [lib_cryptsetup_token_common,
|
||||
libshared],
|
||||
dependencies : [libcryptsetup,
|
||||
libp11kit,
|
||||
versiondep],
|
||||
link_depends : cryptsetup_token_sym,
|
||||
install_rpath : rootlibexecdir,
|
||||
install : true,
|
||||
|
@ -1,64 +1,28 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
|
||||
if conf.get('HAVE_LIBCRYPTSETUP_PLUGINS') == 1
|
||||
|
||||
cryptsetup_token_c_args = ['-fvisibility=hidden']
|
||||
|
||||
cryptsetup_token_sym = files('cryptsetup-token.sym')
|
||||
cryptsetup_token_sym_path = meson.current_source_dir() / 'cryptsetup-token.sym'
|
||||
|
||||
if conf.get('HAVE_TPM2') == 1
|
||||
cryptsetup_token_systemd_tpm2_sources = files('''
|
||||
cryptsetup-token-systemd-tpm2.c
|
||||
cryptsetup-token.h
|
||||
cryptsetup-token-util.h
|
||||
cryptsetup-token-util.c
|
||||
luks2-tpm2.c
|
||||
luks2-tpm2.h
|
||||
'''.split())
|
||||
lib_cryptsetup_token_common = static_library(
|
||||
'cryptsetup-token-common',
|
||||
'cryptsetup-token.h',
|
||||
'cryptsetup-token-util.h',
|
||||
'cryptsetup-token-util.c',
|
||||
include_directories : includes,
|
||||
link_with : libshared,
|
||||
build_by_default : false)
|
||||
|
||||
cryptsetup_token_systemd_tpm2_static = static_library(
|
||||
'cryptsetup-token-systemd-tpm2_static',
|
||||
cryptsetup_token_systemd_tpm2_sources,
|
||||
include_directories : includes,
|
||||
dependencies : libshared_deps + [libcryptsetup, versiondep],
|
||||
c_args : cryptsetup_token_c_args)
|
||||
endif
|
||||
cryptsetup_token_systemd_tpm2_sources = files(
|
||||
'cryptsetup-token-systemd-tpm2.c',
|
||||
'luks2-tpm2.c',
|
||||
'luks2-tpm2.h')
|
||||
|
||||
if conf.get('HAVE_LIBFIDO2') == 1
|
||||
cryptsetup_token_systemd_fido2_sources = files('''
|
||||
cryptsetup-token-systemd-fido2.c
|
||||
cryptsetup-token.h
|
||||
cryptsetup-token-util.h
|
||||
cryptsetup-token-util.c
|
||||
luks2-fido2.c
|
||||
luks2-fido2.h
|
||||
'''.split())
|
||||
cryptsetup_token_systemd_fido2_sources = files(
|
||||
'cryptsetup-token-systemd-fido2.c',
|
||||
'luks2-fido2.c',
|
||||
'luks2-fido2.h')
|
||||
|
||||
cryptsetup_token_systemd_fido2_static = static_library(
|
||||
'cryptsetup-token-systemd-fido2_static',
|
||||
cryptsetup_token_systemd_fido2_sources,
|
||||
include_directories : includes,
|
||||
dependencies : libshared_deps + [libcryptsetup, versiondep],
|
||||
c_args : cryptsetup_token_c_args)
|
||||
endif
|
||||
|
||||
if conf.get('HAVE_P11KIT') == 1
|
||||
cryptsetup_token_systemd_pkcs11_sources = files('''
|
||||
cryptsetup-token-systemd-pkcs11.c
|
||||
cryptsetup-token.h
|
||||
cryptsetup-token-util.h
|
||||
cryptsetup-token-util.c
|
||||
luks2-pkcs11.c
|
||||
luks2-pkcs11.h
|
||||
'''.split())
|
||||
|
||||
cryptsetup_token_systemd_pkcs11_static = static_library(
|
||||
'cryptsetup-token-systemd-pkcs11_static',
|
||||
cryptsetup_token_systemd_pkcs11_sources,
|
||||
include_directories : includes,
|
||||
dependencies : libshared_deps + [libcryptsetup, versiondep],
|
||||
c_args : cryptsetup_token_c_args)
|
||||
endif
|
||||
|
||||
endif
|
||||
cryptsetup_token_systemd_pkcs11_sources = files(
|
||||
'cryptsetup-token-systemd-pkcs11.c',
|
||||
'luks2-pkcs11.c',
|
||||
'luks2-pkcs11.h')
|
||||
|
Loading…
x
Reference in New Issue
Block a user