diff --git a/.gitignore b/.gitignore index f229de1..964d949 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ build +.installed-requirements namibase/nami-linux-x64.tar.gz diff --git a/Makefile b/Makefile index e7858ed..62ebbee 100644 --- a/Makefile +++ b/Makefile @@ -1,23 +1,32 @@ -BIND_DIR := build +BUILD_DIR := build MKDIR_P = mkdir -p RM = rm -rf -default: build-all +.PHONY: build clean clobber -build-jessie: - $(MAKE) clean-up - ${MKDIR_P} ${CURDIR}/${BIND_DIR} - ./pre-build.sh - ./mkimage ${CURDIR}/${BIND_DIR}/jessie.tar jessie +all: build -build-all: - $(MAKE) clean-up - ./pre-build.sh - ./buildall +clean: + ${RM} ${CURDIR}/${BUILD_DIR} -test-jessie: - cat ${CURDIR}/${BIND_DIR}/jessie.tar | docker import - minideb:jessie - ./test minideb:jessie +clobber: clean + @${RM} .installed-requirements -clean-up: - ${RM} ${CURDIR}/${BIND_DIR} +.installed-requirements: + @echo "Installing required packages..." + @./pre-build.sh + @touch $@ + +build: .installed-requirements + @echo "Building all supported distros..." + @./buildall + +%: + @echo "Building $@..." + @$(MAKE) .installed-requirements + @${MKDIR_P} ${CURDIR}/${BUILD_DIR} + ./mkimage ${CURDIR}/${BUILD_DIR}/$@.tar $@ + +test-%: + @cat ${CURDIR}/${BUILD_DIR}/$*.tar | docker import - minideb:$* + @./test minideb:$* diff --git a/pre-build.sh b/pre-build.sh index 7e22cea..d61a4e7 100755 --- a/pre-build.sh +++ b/pre-build.sh @@ -4,5 +4,10 @@ set -e set -u set -o pipefail +if [[ ! -f /etc/debian_version ]]; then + echo "minideb can currently only be built on debian based distros, aborting..." + exit 1 +fi + apt-get update apt-get install -y debootstrap debian-archive-keyring jq dpkg-dev