fs = import('fs')
pkgconfig = import('pkgconfig')
+# soname versions; This never change because we use symbols versioing. There is also
+# API version (LIB*_VERSION macros) and it follow package version.
libblkid_version = '1.1.0'
libblkid_date = '01-Jun-2021'
libuuid_version = '1.3.0'
docdir = join_paths(prefixdir, get_option('datadir'), 'doc', 'util-linux')
mandir = join_paths(prefixdir, get_option('mandir'))
runstatedir = '/run'
+localstatedir = '/var'
execprefixdir = prefixdir
sysconfdir = join_paths(prefixdir, get_option('sysconfdir'))
usrbin_exec_dir = join_paths(execprefixdir, bindir)
vendordir = get_option('vendordir')
-add_project_arguments('-D_GNU_SOURCE', language : 'c')
+add_project_arguments('-D_GNU_SOURCE', '-fsigned-char', language : 'c')
cc = meson.get_compiler('c')
pc_version = '.'.join(pc_version)
-conf.set_quoted('LIBBLKID_VERSION', libblkid_version)
+conf.set_quoted('LIBBLKID_VERSION', pc_version)
conf.set_quoted('LIBBLKID_DATE', libblkid_date)
conf.set('bindir', bindir)
conf.set('sbindir', sbindir)
conf.set('runstatedir', runstatedir)
+conf.set('localstatedir', localstatedir)
conf.set('sysconfdir', sysconfdir)
+conf.set('usrbin_execdir', usrbin_exec_dir)
conf.set('usrsbin_execdir', usrsbin_exec_dir)
conf.set('docdir', docdir)
conf.set_quoted('_PATH_SYSCONFSTATICDIR', sysconfstaticdir)
conf.set_quoted('_PATH_RUNSTATEDIR', runstatedir)
+conf.set_quoted('_PATH_LOCALSTATEDIR', localstatedir)
conf.set_quoted('CONFIG_ADJTIME_PATH', '/etc/adjtime')
conf.set_quoted('ADJTIME_PATH', '/etc/adjtime') # yes, both are used :(
conf.set_quoted('_PATH_VENDORDIR', vendordir)
conf.set('USE_VENDORDIR', vendordir == '' ? false : 1)
-build_libblkid = not get_option('build-libblkid').disabled()
+build_libblkid = not get_option('build-libblkid').require(get_option('build-libmount').allowed()).disabled()
conf.set('HAVE_LIBBLKID', build_libblkid ? 1 : false)
summary('libblkid', build_libblkid ? 'enabled' : 'disabled', section : 'components')
conf.set('HAVE_LIBUUID', build_libuuid ? 1 : false)
summary('libuuid', build_libuuid ? 'enabled' : 'disabled', section : 'components')
-build_liblastlog2 = not get_option('build-liblastlog2').disabled()
+lib_sqlite3 = dependency('sqlite3', required : get_option('build-liblastlog2'))
+build_liblastlog2 = get_option('build-liblastlog2').require(lib_sqlite3.found()).allowed()
conf.set('HAVE_LIBLASTLOG2', build_liblastlog2 ? 1 : false)
summary('liblastlog2', build_liblastlog2 ? 'enabled' : 'disabled', section : 'components')
+login_lastlogin = get_option('login-lastlogin')
+conf.set('USE_LOGIN_LASTLOG', login_lastlogin ? 1 : false)
+summary('login-lastlogin', login_lastlogin ? 'enabled' : 'disabled', section : 'components')
+
have_mountfd_api = cc.sizeof('struct mount_attr', prefix : '#include <linux/mount.h>') > 0
conf.set('HAVE_STRUCT_MOUNT_ATTR', have_mountfd_api ? 1 : false)
conf.set('HAVE_MOUNTFD_API', have_mountfd_api ? 1 : false)
have_struct_statx = cc.sizeof('struct statx', prefix : '#include <sys/stat.h>') > 0
conf.set('HAVE_STRUCT_STATX', have_struct_statx ? 1 : false)
-build_libmount = not get_option('build-libmount').disabled()
+build_libmount = get_option('build-libmount').require(get_option('build-libblkid').allowed()).allowed()
+
conf.set('HAVE_LIBMOUNT', build_libmount ? 1 : false)
conf.set('USE_LIBMOUNT_SUPPORT_NAMESPACES', 1)
conf.set('USE_LIBMOUNT_MOUNTFD_SUPPORT', have_mountfd_api ? 1 : false)
conf.set('HAVE_LIBSMARTCOLS', build_libsmartcols ? 1 : false)
summary('libsmartcols', build_libsmartcols ? 'enabled' : 'disabled', section : 'components')
-build_libfdisk = not get_option('build-libfdisk').disabled()
+build_libfdisk = not get_option('build-libfdisk').require(get_option('build-libblkid').allowed()).disabled()
conf.set('HAVE_LIBFDISK', build_libfdisk ? 1 : false)
summary('libfdisk', build_libfdisk ? 'enabled' : 'disabled', section : 'components')
security/openpam.h
security/pam_appl.h
security/pam_misc.h
+ security/pam_modules.h
sys/disk.h
sys/disklabel.h
sys/endian.h
required : get_option('systemd'))
conf.set('HAVE_LIBUDEV', lib_udev.found() ? 1 : false)
-lib_crypt = cc.find_library('crypt')
-
-lib_pam = cc.find_library('pam', required : get_option('build-login'))
-if not lib_pam.found()
- lib_pam = cc.find_library('pam', required : get_option('build-chfn-chsh'))
-endif
-if not lib_pam.found()
- lib_pam = cc.find_library('pam', required : get_option('build-su'))
-endif
-if not lib_pam.found()
- lib_pam = cc.find_library('pam', required : get_option('build-runuser'))
+lib_crypt = cc.find_library('crypt', required : get_option('build-newgrp'))
+if not lib_crypt.found()
+ lib_crypt = cc.find_library('crypt', required : get_option('build-sulogin'))
endif
+
+lib_pam = cc.find_library(
+ 'pam',
+ disabler : true,
+ required : get_option('build-login').enabled() or \
+ get_option('build-chfn-chsh').enabled() or \
+ get_option('build-su').enabled() or \
+ get_option('build-runuser').enabled())
if lib_pam.found()
lib_pam_misc = cc.find_library('pam_misc')
lib_pam = [lib_pam, lib_pam_misc]
required : get_option('cryptsetup'))
conf.set('HAVE_CRYPTSETUP', lib_cryptsetup.found() ? 1 : false)
-if not get_option('cryptsetup').disabled() and get_option('cryptsetup-dlopen').enabled()
+cryptsetup_dlopen = not get_option('cryptsetup').disabled() and get_option('cryptsetup-dlopen').enabled()
+if cryptsetup_dlopen
if meson.version().version_compare('>= 0.62.0')
lib_dl = dependency('dl')
else
conf.set('HAVE_SMACK', not get_option('smack').disabled())
+
foreach header : headers
have = cc.has_header(header)
conf.set('HAVE_' + header.underscorify().to_upper(), have ? 1 : false)
conf.set('HAVE_CPU_SET_T', have_cpu_set_t ? 1 : false)
have = cc.has_header_symbol('unistd.h', 'environ', args : '-D_GNU_SOURCE')
-conf.set10('HAVE_ENVIRON_DECL', have)
+conf.set('HAVE_ENVIRON_DECL', have ? 1 : false)
have = cc.has_header_symbol('signal.h', 'sighandler_t', args : '-D_GNU_SOURCE')
conf.set('HAVE_SIGHANDLER_T', have ? 1 : false)
have = cc.sizeof('union semun', prefix : '#include <sys/sem.h>') > 0
conf.set('HAVE_UNION_SEMUN', have ? 1 : false)
-have = cc.has_type('loff_t', prefix : '#include <sys/types.h>')
+have = cc.has_type('loff_t',
+ args : '-D_GNU_SOURCE',
+ prefix : '#include <sys/types.h>')
conf.set('HAVE_LOFF_T', have ? 1 : false)
have = cc.compiles('''
llistxattr
llseek
newlocale
- mempcpy
mkostemp
move_mount
mount_setattr
conf.set('HAVE_' + func.to_upper(), have ? 1 : false)
endforeach
+have_mempcpy = cc.has_function('mempcpy', prefix: '#include <string.h>', args: '-D_GNU_SOURCE')
+conf.set('HAVE_MEMPCPY', have_mempcpy ? 1 : false)
+
have = conf.get('HAVE_FUTIMENS') in [1] and conf.get('HAVE_INOTIFY_INIT1') in [1]
conf.set('AGETTY_RELOAD', have ? 1 : false)
if not have
conf.set('HAVE_DECL_DDFD', have_ddfd ? 1 : false)
have = cc.has_member('struct tm', 'tm_gmtoff',
+ args : '-D_GNU_SOURCE',
prefix : '''
#include <time.h>
#include <unistd.h>
conf.set('HAVE_STRUCT_TERMIOS_C_LINE', have ? 1 : false)
have = cc.has_member('struct stat', 'st_mtim.tv_nsec',
+ args : '-D_GNU_SOURCE',
prefix : '#include <sys/stat.h>')
conf.set('HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC', have ? 1 : false)
# replacement for AC_STRUCT_TIMEZONE
have = cc.has_member('struct tm', 'tm_zone',
+ args : '-D_GNU_SOURCE',
prefix : '#include <time.h>')
conf.set('HAVE_STRUCT_TM_TM_ZONE', have ? 1 : false)
endif
endif
+lib_rt = cc.find_library('rt', required : false)
realtime_libs = []
have = cc.has_function('clock_gettime')
if not have
- realtime_libs += cc.find_library('rt', required : true)
- have = cc.has_function('clock_gettime',
- dependencies : realtime_libs)
+ if lib_rt.found()
+ realtime_libs += lib_rt
+ have = cc.has_function('clock_gettime',
+ dependencies : realtime_libs)
+ endif
endif
conf.set('HAVE_CLOCK_GETTIME', have ? 1 : false)
have = cc.has_function('timer_create')
if not have
- realtime_libs = [cc.find_library('rt', required : true)]
- have = cc.has_function('timer_create',
- dependencies : realtime_libs)
+ if lib_rt.found()
+ realtime_libs = [lib_rt]
+ have = cc.has_function('timer_create',
+ dependencies : realtime_libs)
+ endif
if not have
realtime_libs += thread_libs
have = cc.has_function('timer_create',
required : build_plymouth_support.enabled())
have_so_passcred = cc.has_header_symbol(
'sys/socket.h', 'SO_PASSCRED',
+ args : ['-D_GNU_SOURCE'],
prefix : '#include <sys/types.h>',
required : build_plymouth_support.enabled())
output : ['@BASENAME@.tab.c', '@BASENAME@.tab.h'],
arguments : ['@INPUT@', '--defines=@OUTPUT1@', '--output=@OUTPUT0@'])
+python_module = import('python')
+python = python_module.find_installation(
+ get_option('python'),
+ required : true,
+ disabler : true)
+
meson_make_symlink = meson.current_source_dir() + '/tools/meson-make-symlink.sh'
meson_make_manpage_stub = meson.current_source_dir() + '/tools/meson-make-manpage-stub.sh'
subdir('po')
includes = [dir_include,
- dir_libblkid,
dir_libsmartcols,
- dir_libmount,
dir_libfdisk,
dir_libuuid,
dir_liblastlog2,
include_directories : includes,
link_with : [lib_common,
lib_smartcols,
- logindefs_c],
+ logindefs_c] +
+ (build_liblastlog2 ? [lib_lastlog2] : []),
dependencies : [lib_selinux,
lib_systemd],
install_dir : usrbin_exec_dir,
bashcompletions += ['tunelp']
endif
+opt = not get_option('build-fstrim').disabled()
exe = executable(
'fstrim',
fstrim_sources,
include_directories : includes,
- link_with : [lib_common,
- lib_mount],
+ link_with : [lib_common],
+ dependencies : [mount_dep],
install_dir : sbindir,
- install : true)
-if not is_disabler(exe)
+ install : opt,
+ build_by_default : opt)
+if opt and not is_disabler(exe)
exes += exe
manadocs += ['sys-utils/fstrim.8.adoc']
bashcompletions += ['fstrim']
'blkdiscard',
blkdiscard_sources,
include_directories : includes,
- link_with : [lib_common,
- lib_blkid],
+ link_with : [lib_common],
+ dependencies : [blkid_dep],
install_dir : sbindir,
install : true)
exes += exe
manadocs += ['sys-utils/blkdiscard.8.adoc']
bashcompletions += ['blkdiscard']
-exe = executable(
- 'blkzone',
- blkzone_sources,
- include_directories : includes,
- link_with : [lib_common],
- install_dir : sbindir,
- install : true)
-exes += exe
-manadocs += ['sys-utils/blkzone.8.adoc']
-bashcompletions += ['blkzone']
+if cc.has_header('linux/blkzoned.h')
+ exe = executable(
+ 'blkzone',
+ blkzone_sources,
+ include_directories : includes,
+ link_with : [lib_common],
+ install_dir : sbindir,
+ install : true)
+ exes += exe
+ manadocs += ['sys-utils/blkzone.8.adoc']
+ bashcompletions += ['blkzone']
+endif
-exe = executable(
- 'blkpr',
- blkpr_sources,
- include_directories : includes,
- link_with : [lib_common],
- install_dir : sbindir,
- install : true)
-exes += exe
-manadocs += ['sys-utils/blkpr.8.adoc']
+if cc.has_header('linux/pr.h')
+ exe = executable(
+ 'blkpr',
+ blkpr_sources,
+ include_directories : includes,
+ link_with : [lib_common],
+ install_dir : sbindir,
+ install : true)
+ exes += exe
+ manadocs += ['sys-utils/blkpr.8.adoc']
+endif
exe = executable(
'ldattach',
'eject',
eject_sources,
include_directories : includes,
- link_with : [lib_common,
- lib_mount],
+ link_with : [lib_common],
+ dependencies : [mount_dep],
install_dir : usrbin_exec_dir,
install : opt,
build_by_default : opt)
bashcompletions += ['prlimit']
endif
+opt = not get_option('build-lsns').disabled()
exe = executable(
'lsns',
lsns_sources,
include_directories : includes,
link_with : [lib_common,
- lib_smartcols,
- lib_mount],
+ lib_smartcols],
+ dependencies : [mount_dep],
install_dir : usrbin_exec_dir,
- install : true)
-if not is_disabler(exe)
+ install : opt,
+ build_by_default : opt)
+if opt and not is_disabler(exe)
exes += exe
manadocs += ['sys-utils/lsns.8.adoc']
bashcompletions += ['lsns']
mount_sources,
include_directories : includes,
link_with : [lib_common,
- lib_smartcols,
- lib_mount],
- dependencies : lib_selinux,
+ lib_smartcols],
+ dependencies : [lib_selinux, mount_dep],
install_mode : 'rwsr-xr-x',
install : opt,
build_by_default : opt)
'umount',
umount_sources,
include_directories : includes,
- link_with : [lib_common,
- lib_mount],
+ link_with : [lib_common],
+ dependencies : [mount_dep],
install_mode : 'rwsr-xr-x',
install : opt,
build_by_default : opt)
include_directories : includes,
link_args : ['--static'],
link_with : [lib_common,
- lib_smartcols_static,
- lib_mount_static],
+ lib_smartcols_static],
+ dependencies : [mount_static_dep],
install : opt2,
build_by_default : opt2)
if opt2 and not is_disabler(exe)
umount_sources,
include_directories : includes,
link_args : ['--static'],
- link_with : [lib_common,
- lib_mount_static],
+ link_with : [lib_common],
+ dependencies : [mount_static_dep],
install : opt2,
build_by_default : opt2)
if opt2 and not is_disabler(exe)
# setuid?
+opt = not get_option('build-swapon').disabled()
exe = executable(
'swapon',
swapon_sources,
include_directories : includes,
link_with : [lib_common,
- lib_blkid,
- lib_mount,
lib_smartcols],
+ dependencies : [blkid_dep, mount_dep],
install_dir : sbindir,
- install : true)
-if not is_disabler(exe)
+ install : opt,
+ build_by_default : opt)
+if opt and not is_disabler(exe)
exes += exe
manadocs += ['sys-utils/swapon.8.adoc']
bashcompletions += ['swapon']
endif
+opt = not get_option('build-swapoff').disabled()
exe = executable(
'swapoff',
swapoff_sources,
include_directories : includes,
- link_with : [lib_common,
- lib_blkid,
- lib_mount],
+ link_with : [lib_common],
+ dependencies : [blkid_dep, mount_dep],
install_dir : sbindir,
- install : true)
-if not is_disabler(exe)
+ install : opt,
+ build_by_default : opt)
+if opt and not is_disabler(exe)
exes += exe
manlinks += {'swapoff.8': 'swapon.8'}
bashcompletions += ['swapoff']
'mountpoint',
mountpoint_sources,
include_directories : includes,
- link_with : [lib_mount],
+ dependencies : [mount_dep],
install : opt,
build_by_default : opt)
if opt and not is_disabler(exe)
unshare_sources,
include_directories : includes,
link_with : [lib_common],
+ dependencies : [mount_dep],
install_dir : usrbin_exec_dir,
install : opt,
build_by_default : opt)
unshare_sources,
include_directories : includes,
link_with : [lib_common],
+ dependencies : [mount_dep],
install_dir : usrbin_exec_dir,
install : opt,
build_by_default : opt)
mkswap_sources,
include_directories : includes,
link_with : [lib_common,
- lib_blkid,
lib_uuid],
- dependencies: [lib_selinux],
+ dependencies: [blkid_dep, lib_selinux],
install_dir : sbindir,
install : true)
-if opt and not is_disabler(exe)
+if not is_disabler(exe)
exes += exe
manadocs += ['disk-utils/mkswap.8.adoc']
bashcompletions += ['mkswap']
swaplabel_sources,
include_directories : includes,
link_with : [lib_common,
- lib_blkid,
lib_uuid],
+ dependencies : [blkid_dep],
install_dir : sbindir,
install : true)
-if opt and not is_disabler(exe)
+if not is_disabler(exe)
exes += exe
manadocs += ['disk-utils/swaplabel.8.adoc']
bashcompletions += ['swaplabel']
'fsck',
fsck_sources,
include_directories : includes,
- link_with : [lib_common,
- lib_blkid,
- lib_mount],
- dependencies : realtime_libs,
+ link_with : [lib_common],
+ dependencies : [blkid_dep, mount_dep, realtime_libs],
install_dir : sbindir,
install : opt,
build_by_default : opt)
if opt and not is_disabler(exe)
exes += exe
manadocs += ['disk-utils/fdformat.8.adoc']
+ bashcompletions += ['fdformat']
endif
exe = executable(
link_with : [lib_common,
lib_fdisk,
lib_smartcols,
- lib_tcolors,
- lib_mount],
- dependencies : [curses_libs],
+ lib_tcolors],
+ dependencies : [curses_libs, mount_dep],
install_dir : sbindir,
install : opt,
build_by_default : opt)
partx_sources,
include_directories : includes,
link_with : [lib_common,
- lib_blkid,
lib_smartcols],
+ dependencies : [blkid_dep],
install_dir : usrsbin_exec_dir,
install : opt,
build_by_default : opt)
'disk-utils/partx.8.adoc']
bashcompletions += ['addpart', 'delpart', 'resizepart', 'partx']
endif
+opt = opt and 'partx' in static_programs
+exe = executable(
+ 'addpart.static',
+ addpart_sources,
+ include_directories : includes,
+ link_args : ['--static'],
+ link_with : [lib_common],
+ install_dir : usrsbin_exec_dir,
+ install : opt,
+ build_by_default : opt)
+exe2 = executable(
+ 'delpart.static',
+ delpart_sources,
+ include_directories : includes,
+ link_args : ['--static'],
+ link_with : [lib_common],
+ install_dir : usrsbin_exec_dir,
+ install : opt,
+ build_by_default : opt)
+exe3 = executable(
+ 'resizepart.static',
+ resizepart_sources,
+ include_directories : includes,
+ link_args : ['--static'],
+ link_with : [lib_common],
+ install_dir : usrsbin_exec_dir,
+ install : opt,
+ build_by_default : opt)
+exe4 = executable(
+ 'partx.static',
+ partx_sources,
+ include_directories : includes,
+ link_args : ['--static'],
+ link_with : [lib_common,
+ lib_smartcols.get_static_lib()],
+ dependencies : [blkid_static_dep],
+ install_dir : usrsbin_exec_dir,
+ install : opt,
+ build_by_default : opt)
+
+if opt
+ exes += [exe, exe2, exe3, exe4]
+endif
############################################################
manadocs += ['misc-utils/whereis.1.adoc']
bashcompletions += ['whereis']
+opt = not get_option('build-lslocks').disabled()
exe = executable(
'lslocks',
lslocks_sources,
include_directories : includes,
link_with : [lib_common,
- lib_mount,
lib_smartcols],
+ dependencies : [mount_dep],
install_dir : usrbin_exec_dir,
- install : true)
-if not is_disabler(exe)
+ install : opt,
+ build_by_default : opt)
+if opt and not is_disabler(exe)
exes += exe
manadocs += ['misc-utils/lslocks.8.adoc']
bashcompletions += ['lslocks']
endif
+opt = not get_option('build-lsblk').disabled()
exe = executable(
'lsblk',
lsblk_sources,
include_directories : includes,
link_with : [lib_common,
- lib_blkid,
- lib_mount,
lib_tcolors,
lib_smartcols],
- dependencies : lib_udev,
- install : true)
-if not is_disabler(exe)
+ dependencies : [blkid_dep, lib_udev, mount_dep],
+ install : opt,
+ build_by_default : opt)
+if opt and not is_disabler(exe)
exes += exe
manadocs += ['misc-utils/lsblk.8.adoc']
bashcompletions += ['lsblk']
endif
-mq_libs = []
-mq_libs += cc.find_library('rt', required : true)
+errnos_h = custom_target('errnos.h',
+ input : 'tools/all_errnos',
+ output : 'errnos.h',
+ command : ['tools/all_errnos', cc.cmd_array(), get_option('c_args')],
+)
+opt = not get_option('build-lsfd').require(lib_rt.found()).disabled()
exe = executable(
'lsfd',
- lsfd_sources,
+ lsfd_sources, errnos_h,
include_directories : includes,
link_with : [lib_common,
lib_smartcols],
- dependencies : mq_libs,
+ dependencies : [lib_rt],
install_dir : usrbin_exec_dir,
- install : true)
-if not is_disabler(exe)
+ install : opt,
+ build_by_default : opt)
+if opt and not is_disabler(exe)
exes += exe
manadocs += ['misc-utils/lsfd.1.adoc']
endif
'blkid',
blkid_sources,
include_directories : includes,
- link_with : [lib_common,
- lib_blkid],
+ link_with : [lib_common],
+ dependencies : [blkid_dep],
install_dir : sbindir,
install : opt,
build_by_default : opt)
'blkid.static',
blkid_sources,
include_directories : includes,
- link_with : [lib_common,
- lib_blkid_static],
+ link_with : [lib_common],
+ dependencies : [blkid_static_dep],
install_dir : sbindir,
install : opt,
build_by_default : opt)
'sample-mkfs',
'libblkid/samples/mkfs.c',
include_directories : includes,
- link_with : lib_blkid)
+ dependencies : [blkid_dep])
if not is_disabler(exe)
exes += exe
endif
'sample-partitions',
'libblkid/samples/partitions.c',
include_directories : includes,
- link_with : lib_blkid)
+ dependencies : [blkid_dep])
if not is_disabler(exe)
exes += exe
endif
'sample-superblocks',
'libblkid/samples/superblocks.c',
include_directories : includes,
- link_with : lib_blkid)
+ dependencies : [blkid_dep])
if not is_disabler(exe)
exes += exe
endif
'sample-topology',
'libblkid/samples/topology.c',
include_directories : includes,
- link_with : lib_blkid)
+ dependencies : [blkid_dep])
if not is_disabler(exe)
exes += exe
endif
'test_blkid_fuzz_sample',
'libblkid/src/fuzz.c',
include_directories: includes,
- link_with: lib_blkid,
+ dependencies : [blkid_dep],
build_by_default: program_tests)
if not is_disabler(exe)
exes += exe
'findfs',
findfs_sources,
include_directories : includes,
- link_with : [lib_blkid],
+ dependencies : [blkid_dep],
install_dir : sbindir,
install : true)
if not is_disabler(exe)
wipefs_sources,
include_directories : includes,
link_with : [lib_common,
- lib_blkid,
lib_smartcols],
+ dependencies : [blkid_dep],
install_dir : sbindir,
install : true)
if not is_disabler(exe)
bashcompletions += ['wipefs']
endif
+opt = not get_option('build-findmnt').disabled()
exe = executable(
'findmnt',
findmnt_sources,
include_directories : includes,
link_with : [lib_common,
- lib_blkid,
- lib_mount,
lib_smartcols],
- dependencies : [lib_udev],
- install : true)
-if not is_disabler(exe)
+ dependencies : [blkid_dep, lib_udev, mount_dep],
+ install : opt,
+ build_by_default : opt)
+if opt and not is_disabler(exe)
exes += exe
manadocs += ['misc-utils/findmnt.8.adoc']
bashcompletions += ['findmnt']
syscalls_h = custom_target('syscalls.h',
input : 'tools/all_syscalls',
output : 'syscalls.h',
- command : ['tools/all_syscalls', cc.cmd_array()]
+ command : ['tools/all_syscalls', cc.cmd_array(), get_option('c_args')],
)
if cc.compiles(fs.read('include/audit-arch.h'), name : 'has AUDIT_ARCH_NATIVE')
exe = executable(
'enosys',
- 'misc-utils/enosys.c', syscalls_h,
+ 'misc-utils/enosys.c', syscalls_h, errnos_h,
include_directories : includes,
link_with : [lib_common],
install_dir : usrbin_exec_dir,
############################################################
libfdisk_tests_cflags = ['-DTEST_PROGRAM']
-libfdisk_tests_ldadd = [lib_fdisk_static, lib_uuid, lib_blkid]
+libfdisk_tests_ldadd = [lib_fdisk_static, lib_uuid]
+libfdisk_tests_ldadd_deps = [blkid_dep]
exe = executable(
'test_fdisk_ask',
c_args : libfdisk_tests_cflags,
include_directories : lib_fdisk_includes,
link_with : libfdisk_tests_ldadd,
+ dependencies : libfdisk_tests_ldadd_deps,
build_by_default: program_tests)
if not is_disabler(exe)
exes += exe
c_args : libfdisk_tests_cflags,
include_directories : lib_fdisk_includes,
link_with : libfdisk_tests_ldadd,
+ dependencies : libfdisk_tests_ldadd_deps,
build_by_default: program_tests)
if not is_disabler(exe)
exes += exe
c_args : libfdisk_tests_cflags,
include_directories : lib_fdisk_includes,
link_with : libfdisk_tests_ldadd,
+ dependencies : libfdisk_tests_ldadd_deps,
build_by_default: program_tests)
if not is_disabler(exe)
exes += exe
c_args : libfdisk_tests_cflags,
include_directories : lib_fdisk_includes,
link_with : libfdisk_tests_ldadd,
+ dependencies : libfdisk_tests_ldadd_deps,
build_by_default: program_tests)
if not is_disabler(exe)
exes += exe
c_args : libfdisk_tests_cflags,
include_directories : lib_fdisk_includes,
link_with : libfdisk_tests_ldadd,
+ dependencies : libfdisk_tests_ldadd_deps,
build_by_default: program_tests)
if not is_disabler(exe)
exes += exe
c_args : libfdisk_tests_cflags,
include_directories : lib_fdisk_includes,
link_with : libfdisk_tests_ldadd,
+ dependencies : libfdisk_tests_ldadd_deps,
build_by_default: program_tests)
if not is_disabler(exe)
exes += exe
build_by_default: program_tests)
exes += exe
-if LINUX
+if LINUX and lib_rt.found()
exe = executable(
'test_mkfds',
'tests/helpers/test_mkfds.c',
'tests/helpers/test_mkfds.h',
'tests/helpers/test_mkfds_ppoll.c',
include_directories : includes,
- dependencies : mq_libs,
+ dependencies : [lib_rt],
build_by_default: program_tests)
exes += exe
endif