dcavalca / rpms / systemd

Forked from rpms/systemd 3 months ago
Clone
Blob Blame History Raw
From aeb50ff0bd4bbbca74c4695072232348351d512d Mon Sep 17 00:00:00 2001
From: Tom Gundersen <teg@jklm.no>
Date: Wed, 27 Aug 2014 17:45:41 +0200
Subject: [PATCH] tmpfiles: make resolv.conf entry conditional on resolved
 support

---
 Makefile.am                          | 15 +++++++++++++--
 TODO                                 |  2 --
 configure.ac                         |  1 +
 tmpfiles.d/.gitignore                |  1 +
 tmpfiles.d/{etc.conf => etc.conf.m4} |  2 ++
 5 files changed, 17 insertions(+), 4 deletions(-)
 create mode 100644 tmpfiles.d/.gitignore
 rename tmpfiles.d/{etc.conf => etc.conf.m4} (95%)

diff --git a/Makefile.am b/Makefile.am
index cbdf551fa8..70faed4acb 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1940,14 +1940,16 @@ nodist_systemunit_DATA += \
 	units/systemd-tmpfiles-setup.service \
 	units/systemd-tmpfiles-clean.service
 
+nodist_tmpfiles_DATA = \
+	tmpfiles.d/etc.conf
+
 dist_tmpfiles_DATA = \
 	tmpfiles.d/systemd.conf \
 	tmpfiles.d/systemd-nologin.conf \
 	tmpfiles.d/systemd-remote.conf \
 	tmpfiles.d/tmp.conf \
 	tmpfiles.d/x11.conf \
-	tmpfiles.d/var.conf \
-	tmpfiles.d/etc.conf
+	tmpfiles.d/var.conf
 
 if HAVE_SYSV_COMPAT
 dist_tmpfiles_DATA += \
@@ -1970,10 +1972,14 @@ INSTALL_DIRS += \
 endif
 
 EXTRA_DIST += \
+	tmpfiles.d/etc.conf.m4 \
 	units/systemd-tmpfiles-setup-dev.service.in \
 	units/systemd-tmpfiles-setup.service.in \
 	units/systemd-tmpfiles-clean.service.in
 
+CLEANFILES += \
+	tmpfiles.d/etc.conf
+
 # ------------------------------------------------------------------------------
 if ENABLE_SYSUSERS
 systemd_sysusers_SOURCES = \
@@ -5708,6 +5714,11 @@ src/%: src/%.m4
 	$(AM_V_at)$(MKDIR_P) $(dir $@)
 	$(AM_V_M4)$(M4) -P $(M4_DEFINES) < $< > $@
 
+tmpfiles.d/%: tmpfiles.d/%.m4
+	$(AM_V_at)$(MKDIR_P) $(dir $@)
+	$(AM_V_M4)$(M4) -P $(M4_DEFINES) < $< > $@
+
+
 units/%: units/%.m4
 	$(AM_V_at)$(MKDIR_P) $(dir $@)
 	$(AM_V_M4)$(M4) -P $(M4_DEFINES) -DFOR_SYSTEM=1 < $< > $@
diff --git a/TODO b/TODO
index 09f82d3c37..372825e8bd 100644
--- a/TODO
+++ b/TODO
@@ -120,8 +120,6 @@ Features:
 
 * Allow multiple ExecStart= for all Type= settings, so that we can cover rescue.service nicely
 
-* the resolv.conf tmpfiles line should be covered by ENABLE_NETWORKD...
-
 * Add a new verb "systemctl top"
 
 * logind: allow users to kill or lock their own sessions
diff --git a/configure.ac b/configure.ac
index 18b719856b..08a8a105f8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1023,6 +1023,7 @@ have_resolved=no
 AC_ARG_ENABLE(resolved, AS_HELP_STRING([--disable-resolved], [disable resolve daemon]))
 if test "x$enable_resolved" != "xno"; then
         have_resolved=yes
+        M4_DEFINES="$M4_DEFINES -DENABLE_RESOLVED"
 fi
 AM_CONDITIONAL(ENABLE_RESOLVED, [test "$have_resolved" = "yes"])
 
diff --git a/tmpfiles.d/.gitignore b/tmpfiles.d/.gitignore
new file mode 100644
index 0000000000..eb323154ff
--- /dev/null
+++ b/tmpfiles.d/.gitignore
@@ -0,0 +1 @@
+etc.conf
diff --git a/tmpfiles.d/etc.conf b/tmpfiles.d/etc.conf.m4
similarity index 95%
rename from tmpfiles.d/etc.conf
rename to tmpfiles.d/etc.conf.m4
index b23272cb27..f567c8d6ea 100644
--- a/tmpfiles.d/etc.conf
+++ b/tmpfiles.d/etc.conf.m4
@@ -10,6 +10,8 @@
 L /etc/os-release - - - - ../usr/lib/os-release
 L /etc/localtime - - - - ../usr/share/zoneinfo/UTC
 L+ /etc/mtab - - - - ../proc/self/mounts
+m4_ifdef(`ENABLE_RESOLVED',
 L /etc/resolv.conf - - - - ../run/systemd/resolve/resolv.conf
+)
 C /etc/nsswitch.conf - - - -
 C /etc/pam.d - - - -