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