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# $(ROOT)/mpp/component/Makefile
181bd4fe43Sopenharmony_ci
191bd4fe43Sopenharmony_ciifeq ($(PARAM_FILE), )
201bd4fe43Sopenharmony_ci    PARAM_FILE:=../Makefile.param
211bd4fe43Sopenharmony_ci    include $(PARAM_FILE)
221bd4fe43Sopenharmony_ciendif
231bd4fe43Sopenharmony_ci
241bd4fe43Sopenharmony_ciifeq ($(HIARCH),hi3516ev200)
251bd4fe43Sopenharmony_ci        TDE_ROOT    := tde_hi3516ev200
261bd4fe43Sopenharmony_ci        PM_ROOT     := pm3
271bd4fe43Sopenharmony_cielse
281bd4fe43Sopenharmony_ci        TDE_ROOT    := tde
291bd4fe43Sopenharmony_ci        PM_ROOT     := pm2
301bd4fe43Sopenharmony_ciendif
311bd4fe43Sopenharmony_ci
321bd4fe43Sopenharmony_ciifeq ($(CONFIG_HI_TDE_SUPPORT), y)
331bd4fe43Sopenharmony_cicomponents += tde
341bd4fe43Sopenharmony_ciendif
351bd4fe43Sopenharmony_ci
361bd4fe43Sopenharmony_ciifeq ($(CONFIG_HI_HDMI_SUPPORT),y)
371bd4fe43Sopenharmony_cicomponents += hdmi
381bd4fe43Sopenharmony_ciendif
391bd4fe43Sopenharmony_ci
401bd4fe43Sopenharmony_ciifeq ($(CONFIG_HI_HIFB_SUPPORT),y)
411bd4fe43Sopenharmony_cicomponents += hifb
421bd4fe43Sopenharmony_ciendif
431bd4fe43Sopenharmony_ci
441bd4fe43Sopenharmony_cicomponents_clean := $(foreach dir, $(components), $(patsubst %, %_clean, $(dir)))
451bd4fe43Sopenharmony_ci
461bd4fe43Sopenharmony_ci.PHONY:clean all $(components) $(components_clean)
471bd4fe43Sopenharmony_ci
481bd4fe43Sopenharmony_ciall: $(components)
491bd4fe43Sopenharmony_ci	@echo -e "\e[0;32;1m--Compiling 'component'... Configs as follow:\e[0;36;1m"
501bd4fe43Sopenharmony_ci	@echo ---- CROSS=$(CROSS)
511bd4fe43Sopenharmony_ci	@echo ---- HIARCH=$(HIARCH), HICHIP=$(HICHIP), CVER=$(CVER), HIDBG=$(HIDBG)
521bd4fe43Sopenharmony_ci	@echo ---- SDK_PATH=$(SDK_PATH) , PARAM_FILE=$(PARAM_FILE)
531bd4fe43Sopenharmony_ci	@echo ---- KERNEL_ROOT=$(KERNEL_ROOT)
541bd4fe43Sopenharmony_ci	@echo -e "\e[0m"
551bd4fe43Sopenharmony_ci
561bd4fe43Sopenharmony_ciclean: $(components_clean)
571bd4fe43Sopenharmony_ci	@echo -e "\e[0;32;1m Clean ok! \e[0m"
581bd4fe43Sopenharmony_ci
591bd4fe43Sopenharmony_citde:
601bd4fe43Sopenharmony_ci	@cd $(TDE_ROOT) && make
611bd4fe43Sopenharmony_citde_clean:
621bd4fe43Sopenharmony_ci	@cd $(TDE_ROOT) && make clean
631bd4fe43Sopenharmony_ci
641bd4fe43Sopenharmony_cihdmi:
651bd4fe43Sopenharmony_ci	@cd hdmi/src && make
661bd4fe43Sopenharmony_cihdmi_clean:
671bd4fe43Sopenharmony_ci	@cd hdmi/src && make clean
681bd4fe43Sopenharmony_ci
691bd4fe43Sopenharmony_cihifb:
701bd4fe43Sopenharmony_ci	@cd hifb && make
711bd4fe43Sopenharmony_cihifb_clean:
721bd4fe43Sopenharmony_ci	@cd hifb && make clean
731bd4fe43Sopenharmony_ci
741bd4fe43Sopenharmony_ciavs_lut:
751bd4fe43Sopenharmony_ci	@cd avs_lut && make
761bd4fe43Sopenharmony_ciavs_lut_clean:
771bd4fe43Sopenharmony_ci	@cd avs_lut && make clean
781bd4fe43Sopenharmony_ci
791bd4fe43Sopenharmony_cipos_query:
801bd4fe43Sopenharmony_ci	@cd pos_query && make
811bd4fe43Sopenharmony_cipos_query_clean:
821bd4fe43Sopenharmony_ci	@cd pos_query && make clean
831bd4fe43Sopenharmony_ci
841bd4fe43Sopenharmony_cipciv:
851bd4fe43Sopenharmony_ci	@cd pci && make
861bd4fe43Sopenharmony_cipciv_clean:
871bd4fe43Sopenharmony_ci	@cd pci && make clean
881bd4fe43Sopenharmony_ci
891bd4fe43Sopenharmony_cifisheye_adjust:
901bd4fe43Sopenharmony_ci	@cd fisheye_adjust && make
911bd4fe43Sopenharmony_cifisheye_adjust_clean:
921bd4fe43Sopenharmony_ci	@cd fisheye_adjust && make clean
931bd4fe43Sopenharmony_civcmp:
941bd4fe43Sopenharmony_ci	@cd vcmp && make
951bd4fe43Sopenharmony_civcmp_clean:
961bd4fe43Sopenharmony_ci	@cd vcmp && make clean
971bd4fe43Sopenharmony_ci
981bd4fe43Sopenharmony_ciphoto:
991bd4fe43Sopenharmony_ci	@cd photo && make
1001bd4fe43Sopenharmony_ciphoto_clean:
1011bd4fe43Sopenharmony_ci	@cd photo && make clean
1021bd4fe43Sopenharmony_ci
1031bd4fe43Sopenharmony_cisvp:
1041bd4fe43Sopenharmony_ci	@cd svp && make
1051bd4fe43Sopenharmony_cisvp_clean:
1061bd4fe43Sopenharmony_ci	@cd svp && make clean
1071bd4fe43Sopenharmony_ci
1081bd4fe43Sopenharmony_cipm:
1091bd4fe43Sopenharmony_ci	@cd $(PM_ROOT) && make
1101bd4fe43Sopenharmony_cipm_clean:
1111bd4fe43Sopenharmony_ci	@cd $(PM_ROOT) && make clean
1121bd4fe43Sopenharmony_ci
1131bd4fe43Sopenharmony_ciavs_transcode:
1141bd4fe43Sopenharmony_ci	@cd avc_transcode && make
1151bd4fe43Sopenharmony_ciavs_transcode_clean:
1161bd4fe43Sopenharmony_ci	@cd avc_transcode && make clean
1171bd4fe43Sopenharmony_ci
1181bd4fe43Sopenharmony_citzasc:
1191bd4fe43Sopenharmony_ci	@cd tzasc && make
1201bd4fe43Sopenharmony_citzasc_clean:
1211bd4fe43Sopenharmony_ci	@cd tzasc && make clean
1221bd4fe43Sopenharmony_ci
1231bd4fe43Sopenharmony_cimotionfusion:
1241bd4fe43Sopenharmony_ci	@cd motionfusion && make
1251bd4fe43Sopenharmony_cimotionfusion_clean:
1261bd4fe43Sopenharmony_ci	@cd motionfusion && make clean
1271bd4fe43Sopenharmony_ci
1281bd4fe43Sopenharmony_cimcf_calibration:
1291bd4fe43Sopenharmony_ci	@cd mcf_calibration && make
1301bd4fe43Sopenharmony_cimcf_calibration_clean:
1311bd4fe43Sopenharmony_ci	@cd mcf_calibration && make clean
1321bd4fe43Sopenharmony_ci
1331bd4fe43Sopenharmony_cihisyslink:
1341bd4fe43Sopenharmony_ci	@cd hisyslink && make
1351bd4fe43Sopenharmony_cihisyslink_clean:
1361bd4fe43Sopenharmony_ci	@cd hisyslink; make clean
1371bd4fe43Sopenharmony_ci
138