From 7d88cb3c1392393c2910f2f96c93549bb5482f9f Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Tue, 30 May 2017 23:23:19 +0200 Subject: build: allow to build self-contained executable --- Makefile | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index dd896e2..b71238a 100644 --- a/Makefile +++ b/Makefile @@ -72,6 +72,20 @@ vis-menu: vis-menu.c vis-digraph: vis-digraph.c ${CC} ${CFLAGS} ${CFLAGS_AUTO} ${CFLAGS_STD} ${CFLAGS_EXTRA} $< ${LDFLAGS} ${LDFLAGS_STD} ${LDFLAGS_AUTO} -o $@ +vis-single-payload.inc: $(EXECUTABLES) lua/* + echo '#ifndef VIS_SINGLE_PAYLOAD_H' > vis-single-payload.inc + echo '#define VIS_SINGLE_PAYLOAD_H' >> vis-single-payload.inc + echo 'unsigned char vis_single_payload[] = {' >> vis-single-payload.inc + tar c $(EXECUTABLES) $$(find lua -name '*.lua') | xz | od -t x1 -A none -v | \ + sed 's/\([0-9a-f]\+\)/0x\1,/g;$$s/,$$/ };/' >> vis-single-payload.inc + echo '#endif' >> vis-single-payload.inc + +vis-single: vis-single.c vis-single-payload.inc + for e in $(ELF); do \ + ${STRIP} "$$e"; \ + done + ${CC} ${CFLAGS} ${CFLAGS_AUTO} ${CFLAGS_STD} ${CFLAGS_EXTRA} $< ${LDFLAGS} ${LDFLAGS_STD} ${LDFLAGS_AUTO} -larchive -lacl -lbz2 -llzma -o $@ + debug: clean @$(MAKE) CFLAGS_EXTRA='${CFLAGS_EXTRA} ${CFLAGS_DEBUG}' @@ -91,7 +105,7 @@ test: clean: @echo cleaning - @rm -f $(ELF) vis-single vis-*.tar.gz *.gcov *.gcda *.gcno + @rm -f $(ELF) vis-single vis-single-payload.inc vis-*.tar.gz *.gcov *.gcda *.gcno dist: clean @echo creating dist tarball -- cgit v1.2.3