Do not hardcode /etc/fuse.conf path.

This commit is contained in:
Nikolaus Rath
2018-08-31 13:38:26 +02:00
parent 3a92c69bba
commit d709f31923
5 changed files with 33 additions and 13 deletions
+3
View File
@@ -6,6 +6,9 @@ Unreleased Changes
bcachefs, aufs and FAT filesystems.
* libfuse may now be used as a Meson subproject.
* Fix a few low-impact memory leaks.
* The `fuse.conf` file is no longer looked for in `/etc`, but in the
*sysconfdir* directory (which can be set with `meson configure`). By
default, the location is thus `/usr/local/etc/fuse.conf`.
libfuse 3.2.5 (2018-07-24)
==========================
+1 -1
View File
@@ -2,4 +2,4 @@ option('disable-mtab', type : 'boolean', value : false,
description: 'Disable and ignore usage of /etc/mtab')
option('udevrulesdir', type : 'string', value : '',
description: 'Path where udev rules are installed to (Defaults to udevdir specified in udev.pc)')
description: 'Where to install udev rules (if empty, query pkg-config(1))')
-1
View File
@@ -35,7 +35,6 @@
#define FUSE_COMMFD_ENV "_FUSE_COMMFD"
#define FUSE_DEV "/dev/fuse"
#define FUSE_CONF "/etc/fuse.conf"
#ifndef MS_DIRSYNC
#define MS_DIRSYNC 128
+21 -8
View File
@@ -9,10 +9,25 @@ set -e
sysconfdir="$1"
bindir="$2"
udevrulesdir="$3"
prefix="${MESON_INSTALL_DESTDIR_PREFIX}"
chown root:root "${prefix}/${bindir}/fusermount3"
chmod u+s "${prefix}/${bindir}/fusermount3"
# Both sysconfdir and bindir are absolute paths (since they are joined
# with --prefix in meson.build), but need to be interpreted relative
# to DESTDIR (if specified).
if [ -z "${DESTDIR}" ]; then
# Prevent warnings about uninitialized variable
DESTDIR=""
else
# Get rid of duplicate slash
DESTDIR="${DESTDIR%/}"
fi
chown root:root "${DESTDIR}${bindir}/fusermount3"
chmod u+s "${DESTDIR}${bindir}/fusermount3"
install -D -m 644 "${MESON_SOURCE_ROOT}/util/fuse.conf" \
"${DESTDIR}${sysconfdir}/fuse.conf"
if test ! -e "${DESTDIR}/dev/fuse"; then
mkdir -p "${DESTDIR}/dev"
@@ -20,19 +35,17 @@ if test ! -e "${DESTDIR}/dev/fuse"; then
fi
install -D -m 644 "${MESON_SOURCE_ROOT}/util/udev.rules" \
"${DESTDIR}/${udevrulesdir}/99-fuse3.rules"
"${DESTDIR}${udevrulesdir}/99-fuse3.rules"
install -D -m 755 "${MESON_SOURCE_ROOT}/util/init_script" \
"${DESTDIR}/etc/init.d/fuse3"
"${DESTDIR}${sysconfdir}/init.d/fuse3"
install -D -m 644 "${MESON_SOURCE_ROOT}/util/fuse.conf" \
"${DESTDIR}/etc/fuse.conf"
if test -x /usr/sbin/update-rc.d && test -z "${DESTDIR}"; then
/usr/sbin/update-rc.d fuse3 start 34 S . start 41 0 6 . || /bin/true
else
echo "== FURTHER ACTION REQUIRED =="
echo "Make sure that your init system will start the ${DESTDIR}/etc/init.d/fuse3 init script"
echo "Make sure that your init system will start the ${sysconfdir}/init.d/fuse3 init script"
fi
+8 -3
View File
@@ -8,10 +8,13 @@ mount_util_c = custom_target('mount_util',
command : ['cp', '-a', '@INPUT@', '@OUTPUT@'],
)
fuseconf_path = join_paths(get_option('prefix'), get_option('sysconfdir'), 'fuse.conf')
executable('fusermount3', ['fusermount.c', mount_util_c],
include_directories: include_dirs,
install: true,
install_dir: get_option('bindir'))
install_dir: get_option('bindir'),
c_args: '-DFUSE_CONF="@0@"'.format(fuseconf_path))
executable('mount.fuse3', ['mount.fuse.c'],
include_directories: include_dirs,
@@ -25,7 +28,9 @@ if udevrulesdir == ''
udevrulesdir = join_paths(udev.get_pkgconfig_variable('udevdir'), 'rules.d')
endif
meson.add_install_script('install_helper.sh', get_option('sysconfdir'),
get_option('bindir'), udevrulesdir)
meson.add_install_script('install_helper.sh',
join_paths(get_option('prefix'), get_option('sysconfdir')),
join_paths(get_option('prefix'), get_option('bindir')),
udevrulesdir)