瀏覽代碼

audit: Add systemd support

The main .service file is installed by audit.
We are using tmpfiles mechanisms to create the log directory, which
would not exists otherwise since /var/log points to /tmp

[Thomas: add explicit --disable-systemd when systemd is not used.]

Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Maxime Hadjinlian 9 年之前
父節點
當前提交
2bdd9724ee
共有 2 個文件被更改,包括 17 次插入0 次删除
  1. 16 0
      package/audit/audit.mk
  2. 1 0
      package/audit/audit_tmpfiles.conf

+ 16 - 0
package/audit/audit.mk

@@ -31,10 +31,26 @@ ifeq ($(BR2_aarch64),y)
 AUDIT_CONF_OPTS += --with-aarch64
 AUDIT_CONF_OPTS += --with-aarch64
 endif
 endif
 
 
+ifeq ($(BR2_INIT_SYSTEMD),y)
+AUDIT_CONF_OPTS += --enable-systemd
+else
+AUDIT_CONF_OPTS += --disable-systemd
+endif
+
 define AUDIT_INSTALL_INIT_SYSV
 define AUDIT_INSTALL_INIT_SYSV
 	$(INSTALL) -D -m 755 package/audit/S01auditd $(TARGET_DIR)/etc/init.d/S01auditd
 	$(INSTALL) -D -m 755 package/audit/S01auditd $(TARGET_DIR)/etc/init.d/S01auditd
 endef
 endef
 
 
+define AUDIT_INSTALL_INIT_SYSTEMD
+	mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
+	ln -fs ../../../../usr/lib/systemd/system/auditd.service \
+		$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/auditd.service
+
+	mkdir -p $(TARGET_DIR)/usr/lib/tmpfiles.d
+	$(INSTALL) -D -m 644 package/audit/audit_tmpfiles.conf \
+		$(TARGET_DIR)/usr/lib/tmpfiles.d/audit.conf
+endef
+
 define AUDIT_INSTALL_CLEANUP
 define AUDIT_INSTALL_CLEANUP
 	$(RM) -rf $(TARGET_DIR)/etc/rc.d
 	$(RM) -rf $(TARGET_DIR)/etc/rc.d
 	$(RM) -rf $(TARGET_DIR)/etc/sysconfig
 	$(RM) -rf $(TARGET_DIR)/etc/sysconfig

+ 1 - 0
package/audit/audit_tmpfiles.conf

@@ -0,0 +1 @@
+d /var/log/audit 0755 - -