92 lines
2.4 KiB
Makefile
Executable File
92 lines
2.4 KiB
Makefile
Executable File
|
|
ifeq ($(APP_PARAM), )
|
|
APP_PARAM:=../Makefile.param
|
|
include $(APP_PARAM)
|
|
endif
|
|
|
|
export LC_ALL=C
|
|
SHELL:=/bin/bash
|
|
|
|
CURRENT_DIR := $(shell pwd)
|
|
|
|
PKG_NAME := uac_app
|
|
PKG_BIN ?= out
|
|
PKG_BUILD ?= build
|
|
|
|
# debug: build cmake with more message
|
|
# PKG_CONF_OPTS += -DCMAKE_VERBOSE_MAKEFILE=ON
|
|
#
|
|
RK_UAC_APP_CONFIG :=
|
|
|
|
ifeq ($(RK_APP_CHIP), rv1106)
|
|
ifeq ($(RK_APP_TYPE), UAC)
|
|
RK_UAC_APP_CONFIG := -DCOMPILE_FOR_MPI=ON
|
|
else ifeq ($(RK_APP_TYPE), UVC_UAC)
|
|
RK_UAC_APP_CONFIG := -DCOMPILE_FOR_MPI=ON
|
|
else
|
|
$(info ### disable make uac app)
|
|
endif
|
|
else
|
|
$(info ### unsupport RK_APP_CHIP)
|
|
endif
|
|
|
|
RK_APP_CFLAGS = -I $(RK_APP_MEDIA_INCLUDE_PATH)
|
|
|
|
RK_APP_LDFLAGS = -L $(RK_APP_MEDIA_LIBS_PATH)
|
|
|
|
RK_APP_OPTS += -Wl,-rpath-link,$(RK_APP_MEDIA_LIBS_PATH):$(RK_APP_PATH_LIB_INCLUDE)/root/usr/lib
|
|
PKG_CONF_OPTS += -DCMAKE_C_FLAGS="$(RK_APP_CFLAGS) $(RK_APP_LDFLAGS) $(RK_APP_OPTS)" \
|
|
-DCMAKE_CXX_FLAGS="$(RK_APP_CFLAGS) $(RK_APP_LDFLAGS) $(RK_APP_OPTS)"
|
|
|
|
PKG_CONF_OPTS += -DUAC_APP_CROSS_COMPILE="$(RK_APP_CROSS)"
|
|
|
|
# define project/cfg/BoardConfig*.mk
|
|
ifneq ($(RK_UAC_APP_CONFIG),)
|
|
PKG_TARGET := uac_app-build
|
|
$(info ** $(PKG_NAME) build $(RK_APP_TYPE) **)
|
|
endif
|
|
|
|
ifeq ($(PKG_BIN),)
|
|
$(error ### $(CURRENT_DIR): PKG_BIN is NULL, Please Check !!!)
|
|
endif
|
|
|
|
all: $(PKG_TARGET)
|
|
@echo "build $(PKG_NAME) done"
|
|
|
|
uac_app-build:
|
|
@echo "RK_APP_CHIP is $(RK_APP_CHIP)"
|
|
@echo "RK_APP_TYPE is $(RK_APP_TYPE)"
|
|
rm -rf $(PKG_BIN) $(PKG_BUILD); \
|
|
mkdir -p $(PKG_BIN);
|
|
mkdir -p $(PKG_BUILD);
|
|
pushd $(PKG_BUILD)/; \
|
|
rm -rf CMakeCache.txt; \
|
|
cmake $(CURRENT_DIR)/$(PKG_NAME)/ \
|
|
-DCMAKE_C_COMPILER=$(RK_APP_CROSS)-gcc \
|
|
-DCMAKE_CXX_COMPILER=$(RK_APP_CROSS)-g++ \
|
|
-DCMAKE_INSTALL_PREFIX="$(CURRENT_DIR)/$(PKG_BIN)" \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DCMAKE_COLOR_MAKEFILE=OFF \
|
|
-DCMAKE_SYSTEM_NAME=Linux \
|
|
$(RK_UAC_APP_CONFIG) \
|
|
$(PKG_CONF_OPTS) ;\
|
|
make -j$(RK_APP_JOBS) || exit -1; \
|
|
make install; \
|
|
popd;
|
|
$(call MAROC_COPY_PKG_TO_APP_OUTPUT, $(RK_APP_OUTPUT), $(PKG_BIN))
|
|
|
|
clean:
|
|
@rm -rf $(PKG_BIN) $(PKG_BUILD)
|
|
|
|
distclean: clean
|
|
|
|
info:
|
|
ifneq ($(RK_UAC_APP_CONFIG),)
|
|
@echo -e "$(C_YELLOW)-------------------------------------------------------------------------$(C_NORMAL)"
|
|
@echo -e "RK_APP_TYPE=$(RK_APP_TYPE)"
|
|
@echo -e "option support as follow:"
|
|
@echo -e " UAC"
|
|
@echo -e " UVC_UAC"
|
|
@echo -e "$(C_YELLOW)-------------------------------------------------------------------------$(C_NORMAL)"
|
|
endif
|