From 2161762ebc50914fe51a7923945c64e6ce4ee25f Mon Sep 17 00:00:00 2001
From: guowenxue <guowenxue@gmail.com>
Date: Tue, 28 Dec 2021 21:46:06 +0800
Subject: [PATCH] update build shell script, add system and distro
---
bsp/images/build.sh | 29 ++++++---
bsp/bootloader/build.sh | 13 +---
bsp/kernel/build.sh | 13 +---
bsp/tarball/build.sh | 33 +++++++---
bsp/rootfs/build.sh | 36 +++++++----
bsp/drivers/build.sh | 3
bsp/build.sh | 26 ++++----
7 files changed, 86 insertions(+), 67 deletions(-)
diff --git a/bsp/bootloader/build.sh b/bsp/bootloader/build.sh
index b95e98c..2716a61 100755
--- a/bsp/bootloader/build.sh
+++ b/bsp/bootloader/build.sh
@@ -3,25 +3,18 @@
PRJ_PATH=`pwd`
PRJ_NAME=`basename ${PRJ_PATH}`
-IMG_PATH=${PRJ_PATH}/../images/
BOARD=igkboard
-
+BSP_BRANCH=lf-5.10.52-2.1.0
CROSS_TOOL=/opt/buildroot/cortexA7/bin/arm-linux-
-# bootloader tarball path and branch
TAR_PATH=${PRJ_PATH}/../tarball
-BSP_BRANCH=lf-5.10.52-2.1.0
-
-
-BOOT=emmc
+IMG_PATH=${PRJ_PATH}/../images/
UBOOT_SRC=uboot-imx
-
-IMG_NAME=u-boot-${BOARD}-${BOOT}.imx
+IMG_NAME=u-boot-${BOARD}.imx
PATCH_FILE=${PRJ_PATH}/patch/${UBOOT_SRC}-${BOARD}.patch
-
CONF_FILE=configs/${BOARD}_defconfig
JOBS=`cat /proc/cpuinfo | grep processor | wc -l`
diff --git a/bsp/build.sh b/bsp/build.sh
index a9f2521..7fd2e92 100755
--- a/bsp/build.sh
+++ b/bsp/build.sh
@@ -3,16 +3,15 @@
PRJ_PATH=`pwd`
BOARD=igkboard
-
-#CROSS_TOOL=arm-linux-gnueabihf-
+BSP_BRANCH="lf-5.10.52-2.1.0"
CROSS_TOOL=/opt/buildroot/cortexA7/bin/arm-linux-
-# bootloader, linux kernel tarball path and branch
-TAR_PATH=${PRJ_PATH}/tarball
-BSP_BRANCH="lf-5.10.52-2.1.0"
-
-# rootfs should be buildroot/yocto or bullseye for debian system
-ROOTFS=buildroot
+# $SYSTEM should be buildroot, yocto or debian
+# Buildroot distro should be: buildroot-2021.02
+# Yocto distro should be : hardknott
+# Debian distro should be : buster or bullseye
+SYSTEM=buildroot
+DISTRO=v2021.02
set -u
set -e
@@ -24,13 +23,11 @@
cd $PRJ_PATH
sed -i "s|^BOARD.*|BOARD=${BOARD}|g" ${DIR}/build.sh
+ sed -i "s|^BSP_BRANCH.*|BSP_BRANCH=${BSP_BRANCH}|g" ${DIR}/build.sh
+ sed -i "s|^CROSS_TOOL.*|CROSS_TOOL=${CROSS_TOOL}|g" ${DIR}/build.sh
- if [ $DIR = bootloader -o $DIR == kernel ] ; then
- sed -i "s|^CROSS_TOOL.*|CROSS_TOOL=${CROSS_TOOL}|g" ${DIR}/build.sh
- sed -i "s|^BSP_BRANCH.*|BSP_BRANCH=${BSP_BRANCH}|g" ${DIR}/build.sh
- elif [ $DIR = rootfs -o $DIR == images -o $DIR = tarball ] ; then
- sed -i "s|^ROOTFS=.*|ROOTFS=${ROOTFS}|g" ${DIR}/build.sh
- fi
+ sed -i "s|^SYSTEM=.*|SYSTEM=${SYSTEM}|g" ${DIR}/build.sh
+ sed -i "s|^DISTRO=.*|DISTRO=${DISTRO}|g" ${DIR}/build.sh
}
function do_modify()
@@ -38,6 +35,7 @@
do_modify_build tarball
do_modify_build bootloader
do_modify_build kernel
+ do_modify_build drivers
do_modify_build rootfs
do_modify_build images
}
diff --git a/bsp/drivers/build.sh b/bsp/drivers/build.sh
index 2ff158b..eab2e22 100755
--- a/bsp/drivers/build.sh
+++ b/bsp/drivers/build.sh
@@ -3,10 +3,9 @@
PRJ_PATH=`pwd`
BOARD=igkboard
-
+BSP_BRANCH=lf-5.10.52-2.1.0
CROSS_TOOL=/opt/buildroot/cortexA7/bin/arm-linux-
-# wifi driver tarball path
TAR_PATH=${PRJ_PATH}/../tarball
WIFI_SRC=rtl8188fu
diff --git a/bsp/images/build.sh b/bsp/images/build.sh
index 74dd65c..2e8e592 100755
--- a/bsp/images/build.sh
+++ b/bsp/images/build.sh
@@ -20,20 +20,31 @@
PRJ_PATH=`pwd`
PRJ_NAME=`basename ${PRJ_PATH}`
-IMAGE_PATH=${PRJ_PATH}/boot/
-
BOARD=igkboard
+BSP_BRANCH=lf-5.10.52-2.1.0
-# rootfs should be buildroot/yocto or bullseye for debian system
-ROOTFS=buildroot
+# $SYSTEM should be buildroot, yocto or debian
+# Buildroot distro should be: buildroot-2021.02
+# Yocto distro should be : hardknott
+# Debian distro should be : buster or bullseye
+SYSTEM=buildroot
+DISTRO=v2021.02
-# linux kernel tarball path and branch
+SYSTYPE=`echo $SYSTEM | tr 'A-Z' 'a-z'`
+if [ $SYSTYPE == "debian" ] ; then
+ SYSNAME=${DISTRO}
+else
+ SYSNAME=${SYSTYPE}
+fi
+ROOTFS_DIR=rootfs_${SYSNAME}
+
TAR_PATH=${PRJ_PATH}/../tarball
+IMAGE_PATH=${PRJ_PATH}/boot/
BOOT=emmc
-IMAGE_NAME=linuxsys_${BOARD}_${ROOTFS}.img
-if [ $ROOTFS == buildroot ] ; then
+IMAGE_NAME=linuxsys_${BOARD}_${SYSNAME}.img
+if [ $SYSTEM == buildroot ] ; then
IMAGE_SIZE=512
else
IMAGE_SIZE=2048
@@ -50,10 +61,10 @@
BOOT_SIZE=100
-IMG_UBOOT=${PRJ_PATH}/u-boot-${BOARD}-emmc.imx
+IMG_UBOOT=${PRJ_PATH}/u-boot-${BOARD}.imx
IMG_KERNEL=${IMAGE_PATH}/zImage
IMG_DTB=${IMAGE_PATH}/${BOARD}-emmc.dtb
-ROOTFS_TAR=${PRJ_PATH}/../rootfs/rootfs_${ROOTFS}.tar.bz2
+ROOTFS_TAR=${PRJ_PATH}/../rootfs/${ROOTFS_DIR}.tar.bz2
MNT_POINT=./mnt
LOOP_DEV=`losetup -f | cut -d/ -f3`
diff --git a/bsp/kernel/build.sh b/bsp/kernel/build.sh
index b786ad4..6398199 100755
--- a/bsp/kernel/build.sh
+++ b/bsp/kernel/build.sh
@@ -1,25 +1,20 @@
#!/bin/bash
-INST_DRIVER=1
-
PRJ_PATH=`pwd`
-IMG_PATH=${PRJ_PATH}/../images/boot
-
BOARD=igkboard
-
+BSP_BRANCH=lf-5.10.52-2.1.0
CROSS_TOOL=/opt/buildroot/cortexA7/bin/arm-linux-
-# linux kernel tarball path and branch
+INST_DRIVER=1
+
TAR_PATH=${PRJ_PATH}/../tarball
-BSP_BRANCH=lf-5.10.52-2.1.0
+IMG_PATH=${PRJ_PATH}/../images/boot
BOOT=emmc
-
LINUX_SRC=linux-imx
PATCH_FILE=${PRJ_PATH}/patch/${LINUX_SRC}-${BOARD}.patch
-
CONF_FILE=arch/arm/configs/${BOARD}_defconfig
JOBS=`cat /proc/cpuinfo | grep processor | wc -l`
diff --git a/bsp/rootfs/build.sh b/bsp/rootfs/build.sh
index 625580d..11d2a5c 100755
--- a/bsp/rootfs/build.sh
+++ b/bsp/rootfs/build.sh
@@ -5,16 +5,26 @@
BOARD=igkboard
-DRV_PATH=${PRJ_PATH}/driver
+# $SYSTEM should be buildroot, yocto or debian
+# Buildroot distro should be: buildroot-2021.02
+# Yocto distro should be : hardknott
+# Debian distro should be : buster or bullseye
+SYSTEM=buildroot
+DISTRO=v2021.02
+
+SYSTYPE=`echo $SYSTEM | tr 'A-Z' 'a-z'`
+if [ $SYSTYPE == "debian" ] ; then
+ SYSNAME=${DISTRO}
+else
+ SYSNAME=${SYSTYPE}
+fi
+ROOTFS_DIR=rootfs_${SYSNAME}
+
TAR_PATH=${PRJ_PATH}/../tarball
-
-# rootfs should be buildroot/yocto or bullseye for debian system
-ROOTFS=buildroot
-
-ROOTFS_DIR=rootfs_${ROOTFS}
-ARCH=armhf
+DRV_PATH=${PRJ_PATH}/driver
# rootfs configuration
+ARCH=armhf
DEF_USER=lingyun
DEF_PASSWD=12345
DEF_HOSTNAME=${BOARD}
@@ -72,8 +82,8 @@
if [ -d ${ROOTFS_DIR} ] ; then
return ;
else
- if [ $ROOTFS == "buildroot" -o $ROOTFS == "yocto" ] ; then
- echo " ERROR: miss rootfs ${ROOTFS}, exit now. "
+ if [ $SYSTYPE != "debian" ] ; then
+ echo " ERROR: miss ${SYSTEM}(${DISTRO}) rootfs, exit now. "
echo ""
exit;
fi
@@ -86,7 +96,7 @@
export LANG=C
printf "\n\n -- debootstrap fetch start --\n\n"
- debootstrap --arch=${ARCH} --foreign ${ROOTFS} ${ROOTFS_DIR} http://ftp.cn.debian.org/debian/
+ debootstrap --arch=${ARCH} --foreign ${DISTRO} ${ROOTFS_DIR} http://ftp.cn.debian.org/debian/
chroot ${ROOTFS_DIR} debootstrap/debootstrap --second-stage
printf "\n\n -- debootstrap config start --\n\n"
@@ -181,7 +191,7 @@
function do_buildroot()
{
- if [ $ROOTFS != "buildroot" ] ; then
+ if [ $SYSTYPE != "buildroot" ] ; then
return ;
fi
@@ -216,7 +226,7 @@
do_common
# update hostnmae and issue
- echo "Welcome to LingYun IoT Gateway Kit Board GNU/Linux $ROOTFS system, default password '$DEF_PASSWD'." > ${ROOTFS_DIR}/etc/issue
+ echo "Welcome to LingYun IoT Gateway Kit Board GNU/Linux ${SYSTEM}(${DISTRO}) system, default password '$DEF_PASSWD'." > ${ROOTFS_DIR}/etc/issue
echo $DEF_HOSTNAME > ${ROOTFS_DIR}/etc/hostname
grep "$BOARD" ${ROOTFS_DIR}/etc/hosts > /dev/null 2>&1
if [ $? != 0 ] ; then
@@ -282,7 +292,7 @@
echo "do rootfs continue "
# debian rootfs need apt install packet
- if [ $ROOTFS != "buildroot" -a $ROOTFS != "yocto" ] ;then
+ if [ $SYSTYPE == "debian" ] ;then
do_apt
fi
diff --git a/bsp/tarball/build.sh b/bsp/tarball/build.sh
index 396b239..d9b7883 100755
--- a/bsp/tarball/build.sh
+++ b/bsp/tarball/build.sh
@@ -2,32 +2,45 @@
TAR_PATH=`pwd`
-TARBALL_URL=http://weike-iot.com:2211/imx6ull/bsp
+TARBALL_URL=http://127.0.0.1:2211/imx6ull/bsp
GIT_URL_NXP="https://source.codeaurora.org/external/imx"
-IMX_BRANCH="lf-5.10.52-2.1.0"
+BSP_BRANCH=lf-5.10.52-2.1.0
-# rootfs should be buildroot/yocto or bullseye for debian system
-ROOTFS=buildroot
+
+# $SYSTEM should be buildroot, yocto or debian
+# Buildroot distro should be: buildroot-2021.02
+# Yocto distro should be : hardknott
+# Debian distro should be : buster or bullseye
+SYSTEM=buildroot
+DISTRO=v2021.02
+
+SYSTYPE=`echo $SYSTEM | tr 'A-Z' 'a-z'`
+if [ $SYSTYPE == "debian" ] ; then
+ SYSNAME=${DISTRO}
+else
+ SYSNAME=${SYSTYPE}
+fi
+ROOTFS_DIR=rootfs_${SYSNAME}
function do_fetch_git()
{
SRC=$1
- if [ -s ${SRC}-${IMX_BRANCH}.tar.xz ] ; then
+ if [ -s ${SRC}-${BSP_BRANCH}.tar.xz ] ; then
echo " -- ${SRC} fetch alread, skip it --"
return;
fi
if [ ! -d $SRC ] ; then
- git clone --branch ${IMX_BRANCH} ${GIT_URL_NXP}/${SRC}.git
+ git clone --branch ${BSP_BRANCH} ${GIT_URL_NXP}/${SRC}.git
fi
echo " -- start git clone ${SRC} now --"
cd $SRC
git config tar.tar.xz.command "xz -c"
- git archive --format=tar.xz --prefix=${SRC}/ ${IMX_BRANCH} > ${TAR_PATH}/${SRC}-${IMX_BRANCH}.tar.xz
+ git archive --format=tar.xz --prefix=${SRC}/ ${BSP_BRANCH} > ${TAR_PATH}/${SRC}-${BSP_BRANCH}.tar.xz
cd -
rm -rf $SRC
@@ -51,9 +64,9 @@
function do_fetch()
{
if [ ! -z $TARBALL_URL ] ; then
- do_fetch_url uboot-imx-${IMX_BRANCH}.tar.xz
- do_fetch_url linux-imx-${IMX_BRANCH}.tar.xz
- do_fetch_url rootfs_${ROOTFS}.tar.bz2
+ do_fetch_url uboot-imx-${BSP_BRANCH}.tar.xz
+ do_fetch_url linux-imx-${BSP_BRANCH}.tar.xz
+ do_fetch_url ${ROOTFS_DIR}.tar.bz2
do_fetch_url rtl8188fu.tar.bz2
do_fetch_url firmware.tar.bz2
else
--
Gitblit v1.9.1