Workaround FUSE missing the generally broken Linux kernel charset support.
[captive.git] / src / client / fuse / Makefile.am
index d0d9bde..cf3d98a 100644 (file)
@@ -60,20 +60,45 @@ mount_captive_SOURCES= \
                op_utime.h \
                gnomevfsresult.c \
                gnomevfsresult.h \
-               gnomevfsfileinfo.c \
-               gnomevfsfileinfo.h \
+               capfuse_captive_file_info_object.c \
+               capfuse_captive_file_info_object.h \
                main.c \
-               main.h
-mount_captive_CFLAGS=                   $(GNOME_VFS_CFLAGS) $(FUSE_CFLAGS)
-mount_captive_LDADD =$(captive_library) $(GNOME_VFS_LIBS)   $(FUSE_LIBS)   $(INTLLIBS)
+               main.h \
+               utf8.c \
+               utf8.h
+mount_captive_CFLAGS=                   $(GNOME_VFS_CFLAGS) $(LIBXML_CFLAGS) $(FUSE_CFLAGS)
+mount_captive_LDADD =$(captive_library) $(GNOME_VFS_LIBS)   $(LIBXML_LIBS)   $(FUSE_LIBS)   $(INTLLIBS)
 mount_captive_LDFLAGS=$(READLINE_LDFLAGS)
 
-mount_captive_CFLAGS+=-DSBINDIR="$(sbindir)"
+mount_captive_CFLAGS+=-DLIBEXECDIR="$(libexecdir)"
 mount_captive_CFLAGS+=-DVARLIBCAPTIVEDIR="$(localstatedir)/lib/$(PACKAGE)"
 
+
 if ENABLE_FUSE
 if ENABLE_SBIN_MOUNT
 mount_captive_cond=mount.captive
+initd_SCRIPTS_cond=captive
+
+if ENABLE_STANDALONE
+libexec_PROGRAMS_cond=captive-fusermount
+
+install-exec-hook-captive-fusermount:
+       chown root.fuse $(DESTDIR)/$(libexecdir)/captive-fusermount
+       chmod 4754      $(DESTDIR)/$(libexecdir)/captive-fusermount
+       if grep -q '^fuse:' /etc/group;then true;else \
+               echo "ERROR: Add 'fuse' to your '/etc/group'; see groupadd(8)"; \
+               exit 1; \
+       fi;
+
+else
+install-exec-hook-captive-fusermount:
+       @true
+
+endif
+
+# Do not: libexecPROGRAMS_INSTALL=${INSTALL} -o root -g fuse -m 4754
+# as it works only on Fedora Core based systems, at least SuSE 10.0 correctly fails.
+#      https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=176708
 
 install-exec-hook:
        $(mkinstalldirs) $(DESTDIR)$(enable_sbin_mountdir)
@@ -85,6 +110,9 @@ install-exec-hook:
                        $(LN_S) mount.captive $(DESTDIR)$(enable_sbin_mountdir)/mount.captive-$$fs; \
                fi; \
                done
+       if test `id -u` -eq 0 -a -z "$(DESTDIR)";then \
+               $(MAKE) $(AM_MAKEFLAGS) install-exec-hook-captive-fusermount; \
+       fi
 
 else
 install-exec-hook:
@@ -96,7 +124,7 @@ install-exec-hook:
        @true
 
 endif
-bin_PROGRAMS+=$(mount_captive_cond)
+enable_sbin_mount_PROGRAMS=$(mount_captive_cond)
 
 EXTRA_DIST+=mount.captive.pod.pl.in
 CLEANFILES+=mount.captive.pod mount.captive.1
@@ -109,3 +137,15 @@ endif
 endif
 endif
 man_MANS=$(mount_captive_man_cond)
+
+initd_SCRIPTS=$(initd_SCRIPTS_cond)
+EXTRA_DIST+=captive.init
+CLEANFILES+=captive
+captive: captive.init
+       $(LN_S) $< $@
+
+captive_fusermount_SOURCES= \
+               fusermount.c
+captive_fusermount_CFLAGS=
+captive_fusermount_LDADD =$(captive_library)
+libexec_PROGRAMS=$(libexec_PROGRAMS_cond)