Merge branch 'postk_topic-contiguous_pte' into development
* Merge cd7ab307fae9bc8aa49d23b32becf37368a1603e * Merge commit is changed to one commit for gerrit Change-Id: I75f0f4cf6b8b3286284638ac2c7816c5257551e4
This commit is contained in:
102
test/contiguous_pte/Makefile
Normal file
102
test/contiguous_pte/Makefile
Normal file
@@ -0,0 +1,102 @@
|
||||
# Makefile COPYRIGHT FUJITSU LIMITED 2018
|
||||
#
|
||||
# [own copile]
|
||||
# $ make
|
||||
#
|
||||
# [cross copile]
|
||||
# $ ARCH=${target_arch} CC=${cross_compiler} make
|
||||
#
|
||||
|
||||
# target name.
|
||||
TARGET := test_contiguous_pte
|
||||
ARCH ?= arm64
|
||||
|
||||
#---------------
|
||||
# path settings.
|
||||
#---------------
|
||||
# directory.
|
||||
BIN_DIR := bin
|
||||
SRC_ROOT_DIR := src
|
||||
DEP_ROOT_DIR := depend
|
||||
OBJ_ROOT_DIR := obj
|
||||
INC_DIRS := . $(SRC_ROOT_DIR) $(SRC_ROOT_DIR)/arch/$(ARCH)/include
|
||||
|
||||
TP_LOG_DIR := result
|
||||
|
||||
SRC_DIRS := $(shell find $(SRC_ROOT_DIR) -type d | grep -vw $(SRC_ROOT_DIR)/arch) $(shell find $(SRC_ROOT_DIR)/arch/$(ARCH) -type d)
|
||||
OBJ_DIRS := $(patsubst $(SRC_ROOT_DIR)%, $(OBJ_ROOT_DIR)%, $(SRC_DIRS))
|
||||
DEP_DIRS := $(patsubst $(SRC_ROOT_DIR)%, $(DEP_ROOT_DIR)%, $(SRC_DIRS))
|
||||
|
||||
# file lists.
|
||||
BIN := $(TARGET)
|
||||
PROGRAM := $(BIN_DIR)/$(BIN)
|
||||
SRCS := $(foreach dir,$(SRC_DIRS),$(wildcard $(dir)/*.c))
|
||||
OBJS := $(patsubst $(SRC_ROOT_DIR)%, $(OBJ_ROOT_DIR)%, $(SRCS:.c=.o))
|
||||
DEPS := $(patsubst $(SRC_ROOT_DIR)%, $(DEP_ROOT_DIR)%, $(SRCS:.c=.d))
|
||||
|
||||
#--------------
|
||||
# build otions.
|
||||
#--------------
|
||||
# compile.
|
||||
CFLAGS += -g
|
||||
CFLAGS += -O0
|
||||
CFLAGS += -Wall
|
||||
CFLAGS += -Wstrict-prototypes
|
||||
CFLAGS += -funsigned-char
|
||||
|
||||
# preprocess.
|
||||
CPPFLAGS += $(foreach dir,$(INC_DIRS),-I$(dir))
|
||||
CPPFLAGS += -D_GNU_SOURCE
|
||||
|
||||
# link.
|
||||
LOADLIBS +=
|
||||
|
||||
#--------
|
||||
# targets
|
||||
#--------
|
||||
CC ?= gcc
|
||||
LD := $(CC)
|
||||
|
||||
RM := rm -rf
|
||||
SED := sed
|
||||
MKDIR := mkdir -p
|
||||
|
||||
# Default target.
|
||||
all: $(TARGET)
|
||||
|
||||
# Generate Program.
|
||||
$(TARGET): $(OBJS)
|
||||
$(MKDIR) $(BIN_DIR)
|
||||
$(LD) $(LDFLAGS) $^ $(LOADLIBS) -o $(PROGRAM)
|
||||
|
||||
# Remove any generated file.
|
||||
clean:
|
||||
$(RM) $(PROGRAM) $(TP_LOG_DIR)
|
||||
-@find $(SRC_ROOT_DIR) -name \*~ -exec $(RM) {} +;
|
||||
-@if [ "." != $(BIN_DIR) ]; then \
|
||||
$(RM) $(BIN_DIR); \
|
||||
fi
|
||||
-@if [ "." != $(OBJ_ROOT_DIR) ]; then \
|
||||
$(RM) $(OBJ_ROOT_DIR); \
|
||||
fi
|
||||
-@if [ "." != $(DEP_ROOT_DIR) ]; then \
|
||||
$(RM) $(DEP_ROOT_DIR); \
|
||||
fi
|
||||
|
||||
# Generate object file.
|
||||
$(OBJS):
|
||||
-@ $(MKDIR) $(dir $@)
|
||||
$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ -c $(patsubst $(OBJ_ROOT_DIR)%, $(SRC_ROOT_DIR)%, $(@:.o=.c)) \
|
||||
-DTEST_SUITE=$(shell echo $@ | sed 's|$(OBJ_ROOT_DIR)/\([^/]*\).*.o|\1|g') \
|
||||
-DTEST_NUMBER=$(shell echo $@ | sed 's|$(OBJ_ROOT_DIR)/[^/]*/[0]\{,2\}\([0-9]*\).o|\1|g' | grep -E ^[0-9]+$)
|
||||
|
||||
# Generate dependencies file.
|
||||
$(DEPS):
|
||||
-@ $(MKDIR) $(DEP_DIRS)
|
||||
$(CC) $(CFLAGS) $(CPPFLAGS) -M $(filter %/$(patsubst $(DEP_ROOT_DIR)%, $(SRC_ROOT_DIR)%, $(@:.d=.c)), $(SRCS)) |\
|
||||
$(SED) 's|$(subst .d,.o,$(notdir $@)) *:|$(filter %/$(patsubst $(DEP_ROOT_DIR)%, $(OBJ_ROOT_DIR)%, $(@:.d=.o)), $(OBJS)) : Makefile|' >$@
|
||||
|
||||
.PHONY: all clean
|
||||
ifneq "$(MAKECMDGOALS)" "clean"
|
||||
-include $(DEPS)
|
||||
endif
|
||||
Reference in New Issue
Block a user