kwargs = {}
foreach key, val : dict
- if key in ['name', 'conditions']
+ if key in ['name', 'conditions', 'version-script']
continue
endif
kwargs += { key : val }
endforeach
- sym = meson.current_source_dir() / '@0@'.format(dict.get('link_depends')[0])
kwargs += {
'link_args' : [
kwargs.get('link_args', []),
- '-Wl,--version-script=' + sym,
+ '-Wl,--version-script=' + dict.get('version-script'),
+ ],
+ 'link_depends' : [
+ kwargs.get('link_depends', []),
+ dict.get('version-script'),
],
}
foreach key, val : module_additional_kwargs
c_args : ['-fvisibility=default'],
link_args : ['-shared',
'-Wl,--version-script=' + libshared_sym_path],
+ link_depends : libshared_sym_path,
link_with : libshared,
dependencies : [libacl,
libapparmor,
lib_cryptsetup_token_common,
libshared,
],
- 'link_depends' : files('cryptsetup-token.sym'),
+ 'version-script' : meson.current_source_dir() / 'cryptsetup-token.sym',
'install_rpath' : pkglibdir,
'install' : true,
'install_dir' : libcryptsetup_plugins_dir,
libpam,
threads,
],
- 'link_depends' : files('pam_systemd_home.sym'),
+ 'version-script' : meson.current_source_dir() / 'pam_systemd_home.sym',
},
]
'HAVE_PAM',
],
'sources' : files('pam_systemd.c'),
- 'link_depends' : files('pam_systemd.sym'),
+ 'version-script' : meson.current_source_dir() / 'pam_systemd.sym',
},
]
'name' : 'nss_myhostname',
'conditions' : ['ENABLE_NSS_MYHOSTNAME'],
'sources' : files('nss-myhostname.c'),
- 'link_depends' : files('nss-myhostname.sym'),
+ 'version-script' : meson.current_source_dir() / 'nss-myhostname.sym',
},
]
'name' : 'nss_mymachines',
'conditions' : ['ENABLE_NSS_MYMACHINES'],
'sources' : files('nss-mymachines.c'),
- 'link_depends' : files('nss-mymachines.sym'),
+ 'version-script' : meson.current_source_dir() / 'nss-mymachines.sym',
},
]
'name' : 'nss_resolve',
'conditions' : ['ENABLE_NSS_RESOLVE'],
'sources' : files('nss-resolve.c'),
- 'link_depends' : files('nss-resolve.sym'),
+ 'version-script' : meson.current_source_dir() / 'nss-resolve.sym',
'include_directories' : includes +
include_directories('../resolve'),
},
'nss-systemd.c',
'userdb-glue.c',
),
- 'link_depends' : files('nss-systemd.sym'),
+ 'version-script' : meson.current_source_dir() / 'nss-systemd.sym',
},
]
libxz,
libzstd]
-libshared_sym_path = '@0@/libshared.sym'.format(meson.current_source_dir())
+libshared_sym_path = meson.current_source_dir() / 'libshared.sym'
libshared_build_dir = meson.current_build_dir()
libshared_static = static_library(
c_args : ['-fvisibility=default'],
link_args : ['-shared',
'-Wl,--version-script=' + libshared_sym_path],
+ link_depends : libshared_sym_path,
link_whole : [libshared_static,
libbasic,
libbasic_gcrypt,