Mercurial > ~dholland > hg > ag > index.cgi
view mk/mkinstalldirs.sh @ 8:ec2b657edf13
Add explicit lint-comment-style fallthrough annotations.
GCC now assumes that if you don't have these you're making a mistake,
which is annoying.
XXX: This changeset updates the AG output files only (by hand) and is
XXX: abusive - rebuilding them will erase the change. However, I need
XXX: to get things to build before I can try to get AG to issue the
XXX: annotations itself, so this seems like a reasonable expedient.
author | David A. Holland |
---|---|
date | Mon, 30 May 2022 23:51:43 -0400 |
parents | 13d2b8934445 |
children |
line wrap: on
line source
#!/bin/sh # mkinstalldirs - create install directories # usage: mkinstalldirs dirs # make this work right even if someone puts spaces in ( while [ "x$1" != x ]; do echo "$1" shift done ) | awk '{ if ($0 ~ "^/") { lead = "/"; sub("^/", "", $0); } else { lead = ""; } n = split($0, a, "/"); for (i=1;i<=n;i++) { printf "%s", lead; for (j=1;j<=i;j++) { printf "%s", a[j]; if (j<i) printf "/"; } printf "\n"; } }' | sort -u | awk '{ printf "if [ ! -d \"%s\" ]; then\n", $0; printf " echo \" [MKDIR] %s\"\n", $0; printf " mkdir \"%s\" || exit 1\n", $0; printf " chmod 755 \"%s\"\n", $0; printf "fi\n" }' | sh