[openssh-commits] [openssh] 03/03: Replace mkinstalldirs with mkdir -p.

git+noreply at mindrot.org git+noreply at mindrot.org
Fri Dec 1 17:15:07 AEDT 2017


This is an automated email from the git hooks/post-receive script.

dtucker pushed a commit to branch master
in repository openssh.

commit 6c8a246437f612ada8541076be2414846d767319
Author: Darren Tucker <dtucker at zip.com.au>
Date:   Fri Dec 1 17:11:47 2017 +1100

    Replace mkinstalldirs with mkdir -p.
    
    Check for MIKDIR_P and use it instead of mkinstalldirs.  Should fix "mkdir:
    cannot create directory:... File exists" during "make install".
    Patch from eb at emlix.com.
---
 Makefile.in             | 52 ++++++++++++++++++-------------------------------
 configure.ac            |  1 +
 contrib/cygwin/Makefile | 11 ++++++-----
 3 files changed, 26 insertions(+), 38 deletions(-)

diff --git a/Makefile.in b/Makefile.in
index 2f6f9818..6ce95c61 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -61,6 +61,7 @@ XAUTH_PATH=@XAUTH_PATH@
 LDFLAGS=-L. -Lopenbsd-compat/ @LDFLAGS@
 EXEEXT=@EXEEXT@
 MANFMT=@MANFMT@
+MKDIR_P=@MKDIR_P@
 
 TARGETS=ssh$(EXEEXT) sshd$(EXEEXT) ssh-add$(EXEEXT) ssh-keygen$(EXEEXT) ssh-keyscan${EXEEXT} ssh-keysign${EXEEXT} ssh-pkcs11-helper$(EXEEXT) ssh-agent$(EXEEXT) scp$(EXEEXT) sftp-server$(EXEEXT) sftp$(EXEEXT)
 
@@ -310,14 +311,13 @@ check-config:
 	-$(DESTDIR)$(sbindir)/sshd -t -f $(DESTDIR)$(sysconfdir)/sshd_config
 
 install-files:
-	$(srcdir)/mkinstalldirs $(DESTDIR)$(bindir)
-	$(srcdir)/mkinstalldirs $(DESTDIR)$(sbindir)
-	$(srcdir)/mkinstalldirs $(DESTDIR)$(mandir)
-	$(srcdir)/mkinstalldirs $(DESTDIR)$(mandir)/$(mansubdir)1
-	$(srcdir)/mkinstalldirs $(DESTDIR)$(mandir)/$(mansubdir)5
-	$(srcdir)/mkinstalldirs $(DESTDIR)$(mandir)/$(mansubdir)8
-	$(srcdir)/mkinstalldirs $(DESTDIR)$(libexecdir)
-	(umask 022 ; $(srcdir)/mkinstalldirs $(DESTDIR)$(PRIVSEP_PATH))
+	$(MKDIR_P) $(DESTDIR)$(bindir)
+	$(MKDIR_P) $(DESTDIR)$(sbindir)
+	$(MKDIR_P) $(DESTDIR)$(mandir)/$(mansubdir)1
+	$(MKDIR_P) $(DESTDIR)$(mandir)/$(mansubdir)5
+	$(MKDIR_P) $(DESTDIR)$(mandir)/$(mansubdir)8
+	$(MKDIR_P) $(DESTDIR)$(libexecdir)
+	$(MKDIR_P) -m 0755 $(DESTDIR)$(PRIVSEP_PATH)
 	$(INSTALL) -m 0755 $(STRIP_OPT) ssh$(EXEEXT) $(DESTDIR)$(bindir)/ssh$(EXEEXT)
 	$(INSTALL) -m 0755 $(STRIP_OPT) scp$(EXEEXT) $(DESTDIR)$(bindir)/scp$(EXEEXT)
 	$(INSTALL) -m 0755 $(STRIP_OPT) ssh-add$(EXEEXT) $(DESTDIR)$(bindir)/ssh-add$(EXEEXT)
@@ -345,9 +345,7 @@ install-files:
 	$(INSTALL) -m 644 ssh-pkcs11-helper.8.out $(DESTDIR)$(mandir)/$(mansubdir)8/ssh-pkcs11-helper.8
 
 install-sysconf:
-	if [ ! -d $(DESTDIR)$(sysconfdir) ]; then \
-		$(srcdir)/mkinstalldirs $(DESTDIR)$(sysconfdir); \
-	fi
+	$(MKDIR_P) $(DESTDIR)$(sysconfdir)
 	@if [ ! -f $(DESTDIR)$(sysconfdir)/ssh_config ]; then \
 		$(INSTALL) -m 644 ssh_config.out $(DESTDIR)$(sysconfdir)/ssh_config; \
 	else \
@@ -418,28 +416,16 @@ uninstall:
 	-rm -f $(DESTDIR)$(mandir)/$(mansubdir)8/ssh-pkcs11-helper.8
 
 regress-prep:
-	[ -d `pwd`/regress ] || mkdir -p `pwd`/regress
-	[ -d `pwd`/regress/unittests ] || mkdir -p `pwd`/regress/unittests
-	[ -d `pwd`/regress/unittests/test_helper ] || \
-		mkdir -p `pwd`/regress/unittests/test_helper
-	[ -d `pwd`/regress/unittests/sshbuf ] || \
-		mkdir -p `pwd`/regress/unittests/sshbuf
-	[ -d `pwd`/regress/unittests/sshkey ] || \
-		mkdir -p `pwd`/regress/unittests/sshkey
-	[ -d `pwd`/regress/unittests/bitmap ] || \
-		mkdir -p `pwd`/regress/unittests/bitmap
-	[ -d `pwd`/regress/unittests/conversion ] || \
-		mkdir -p `pwd`/regress/unittests/conversion
-	[ -d `pwd`/regress/unittests/hostkeys ] || \
-		mkdir -p `pwd`/regress/unittests/hostkeys
-	[ -d `pwd`/regress/unittests/kex ] || \
-		mkdir -p `pwd`/regress/unittests/kex
-	[ -d `pwd`/regress/unittests/match ] || \
-		mkdir -p `pwd`/regress/unittests/match
-	[ -d `pwd`/regress/unittests/utf8 ] || \
-		mkdir -p `pwd`/regress/unittests/utf8
-	[ -d `pwd`/regress/misc/kexfuzz ] || \
-		mkdir -p `pwd`/regress/misc/kexfuzz
+	$(MKDIR_P) `pwd`/regress/unittests/test_helper
+	$(MKDIR_P) `pwd`/regress/unittests/sshbuf
+	$(MKDIR_P) `pwd`/regress/unittests/sshkey
+	$(MKDIR_P) `pwd`/regress/unittests/bitmap
+	$(MKDIR_P) `pwd`/regress/unittests/conversion
+	$(MKDIR_P) `pwd`/regress/unittests/hostkeys
+	$(MKDIR_P) `pwd`/regress/unittests/kex
+	$(MKDIR_P) `pwd`/regress/unittests/match
+	$(MKDIR_P) `pwd`/regress/unittests/utf8
+	$(MKDIR_P) `pwd`/regress/misc/kexfuzz
 	[ -f `pwd`/regress/Makefile ] || \
 	    ln -s `cd $(srcdir) && pwd`/regress/Makefile `pwd`/regress/Makefile
 
diff --git a/configure.ac b/configure.ac
index 78ba25c9..1c7af609 100644
--- a/configure.ac
+++ b/configure.ac
@@ -30,6 +30,7 @@ AC_PROG_CPP
 AC_PROG_RANLIB
 AC_PROG_INSTALL
 AC_PROG_EGREP
+AC_PROG_MKDIR_P
 AC_CHECK_TOOLS([AR], [ar])
 AC_PATH_PROG([CAT], [cat])
 AC_PATH_PROG([KILL], [kill])
diff --git a/contrib/cygwin/Makefile b/contrib/cygwin/Makefile
index a0261f48..4b78cd95 100644
--- a/contrib/cygwin/Makefile
+++ b/contrib/cygwin/Makefile
@@ -13,6 +13,7 @@ defaultsdir=$(sysconfdir)/defaults/etc
 inetdefdir=$(defaultsdir)/inetd.d
 PRIVSEP_PATH=/var/empty
 INSTALL=/usr/bin/install -c
+MKDIR_P=$(srcdir)/mkinstalldirs
 
 DESTDIR=
 
@@ -23,7 +24,7 @@ all:
 	@echo
 
 move-config-files: $(DESTDIR)$(sysconfdir)/ssh_config $(DESTDIR)$(sysconfdir)/sshd_config
-	$(srcdir)/mkinstalldirs $(DESTDIR)$(defaultsdir)
+	$(MKDIR_P) $(DESTDIR)$(defaultsdir)
 	mv $(DESTDIR)$(sysconfdir)/ssh_config $(DESTDIR)$(defaultsdir)
 	mv $(DESTDIR)$(sysconfdir)/sshd_config $(DESTDIR)$(defaultsdir)
 
@@ -31,11 +32,11 @@ remove-empty-dir:
 	rm -rf $(DESTDIR)$(PRIVSEP_PATH)
 
 install-inetd-config:
-	$(srcdir)/mkinstalldirs $(DESTDIR)$(inetdefdir)
+	$(MKDIR_P) $(DESTDIR)$(inetdefdir)
 	$(INSTALL) -m 644 sshd-inetd  $(DESTDIR)$(inetdefdir)/sshd-inetd
 
 install-sshdoc:
-	$(srcdir)/mkinstalldirs $(DESTDIR)$(sshdocdir)
+	$(MKDIR_P) $(DESTDIR)$(sshdocdir)
 	-$(INSTALL) -m 644 $(srcdir)/CREDITS $(DESTDIR)$(sshdocdir)/CREDITS
 	-$(INSTALL) -m 644 $(srcdir)/ChangeLog $(DESTDIR)$(sshdocdir)/ChangeLog
 	-$(INSTALL) -m 644 $(srcdir)/LICENCE $(DESTDIR)$(sshdocdir)/LICENCE
@@ -52,13 +53,13 @@ install-sshdoc:
 	-$(INSTALL) -m 644 $(srcdir)/TODO $(DESTDIR)$(sshdocdir)/TODO
 
 install-cygwindoc: README
-	$(srcdir)/mkinstalldirs $(DESTDIR)$(cygdocdir)
+	$(MKDIR_P) $(DESTDIR)$(cygdocdir)
 	$(INSTALL) -m 644 README $(DESTDIR)$(cygdocdir)/openssh.README
 
 install-doc: install-sshdoc install-cygwindoc
 
 install-scripts: ssh-host-config ssh-user-config
-	$(srcdir)/mkinstalldirs $(DESTDIR)$(bindir)
+	$(MKDIR_P) $(DESTDIR)$(bindir)
 	$(INSTALL) -m 755 ssh-host-config $(DESTDIR)$(bindir)/ssh-host-config
 	$(INSTALL) -m 755 ssh-user-config $(DESTDIR)$(bindir)/ssh-user-config
 

-- 
To stop receiving notification emails like this one, please contact
djm at mindrot.org.


More information about the openssh-commits mailing list