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>
152 lines
5.6 KiB
Makefile
152 lines
5.6 KiB
Makefile
|
|
ifeq ($(SYSDRV_PARAM), )
|
|
SYSDRV_PARAM:=../../../Makefile.param
|
|
include $(SYSDRV_PARAM)
|
|
endif
|
|
|
|
export LC_ALL=C
|
|
SHELL:=/bin/bash
|
|
# arch=arm default use thumb-2 compile
|
|
ifeq ($(SYSDRV_ARCH_TYPE),arm)
|
|
PKG_USE_THUMB2 ?= YES
|
|
endif
|
|
|
|
CURRENT_DIR := $(shell pwd)
|
|
|
|
ifeq ($(shell pkg-config --version),)
|
|
$(info ***************************)
|
|
$(info Please Install pkg-config tool)
|
|
$(info sudo apt-get install pkg-config)
|
|
$(error ***************************)
|
|
endif
|
|
|
|
PKG_TARBALL_EUDEV := eudev-3.2.7.tar.gz
|
|
PKG_NAME_EUDEV := eudev-3.2.7
|
|
PKG_PATCHES_EUDEV := eudev-patches
|
|
|
|
PKG_TARBALL_KMOD := kmod-29.tar.xz
|
|
PKG_NAME_KMOD := kmod-29
|
|
PKG_PATCHES_KMOD := kmod-26-patches
|
|
|
|
PKG_TARBALL_UTIL_LINUX := util-linux-2.37.2.tar.xz
|
|
PKG_NAME_UTIL_LINUX := util-linux-2.37.2
|
|
PKG_PATCHES_UTIL_LINUX := util-linux-2.37.2-patches
|
|
|
|
PKG_BIN := out
|
|
|
|
PKG_CONF_OPTS += $(SYSDRV_CROSS_CFLAGS) $(SYSDRV_OPTS) -Os -I$(CURRENT_DIR)/$(PKG_BIN)/include -L$(CURRENT_DIR)/$(PKG_BIN)/lib
|
|
|
|
ifeq ($(PKG_USE_THUMB2),YES)
|
|
PKG_CONF_OPTS += -mthumb -Wa,-mimplicit-it=thumb -mthumb-interwork
|
|
endif
|
|
|
|
all: kmod util-linux
|
|
@test -f $(CURRENT_DIR)/$(PKG_BIN)/sbin/udevd || (\
|
|
rm -rf $(PKG_NAME_EUDEV); \
|
|
tar -xf $(PKG_TARBALL_EUDEV); \
|
|
mkdir -p $(CURRENT_DIR)/$(PKG_BIN); \
|
|
pushd $(CURRENT_DIR)/$(PKG_NAME_EUDEV)/; \
|
|
cp -af $(CURRENT_DIR)/$(PKG_PATCHES_EUDEV)/* ./; \
|
|
$(SHELL) ./eudev.patch.sh; \
|
|
PKG_CONFIG_PATH="$(CURRENT_DIR)/$(PKG_BIN)/lib/pkgconfig" \
|
|
CFLAGS="$(PKG_CONF_OPTS)" CPPFLAGS="$(PKG_CONF_OPTS)" \
|
|
./configure \
|
|
--target=$(SYSDRV_CROSS) \
|
|
--host=$(SYSDRV_CROSS) \
|
|
--disable-gtk-doc --disable-gtk-doc-html --disable-doc --disable-docs --disable-documentation \
|
|
--with-xmlto=no --with-fop=no --disable-dependency-tracking --enable-ipv6 --disable-nls \
|
|
--disable-manpages --disable-introspection --disable-rule-generator \
|
|
--enable-kmod \
|
|
--enable-blkid \
|
|
--enable-split-usr \
|
|
--disable-hwdb \
|
|
--disable-selinux \
|
|
--disable-static \
|
|
--enable-shared \
|
|
--prefix=$(CURRENT_DIR)/$(PKG_BIN) ;\
|
|
make -j$(SYSDRV_JOBS) > /dev/null || exit -1; \
|
|
make install > /dev/null; \
|
|
rm -f $(CURRENT_DIR)/$(PKG_BIN)/lib/libudev.so* ;\
|
|
popd; )
|
|
@pushd $(CURRENT_DIR)/$(PKG_BIN)/; \
|
|
find . -name "lib*.la" -exec rm -f {} \; ;\
|
|
rm -rf share include lib/pkgconfig;\
|
|
rm -f sbin/udevadm kmod;\
|
|
rm -f lib/udev/ata_id ;\
|
|
rm -f lib/udev/scsi_id ;\
|
|
rm -f lib/udev/mtd_probe ;\
|
|
rm -f lib/udev/v4l_id ;\
|
|
rm -f lib/udev/collect ;\
|
|
rm -f lib/udev/cdrom_id ;\
|
|
popd;
|
|
@cp -f $(CURRENT_DIR)/rules/* $(CURRENT_DIR)/$(PKG_BIN)/lib/udev/rules.d/ ;
|
|
@mkdir -p $(CURRENT_DIR)/$(PKG_BIN)/etc/init.d ;
|
|
@cp -f S10udev $(CURRENT_DIR)/$(PKG_BIN)/etc/init.d ;
|
|
@mkdir -p $(CURRENT_DIR)/$(PKG_BIN)/usr/bin ;
|
|
@cp -f usbdevice $(CURRENT_DIR)/$(PKG_BIN)/usr/bin ;
|
|
$(call MAROC_COPY_PKG_TO_SYSDRV_OUTPUT, $(SYSDRV_DIR_OUT_ROOTFS), $(CURRENT_DIR)/$(PKG_BIN))
|
|
|
|
kmod:
|
|
@test -f $(CURRENT_DIR)/$(PKG_BIN)/lib/libkmod.so.2.3.7 || (\
|
|
rm -fr $(PKG_NAME_KMOD); \
|
|
tar -xf $(PKG_TARBALL_KMOD); \
|
|
mkdir -p $(CURRENT_DIR)/$(PKG_BIN); \
|
|
pushd $(CURRENT_DIR)/$(PKG_NAME_KMOD)/; \
|
|
CFLAGS="$(PKG_CONF_OPTS)" CPPFLAGS="$(PKG_CONF_OPTS)" \
|
|
./configure \
|
|
--target=$(SYSDRV_CROSS) \
|
|
--host=$(SYSDRV_CROSS) \
|
|
--disable-static --enable-shared --disable-manpages \
|
|
--disable-tools --disable-test-modules \
|
|
--with-bashcompletiondir=$(CURRENT_DIR)/$(PKG_BIN) \
|
|
--prefix=$(CURRENT_DIR)/$(PKG_BIN) ;\
|
|
make -j$(SYSDRV_JOBS) > /dev/null || exit -1; \
|
|
make install > /dev/null; \
|
|
popd; )
|
|
|
|
util-linux:
|
|
@test -f $(CURRENT_DIR)/$(PKG_BIN)/lib/libblkid.so.1.1.0 || (\
|
|
rm -fr $(PKG_NAME_UTIL_LINUX); \
|
|
tar -xf $(PKG_TARBALL_UTIL_LINUX); \
|
|
mkdir -p $(CURRENT_DIR)/$(PKG_BIN); \
|
|
pushd $(CURRENT_DIR)/$(PKG_NAME_UTIL_LINUX)/; \
|
|
cp -af $(CURRENT_DIR)/$(PKG_PATCHES_UTIL_LINUX)/* ./; \
|
|
$(SHELL) ./util-linux.patch.sh; \
|
|
scanf_cv_type_modifier=no \
|
|
CFLAGS="$(PKG_CONF_OPTS)" CPPFLAGS="$(PKG_CONF_OPTS)" \
|
|
./configure \
|
|
--target=$(SYSDRV_CROSS) \
|
|
--host=$(SYSDRV_CROSS) \
|
|
--disable-gtk-doc --disable-gtk-doc-html --disable-doc --disable-docs --disable-documentation \
|
|
--with-xmlto=no --with-fop=no --disable-dependency-tracking --enable-ipv6 --disable-nls \
|
|
--disable-rpath --disable-makeinstall-chown --without-systemd --with-systemdsystemunitdir=no \
|
|
--without-ncursesw --without-ncurses --disable-widechar --without-selinux \
|
|
--disable-all-programs --disable-agetty --disable-bfs --disable-cal \
|
|
--disable-chfn-chsh --disable-chmem --disable-cramfs --disable-eject \
|
|
--disable-fallocate --disable-fdformat --disable-fsck --disable-hwclock \
|
|
--disable-ipcrm --disable-ipcs --disable-kill --disable-last --disable-write \
|
|
--disable-libfdisk --disable-libmount --disable-libsmartcols \
|
|
--disable-line --disable-logger --disable-login --disable-losetup \
|
|
--disable-lslogins --disable-lsmem --disable-mesg --disable-minix \
|
|
--disable-more --disable-mount --disable-mountpoint --disable-newgrp \
|
|
--disable-nologin --disable-nsenter --disable-partx --disable-pg \
|
|
--disable-pivot_root --disable-raw --disable-rename --disable-rfkill \
|
|
--disable-runuser --disable-schedutils --disable-setpriv \
|
|
--disable-setterm --disable-su --disable-sulogin --disable-switch_root \
|
|
--disable-tunelp --disable-ul --disable-unshare --disable-utmpdump \
|
|
--disable-uuidd --disable-vipw --disable-wall --disable-wdctl \
|
|
--disable-zramctl --without-python --without-readline --without-audit \
|
|
--disable-static --enable-shared \
|
|
--disable-libuuid --enable-libblkid \
|
|
--with-bashcompletiondir=$(CURRENT_DIR)/$(PKG_BIN) \
|
|
--prefix=$(CURRENT_DIR)/$(PKG_BIN) ;\
|
|
make -j$(SYSDRV_JOBS) > /dev/null || exit -1; \
|
|
make install > /dev/null; \
|
|
popd; )
|
|
|
|
clean: distclean
|
|
|
|
distclean:
|
|
-rm -rf $(PKG_NAME_EUDEV) $(PKG_BIN) $(PKG_NAME_KMOD) $(PKG_NAME_UTIL_LINUX)
|
|
|