From 1aa1833afb0c9b4e65d44d0cd595536f23433b4b Mon Sep 17 00:00:00 2001
From: Eygene Ryabinkin <rea-fbsd@codelabs.ru>
Date: Thu, 18 Nov 2010 15:22:03 +0300
Subject: [PATCH 2/4] Rework directory creation during install phase

Don't create existing system and log-like directories to avoid
changing their permissions.

Signed-off-by: Eygene Ryabinkin <rea-fbsd@codelabs.ru>
---
 lib/Makefile.in           |    2 +-
 sample-config/Makefile.in |   12 ++++++------
 scripts/Makefile.in       |    8 ++++----
 share/Makefile.in         |    2 +-
 src/Makefile.in           |   10 +++++-----
 5 files changed, 17 insertions(+), 17 deletions(-)

diff --git a/lib/Makefile.in b/lib/Makefile.in
index b103bc8..0e0f8d8 100644
--- a/lib/Makefile.in
+++ b/lib/Makefile.in
@@ -22,7 +22,7 @@ devclean: distclean
 
 install:
 
-	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)      
+	[ -d "$(DESTDIR)$(LIBDIR)" ] || $(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)
 	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana
 	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system
 	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/controllers
diff --git a/sample-config/Makefile.in b/sample-config/Makefile.in
index 62d0cf6..1bf667d 100644
--- a/sample-config/Makefile.in
+++ b/sample-config/Makefile.in
@@ -33,18 +33,18 @@ devclean: distclean
 install:
 	-rm -f $(DESTDIR)$(HTMLDIR)/conf/config.php
 
-	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(SYSCONFDIR)
-	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(SYSCONFDIR)/check_commands
-	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(SYSCONFDIR)/pages
+	[ -d "$(DESTDIR)$(SYSCONFDIR)" ] || $(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(SYSCONFDIR)
+	[ -d "$(DESTDIR)$(SYSCONFDIR)"/check_commands ] || $(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(SYSCONFDIR)/check_commands
+	[ -d "$(DESTDIR)$(SYSCONFDIR)"/pages ] || $(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(SYSCONFDIR)/pages
 	$(INSTALL) -m 644 $(INSTALL_OPTS)  pnp/pnp4nagios_release $(DESTDIR)$(SYSCONFDIR)
 	$(INSTALL) -m 644 $(INSTALL_OPTS)  pnp/config.php $(DESTDIR)$(SYSCONFDIR)
 	$(INSTALL) -m 644 $(INSTALL_OPTS)  pnp/background.pdf $(DESTDIR)$(SYSCONFDIR)/background.pdf-sample
 
 install-config: 
+	[ -d "$(DESTDIR)$(SYSCONFDIR)" ] || $(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(SYSCONFDIR)
+	[ -d "$(DESTDIR)$(SYSCONFDIR)"/check_commands ] || $(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(SYSCONFDIR)/check_commands
+	[ -d "$(DESTDIR)$(SYSCONFDIR)"/pages ] || $(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(SYSCONFDIR)/pages
 
-	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(SYSCONFDIR)
-	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(SYSCONFDIR)/check_commands
-	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(SYSCONFDIR)/pages
 	
 	$(INSTALL) -m 644 $(INSTALL_OPTS)  pnp/config.php $(DESTDIR)$(SYSCONFDIR)
 	$(INSTALL) -m 644 $(INSTALL_OPTS)  pnp/process_perfdata.cfg-sample $(DESTDIR)$(SYSCONFDIR)
diff --git a/scripts/Makefile.in b/scripts/Makefile.in
index 44f0506..8addf27 100644
--- a/scripts/Makefile.in
+++ b/scripts/Makefile.in
@@ -25,7 +25,7 @@ distclean: clean
 devclean: distclean
 
 install-init: 
-	$(INSTALL) -m 755 $(INIT_OPTS) -d $(DESTDIR)$(INIT_DIR)
+	[ -d "$(DESTDIR)$(INIT_DIR)" ] || $(INSTALL) -m 755 $(INIT_OPTS) -d $(DESTDIR)$(INIT_DIR)
 	$(INSTALL) -m 755 $(INIT_OPTS) rc.npcd $(DESTDIR)$(INIT_DIR)/npcd
 
 install-processperfdata: 
@@ -41,9 +41,9 @@ install-rrdconvert:
 	$(INSTALL) -m 755 $(INSTALL_OPTS) rrd_convert.pl $(DESTDIR)$(LIBEXECDIR)
 
 install: 
-	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(PERFDATADIR)
-	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBEXECDIR)
-	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LOGDIR)/stats
+	[ -d "$(DESTDIR)$(PERFDATADIR)" ] || $(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(PERFDATADIR)
+	[ -d "$(DESTDIR)$(LIBEXECDIR)" ] || $(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBEXECDIR)
+	[ -d "$(DESTDIR)$(LOGDIR)"/stats ] || $(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LOGDIR)/stats
 	$(MAKE) install-processperfdata
 	$(MAKE) install-plugins
 	$(MAKE) install-verifyconfig
diff --git a/share/Makefile.in b/share/Makefile.in
index 4b163bc..709ade7 100644
--- a/share/Makefile.in
+++ b/share/Makefile.in
@@ -22,7 +22,7 @@ distclean: clean
 devclean: distclean
 
 install:
-	$(INSTALL) -m 777 $(INSTALL_OPTS) -d $(DESTDIR)$(LOGDIR)/kohana
+	[ -d "$(DESTDIR)$(LOGDIR)"/kohana ] || $(INSTALL) -m 777 $(INSTALL_OPTS) -d $(DESTDIR)$(LOGDIR)/kohana
 	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)
 	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/documents
 	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/documents/_media
diff --git a/src/Makefile.in b/src/Makefile.in
index b4323b4..9439f25 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -124,11 +124,11 @@ install-unstripped:
 	$(MAKE) install-basic
 
 install-basic:
-	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(BINDIR)
-	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)
-	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LOGDIR)
-	$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(PERFDATA_DIR)
-	$(INSTALL) -m 775 $(INSTALL_OPTS) -d $(DESTDIR)$(PERFDATA_SPOOL_DIR)
+	[ -d "$(DESTDIR)$(BINDIR)" ] || $(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(BINDIR)
+	[ -d "$(DESTDIR)$(LIBDIR)" ] || $(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)
+	[ -d "$(DESTDIR)$(LOGDIR)" ] || $(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LOGDIR)
+	[ -d "$(DESTDIR)$(PERFDATA_DIR)" ] || $(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(PERFDATA_DIR)
+	[ -d "$(DESTDIR)$(PERFDATA_SPOOL_DIR)" ] || $(INSTALL) -m 775 $(INSTALL_OPTS) -d $(DESTDIR)$(PERFDATA_SPOOL_DIR)
 	$(INSTALL) -m 754 $(INSTALL_OPTS) @npcd_name@ $(DESTDIR)$(BINDIR)
 	$(INSTALL) -m 754 $(INSTALL_OPTS) npcdmod.o $(DESTDIR)$(LIBDIR)
 
-- 
1.7.3.2

