Merge pull request #5018 from kaspar030/ci_test_mkdir_order

make: buildtest: fix parallel builds
This commit is contained in:
Oleg Hahm 2016-03-10 23:27:07 +01:00
commit 5433c42187
3 changed files with 16 additions and 16 deletions

View File

@ -38,18 +38,18 @@ buildtest:
@ \
BUILDTESTOK=true; \
APP_RETRY=0; \
rm -rf "$$BINDIRBASE"; \
for BOARD in $$($(MAKE) -s info-boards-supported); do \
RIOTNOLINK=$$(echo $(BOARD_INSUFFICIENT_MEMORY) | grep $${BOARD} 2>&1 >/dev/null && echo 1); \
${COLOR_ECHO} -n "Building for $${BOARD} "; \
[ -n "$${RIOTNOLINK}" ] && ${COLOR_ECHO} -n "(no linking) "; \
for NTH_TRY in 1 2 3; do \
${COLOR_ECHO} -n ".. "; \
if [ "$$NTH_TRY" != "3" ]; then export _CCACHE=$$CCACHE; else export _CCACHE=""; fi ; \
LOG=$$(env -i \
HOME=$${HOME} \
PATH=$${PATH} \
BOARD=$${BOARD} \
CCACHE=$${CCACHE} \
CCACHE=$${_CCACHE} \
$${CCACHE_DIR:+CCACHE_DIR=$${CCACHE_DIR}} \
CCACHE_BASEDIR=$${CCACHE_BASEDIR} \
RIOTBASE=$${RIOTBASE} \
@ -62,7 +62,7 @@ buildtest:
WERROR=$${WERROR} \
LTO=$${LTO} \
TOOLCHAIN=$${TOOLCHAIN} \
$(MAKE) -j$(NPROC) -B 2>&1) ; \
$(MAKE) -j$(NPROC) clean all 2>&1) ; \
if [ "$${?}" = "0" ]; then \
${COLOR_ECHO} "${COLOR_GREEN}success${COLOR_RESET}"; \
if [ -n "$${BUILDTEST_VERBOSE}" ]; then \

View File

@ -1,6 +1,8 @@
PKG_NAME=micro-ecc
PKG_URL=https://github.com/kmackay/micro-ecc.git
PKG_VERSION=f3d46f0fb77b42535168a17b4b51802beb124a32
PKG_DIR=$(CURDIR)
PKG_BUILDDIR=$(BINDIR)/pkg/$(PKG_NAME)
ifneq ($(RIOTBOARD),)
include $(RIOTBOARD)/$(BOARD)/Makefile.include
@ -16,28 +18,26 @@ MODULE:=$(shell basename $(CURDIR))
.PHONY: all clean patch reset
all: patch
make -C $(CURDIR)/$(PKG_NAME)
make -C $(PKG_BUILDDIR)
make $(BINDIR)$(MODULE).a
patch: $(CURDIR)/$(PKG_NAME)/Makefile
patch: $(PKG_BUILDDIR)/Makefile
$(CURDIR)/$(PKG_NAME)/Makefile: $(CURDIR)/$(PKG_NAME)
$(foreach patch,$(shell ls [0-9][0-9][0-9][0-9]*.patch),cd "$<" && git am "../$(patch)" || { git am --abort; exit 1; };)
touch $(CURDIR)/$(PKG_NAME)/Makefile
$(PKG_BUILDDIR)/Makefile: $(PKG_BUILDDIR)
cd $(PKG_BUILDDIR) && \
for patch in $(PKG_DIR)/[0-9][0-9][0-9][0-9]*.patch; do git am "$${patch}" || { git am --abort; exit 1; }; done
touch $(PKG_BUILDDIR)/Makefile
$(CURDIR)/$(PKG_NAME):
test -d $(PKG_NAME) || \
$(PKG_BUILDDIR):
mkdir -p $(BINDIR)/pkg && \
git clone $(PKG_URL) $@ && \
cd $@ && git reset --hard $(PKG_VERSION)
clean::
# Reset package to checkout state.
cd $(CURDIR)/$(PKG_NAME) || true && \
git clean -x -f && \
git reset --hard $(PKG_VERSION)
rm -Rf $(PKG_BUILDDIR)
distclean::
rm -rf $(CURDIR)/$(PKG_NAME)
rm -rf $(PKG_BUILDDIR)
#$(BINDIR)$(MODULE).a: $(BINDIR)micro-ecc_*.a
# mkdir -p $(BINDIR)$(MODULE); cd $(BINDIR)$(MODULE); for var in $?; do ar -x $$var; done; ar -r -c -s $(BINDIR)$(MODULE).a *.o

View File

@ -1 +1 @@
INCLUDES += -I$(RIOTPKG)/micro-ecc/micro-ecc
INCLUDES += -I$(BINDIR)/pkg/micro-ecc