Minimize configuration.sh

This commit is contained in:
zador-blood-stained 2016-04-18 19:20:15 +03:00
parent 78abb240d5
commit 61393a1287
4 changed files with 46 additions and 134 deletions

View file

@ -84,7 +84,7 @@ buildall_start=`date +%s`
for line in "${buildlist[@]}"; do
unset IFS LINUXFAMILY LINUXCONFIG LINUXKERNEL LINUXSOURCE KERNELBRANCH BOOTLOADER BOOTSOURCE BOOTBRANCH \
CPUMIN CPUMAX UBOOT_VER KERNEL_VER GOVERNOR BOOTSIZE UBOOT_TOOLCHAIN KERNEL_TOOLCHAIN
CPUMIN CPUMAX UBOOT_VER KERNEL_VER GOVERNOR BOOTSIZE UBOOT_TOOLCHAIN KERNEL_TOOLCHAIN PACKAGE_LIST_EXCLUDE
read BOARD BRANCH RELEASE BUILD_DESKTOP <<< $line
display_alert "Building" "Board: $BOARD Kernel:$BRANCH${RELEASE:+ Release: $RELEASE}${BUILD_DESKTOP:+ Desktop: $BUILD_DESKTOP}" "ext"
source $SRC/lib/main.sh

View file

@ -32,7 +32,6 @@ case $LINUXFAMILY in
[[ -z $LINUXCONFIG && $BRANCH == "default" ]] && LINUXCONFIG="linux-"$LINUXFAMILY-"$BRANCH"
[[ -z $LINUXCONFIG && $BRANCH != "default" ]] && LINUXCONFIG="linux-sunxi-"$BRANCH
# Kernel
KERNEL_DEFAULT='https://github.com/linux-sunxi/linux-sunxi'
KERNEL_DEFAULT_BRANCH="sunxi-3.4"
KERNEL_DEFAULT_SOURCE="linux-sunxi"
@ -40,24 +39,20 @@ case $LINUXFAMILY in
[ "$USE_MAINLINE_GOOGLE_MIRROR" = "yes" ] && KERNEL_DEV='https://kernel.googlesource.com/pub/scm/linux/kernel/git/stable/linux-stable'
KERNEL_DEV_BRANCH=""
KERNEL_DEV_SOURCE="linux-vanilla"
KERNEL_NEXT='git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git'
[ "$USE_MAINLINE_GOOGLE_MIRROR" = "yes" ] && KERNEL_NEXT='https://kernel.googlesource.com/pub/scm/linux/kernel/git/stable/linux-stable'
KERNEL_NEXT_BRANCH="v"`wget -qO- https://www.kernel.org/finger_banner | grep "The latest st" | awk '{print $NF}' | head -1`
KERNEL_NEXT_SOURCE="linux-vanilla"
# U-boot
UBOOT_DEFAULT="git://git.denx.de/u-boot.git"
BOOTLOADER="git://git.denx.de/u-boot.git"
# latest stable v2016.03 broken gmac on sun7i, fixing it for DEFAULT and NEXT
#UBOOT_DEFAULT_BRANCH="v"$(git ls-remote git://git.denx.de/u-boot.git | grep -v rc | grep -v "\^" | tail -1 | cut -d "v" -f 2)
UBOOT_DEFAULT_BRANCH="v2016.01"
UBOOT_DEFAULT_SOURCE="u-boot"
UBOOT_NEXT=$UBOOT_DEFAULT
UBOOT_NEXT_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_NEXT_SOURCE=$UBOOT_DEFAULT_SOURCE
UBOOT_DEV=$UBOOT_DEFAULT
UBOOT_DEV_BRANCH=""
UBOOT_DEV_SOURCE=$UBOOT_DEFAULT_SOURCE
UBOOT_DEV_SOURCE="u-boot-dev"
;;
sun8i)
@ -72,11 +67,9 @@ case $LINUXFAMILY in
KERNEL_DEV="https://github.com/wens/linux"
KERNEL_DEV_BRANCH=h3-emac
KERNEL_DEV_SOURCE="linux-sun8i-mainline"
UBOOT_DEFAULT="git://git.denx.de/u-boot.git"
BOOTLOADER="git://git.denx.de/u-boot.git"
UBOOT_DEFAULT_BRANCH="v"$(git ls-remote git://git.denx.de/u-boot.git | grep -v rc | grep -v "\^" | tail -1 | cut -d "v" -f 2)
UBOOT_DEFAULT_SOURCE="u-boot"
UBOOT_DEV=$UBOOT_DEFAULT
UBOOT_DEV_BRANCH=""
UBOOT_DEV_SOURCE=$UBOOT_DEFAULT_SOURCE
;;
@ -88,15 +81,9 @@ case $LINUXFAMILY in
KERNEL_NEXT='https://github.com/tobetter/linux'
KERNEL_NEXT_BRANCH="odroidxu4-v4.2"
KERNEL_NEXT_SOURCE="linux-odroidxu-next"
UBOOT_DEFAULT="https://github.com/hardkernel/u-boot.git"
UBOOT_DEFAULT_BRANCH="odroidxu3-v2012.07"
UBOOT_DEFAULT_SOURCE="u-boot-odroidxu"
UBOOT_NEXT=$UBOOT_DEFAULT
UBOOT_NEXT_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_NEXT_SOURCE=$UBOOT_DEFAULT_SOURCE
UBOOT_DEV=$UBOOT_DEFAULT
UBOOT_DEV_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_DEV_SOURCE=$UBOOT_DEFAULT_SOURCE
BOOTLOADER="https://github.com/hardkernel/u-boot.git"
BOOTBRANCH="odroidxu3-v2012.07"
BOOTSOURCE="u-boot-odroidxu"
;;
odroidc1)
@ -106,33 +93,18 @@ case $LINUXFAMILY in
KERNEL_NEXT='https://github.com/tobetter/linux'
KERNEL_NEXT_BRANCH="odroidxu4-v4.2"
KERNEL_NEXT_SOURCE="linux-odroidxu-next"
UBOOT_DEFAULT="https://github.com/hardkernel/u-boot.git"
UBOOT_DEFAULT_BRANCH="odroidc-v2011.03"
UBOOT_DEFAULT_SOURCE="u-boot-odroidc1"
UBOOT_NEXT=$UBOOT_DEFAULT
UBOOT_NEXT_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_NEXT_SOURCE=$UBOOT_DEFAULT_SOURCE
UBOOT_DEV=$UBOOT_DEFAULT
UBOOT_DEV_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_DEV_SOURCE=$UBOOT_DEFAULT_SOURCE
BOOTLOADER="https://github.com/hardkernel/u-boot.git"
BOOTBRANCH="odroidc-v2011.03"
BOOTSOURCE="u-boot-odroidc1"
;;
odroidc2)
KERNEL_DEFAULT='https://github.com/hardkernel/linux'
KERNEL_DEFAULT_BRANCH="odroidc2-3.14.y"
KERNEL_DEFAULT_SOURCE="linux-odroidc2"
KERNEL_NEXT='https://github.com/hardkernel/linux'
KERNEL_NEXT_BRANCH="odroidc2-3.14.y"
KERNEL_NEXT_SOURCE="linux-odroidc2-next"
UBOOT_DEFAULT="https://github.com/hardkernel/u-boot.git"
UBOOT_DEFAULT_BRANCH="odroidc2-v2015.01"
UBOOT_DEFAULT_SOURCE="u-boot-odroidc2"
UBOOT_NEXT=$UBOOT_DEFAULT
UBOOT_NEXT_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_NEXT_SOURCE=$UBOOT_DEFAULT_SOURCE
UBOOT_DEV=$UBOOT_DEFAULT
UBOOT_DEV_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_DEV_SOURCE=$UBOOT_DEFAULT_SOURCE
BOOTLOADER="https://github.com/hardkernel/u-boot.git"
BOOTBRANCH="odroidc2-v2015.01"
BOOTSOURCE="u-boot-odroidc2"
;;
udoo)
@ -142,15 +114,9 @@ case $LINUXFAMILY in
KERNEL_NEXT="https://github.com/patrykk/linux-udoo"
KERNEL_NEXT_BRANCH="v4.4.0-6-vivante-5.0.11.p7.3"
KERNEL_NEXT_SOURCE="linux-udoo-next"
UBOOT_DEFAULT="https://github.com/UDOOboard/uboot-imx"
UBOOT_DEFAULT_BRANCH="2015.10.fslc-qdl"
UBOOT_DEFAULT_SOURCE="u-boot-udoo"
UBOOT_NEXT=$UBOOT_DEFAULT
UBOOT_NEXT_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_NEXT_SOURCE=$UBOOT_DEFAULT_SOURCE
UBOOT_DEV=$UBOOT_DEFAULT
UBOOT_DEV_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_DEV_SOURCE=$UBOOT_DEFAULT_SOURCE
BOOTLOADER="https://github.com/UDOOboard/uboot-imx"
BOOTBRANCH="2015.10.fslc-qdl"
BOOTSOURCE="u-boot-udoo"
;;
neo)
@ -159,15 +125,9 @@ case $LINUXFAMILY in
KERNEL_DEFAULT_BRANCH="3.14-1.0.x-udoo"
#KERNEL_DEFAULT_SOURCE="linux-udoo-neo"
KERNEL_DEFAULT_SOURCE="linux-udoo"
UBOOT_DEFAULT="https://github.com/UDOOboard/uboot-imx"
UBOOT_DEFAULT_BRANCH="2015.04.imx-neo"
UBOOT_DEFAULT_SOURCE="u-boot-neo"
UBOOT_NEXT=$UBOOT_DEFAULT
UBOOT_NEXT_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_NEXT_SOURCE=$UBOOT_DEFAULT_SOURCE
UBOOT_DEV=$UBOOT_DEFAULT
UBOOT_DEV_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_DEV_SOURCE=$UBOOT_DEFAULT_SOURCE
BOOTLOADER="https://github.com/UDOOboard/uboot-imx"
BOOTBRANCH="2015.04.imx-neo"
BOOTSOURCE="u-boot-neo"
;;
cubox)
@ -181,45 +141,27 @@ case $LINUXFAMILY in
KERNEL_DEV='https://github.com/SolidRun/linux-fslc'
KERNEL_DEV_BRANCH="3.14-1.0.x-mx6-sr"
KERNEL_DEV_SOURCE="linux-cubox"
UBOOT_DEFAULT="https://github.com/SolidRun/u-boot-imx6"
UBOOT_DEFAULT_BRANCH="imx6"
UBOOT_DEFAULT_SOURCE="u-boot-cubox"
UBOOT_NEXT=$UBOOT_DEFAULT
UBOOT_NEXT_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_NEXT_SOURCE=$UBOOT_DEFAULT_SOURCE
UBOOT_DEV=$UBOOT_DEFAULT
UBOOT_DEV_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_DEV_SOURCE=$UBOOT_DEFAULT_SOURCE
BOOTLOADER="https://github.com/SolidRun/u-boot-imx6"
BOOTBRANCH="imx6"
BOOTSOURCE="u-boot-cubox"
;;
s500)
s500)
KERNEL_DEFAULT='https://github.com/LeMaker/linux-actions'
KERNEL_DEFAULT_BRANCH="linux-3.10.y"
KERNEL_DEFAULT_SOURCE="linux-s500"
UBOOT_DEFAULT="https://github.com/LeMaker/u-boot-actions"
UBOOT_DEFAULT_BRANCH="s500-master"
UBOOT_DEFAULT_SOURCE="u-boot-s500"
UBOOT_NEXT=$UBOOT_DEFAULT
UBOOT_NEXT_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_NEXT_SOURCE=$UBOOT_DEFAULT_SOURCE
UBOOT_DEV=$UBOOT_DEFAULT
UBOOT_DEV_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_DEV_SOURCE=$UBOOT_DEFAULT_SOURCE
BOOTLOADER="https://github.com/LeMaker/u-boot-actions"
BOOTBRANCH="s500-master"
BOOTSOURCE="u-boot-s500"
;;
toradex)
KERNEL_DEFAULT="git://git.toradex.com/linux-toradex.git"
KERNEL_DEFAULT_BRANCH="toradex_imx_3.14.28_1.0.0_ga"
KERNEL_DEFAULT_SOURCE="linux-toradex"
UBOOT_DEFAULT="git://git.toradex.com/u-boot-toradex.git"
UBOOT_DEFAULT_BRANCH="2015.04-toradex"
UBOOT_DEFAULT_SOURCE="u-boot-toradex"
UBOOT_NEXT=$UBOOT_DEFAULT
UBOOT_NEXT_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_NEXT_SOURCE=$UBOOT_DEFAULT_SOURCE
UBOOT_DEV=$UBOOT_DEFAULT
UBOOT_DEV_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_DEV_SOURCE=$UBOOT_DEFAULT_SOURCE
BOOTLOADER="git://git.toradex.com/u-boot-toradex.git"
BOOTBRANCH="2015.04-toradex"
BOOTSOURCE="u-boot-toradex"
;;
marvell)
@ -234,15 +176,9 @@ case $LINUXFAMILY in
[ "$USE_MAINLINE_GOOGLE_MIRROR" = "yes" ] && KERNEL_DEV='https://kernel.googlesource.com/pub/scm/linux/kernel/git/stable/linux-stable'
KERNEL_DEV_BRANCH=""
KERNEL_DEV_SOURCE="linux-vanilla"
UBOOT_DEFAULT="https://github.com/SolidRun/u-boot-armada38x"
UBOOT_DEFAULT_BRANCH="u-boot-2013.01-15t1-clearfog"
UBOOT_DEFAULT_SOURCE="u-boot-armada"
UBOOT_NEXT=$UBOOT_DEFAULT
UBOOT_NEXT_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_NEXT_SOURCE=$UBOOT_DEFAULT_SOURCE
UBOOT_DEV=$UBOOT_DEFAULT
UBOOT_DEV_BRANCH=$UBOOT_DEFAULT_BRANCH
UBOOT_DEV_SOURCE=$UBOOT_DEFAULT_SOURCE
BOOTLOADER="https://github.com/SolidRun/u-boot-armada38x"
BOOTBRANCH="u-boot-2013.01-15t1-clearfog"
BOOTSOURCE="u-boot-armada"
;;
*)
@ -282,12 +218,14 @@ case $ARCH in
TARGETS=Image
CROSS_COMPILE="$CCACHE aarch64-linux-gnu-"
ARCHITECTURE=arm64
QEMU_BINARY="qemu-aarch64-static"
;;
armhf)
TARGETS=zImage
CROSS_COMPILE="$CCACHE arm-linux-gnueabihf-"
ARCHITECTURE=arm
QEMU_BINARY="qemu-arm-static"
;;
esac

View file

@ -88,8 +88,7 @@ debootstrap_ng()
# stage: cleanup
rm -f $CACHEDIR/sdcard/usr/sbin/policy-rc.d
rm -f $CACHEDIR/sdcard/usr/bin/qemu-arm-static
rm -f $CACHEDIR/sdcard/usr/bin/qemu-aarch64-static
rm -f $CACHEDIR/sdcard/usr/bin/$QEMU_BINARY
if [[ -x $CACHEDIR/sdcard/sbin/initctl.REAL ]]; then
mv -f $CACHEDIR/sdcard/sbin/initctl.REAL $CACHEDIR/sdcard/sbin/initctl
fi
@ -138,15 +137,12 @@ debootstrap_ng()
create_rootfs_cache()
{
[[ $BUILD_DESKTOP == yes ]] && local variant_desktop=yes
[[ -n $PACKAGE_LIST_EXCLUDE ]] && local package_exclude="--exclude="${PACKAGE_LIST_EXCLUDE// /,}
local packages_hash=$(get_package_list_hash $PACKAGE_LIST)
local cache_fname="$CACHEDIR/rootfs/$RELEASE${variant_desktop:+_desktop}-ng-$ARCH.$packages_hash.tgz"
local display_name=$RELEASE${variant_desktop:+_desktop}-ng-$ARCH.${packages_hash:0:3}...${packages_hash:29}.tgz
if [[ -f $cache_fname ]]; then
local filemtime=$(stat -c %Y $cache_fname)
local currtime=$(date +%s)
local diff=$(( (currtime - filemtime) / 86400 ))
display_alert "Extracting $display_name" "$diff days old" "info"
local date_diff=$(( ($(date +%s) - $(stat -c %Y $cache_fname)) / 86400 ))
display_alert "Extracting $display_name" "$date_diff days old" "info"
pv -p -b -r -c -N "$display_name" "$cache_fname" | pigz -dc | tar xp -C $CACHEDIR/sdcard/
else
display_alert "Creating new rootfs for" "$RELEASE" "info"
@ -165,20 +161,15 @@ create_rootfs_cache()
[[ -z $OUTPUT_DIALOG && $RELEASE != wheezy ]] && local apt_extra_progress="--show-progress -o DPKG::Progress-Fancy=1"
display_alert "Installing base system" "Stage 1/2" "info"
eval 'debootstrap --include=locales $package_exclude --arch=$ARCH --foreign $RELEASE $CACHEDIR/sdcard/ $apt_mirror' \
eval 'debootstrap --include=locales ${PACKAGE_LIST_EXCLUDE:+ --exclude=${PACKAGE_LIST_EXCLUDE// /,}} \
--arch=$ARCH --foreign $RELEASE $CACHEDIR/sdcard/ $apt_mirror' \
${PROGRESS_LOG_TO_FILE:+' | tee -a $DEST/debug/debootstrap.log'} \
${OUTPUT_DIALOG:+' | dialog --backtitle "$backtitle" --progressbox "Debootstrap (stage 1/2)..." $TTY_Y $TTY_X'} \
${OUTPUT_VERYSILENT:+' >/dev/null 2>/dev/null'}
[[ ${PIPESTATUS[0]} -ne 0 ]] && exit_with_error "Debootstrap base system first stage failed"
if [[ $ARCH == *64* ]]; then
cp /usr/bin/qemu-aarch64-static $CACHEDIR/sdcard/usr/bin/
else
cp /usr/bin/qemu-arm-static $CACHEDIR/sdcard/usr/bin/
fi
cp /usr/bin/$QEMU_BINARY $CACHEDIR/sdcard/usr/bin/
# NOTE: not needed?
mkdir -p $CACHEDIR/sdcard/usr/share/keyrings/
cp /usr/share/keyrings/debian-archive-keyring.gpg $CACHEDIR/sdcard/usr/share/keyrings/
@ -195,29 +186,17 @@ create_rootfs_cache()
# policy-rc.d script prevents starting or reloading services
# from dpkg pre- and post-install scripts during image creation
cat <<EOF > $CACHEDIR/sdcard/usr/sbin/policy-rc.d
#!/bin/sh
exit 101
EOF
printf '#!/bin/sh\nexit 101' > $CACHEDIR/sdcard/usr/sbin/policy-rc.d
chmod 755 $CACHEDIR/sdcard/usr/sbin/policy-rc.d
# ported from debootstrap and multistrap for upstart support
if [[ -x $CACHEDIR/sdcard/sbin/initctl ]]; then
mv $CACHEDIR/sdcard/sbin/start-stop-daemon $CACHEDIR/sdcard/sbin/start-stop-daemon.REAL
cat <<EOF > $CACHEDIR/sdcard/sbin/start-stop-daemon
#!/bin/sh
echo "Warning: Fake start-stop-daemon called, doing nothing"
EOF
printf '#!/bin/sh\necho "Warning: Fake start-stop-daemon called, doing nothing"' > $CACHEDIR/sdcard/sbin/start-stop-daemon
chmod 755 $CACHEDIR/sdcard/sbin/start-stop-daemon
fi
if [[ -x $CACHEDIR/sdcard/sbin/initctl ]]; then
mv $CACHEDIR/sdcard/sbin/initctl $CACHEDIR/sdcard/sbin/initctl.REAL
cat <<EOF > $CACHEDIR/sdcard/sbin/initctl
#!/bin/sh
echo "Warning: Fake initctl called, doing nothing"
EOF
printf '#!/bin/sh\necho "Warning: Fake initctl called, doing nothing"' $CACHEDIR/sdcard/sbin/initctl
chmod 755 $CACHEDIR/sdcard/sbin/initctl
fi
@ -266,8 +245,7 @@ EOF
[[ ${PIPESTATUS[0]} -ne 0 ]] && exit_with_error "Installation of Armbian packages failed"
# DEBUG: print free space
echo
echo "Free space:"
echo -e "\nFree space:"
df -h | grep "$CACHEDIR/" | tee -a $DEST/debug/debootstrap.log
# stage: remove downloaded packages

View file

@ -102,11 +102,7 @@ if [ ! -f "$cache_fname" ]; then
debootstrap --include=openssh-server $package_exclude --arch=$ARCH --foreign $RELEASE $CACHEDIR/sdcard/ $redir | dialog --backtitle "$backtitle" --title "Debootstrap $DISTRIBUTION $RELEASE base system to image template ..." --progressbox $TTY_Y $TTY_X
# we need emulator for second stage
if [[ $ARCH == *64* ]]; then
cp /usr/bin/qemu-aarch64-static $CACHEDIR/sdcard/usr/bin/
else
cp /usr/bin/qemu-arm-static $CACHEDIR/sdcard/usr/bin/
fi
cp /usr/bin/$QEMU_BINARY $CACHEDIR/sdcard/usr/bin/
# and keys
d=$CACHEDIR/sdcard/usr/share/keyrings/
@ -265,7 +261,7 @@ KILLPROC=$(ps -uax | pgrep acpid | tail -1); if [ -n "$KILLPROC" ]; then kill -9
# same info outside the image
cp $CACHEDIR/sdcard/etc/armbian.txt $CACHEDIR/
sleep 2
rm -f $CACHEDIR/sdcard/usr/bin/qemu-arm-static $CACHEDIR/sdcard/usr/bin/qemu-aarch64-static
rm -f $CACHEDIR/sdcard/usr/bin/$QEMU_BINARY
sleep 2
umount -l $CACHEDIR/sdcard/boot > /dev/null 2>&1 || /bin/true
umount -l $CACHEDIR/sdcard/