luckfox-pico-sdk/project/app/component/lvgl/Makefile
luckfox-eng29 8f34c2760d project:build.sh: Added fastboot support; custom modifications to U-Boot and kernel implemented using patches.
project:cfg:BoardConfig_IPC: Added fastboot BoardConfig file and firmware post-scripts, distinguishing between
the BoardConfigs for Luckfox Pico Pro and Luckfox Pico Max. project:app: Added fastboot_client and rk_smart_door
for quick boot applications; updated rkipc app to adapt to the latest media library. media:samples: Added more
usage examples. media:rockit: Fixed bugs; removed support for retrieving data frames from VPSS. media:isp:
Updated rkaiq library and related tools to support connection to RKISP_Tuner. sysdrv:Makefile: Added support for
compiling drv_ko on Luckfox Pico Ultra W using Ubuntu; added support for custom root filesystem.
sysdrv:tools:board: Updated Buildroot optional mirror sources, updated some software versions, and stored device
tree files and configuration files that undergo multiple modifications for U-Boot and kernel separately.
sysdrv:source:mcu: Used RISC-V MCU SDK with RT-Thread system, mainly for initializing camera AE during quick
boot. sysdrv:source:uboot: Added support for fastboot; added high baud rate DDR bin for serial firmware upgrades.
sysdrv:source:kernel: Upgraded to version 5.10.160; increased NPU frequency for RV1106G3; added support for
fastboot.

Signed-off-by: luckfox-eng29 <eng29@luckfox.com>
2024-10-14 09:47:04 +08:00

97 lines
2.8 KiB
Makefile

ifeq ($(APP_PARAM), )
APP_PARAM:=../../Makefile.param
include $(APP_PARAM)
endif
export LC_ALL=C
SHELL:=/bin/bash
CURRENT_DIR := $(shell pwd)
PKG_NAME := lvgl
PKG_BIN ?= out
PKG_BUILD ?= build
PKG_CFG := rockchip-conf
LVGL_DEF_CONF := $(CURRENT_DIR)/$(PKG_NAME)/$(PKG_CFG)/lv_conf_default.h
LVGL_DST_CONF := $(CURRENT_DIR)/$(PKG_NAME)/lv_conf.h
ifneq (, $(filter RKCVR_RV1106, $(RK_APP_TYPE)))
LVGL_SRC_CONF := $(CURRENT_DIR)/$(PKG_NAME)/$(PKG_CFG)/lv_conf_rv1106_cvr.h
else ifneq (, $(filter FACIAL_GATE_RV1106_NORMAL, $(RK_APP_TYPE)))
LVGL_SRC_CONF := $(CURRENT_DIR)/$(PKG_NAME)/$(PKG_CFG)/lv_conf_facialgate.h
else ifneq (, $(filter RKCVR_RV1126, $(RK_APP_TYPE)))
LVGL_SRC_CONF := $(CURRENT_DIR)/$(PKG_NAME)/$(PKG_CFG)/lv_conf_rv1126_cvr.h
else
LVGL_SRC_CONF := $(LVGL_DEF_CONF)
endif
RK_APP_OPTS =
RK_APP_CFLAGS = -I $(RK_APP_OUTPUT)/include/freetype2
PKG_CONF_OPTS += -DCMAKE_C_FLAGS="$(RK_APP_CFLAGS) $(RK_APP_OPTS)" \
-DCMAKE_CXX_FLAGS="$(RK_APP_CFLAGS) $(RK_APP_OPTS)"
ifeq ($(CONFIG_LVGL),y)
PKG_TARGET := lvgl-build
else ifeq ($(RK_ENABLE_LVGL),y)
PKG_TARGET := lvgl-build
endif
ifeq ($(PKG_BIN),)
$(error ### $(CURRENT_DIR): PKG_BIN is NULL, Please Check !!!)
endif
all: $(PKG_TARGET)
$(call MAROC_COPY_PKG_TO_APP_OUTPUT, $(RK_APP_OUTPUT), $(PKG_BIN))
@echo "build $(PKG_NAME) done"
thirdlibs-build:
@test ! -d $(RK_APP_COMPONENT)/third_libs || make -C $(RK_APP_COMPONENT)/third_libs
lvgl-build: thirdlibs-build lvgl-release
@test ! -d $(CURRENT_DIR)/$(PKG_NAME) || \
test -f $(CURRENT_DIR)/$(PKG_BIN)/lib/liblvgl.a || (\
echo "Start to build $(PKG_NAME)"; \
if [ -n $(LVGL_SRC_CONF) ] && [ -f $(LVGL_SRC_CONF) ] ; then \
cp $(LVGL_SRC_CONF) $(LVGL_DST_CONF); \
fi; \
rm -rf $(PKG_BIN) $(PKG_BUILD); \
mkdir -p $(CURRENT_DIR)/$(PKG_BUILD); \
pushd $(CURRENT_DIR)/$(PKG_BUILD); \
rm -f 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 \
-DBUILD_DOC=OFF \
-DBUILD_DOCS=OFF \
-DBUILD_EXAMPLE=OFF \
-DBUILD_EXAMPLES=OFF \
-DBUILD_TEST=OFF \
-DBUILD_TESTS=OFF \
-DBUILD_TESTING=OFF \
-DBUILD_SHARED_LIBS=OFF \
$(PKG_CONF_OPTS) \
-DCMAKE_BUILD_TARGET=cmake_linux \
-DARCH="$(RK_APP_ARCH_TYPE)" ;\
make -j$(RK_JOBS) || exit -1; \
make install; \
popd; \
) || exit 1;
lvgl-release:
$(call MAROC_PKG_CHECK_PREBUILT, $(CURRENT_DIR),$(PKG_NAME),$(PKG_BIN))
clean:
@rm -rf $(PKG_BIN) $(PKG_BUILD);
distclean: clean
################################################################################
__RELEASE__: # DO NOT RUN THIS TARGET
$(call MAROC_STRIP_DEBUG_SYMBOL, $(PKG_BIN))
$(call MAROC_PKG_RELEASE, $(CURRENT_DIR),$(PKG_NAME),$(PKG_BIN))