11bd4fe43Sopenharmony_ci# Copyright (C) 2021 HiSilicon (Shanghai) Technologies CO., LIMITED. 21bd4fe43Sopenharmony_ci# 31bd4fe43Sopenharmony_ci# This program is free software; you can redistribute it and/or 41bd4fe43Sopenharmony_ci# modify it under the terms of the GNU General Public License 51bd4fe43Sopenharmony_ci# as published by the Free Software Foundation; either version 2 61bd4fe43Sopenharmony_ci# of the License, or (at your option) any later version. 71bd4fe43Sopenharmony_ci# 81bd4fe43Sopenharmony_ci# This program is distributed in the hope that it will be useful, 91bd4fe43Sopenharmony_ci# but WITHOUT ANY WARRANTY; without even the implied warranty of 101bd4fe43Sopenharmony_ci# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 111bd4fe43Sopenharmony_ci# GNU General Public License for more details. 121bd4fe43Sopenharmony_ci# 131bd4fe43Sopenharmony_ci# You should have received a copy of the GNU General Public License 141bd4fe43Sopenharmony_ci# along with this program; if not, write to the Free Software 151bd4fe43Sopenharmony_ci# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 161bd4fe43Sopenharmony_ci 171bd4fe43Sopenharmony_ci# cbb global variables definition 181bd4fe43Sopenharmony_ciinclude Makefile.param 191bd4fe43Sopenharmony_ci 201bd4fe43Sopenharmony_ci.PHONY:clean all base sys vi mcf vo vo_dev vpss avs chnl region vgs gdc venc vedu vdec vfmw jpegd dis isp audio audio_bin 211bd4fe43Sopenharmony_ci 221bd4fe43Sopenharmony_citarget = base sys 231bd4fe43Sopenharmony_ci 241bd4fe43Sopenharmony_ci# cbb common include file 251bd4fe43Sopenharmony_ciHI_COMM_INC_FILE += $(CBB_ROOT)/dis/gmedis/include/hi_comm_dis.h 261bd4fe43Sopenharmony_ciHI_COMM_INC_FILE += $(CBB_ROOT)/region/include/hi_comm_region.h 271bd4fe43Sopenharmony_ciHI_COMM_INC_FILE += $(VGS_ROOT)/include/hi_comm_vgs.h 281bd4fe43Sopenharmony_ciHI_COMM_INC_FILE += $(CBB_ROOT)/sys/include/hi_comm_sys.h 291bd4fe43Sopenharmony_ciHI_COMM_INC_FILE += $(VENC_ROOT)/include/h7/hi_comm_venc.h 301bd4fe43Sopenharmony_ciHI_COMM_INC_FILE += $(VENC_ROOT)/include/h7/hi_comm_rc.h 311bd4fe43Sopenharmony_ciHI_COMM_INC_FILE += $(CBB_ROOT)/vpss/include/hi_comm_vpss.h 321bd4fe43Sopenharmony_ciHI_COMM_INC_FILE += $(CBB_ROOT)/include/hi_common.h 331bd4fe43Sopenharmony_ciHI_COMM_INC_FILE += $(CBB_ROOT)/include/hi_comm_video.h 341bd4fe43Sopenharmony_ciHI_COMM_INC_FILE += $(CBB_ROOT)/base/include/hi_comm_vb.h 351bd4fe43Sopenharmony_ciHI_COMM_INC_FILE += $(CBB_ROOT)/vi/include/hi_comm_vi.h 361bd4fe43Sopenharmony_ciHI_COMM_INC_FILE += $(CBB_ROOT)/vi/include/hi_comm_snap.h 371bd4fe43Sopenharmony_ciHI_COMM_INC_FILE += $(CBB_ROOT)/vo/include/hi_comm_vo.h 381bd4fe43Sopenharmony_ciHI_COMM_INC_FILE += $(CBB_ROOT)/vo/vo_dev/include/hi_comm_vo_dev.h 391bd4fe43Sopenharmony_ciHI_COMM_INC_FILE += $(CBB_ROOT)/gdc/include/hi_comm_gdc.h 401bd4fe43Sopenharmony_ci 411bd4fe43Sopenharmony_ciifeq ($(CONFIG_HI_VO_SUPPORT), y) 421bd4fe43Sopenharmony_ci target += vo_dev 431bd4fe43Sopenharmony_ci MPI_SRC_DIR += $(CBB_ROOT)/vo/vo_dev/mpi 441bd4fe43Sopenharmony_ci MPI_CFLAGS += -I$(CBB_ROOT)/vo/vo_dev/mpi/adapt 451bd4fe43Sopenharmony_ci MPI_CFLAGS += -I$(CBB_ROOT)/vo/vo_dev/include/adapt 461bd4fe43Sopenharmony_ci MPI_INC_DIR += $(CBB_ROOT)/vo/vo_dev/include 471bd4fe43Sopenharmony_ciendif 481bd4fe43Sopenharmony_ci 491bd4fe43Sopenharmony_ci######################################################## 501bd4fe43Sopenharmony_ci 511bd4fe43Sopenharmony_ci#----------------------------------------------------- 521bd4fe43Sopenharmony_ci 531bd4fe43Sopenharmony_citarget_clean = $(patsubst %,%_clean,$(target)) 541bd4fe43Sopenharmony_ci#----------------------------------------------------- 551bd4fe43Sopenharmony_ci 561bd4fe43Sopenharmony_ci#----------------------------------------------------- 571bd4fe43Sopenharmony_ciall: $(target) 581bd4fe43Sopenharmony_ci 591bd4fe43Sopenharmony_cimpi: $(MPI_OBJS) 601bd4fe43Sopenharmony_ci @mkdir -p "$(REL_LIB)" 611bd4fe43Sopenharmony_ci @mkdir -p "$(REL_INC)" 621bd4fe43Sopenharmony_ci @mkdir -p "$(ADAPT_INC)" 631bd4fe43Sopenharmony_ci @$(AR) -rsv $(LIB_A) $(MPI_OBJS) > /dev/null 641bd4fe43Sopenharmony_ci @$(CC) $(LIBS_LD_CFLAGS) -fPIC -shared -o $(LIB_S) $(MPI_OBJS) > /dev/null 651bd4fe43Sopenharmony_ci @$(call maco_cp_file,$(INC_FILE),$(REL_INC)) 661bd4fe43Sopenharmony_ci @$(call maco_cp_file,$(HI_COMM_INC_FILE),$(REL_INC)) 671bd4fe43Sopenharmony_ci @$(call maco_cp_file,$(ADPAT_FILE),$(ADAPT_INC)) 681bd4fe43Sopenharmony_ci 691bd4fe43Sopenharmony_cibase: 701bd4fe43Sopenharmony_ci @cd based && make 711bd4fe43Sopenharmony_ci 721bd4fe43Sopenharmony_cisys: 731bd4fe43Sopenharmony_ci @cd sysd && make 741bd4fe43Sopenharmony_ci 751bd4fe43Sopenharmony_cichnl: 761bd4fe43Sopenharmony_ci @cd chnl && make 771bd4fe43Sopenharmony_ci 781bd4fe43Sopenharmony_ciregion: 791bd4fe43Sopenharmony_ci @cd region && make 801bd4fe43Sopenharmony_ci 811bd4fe43Sopenharmony_civgs: 821bd4fe43Sopenharmony_ci @cd $(VGS_ROOT) && make 831bd4fe43Sopenharmony_ci 841bd4fe43Sopenharmony_civi: 851bd4fe43Sopenharmony_ci @cd vi && make 861bd4fe43Sopenharmony_ci 871bd4fe43Sopenharmony_cimcf: 881bd4fe43Sopenharmony_ci @cd $(MCF_ROOT) && make 891bd4fe43Sopenharmony_civo: 901bd4fe43Sopenharmony_ci @cd vo && make 911bd4fe43Sopenharmony_civo_dev: 921bd4fe43Sopenharmony_ci @cd vo/vo_dev && make 931bd4fe43Sopenharmony_civpss: 941bd4fe43Sopenharmony_ci @cd $(VPSS_ROOT) && make 951bd4fe43Sopenharmony_ciavs: 961bd4fe43Sopenharmony_ci @cd avs && make 971bd4fe43Sopenharmony_civdec: 981bd4fe43Sopenharmony_ci @cd $(VDEC_ROOT) && make 991bd4fe43Sopenharmony_civfmw: 1001bd4fe43Sopenharmony_ci @cd $(VFMW_ROOT) && make 1011bd4fe43Sopenharmony_cijpegd: 1021bd4fe43Sopenharmony_ci @cd jpegd && make 1031bd4fe43Sopenharmony_ci 1041bd4fe43Sopenharmony_cigdc: 1051bd4fe43Sopenharmony_ci @cd gdc && make 1061bd4fe43Sopenharmony_civenc: 1071bd4fe43Sopenharmony_ci @cd $(VENC_ROOT) && make 1081bd4fe43Sopenharmony_civedu: 1091bd4fe43Sopenharmony_ci @cd vedu && make 1101bd4fe43Sopenharmony_cidis: 1111bd4fe43Sopenharmony_ci @cd dis && make 1121bd4fe43Sopenharmony_ci 1131bd4fe43Sopenharmony_ciclean:$(target_clean) 1141bd4fe43Sopenharmony_ci @rm -fr $(OBJ_DIR) $(LIB_A) $(LIB_S) 1151bd4fe43Sopenharmony_ci @$(call maco_rm,$(REL_FILE),$(REL_INC)) 1161bd4fe43Sopenharmony_ci @$(call maco_rmemptydir,$(ADAPT_INC)) 1171bd4fe43Sopenharmony_ci @$(call maco_rmemptydir,$(REL_INC)) 1181bd4fe43Sopenharmony_ci @$(call maco_rmemptydir,$(REL_LIB)) 1191bd4fe43Sopenharmony_cimpi_clean: 1201bd4fe43Sopenharmony_ci @rm -fr $(MPI_OBJS) $(LIB_A) $(LIB_S) 1211bd4fe43Sopenharmony_cibase_clean: 1221bd4fe43Sopenharmony_ci @cd based && make clean 1231bd4fe43Sopenharmony_cisys_clean: 1241bd4fe43Sopenharmony_ci @cd sysd && make clean 1251bd4fe43Sopenharmony_cichnl_clean: 1261bd4fe43Sopenharmony_ci @cd chnl && make clean 1271bd4fe43Sopenharmony_civenc_clean: 1281bd4fe43Sopenharmony_ci @cd $(VENC_ROOT) && make clean 1291bd4fe43Sopenharmony_civedu_clean: 1301bd4fe43Sopenharmony_ci @cd vedu && make clean 1311bd4fe43Sopenharmony_ciregion_clean: 1321bd4fe43Sopenharmony_ci @cd region && make clean 1331bd4fe43Sopenharmony_civgs_clean: 1341bd4fe43Sopenharmony_ci @cd $(VGS_ROOT) && make clean 1351bd4fe43Sopenharmony_civi_clean: 1361bd4fe43Sopenharmony_ci @cd vi && make clean 1371bd4fe43Sopenharmony_cimcf_clean: 1381bd4fe43Sopenharmony_ci @cd $(MCF_ROOT) && make clean 1391bd4fe43Sopenharmony_civo_clean: 1401bd4fe43Sopenharmony_ci @cd vo && make clean 1411bd4fe43Sopenharmony_civo_dev_clean: 1421bd4fe43Sopenharmony_ci @cd vo/vo_dev && make clean 1431bd4fe43Sopenharmony_civpss_clean: 1441bd4fe43Sopenharmony_ci @cd $(VPSS_ROOT) && make clean 1451bd4fe43Sopenharmony_ciavs_clean: 1461bd4fe43Sopenharmony_ci @cd avs && make clean 1471bd4fe43Sopenharmony_civdec_clean: 1481bd4fe43Sopenharmony_ci @cd $(VDEC_ROOT) && make clean 1491bd4fe43Sopenharmony_civfmw_clean: 1501bd4fe43Sopenharmony_ci @cd $(VFMW_ROOT) && make clean 1511bd4fe43Sopenharmony_cijpegd_clean: 1521bd4fe43Sopenharmony_ci @cd jpegd && make clean 1531bd4fe43Sopenharmony_cigdc_clean: 1541bd4fe43Sopenharmony_ci @cd gdc && make clean 1551bd4fe43Sopenharmony_cidis_clean: 1561bd4fe43Sopenharmony_ci @cd dis && make clean 157