Merge pull request #5018 from kaspar030/ci_test_mkdir_order
make: buildtest: fix parallel builds
This commit is contained in:
commit
5433c42187
@ -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 \
|
||||
|
||||
@ -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
|
||||
|
||||
@ -1 +1 @@
|
||||
INCLUDES += -I$(RIOTPKG)/micro-ecc/micro-ecc
|
||||
INCLUDES += -I$(BINDIR)/pkg/micro-ecc
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user