summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore5
-rw-r--r--Makefile40
-rw-r--r--common.sh.in (renamed from common.sh)2
-rw-r--r--ediff.sh.in2
-rw-r--r--emacsmail.sh.in2
-rw-r--r--emacsterm.sh.in2
6 files changed, 33 insertions, 20 deletions
diff --git a/.gitignore b/.gitignore
index 58eb704..af0a490 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,4 +3,7 @@ emacsmail
emacsterm
*.sh
-!common.sh
+
+.srcfiles.mk
+.tmp.*
+.var.*
diff --git a/Makefile b/Makefile
index bbb19d1..96fcd9a 100644
--- a/Makefile
+++ b/Makefile
@@ -3,34 +3,44 @@ prefix=/usr/local
exec_prefix=$(prefix)
bindir=$(exec_prefix)/bin
-bash=/bin/bash
+bash=/usr/bin/env bash
-EDIT = { m4 -P | sed 's|@bash@|$(bash)|g'; }
+EDIT = { m4 -P | sed -e 's|@bash@|$(bash)|g' -e 's|@VERSION@|$(VERSION)|'; }
INSTALL_PROGRAM = install -Dm755
RM = rm -f
+PACKAGE = emacsutils
+VERSION = 0.9
+
+topoutdir=.
+topsrcdir=.
+include $(topoutdir)/build-aux/Makefile.head.mk
-targets = ediff emacsmail emacsterm
-all: PHONY $(targets)
-install: PHONY $(addprefix $(DESTDIR)$(bindir)/,$(targets))
-uninstall: PHONY
- $(RM) -- $(addprefix $(DESTDIR)$(bindir)/,$(targets))
-clean: PHONY
- $(RM) -- $(addsuffix .sh,$(targets))
-distclean: PHONY clean
- $(RM) -- $(targets)
+ifeq ($(wildcard .git/),)
+include .srcfiles.mk
+else
+.srcfiles.mk: FORCE
+ @git ls-files | sed 's|^|std.src_files += |' | $(WRITE_IFCHANGED) $@
+-include .srcfiles.mk
+endif
-
+std.out_files = ediff emacsmail emacsterm
+std.sys_files = $(addprefix $(bindir)/,$(std.out_files))
+std.clean_files += *.sh
-%.sh: %.sh.in common.sh
+%.sh: %.sh.in common.sh.in .var.bash .var.VERSION
$(EDIT) < $< > $@
$(DESTDIR)$(bindir)/%: %
$(INSTALL_PROGRAM) $< $@
-
+.var.%: FORCE
+ @printf '%s' '$($*)' | sed 's|^|#|' | $(WRITE_IFCHANGED) '$@'
+-include $(wildcard .var.*)
-.PHONY: PHONY
+.PHONY: PHONY FORCE
.DELETE_ON_ERROR:
+.SECONDARY:
+include $(topoutdir)/build-aux/Makefile.tail.mk
diff --git a/common.sh b/common.sh.in
index 61fa26f..614f462 100644
--- a/common.sh
+++ b/common.sh.in
@@ -54,7 +54,7 @@ bash_quote() {
version() {
print '%s (Emacs utils) %s, %s' \
- "${0##*/}" 0.9 "$(emacsclient --version)"
+ "${0##*/}" @VERSION@ "$(emacsclient --version)"
}
# Sets the global variables:
diff --git a/ediff.sh.in b/ediff.sh.in
index 63b8238..164e6da 100644
--- a/ediff.sh.in
+++ b/ediff.sh.in
@@ -17,7 +17,7 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-m4_include(common.sh)
+m4_include(common.sh.in)
usage() {
print 'Usage: %q [OPTIONS] FILE_A FILE_B' "$0"
diff --git a/emacsmail.sh.in b/emacsmail.sh.in
index 3ccaef3..f3b1fce 100644
--- a/emacsmail.sh.in
+++ b/emacsmail.sh.in
@@ -17,7 +17,7 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-m4_include(common.sh)
+m4_include(common.sh.in)
usage() {
print 'Usage: %q [OPTIONS] MAILTO_URL' "$0"
diff --git a/emacsterm.sh.in b/emacsterm.sh.in
index a8cef2a..3340bea 100644
--- a/emacsterm.sh.in
+++ b/emacsterm.sh.in
@@ -17,7 +17,7 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-m4_include(common.sh)
+m4_include(common.sh.in)
usage() {
print "Usage: %q [OPTIONS] [SHELL]" "$0"