summaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@open-infrastructure.net>2016-05-08 05:56:45 +0000
committerDaniel Baumann <daniel.baumann@open-infrastructure.net>2016-05-08 05:56:45 +0000
commitfae5bea66acb4d09ccec728010b56fa900b0951a (patch)
tree907137ec6da059b1f59da91b00846652e7616b62 /Makefile
parentInitial commit. (diff)
downloadsystem-build-fae5bea66acb4d09ccec728010b56fa900b0951a.tar.xz
system-build-fae5bea66acb4d09ccec728010b56fa900b0951a.zip
Adding live-build version 5.0~a11.
Signed-off-by: Daniel Baumann <daniel.baumann@open-infrastructure.net>
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile104
1 files changed, 104 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 000000000..4604af562
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,104 @@
+# Makefile
+
+SHELL := sh -e
+
+LANGUAGES = $(shell cd manpages/po && ls)
+
+SCRIPTS = frontend/* functions/* examples/auto/* examples/hooks/* scripts/*.sh scripts/*/* share/bin/* share/hooks/*/*
+
+all: build
+
+test:
+ @echo -n "Checking for syntax errors"
+
+ @for SCRIPT in $(SCRIPTS); \
+ do \
+ sh -n $${SCRIPT}; \
+ echo -n "."; \
+ done
+
+ @echo " done."
+
+ @echo -n "Checking for bashisms"
+
+ @if [ -x /usr/bin/checkbashisms ]; \
+ then \
+ for SCRIPT in $(SCRIPTS); \
+ do \
+ checkbashisms -f -x $${SCRIPT}; \
+ echo -n "."; \
+ done; \
+ else \
+ echo "WARNING: skipping bashism test - you need to install devscripts."; \
+ fi
+
+ @echo " done."
+
+build:
+ @echo "Nothing to build."
+
+install:
+ # Installing shared data
+ mkdir -p $(DESTDIR)/usr/share/live/build
+ cp -r data functions VERSION $(DESTDIR)/usr/share/live/build
+ cp -r share/* $(DESTDIR)/usr/share/live/build
+
+ # Installing executables
+ mkdir -p $(DESTDIR)/usr/bin
+ cp -a frontend/* $(DESTDIR)/usr/bin
+
+ mkdir -p $(DESTDIR)/usr/lib/live
+ cp -a scripts/* $(DESTDIR)/usr/lib/live
+
+ # Installing documentation
+ mkdir -p $(DESTDIR)/usr/share/doc/live-build
+ cp -r COPYING examples $(DESTDIR)/usr/share/doc/live-build
+
+ # Installing manpages
+ for MANPAGE in manpages/en/*; \
+ do \
+ SECTION="$$(basename $${MANPAGE} | awk -F. '{ print $$2 }')"; \
+ install -D -m 0644 $${MANPAGE} $(DESTDIR)/usr/share/man/man$${SECTION}/$$(basename $${MANPAGE}); \
+ done
+
+ for LANGUAGE in $(LANGUAGES); \
+ do \
+ for MANPAGE in manpages/$${LANGUAGE}/*; \
+ do \
+ SECTION="$$(basename $${MANPAGE} | awk -F. '{ print $$3 }')"; \
+ install -D -m 0644 $${MANPAGE} $(DESTDIR)/usr/share/man/$${LANGUAGE}/man$${SECTION}/$$(basename $${MANPAGE} .$${LANGUAGE}.$${SECTION}).$${SECTION}; \
+ done; \
+ done
+
+uninstall:
+ # Uninstalling shared data
+ rm -rf $(DESTDIR)/usr/share/live/build
+ rmdir --ignore-fail-on-non-empty $(DESTDIR)/usr/share/live > /dev/null 2>&1 || true
+
+ # Uninstalling executables
+ rm -f $(DESTDIR)/usr/bin/lb $(DESTDIR)/usr/bin/live-build
+
+ # Uninstalling documentation
+ rm -rf $(DESTDIR)/usr/share/doc/live-build
+
+ # Uninstalling manpages
+ for MANPAGE in manpages/en/*; \
+ do \
+ SECTION="$$(basename $${MANPAGE} | awk -F. '{ print $$2 }')"; \
+ rm -f $(DESTDIR)/usr/share/man/man$${SECTION}/$$(basename $${MANPAGE} .en.$${SECTION}).$${SECTION}; \
+ done
+
+ for LANGUAGE in $(LANGUAGES); \
+ do \
+ for MANPAGE in manpages/$${LANGUAGE}/*; \
+ do \
+ SECTION="$$(basename $${MANPAGE} | awk -F. '{ print $$3 }')"; \
+ rm -f $(DESTDIR)/usr/share/man/$${LANGUAGE}/man$${SECTION}/$$(basename $${MANPAGE} .$${LANGUAGE}.$${SECTION}).$${SECTION}; \
+ done; \
+ done
+
+clean:
+
+distclean:
+
+reinstall: uninstall install