site-ffrgb-dev/Makefile

77 lines
1.8 KiB
Makefile
Raw Normal View History

2015-03-03 11:27:16 +01:00
GLUON_BUILD_DIR := gluon-build
2015-05-19 14:17:58 +02:00
GLUON_GIT_URL := https://github.com/freifunk-gluon/gluon.git
2015-11-22 19:47:29 +01:00
GLUON_GIT_REF := master
2015-03-03 11:27:16 +01:00
SECRET_KEY_FILE ?= ${HOME}/.gluon-secret-key
2015-05-19 14:17:58 +02:00
GLUON_TARGETS ?= \
ar71xx-generic \
ar71xx-nand \
mpc85xx-generic \
x86-generic \
x86-kvm_guest
2015-05-19 14:17:58 +02:00
2015-04-17 14:44:06 +02:00
GLUON_RELEASE := $(shell git describe --tags 2>/dev/null)
ifneq (,$(shell git describe --exact-match --tags 2>/dev/null))
2015-03-03 11:27:16 +01:00
GLUON_BRANCH := stable
else
GLUON_BRANCH := experimental
endif
JOBS ?= $(shell cat /proc/cpuinfo | grep processor | wc -l)
2015-11-22 18:13:58 +01:00
#JOBS = 1
GLUON_MAKE := ${MAKE} V=s -j ${JOBS} -C ${GLUON_BUILD_DIR} \
2015-05-19 14:17:58 +02:00
GLUON_RELEASE=${GLUON_RELEASE} \
2015-05-27 12:24:50 +02:00
GLUON_BRANCH=${GLUON_BRANCH} \
2015-03-03 11:27:16 +01:00
2015-04-17 14:47:46 +02:00
all: info
2015-03-03 11:27:16 +01:00
${MAKE} manifest
2015-05-19 14:17:58 +02:00
2015-04-17 14:47:46 +02:00
info:
@echo
@echo '#########################'
@echo '# FFRGB Firmare build'
@echo '# Building release ${GLUON_RELEASE} for branch ${GLUON_BRANCH}'
2015-05-27 12:19:26 +02:00
@echo '# make params: ${GLUON_MAKE}'
2015-05-19 14:17:58 +02:00
@echo
2015-03-03 11:27:16 +01:00
build: gluon-prepare
2015-05-19 14:17:58 +02:00
for target in ${GLUON_TARGETS}; do \
echo ""Building target $$target""; \
${GLUON_MAKE} GLUON_TARGET="$$target"; \
done
2015-03-03 11:27:16 +01:00
2015-12-18 16:52:02 +01:00
buildonly: for target in ${GLUON_TARGETS}; do \
echo ""Building target $$target""; \
${GLUON_MAKE} GLUON_TARGET="$$target"; \
done
2015-03-03 11:27:16 +01:00
manifest: build
${GLUON_MAKE} manifest
mv ${GLUON_BUILD_DIR}/output .
2015-03-03 11:27:16 +01:00
sign: manifest
${GLUON_BUILD_DIR}/contrib/sign.sh ${SECRET_KEY_FILE} images/sysupgrade/${GLUON_BRANCH}.manifest
${GLUON_BUILD_DIR}:
git clone ${GLUON_GIT_URL} ${GLUON_BUILD_DIR}
gluon-prepare: images-clean ${GLUON_BUILD_DIR}
(cd ${GLUON_BUILD_DIR} \
&& git remote set-url origin ${GLUON_GIT_URL} \
&& git fetch origin \
&& git checkout -q ${GLUON_GIT_REF})
2015-03-03 11:27:16 +01:00
ln -sfT .. ${GLUON_BUILD_DIR}/site
${GLUON_MAKE} update
gluon-clean:
rm -rf ${GLUON_BUILD_DIR}
images-clean:
rm -rf images
clean: gluon-clean images-clean