diff options
author | Ben Longbons <b.r.longbons@gmail.com> | 2013-10-09 17:57:43 -0700 |
---|---|---|
committer | Ben Longbons <b.r.longbons@gmail.com> | 2013-10-10 14:37:49 -0700 |
commit | 524df2190b855c4096449a1aaa7b92a15875f7a7 (patch) | |
tree | e86f0892239e8ee915a47e15991cb1345b4614c1 | |
parent | a44741c83773989430f5e3ac4a8a83c93b1341ff (diff) | |
download | tmwa-524df2190b855c4096449a1aaa7b92a15875f7a7.tar.gz tmwa-524df2190b855c4096449a1aaa7b92a15875f7a7.tar.bz2 tmwa-524df2190b855c4096449a1aaa7b92a15875f7a7.tar.xz tmwa-524df2190b855c4096449a1aaa7b92a15875f7a7.zip |
Add make target for tarballs
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | real.make | 22 | ||||
-rw-r--r-- | version.make | 5 |
3 files changed, 25 insertions, 3 deletions
@@ -2,6 +2,7 @@ /conf-raw/ /obj/ /bin/ +/dist/ # Generated source files /src/map/magic-interpreter-parser.hpp /src/map/magic-interpreter-parser.cpp @@ -335,3 +335,25 @@ conf-raw/str-%.h: FORCE } > $@ FORCE: ; override CPPFLAGS += -I . + +# distribution tarballs +# this only works from within a git checkout +dist/%/version.make: + $(MKDIR_FIRST) + git show HEAD:version.make > $@ + sed 's/^VERSION_FULL := .*/#&\nVERSION_FULL := ${VERSION_FULL}/' -i $@ + sed 's/^VERSION_HASH := .*/#&\nVERSION_HASH := ${VERSION_HASH}/' -i $@ +dist/%-src.tar: dist/%/version.make + git archive --prefix=$*/ -o $@ HEAD + ( cd dist && tar uf $*-src.tar --mtime="$$(git log -n1 --pretty=%cd)" --mode=664 --owner=root --group=root $*/version.make ) + rm dist/$*/version.make + rmdir dist/$*/ +dist/%-attoconf-only.tar: + $(MKDIR_FIRST) + git --git-dir=deps/attoconf/.git archive --prefix=$*/deps/attoconf/ HEAD -o $@ +dist/%-bundled.tar: dist/%-src.tar dist/%-attoconf-only.tar + cp dist/$*-src.tar $@ + tar Af $@ dist/$*-attoconf-only.tar + +dist: dist/tmwa-${VERSION_FULL}-src.tar dist/tmwa-${VERSION_FULL}-bundled.tar +.PHONY: dist diff --git a/version.make b/version.make index 04ba9c3..8df7143 100644 --- a/version.make +++ b/version.make @@ -1,5 +1,3 @@ -# TODO replace this file in tarballs -# for now, only git builds will work. VERSION_FULL := $(shell cd ${SRC_DIR}; git describe --tags HEAD) VERSION_HASH := $(shell cd ${SRC_DIR}; git rev-parse HEAD) @@ -11,7 +9,8 @@ VERSION_DEVEL := $(word 4,${version_bits}) ifeq "${VERSION_DEVEL}" "" VERSION_DEVEL := 0 endif -VERSION_FULL += $(shell cd ${SRC_DIR}; git diff --quiet HEAD || echo dirty) +# tracking dirty trees is more trouble than it's worth +#VERSION_FULL += $(shell cd ${SRC_DIR}; git diff --quiet HEAD || echo dirty) VENDOR := Vanilla VENDOR_VERSION := 0 |