summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErich Eckner <git@eckner.net>2016-05-04 15:54:34 +0200
committerErich Eckner <git@eckner.net>2016-05-04 15:54:34 +0200
commit8211d7fed87c1c1237da73ddbb0da50f305f6926 (patch)
treeff777385dcaca6745892b7cb8daa3e9f7314d73f
parent04f2d805a4e2f99d9fc8b23ce82ac637c024b45a (diff)
downloadMake-1.0.2.tar.xz
neue Version: 1.0.2v1.0.2
-rw-r--r--.gitignore1
-rw-r--r--Make.8.in70
-rw-r--r--Makefile10
3 files changed, 69 insertions, 12 deletions
diff --git a/.gitignore b/.gitignore
index dba79a4..3ad7b46 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,6 +8,7 @@
*.out
Machdatei
Make
+Make.8
lib
epost
*~
diff --git a/Make.8.in b/Make.8.in
index c852460..90345bb 100644
--- a/Make.8.in
+++ b/Make.8.in
@@ -4,12 +4,11 @@ Make \- somewhat more powerfull alternative to make
.SH SYNOPSIS
\fBMake [options]\fP
.SH DESCRIPTION
-\fBMake\fP checks currentness of compiled files and compiles outdated ones as specified by
-regex-aware rules.
+\fBMake\fP checks currentness of compiled files and generates commands for compilation of outdated files as specified by regex-aware rules.
.SH OPTIONS
.TP
-.B "\-A, \-\-Ausgabe $Ausgabedatei"
-store commands in $Ausgabedatei
+.B "\-A, \-\-Ausgabe Ausgabedatei"
+store commands in \fIAusgabedatei\fP
.TP
.B "\-H, \-\-Hilfe"
display help screen
@@ -17,17 +16,70 @@ display help screen
.B "\-W, \-\-Watte"
just print what would be done
.TP
-.B "\-D, \-\-Datei $Machdatei"
-read rules from $Machdatei
+.B "\-D, \-\-Datei Machdatei"
+read rules from \fIMachdatei\fP
.TP
-.B "\-P, \-\-Prüfsummen $Prüfsummendatei"
-read/store checksums in $Prüfsummendatei
+.B "\-P, \-\-Prüfsummen Prüfsummendatei"
+read/store checksums in \fIPrüfsummendatei\fP
.TP
.B "\-a, \-\-alleSummenErneuern"
refresh all checksums
.TP
.B "\-u, \-\-unsicher"
-accept running jobs outside of directory of $Ausgabedatei or $Prüfsummendatei
+accept running jobs outside of directory of \fIAusgabedatei\fP or \fIPrüfsummendatei\fP
+.SH SYNTAX
+Empty lines and lines beginning with \fB#\fP are ignored.
+.PP
+The file starts with definition of files:
+.TP
+.B "/path/to/files"
+add these files to currentness control
+.TP
+.B "-r /path/to/files"
+recursively add these files and directories to currentness control
+.PP
+The rest of the file consists of compilation rules, each consisting of two consecutive lines:
+.TP
+The \fBfirst\fP line is a regex-aware rule for identifying dependencies and must not end on \fB;\fP.
+.TP
+.B "1>1 target:sourceRegEx"
+Each file matching \fIsourceRegEx\fP generates one \fItarget\fP.
+.TP
+.B "n>n target:sourceRegEx"
+All files matching \fIsourceRegEx\fP contribute simultanously in generating \fItarget\fP (possibly multiple files).
+.TP
+The \fBsecond\fP line contains commands to refresh the targets and must end on \fB;\fP.
+.SH SUBSTITUTIONS
+Some substitutions and macros are recognized:
+.TP
+.B "%nurmit'filePart'"
+only apply rule / consider source file if name of source file contains \fIfilePart\fP
+.TP
+.B "%nurohne'filePart'"
+opposite of \fB%nurmit'filePart'\fP
+.TP
+.B "%in"
+file name and path of source file
+.TP
+.B "%ifile"
+file name of source file
+.TP
+.B "%basename"
+file name of source file without extension(s)
+.TP
+.B "%basedir(number)"
+path to source file stripped by last \fInumber\fP directory components
+.TP
+.B "%basedir"
+path so source file.
+Identical to \fB%basedir(0)\fP.
+.TP
+.B "%BASEDIR"
+path to \fIMachdatei\fP
+.TP
+.B "%num'string'"
+last decimal number in \fIstring\fP.
+E.g. \fB%num'abc123def456ghi'\fP becomes \fB456\fP.
.SH AUTHOR
.nf
Erich Eckner <opensource at eckner dot net>
diff --git a/Makefile b/Makefile
index b191844..1c62b65 100644
--- a/Makefile
+++ b/Makefile
@@ -23,7 +23,7 @@ DESTDIR =
BINDIR = /usr/bin
MANDIR = /usr/share/man
-VERSION = 1.0.1
+VERSION = 1.0.2
all: Make Make.8
@@ -40,9 +40,13 @@ install: all
install -D -m0644 Make.8 $(DESTDIR)$(MANDIR)/man8/Make.8
dist: clean
- (cd .. && tar czvf Make-$(VERSION).tar.gz Make-$(VERSION))
+ git status --porcelain 2> /dev/null | grep -q "\S" && (git add .; git commit -m"neue Version: $(VERSION)") || true
+ ! git tag -d v$(VERSION) 2> /dev/null
+ git tag v$(VERSION)
+ git push
+ git push --tags
clean:
- rm -f Make Make.8
+ rm -f Make Make.8 *.ppu *.o
# End of file