Compilation fails if sys/acl.h is not available. The configure script
already tests for sys/acl.h presence, but the result was so far unused.
To compile without acl, stub implementations of the acl functions are
used.
src/logind-session-dbus.c \
src/logind-user.c \
src/logind-user-dbus.c \
- src/logind-acl.c \
src/dbus-common.c \
src/dbus-loop.c \
src/cgroup-util.c \
$(ACL_LIBS)
systemd_uaccess_SOURCES = \
- src/uaccess.c \
- src/logind-acl.c
+ src/uaccess.c
+
+if HAVE_ACL
+systemd_logind_SOURCES += \
+ src/logind-acl.c
+
+systemd_uaccess_SOURCES += \
+ src/logind-acl.c
+endif
systemd_uaccess_CFLAGS = \
$(AM_CFLAGS) \
#include <stdbool.h>
#include <libudev.h>
+#ifdef HAVE_ACL
+
int devnode_acl(const char *path,
bool flush,
bool del, uid_t old_uid,
bool flush,
bool del, uid_t old_uid,
bool add, uid_t new_uid);
+#else
+
+static inline int devnode_acl(const char *path,
+ bool flush,
+ bool del, uid_t old_uid,
+ bool add, uid_t new_uid) {
+ return 0;
+}
+
+static inline int devnode_acl_all(struct udev *udev,
+ const char *seat,
+ bool flush,
+ bool del, uid_t old_uid,
+ bool add, uid_t new_uid) {
+ return 0;
+}
+
+#endif
#endif