CC ?= $(CROSS_COMPILE)gcc
CPP ?= $(CC) -E
INSTALL ?= install
-INSTALL_DATA ?= $(INSTALL) -m 644
-INSTALL_PROGRAM ?= $(INSTALL)
+INSTALL_DATA ?= $(INSTALL) -m 644 -p
+INSTALL_DIR ?= $(INSTALL) -d -p
+INSTALL_PROGRAM ?= $(INSTALL) -p
LD ?= $(CROSS_COMPILE)ld
OBJCOPY ?= $(CROSS_COMPILE)objcopy
PYTHON ?= python
-export CC CPP INSTALL INSTALL_DATA INSTALL_PROGRAM LD OBJCOPY PYTHON
+export CC CPP INSTALL INSTALL_DATA INSTALL_DIR INSTALL_PROGRAM LD OBJCOPY PYTHON
.PHONY: all
all:
.PHONY: install
install:
- @mkdir -p $(DESTDIR)
- $(INSTALL_PROGRAM) -p xtf-runner $(DESTDIR)
+ @$(INSTALL_DIR) $(DESTDIR)
+ $(INSTALL_PROGRAM) xtf-runner $(DESTDIR)
@set -e; for D in $(wildcard tests/*); do \
[ ! -e $$D/Makefile ] && continue; \
$(MAKE) -C $$D install; \
.PHONY: install install-each-env
install: install-each-env test-info.json
- @mkdir -p $(DESTDIR)/tests/$(NAME)
- $(INSTALL_DATA) -p test-info.json $(DESTDIR)/tests/$(NAME)
+ @$(INSTALL_DIR) $(DESTDIR)/tests/$(NAME)
+ $(INSTALL_DATA) test-info.json $(DESTDIR)/tests/$(NAME)
define PERENV_build
.PHONY: install-$(1) install-$(1).cfg
install-$(1): test-$(1)-$(NAME)
- @mkdir -p $(DESTDIR)/tests/$(NAME)
- $(INSTALL_PROGRAM) -p $$< $(DESTDIR)/tests/$(NAME)
+ @$(INSTALL_DIR) $(DESTDIR)/tests/$(NAME)
+ $(INSTALL_PROGRAM) $$< $(DESTDIR)/tests/$(NAME)
install-$(1).cfg: test-$(1)-$(NAME).cfg
- @mkdir -p $(DESTDIR)/tests/$(NAME)
- $(INSTALL_DATA) -p $$< $(DESTDIR)/tests/$(NAME)
+ @$(INSTALL_DIR) $(DESTDIR)/tests/$(NAME)
+ $(INSTALL_DATA) $$< $(DESTDIR)/tests/$(NAME)
install-each-env: install-$(1) install-$(1).cfg