• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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