aboutsummaryrefslogtreecommitdiff
path: root/configure.ac
blob: 67fe5e1c1c0dd76fe8660f3bb96e6e630eb9fbd7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
AC_INIT(sshfs, 3.1.0)
AC_CANONICAL_TARGET
AM_INIT_AUTOMAKE([foreign subdir-objects])
AM_CONFIG_HEADER(config.h)

AC_PROG_CC
AM_PROG_CC_C_O
CFLAGS="$CFLAGS -Wall -W"
LIBS=
AC_SEARCH_LIBS(dlsym, [dl])
LIBS=

case "$target_os" in
    *linux*) osname=linux;;
    *darwin*) osname=darwin;;
    *) osname=unknown;;
esac

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
PKG_CHECK_MODULES([SSHFS], [fuse3 >= 3.1 glib-2.0 gthread-2.0])
have_fuse_opt_parse=no
oldlibs="$LIBS"
LIBS="$LIBS $SSHFS_LIBS"
AC_CHECK_FUNC([fuse_opt_parse], [have_fuse_opt_parse=yes])
LIBS="$oldlibs"
if test "$have_fuse_opt_parse" = no -o "$osname" = darwin; then
	CFLAGS="$CFLAGS -I${srcdir}/compat"
fi
AM_CONDITIONAL(FUSE_OPT_COMPAT, test "$have_fuse_opt_parse" = no)
AM_CONDITIONAL(DARWIN_COMPAT, test "$osname" = darwin)

AC_CHECK_PROG(UNMOUNT_COMMAND, fusermount, fusermount -u, umount)

# TODO: Figure out why we special-case this in Darwin.  Would be nice if
# the default setting was consistent across platforms so we wouldn't need
# to care about it here.
case "$osname" in
    darwin) IDMAP_DEFAULT=user ;;
    *) IDMAP_DEFAULT=none ;;
esac
AC_SUBST(IDMAP_DEFAULT)

AC_CONFIG_FILES([Makefile test/Makefile])
AC_OUTPUT