2727 sources += ' nvme/no-json.c'
2828endif
2929
30+ # Generate accessors (setter/getter functions)
31+ subdir (' nvme' ) # declares: accessors_dep, accessors_ld_full_path
32+
3033deps = [
3134 config_dep,
35+ ccan_dep,
3236 json_c_dep,
3337 keyutils_dep,
3438 libdbus_dep,
3539 liburing_dep,
3640 openssl_dep,
41+ accessors_dep,
3742]
3843
39- source_dir = meson .current_source_dir()
4044mapfile = ' libnvme.map'
41- version_script_arg = join_paths (source_dir, mapfile)
4245
4346libnvme = library (
4447 ' nvme' , # produces libnvme.so
4548 sources,
4649 version : libnvme_so_version,
47- link_args : [' -Wl,--version-script=' + version_script_arg],
50+ link_args : [
51+ ' -Wl,--version-script=@0@' .format(meson .current_source_dir() / mapfile),
52+ ' -Wl,--version-script=@0@' .format(accessors_ld_full_path),
53+ ],
4854 dependencies : deps,
49- link_depends : mapfile,
50- include_directories : [incdir, ],
5155 install : true ,
52- link_with : libccan,
5356)
5457
5558pkg = import (' pkgconfig' )
5659pkg.generate(libnvme,
5760 filebase : ' libnvme' ,
5861 name : ' libnvme' ,
59- version : meson .project_version() ,
62+ version : libnvme_so_version ,
6063 description : ' Manage "libnvme" subsystem devices (Non-volatile Memory Express)' ,
6164 url : ' https://github.com/linux-nvme/nvme-cli/' ,
6265)
@@ -66,6 +69,7 @@ libnvme_dep = declare_dependency(
6669 json_c_dep.partial_dependency(compile_args : true , includes : true ),
6770 ],
6871 link_with : libnvme,
72+ include_directories : ' .' ,
6973)
7074
7175# test library with all symbols visible, to use for MI unit tests. Should
@@ -74,13 +78,12 @@ libnvme_test = library(
7478 ' nvme-test' , # produces libnvme-test.so
7579 sources,
7680 dependencies : deps,
77- include_directories : [incdir, ],
7881 install : false ,
79- link_with : libccan,
8082)
8183
8284libnvme_test_dep = declare_dependency (
8385 link_with : libnvme_test,
86+ include_directories : ' .' ,
8487)
8588
8689mode = ' rw-r--r--'
0 commit comments