1# Copyright (C) 2021 HiSilicon (Shanghai) Technologies CO., LIMITED. 2# 3# This program is free software; you can redistribute it and/or 4# modify it under the terms of the GNU General Public License 5# as published by the Free Software Foundation; either version 2 6# of the License, or (at your option) any later version. 7# 8# This program is distributed in the hope that it will be useful, 9# but WITHOUT ANY WARRANTY; without even the implied warranty of 10# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11# GNU General Public License for more details. 12# 13# You should have received a copy of the GNU General Public License 14# along with this program; if not, write to the Free Software 15# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 16 17ifeq ($(PARAM_FILE), ) 18 PARAM_FILE:=../../../mpp/Makefile.param 19 include $(PARAM_FILE) 20endif 21 22TARGET := $(ARCH_LIBNAME)_ir 23#HIARCH 24#************************************************************************* 25# all source file in this module 26SRCS := hiir.c \ 27 ../init/$(OSTYPE)/ir_init.c 28#************************************************************************* 29EXTRA_CFLAGS += $(MPP_CFLAGS) 30EXTRA_CFLAGS += $(MKP_CFLAGS) 31EXTRA_CFLAGS += -I$(PWD) 32EXTRA_CFLAGS += -I$(REL_INC) 33EXTRA_CFLAGS += -I$(OSAL_ROOT)/include 34EXTRA_CFLAGS += -I$(PWD)/arch/$(HIARCH) 35EXTRA_CFLAGS += -I$(CBB_ROOT)/include 36 37ifeq ($(OSTYPE), liteos) 38EXTRA_CFLAGS += $(CFLAGS) 39endif 40 41.PHONY: all clean 42all: $(OSTYPE)_build 43clean: $(OSTYPE)_clean 44 45############################################# 46$(TARGET)-objs = $(SRCS:%.c=%.o) 47ifneq ($(KERNELRELEASE),) 48 obj-m += $(TARGET).o 49endif 50 51linux_build: 52 @echo -e "\e[0;32;1m--Compiling '$(TARGET)'... Configs as follow:\e[0;36;1m" 53 @echo ---- CROSS=$(CROSS) 54 @echo ---- HIARCH=$(HIARCH), HICHIP=$(HICHIP), CVER=$(CVER), DBG=$(HIDBG), HI_FPGA=$(HI_FPGA) 55 @echo ---- CPU_TYPE=$(CPU_TYPE) 56 @echo ---- MPP_CFLAGS=$(MPP_CFLAGS) 57 @echo ---- SDK_PATH=$(SDK_PATH) , PARAM_FILE=$(PARAM_FILE) 58 @echo ---- KERNEL_ROOT=$(KERNEL_ROOT) 59 @echo ---- ARCH_ROOT=$(ARCH_ROOT), ARCH_HAL=$(ARCH_HAL) 60 @@echo -e "\e[0m" 61 @$(MAKE) -C $(KERNEL_ROOT) M=$(PWD) $(COMPILER_TRIPLE) modules 62 @mkdir -p $(REL_KO) && cp $(TARGET).ko $(REL_KO) 63 @mkdir -p $(REL_INC) && cp -f hiir.h $(REL_INC)/ 64# @$(MAKE) -C test 65 66linux_clean: 67 @rm -f *.o *.ko *.mod.c .*.cmd *.mod 68 @rm -f *.symvers *.order 69 @rm -rf .*.ko.cmd .*.o.cmd .tmp_versions 70 @rm -f $(REL_KO)/$(TARGET).ko 71 @rm -f $(REL_INC)/hiir.h 72 @for x in `find ../init/$(OSTYPE) -name "*ir_init.o.cmd"`;do rm -rf $$x;done 73 @for x in `find ../init/$(OSTYPE) -name "*ir_init.o*"`;do rm -rf $$x;done 74# @$(MAKE) -C test clean 75#============================================ 76 77############################################# 78OBJS = $(SRCS:%.c=%.o) 79LIB := lib$(TARGET).a 80 81liteos_build: $(OBJS) $(LIB) 82 @echo -e "\e[0;32;1m--Compiling '$(TARGET)'...\e[0;36;1m" 83 @echo ---- CROSS=$(CROSS) 84 @echo ---- HIARCH=$(HIARCH), HICHIP=$(HICHIP), CVER=$(CVER), DBG=$(HIDBG), HI_FPGA=$(HI_FPGA) 85 @echo ---- CPU_TYPE=$(CPU_TYPE) 86 @echo ---- MPP_CFLAGS=$(MPP_CFLAGS) 87 @echo ---- SDK_PATH=$(SDK_PATH) , PARAM_FILE=$(PARAM_FILE) 88 @@echo -e "\e[0m" 89 @mkdir -p $(REL_KO) && cp -rf $(LIB) $(REL_KO)/ 90 @mkdir -p $(REL_INC) && cp -f hiir.h $(REL_INC)/ 91 92liteos_clean: 93 @rm -f $(OBJS) $(LIB) 94 @rm -f $(REL_KO)/$(LIB) 95 @rm -f $(REL_INC)/hiir.h 96 97$(OBJS): %.o : %.c 98 @$(CC) $(EXTRA_CFLAGS) -c $< -o $@ 99 100$(LIB): $(OBJS) 101 @$(AR) $(ARFLAGS) $@ $(OBJS) 102#============================================ 103