occlum/test/Makefile
Tate, Hongliang Tian a712bfe70a Add pipe test
2019-02-16 16:24:08 +08:00

59 lines
1.7 KiB
Makefile

CUR_DIR := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
PROJECT_DIR := $(realpath $(CUR_DIR)/../)
TEST_SUITES := empty hello_world malloc file getpid spawn pipe
BUILD_TEST_SUITES := $(TEST_SUITES:%=%)
RUN_TEST_SUITES := $(TEST_SUITES:%=test-%)
CLEAN_TEST_SUITES := $(TEST_SUITES:%=clean-%)
CYAN := \033[1;36m
GREEN := \033[1;32m
RED := \033[1;31m
NO_COLOR := \033[0m
.PHONY: all build test clean $(BUILD_TEST_SUITES) $(RUN_TEST_SUITES) $(CLEAN_TEST_SUITES)
#############################################################################
# Build tests
#############################################################################
all: build
build: $(BUILD_TEST_SUITES)
$(BUILD_TEST_SUITES): %:
@echo "$(CYAN)BUILD TEST => $@$(NO_COLOR)"
@$(MAKE) --no-print-directory -C $@
@echo "$(GREEN)DONE$(NO_COLOR)"
#############################################################################
# Run tests
#############################################################################
test: build $(RUN_TEST_SUITES)
pal: $(PROJECT_DIR)/src/pal/pal
@cp $< pal
libocclum.signed.so: $(PROJECT_DIR)/src/libos/libocclum.signed.so
@cp $< libocclum.signed.so
$(RUN_TEST_SUITES): test-%: % pal libocclum.signed.so
@echo "$(CYAN)RUN TEST => $<$(NO_COLOR)"
@$(MAKE) --no-print-directory -C $< test ; \
if [ $$? -eq 0 ] ; then \
echo "$(GREEN)PASS$(NO_COLOR)" ; \
else \
echo "$(RED)FAILED$(NO_COLOR)" ; \
fi ;
#############################################################################
# Misc
#############################################################################
clean: $(CLEAN_TEST_SUITES)
@$(RM) -f pal libocclum.signed.so
$(CLEAN_TEST_SUITES): clean-%:
@$(MAKE) --no-print-directory -C $(patsubst clean-%,%,$@) clean