]> git.sur5r.net Git - i3/i3/blobdiff - Makefile
use git version information if possible, otherwise use information
[i3/i3] / Makefile
index 1fed4df1ac59185a4540413db3c5b9e436f15344..57513b0e36c2418879c004cb220e623d381949de 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -22,6 +22,12 @@ include i3-dump-log/i3-dump-log.mk
 include docs/docs.mk
 include man/man.mk
 
+# Update $(TOPDIR)/LAST_VERSION if it differs from $I3_VERSION
+CACHED_VERSION := '$(shell [ -f $(TOPDIR)/LAST_VERSION ] && cat $(TOPDIR)/LAST_VERSION)'
+ifneq ($(CACHED_VERSION),$(I3_VERSION))
+$(shell echo -n ${I3_VERSION} > $(TOPDIR)/LAST_VERSION)
+endif
+
 real-all: $(ALL_TARGETS)
 
 install: $(INSTALL_TARGETS)
@@ -42,8 +48,8 @@ dist: distclean
        # Only copy source code from i3-input
        mkdir i3-${VERSION}/i3-input
        find i3-input -maxdepth 1 -type f \( -name "*.c" -or -name "*.mk" -or -name "*.h" -or -name "Makefile" \) -exec cp '{}' i3-${VERSION}/i3-input \;
-       echo -n ${I3_VERSION} > i3-${VERSION}/I3_VERSION
-       echo -n ${VERSION} > i3-${VERSION}/VERSION
+       cp I3_VERSION i3-${VERSION}/I3_VERSION
+       cp VERSION i3-${VERSION}/VERSION
        # Pre-generate a manpage to allow distributors to skip this step and save some dependencies
        $(MAKE) mans
        cp man/*.1 i3-${VERSION}/man/