From fd27ef17c1717b811924626bb902b3b19ea97616 Mon Sep 17 00:00:00 2001
From: android <android@lingyun.com>
Date: Thu, 11 Jul 2024 11:39:44 +0800
Subject: [PATCH] update android_sdk build shell script for do_patch

---
 android_sdk/build.sh |  141 ++++++++++++++++++++++++----------------------
 1 files changed, 74 insertions(+), 67 deletions(-)

diff --git a/android_sdk/build.sh b/android_sdk/build.sh
index c4eac55..e1550d4 100755
--- a/android_sdk/build.sh
+++ b/android_sdk/build.sh
@@ -7,7 +7,7 @@
 TOP_PATH=$(realpath $PRJ_PATH/..)
 
 # SDK build workspace
-SDK_DIR=/work/sdk_build
+SDK_DIR=/work/android_build
 
 # binaries build prefix install path
 PRFX_PATH=$PRJ_PATH/install
@@ -101,101 +101,106 @@
     export SDK_VER=`jq -r ".android.sdk_ver" $CONF_FILE`
     export SDK_PATH=`jq -r ".android.sdk_path" $CONF_FILE`
 
-	export ARCH=arm64
+    export ARCH=arm64
 
-	if [[ $BOARD =~ igkboard-rk3568 ]] ; then
-		LUNCH_BOARD=rk3568_t-userdebug
-	fi
+    if [[ $BOARD =~ igkboard-rk3568 ]] ; then
+        LAUNCH_BOARD=rk3568_t-userdebug
+    fi
 
-	PYTHON_VERSION=$(python --version 2>&1 | awk '{print $2}' | cut -d. -f1)
-	if [ $PYTHON_VERSION != "3" ] ; then
-		PYTHON_VERSION=$(python --version 2>&1)
-		pr_error "ERROR: This SDK build need Python3, current version is $PYTHON_VERSION"
-		pr_warn "You can use 'sudo update-alternatives --config python' command to switch it"
-		exit
-	fi
+    PYTHON_VERSION=$(python --version 2>&1 | awk '{print $2}' | cut -d. -f1)
+    if [ $PYTHON_VERSION != "3" ] ; then
+        PYTHON_VERSION=$(python --version 2>&1)
+        pr_error "ERROR: This SDK build need Python3, current version is $PYTHON_VERSION"
+        pr_warn "You can use 'sudo update-alternatives --config python' command to switch it"
+        exit
+    fi
 }
 
 function do_fetch()
 {
-	SDK_FPATH=$SDK_PATH/$SDK_VER
+    SDK_TAR=$SDK_PATH/$SDK_VER.tar.bz2
+    SDK_FLAG=$SDK_DIR/kernel-5.10/Makefile
 
-	PATCH_FLAG="$SDK_DIR/kernel-5.10/arch/arm64/configs/rockchip_defconfig"
-	if [ -e $PATCH_FLAG ] ;  then
-		pr_warn "SDK source code fetched already, skip do fetch"
-	fi
+    if [ -e $SDK_FLAG ] ;  then
+        pr_warn "INFO: SDK source code fetched already, skip do fetch"
+    fi
 
-	if [ ! -d $SDK_DIR/.repo ] ; then
+    if [ ! -d $SDK_DIR/.repo ] ; then
 
-		SDK_FILE=$SDK_PATH/$SDK_VER.tar.bz2
+        if [ ! -e $SDK_TAR ] ; then
+            pr_error "ERROR: SDK package '$SDK_TAR' doesn't exist!"
+            exit
+        fi
 
-		if [ ! -e $SDK_FILE ] ; then
-			pr_error "ERROR: SDK package '$SDK_FILE' doesn't exist!"
-			exit
-		fi
+        pr_info "decompress SDK tarball $SDK_TAR..."
+        do_unpack $SDK_TAR $SDK_DIR
+    fi
 
-		pr_info "decompress SDK tarball $SDK_FILE..."
+    cd $SDK_DIR
 
-		do_unpack $SDK_FILE $SDK_DIR
-	fi
-	
-	cd $SDK_DIR
+    if [ ! -e $SDK_FLAG ] ; then
+        pr_info "repo sync to checkout source code..."
+        ./.repo/repo/repo sync -l
+    fi
+}
 
-	if [ ! -e $PATCH_FLAG ] ; then
-		pr_info "repo sync to checkout source code..."
-		./.repo/repo/repo sync -l
-	fi
+function do_patch()
+{
+    PATCH_FLAG="$SDK_DIR/kernel-5.10/arch/arm64/configs/rockchip_defconfig"
 
-	if ! grep -q '^CONFIG_CAN=y' $PATCH_FLAG ; then 
-		pr_info "patch for android..."
-		cd kernel-5.10
-		patch -p1 < $PRJ_PATH/patches/kernel.patch
-		
-		cd ../vendor/rockchip/common/
-		patch -p1 < $PRJ_PATH/patches/4g_patch/vendor.patch
+    cd $SDK_DIR
 
-		cd $SDK_DIR/device/rockchip/common/
-		patch -p1 < $PRJ_PATH/patches/4g_patch/device_rockchip.patch
+    if grep -q '^CONFIG_CAN=y' $PATCH_FLAG ; then
+        pr_warn "INFO: Patch for Android SDK already"
+        return ;
+    fi
 
-		cd $SDK_DIR/device/google/atv/
-		patch -p1 < $PRJ_PATH/patches/4g_patch/device_google.patch
+    pr_info "do patch for android source code"
+    cd kernel-5.10
+    patch -p1 < $PRJ_PATH/patches/kernel.patch
 
-		cd $SDK_DIR/hardware/interfaces/
-		patch -p1 < $PRJ_PATH/patches/4g_patch/hardware_interfaces.patch
+    cd ../vendor/rockchip/common/
+    patch -p1 < $PRJ_PATH/patches/4g_patch/vendor.patch
 
-		cd $SDK_DIR/hardware/ril/
-		patch -p1 < $PRJ_PATH/patches/4g_patch/hardware_ril.patch
+    cd $SDK_DIR/device/rockchip/common/
+    patch -p1 < $PRJ_PATH/patches/4g_patch/device_rockchip.patch
 
-		cd $SDK_DIR/frameworks/opt/telephony/
-		patch -p1 < $PRJ_PATH/patches/4g_patch/frameworks_opt_telephony.patch
-		
-		pr_info "copy 4G RIL library..."
+    cd $SDK_DIR/device/google/atv/
+    patch -p1 < $PRJ_PATH/patches/4g_patch/device_google.patch
 
-		cp -f $FILES_PATCH_4G/ip-* $SDK_DIR/vendor/rockchip/common/phone/etc/ppp/
-		cp -f $FILES_PATCH_4G/ql-ril.conf $SDK_DIR/vendor/rockchip/common/phone/etc/ppp/
-		cp -f $FILES_PATCH_4G/chat $SDK_DIR/vendor/rockchip/common/phone/bin/
-		cp -f $FILES_PATCH_4G/libreference-ril.so $SDK_DIR/vendor/rockchip/common/phone/lib/libreference-ril-em05.so
+    cd $SDK_DIR/hardware/interfaces/
+    patch -p1 < $PRJ_PATH/patches/4g_patch/hardware_interfaces.patch
 
-		pr_info "copy wifi firmware..."
+    cd $SDK_DIR/hardware/ril/
+    patch -p1 < $PRJ_PATH/patches/4g_patch/hardware_ril.patch
 
-		cp -f $FILES_PATCH_WIFI/mt7601u.bin $SDK_DIR/vendor/rockchip/common/wifi/firmware
+    cd $SDK_DIR/frameworks/opt/telephony/
+    patch -p1 < $PRJ_PATH/patches/4g_patch/frameworks_opt_telephony.patch
 
-		cd 
-	fi
+    pr_info "copy 4G RIL library..."
+
+    cp -f $FILES_PATCH_4G/ip-* $SDK_DIR/vendor/rockchip/common/phone/etc/ppp/
+    cp -f $FILES_PATCH_4G/ql-ril.conf $SDK_DIR/vendor/rockchip/common/phone/etc/ppp/
+    cp -f $FILES_PATCH_4G/chat $SDK_DIR/vendor/rockchip/common/phone/bin/
+    cp -f $FILES_PATCH_4G/libreference-ril.so $SDK_DIR/vendor/rockchip/common/phone/lib/libreference-ril-em05.so
+
+    pr_info "copy wifi firmware..."
+
+    cp -f $FILES_PATCH_WIFI/mt7601u.bin $SDK_DIR/vendor/rockchip/common/wifi/firmware
 }
 
 function do_build()
 {
-	pr_info "Choose your board"
+    cd $SDK_DIR
 
-	cd $SDK_DIR
-	
-	source build/envsetup.sh
-	lunch $LUNCH_BOARD
-	./build.sh -AUCKu
+    pr_info "start build $LAUNCH_BOARD..."
 
-	pr_info "System image will be installed to $SDK_DIR/rockdev/Image-rk3568_t"
-	ls ./rockdev/Image-rk3568_t
+    source build/envsetup.sh
+    lunch $LAUNCH_BOARD
+    ./build.sh -AUCKu
+
+    pr_info "System image will be installed to $SDK_DIR/rockdev/Image-rk3568_t"
+    ls ./rockdev/Image-rk3568_t
 }
 
 #+-------------------------+
@@ -208,4 +213,6 @@
 
 do_fetch
 
+do_patch
+
 do_build

--
Gitblit v1.9.1