Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  1) #!/bin/sh
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  2) # SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4) TARGET=$1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  5) ARCH=$2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  6) SMP=$3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  7) PREEMPT=$4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8) PREEMPT_RT=$5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) CC_VERSION="$6"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) LD=$7
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) vecho() { [ "${quiet}" = "silent_" ] || echo "$@" ; }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) # Do not expand names
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) set -f
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) # Fix the language to get consistent output
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) LC_ALL=C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) export LC_ALL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) if [ -z "$KBUILD_BUILD_VERSION" ]; then
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) 	VERSION=$(cat .version 2>/dev/null || echo 1)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) 	VERSION=$KBUILD_BUILD_VERSION
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) fi
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) if [ -z "$KBUILD_BUILD_TIMESTAMP" ]; then
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) 	TIMESTAMP=`date`
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) 	TIMESTAMP=$KBUILD_BUILD_TIMESTAMP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) fi
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) if test -z "$KBUILD_BUILD_USER"; then
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) 	LINUX_COMPILE_BY=$(whoami | sed 's/\\/\\\\/')
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) 	LINUX_COMPILE_BY=$KBUILD_BUILD_USER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) fi
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) if test -z "$KBUILD_BUILD_HOST"; then
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) 	LINUX_COMPILE_HOST=`uname -n`
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) 	LINUX_COMPILE_HOST=$KBUILD_BUILD_HOST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) fi
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) UTS_VERSION="#$VERSION"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) CONFIG_FLAGS=""
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) if [ -n "$SMP" ] ; then CONFIG_FLAGS="SMP"; fi
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) if [ -n "$PREEMPT" ] ; then CONFIG_FLAGS="$CONFIG_FLAGS PREEMPT"; fi
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) if [ -n "$PREEMPT_RT" ] ; then CONFIG_FLAGS="$CONFIG_FLAGS PREEMPT_RT"; fi
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) # Truncate to maximum length
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) UTS_LEN=64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) UTS_VERSION="$(echo $UTS_VERSION $CONFIG_FLAGS $TIMESTAMP | cut -b -$UTS_LEN)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) # Generate a temporary compile.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) { echo /\* This file is auto generated, version $VERSION \*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56)   if [ -n "$CONFIG_FLAGS" ] ; then echo "/* $CONFIG_FLAGS */"; fi
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58)   echo \#define UTS_MACHINE \"$ARCH\"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60)   echo \#define UTS_VERSION \"$UTS_VERSION\"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62)   printf '#define LINUX_COMPILE_BY "%s"\n' "$LINUX_COMPILE_BY"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63)   echo \#define LINUX_COMPILE_HOST \"$LINUX_COMPILE_HOST\"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65)   LD_VERSION=$($LD -v | head -n1 | sed 's/(compatible with [^)]*)//' \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) 		      | sed 's/[[:space:]]*$//')
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67)   printf '#define LINUX_COMPILER "%s"\n' "$CC_VERSION, $LD_VERSION"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) } > .tmpcompile
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) # Only replace the real compile.h if the new one is different,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) # in order to preserve the timestamp and avoid unnecessary
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) # recompilations.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) # We don't consider the file changed if only the date/time changed,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) # unless KBUILD_BUILD_TIMESTAMP was explicitly set (e.g. for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) # reproducible builds with that value referring to a commit timestamp).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) # A kernel config change will increase the generation number, thus
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) # causing compile.h to be updated (including date/time) due to the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) # changed comment in the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) # first line.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) if [ -z "$KBUILD_BUILD_TIMESTAMP" ]; then
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82)    IGNORE_PATTERN="UTS_VERSION"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84)    IGNORE_PATTERN="NOT_A_PATTERN_TO_BE_MATCHED"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) fi
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) if [ -r $TARGET ] && \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88)       grep -v $IGNORE_PATTERN $TARGET > .tmpver.1 && \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89)       grep -v $IGNORE_PATTERN .tmpcompile > .tmpver.2 && \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90)       cmp -s .tmpver.1 .tmpver.2; then
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91)    rm -f .tmpcompile
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93)    vecho "  UPD     $TARGET"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94)    mv -f .tmpcompile $TARGET
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) fi
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) rm -f .tmpver.1 .tmpver.2