From eac7788db67dec9fb39ec93c689879a29ef783ef Mon Sep 17 00:00:00 2001 From: zador-blood-stained Date: Sun, 21 Aug 2016 16:41:06 +0300 Subject: [PATCH 1/7] Fixes for packages configuration --- chroot-buildpackages.sh | 5 +++- .../debian/patches/add-install-target.patch | 19 +++++++++++++-- .../libmali-sunxi-r3p0/debian/control | 7 +++++- .../debian/patches/overwrite-libraries.patch | 23 +++++++++++++++++++ .../libmali-sunxi-r3p0/debian/patches/series | 1 + 5 files changed, 51 insertions(+), 4 deletions(-) create mode 100644 extras-buildpkgs/libmali-sunxi-r3p0/debian/patches/overwrite-libraries.patch diff --git a/chroot-buildpackages.sh b/chroot-buildpackages.sh index 0100738314..51990b7856 100644 --- a/chroot-buildpackages.sh +++ b/chroot-buildpackages.sh @@ -25,9 +25,12 @@ create_chroot() declare -A qemu_binary qemu_binary['armhf']='qemu-arm-static' qemu_binary['arm64']='qemu-aarch64-static' + declare -A apt_mirror + apt_mirror['jessie']='httpredir.debian.org/debian' + apt_mirror['xenial']='archive.ubuntu.com/ubuntu' display_alert "Creating build chroot" "$release" "info" local includes="ccache,locales,git,ca-certificates,devscripts,libfile-fcntllock-perl,debhelper,rsync,python3" - debootstrap --variant=buildd --arch=$arch --foreign --include="$includes" $release $target_dir "http://localhost:3142/$APT_MIRROR" + debootstrap --variant=buildd --arch=$arch --foreign --include="$includes" $release $target_dir "http://localhost:3142/${apt_mirror[$release]}" [[ $? -ne 0 || ! -f $target_dir/debootstrap/debootstrap ]] && exit_with_error "Create chroot first stage failed" cp /usr/bin/${qemu_binary[$arch]} $target_dir/usr/bin/ [[ ! -f $target_dir/usr/share/keyrings/debian-archive-keyring.gpg ]] && \ diff --git a/extras-buildpkgs/libglshim/debian/patches/add-install-target.patch b/extras-buildpkgs/libglshim/debian/patches/add-install-target.patch index d91b2dacad..4003c6968f 100644 --- a/extras-buildpkgs/libglshim/debian/patches/add-install-target.patch +++ b/extras-buildpkgs/libglshim/debian/patches/add-install-target.patch @@ -26,10 +26,25 @@ index 4859875..ac23371 100755 include_directories(include) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 4cb3b30..1e42ecd 100755 +index 4cb3b30..21cffcc 100755 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt -@@ -27,3 +27,7 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") +@@ -16,9 +16,11 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") + target_link_libraries(GL X11 m dl) + endif() + +-if(CMAKE_SHARED_LIBRARY_SUFFIX MATCHES ".so") +- set_target_properties(GL PROPERTIES SUFFIX ".so.1") +-endif() ++SET_TARGET_PROPERTIES (GL ++ PROPERTIES ++ VERSION 1.2.0 ++ SOVERSION 1 ++) + + aux_source_directory(preload PRELOAD_SOURCES) + add_library(preload SHARED ${PRELOAD_SOURCES}) +@@ -27,3 +29,7 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") endif() add_subdirectory(proxy) diff --git a/extras-buildpkgs/libmali-sunxi-r3p0/debian/control b/extras-buildpkgs/libmali-sunxi-r3p0/debian/control index 3014177fbb..241cddfd56 100644 --- a/extras-buildpkgs/libmali-sunxi-r3p0/debian/control +++ b/extras-buildpkgs/libmali-sunxi-r3p0/debian/control @@ -22,7 +22,12 @@ Description: Mali userspace binary driver version r3p0 Package: libmali-sunxi-dev Section: libdevel Architecture: any -Depends: libmali-sunxi-r3p0 (= ${binary:Version}), ${misc:Depends} +Depends: + libmali-sunxi-r3p0 (= ${binary:Version}), + libegl1-mesa-dev, + libgles1-mesa-dev, + libgles2-mesa-dev, + ${misc:Depends} Replaces: libegl1-mesa-dev, libgles1-mesa-dev, libgles2-mesa-dev Provides: sunxi-mali-dev Description: Mali userspace binary driver version r3p0 diff --git a/extras-buildpkgs/libmali-sunxi-r3p0/debian/patches/overwrite-libraries.patch b/extras-buildpkgs/libmali-sunxi-r3p0/debian/patches/overwrite-libraries.patch new file mode 100644 index 0000000000..b423bd8d60 --- /dev/null +++ b/extras-buildpkgs/libmali-sunxi-r3p0/debian/patches/overwrite-libraries.patch @@ -0,0 +1,23 @@ +diff --git a/lib/mali/Makefile.mashup b/lib/mali/Makefile.mashup +index 99a2539..643ae90 100644 +--- a/lib/mali/Makefile.mashup ++++ b/lib/mali/Makefile.mashup +@@ -5,15 +5,18 @@ install: libMali.so + + $(RM) $(libdir)libEGL.so.1.4 $(libdir)libEGL.so.1 $(libdir)libEGL.so + $(LN) libMali.so $(libdir)libEGL.so.1.4 ++ $(LN) libMali.so $(libdir)libEGL.so.1.0.0 + $(LN) libEGL.so.1.4 $(libdir)libEGL.so.1 + $(LN) libEGL.so.1 $(libdir)libEGL.so + + $(RM) $(libdir)libGLESv1_CM.so.1.1 $(libdir)libGLESv1_CM.so.1 $(libdir)libGLESv1_CM.so + $(LN) libMali.so $(libdir)libGLESv1_CM.so.1.1 ++ $(LN) libMali.so $(libdir)libGLESv1_CM.so.1.1.0 + $(LN) libGLESv1_CM.so.1.1 $(libdir)libGLESv1_CM.so.1 + $(LN) libGLESv1_CM.so.1 $(libdir)libGLESv1_CM.so + + $(RM) $(libdir)libGLESv2.so.2.0 $(libdir)libGLESv2.so.2 $(libdir)libGLESv2.so + $(LN) libMali.so $(libdir)libGLESv2.so.2.0 ++ $(LN) libMali.so $(libdir)libGLESv2.so.2.0.0 + $(LN) libGLESv2.so.2.0 $(libdir)libGLESv2.so.2 + $(LN) libGLESv2.so.2 $(libdir)libGLESv2.so diff --git a/extras-buildpkgs/libmali-sunxi-r3p0/debian/patches/series b/extras-buildpkgs/libmali-sunxi-r3p0/debian/patches/series index 665487fcd6..7e4a87062f 100644 --- a/extras-buildpkgs/libmali-sunxi-r3p0/debian/patches/series +++ b/extras-buildpkgs/libmali-sunxi-r3p0/debian/patches/series @@ -1 +1,2 @@ fix-multiarch.patch +overwrite-libraries.patch From 0d67fc47aaf328cccd56b2e0dabe40f66ad87f5f Mon Sep 17 00:00:00 2001 From: zador-blood-stained Date: Sun, 21 Aug 2016 16:58:17 +0300 Subject: [PATCH 2/7] Bugfix for configuration.sh cleanup --- configuration.sh | 46 +++++++++++++++++++++++----------------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/configuration.sh b/configuration.sh index 4ac35ceacc..1d2d18ee99 100644 --- a/configuration.sh +++ b/configuration.sh @@ -42,29 +42,11 @@ MAINLINE_UBOOT_DIR='u-boot' # Let's set defalt data if not defined in board configuration above -[[ -z $OFFSET ]] && OFFSET=1 # Bootloader space in MB (1 x 2048 = default) -[[ -z $ARCH ]] && ARCH=armhf -[[ -z $KERNEL_IMAGE_TYPE ]] && KERNEL_IMAGE_TYPE=zImage -[[ -z $SERIALCON ]] && SERIALCON=ttyS0 -[[ -z $BOOTSIZE ]] && BOOTSIZE=0 # Mb size of boot partition - -case $ARCH in - arm64) - KERNEL_COMPILER="aarch64-linux-gnu-" - UBOOT_COMPILER="aarch64-linux-gnu-" - ARCHITECTURE=arm64 - INITRD_ARCH=arm64 - QEMU_BINARY="qemu-aarch64-static" - ;; - - armhf) - KERNEL_COMPILER="arm-linux-gnueabihf-" - UBOOT_COMPILER="arm-linux-gnueabihf-" - ARCHITECTURE=arm - INITRD_ARCH=arm - QEMU_BINARY="qemu-arm-static" - ;; -esac +OFFSET=1 # Bootloader space in MB (1 x 2048 = default) +ARCH=armhf +KERNEL_IMAGE_TYPE=zImage +SERIALCON=ttyS0 +BOOTSIZE=0 # Mb size of boot partition if [[ -f $SRC/lib/config/sources/$LINUXFAMILY.conf ]]; then source $SRC/lib/config/sources/$LINUXFAMILY.conf @@ -72,6 +54,24 @@ else exit_with_error "Sources configuration not found" "$LINUXFAMILY" fi +case $ARCH in + arm64) + [[ -z $KERNEL_COMPILER ]] && KERNEL_COMPILER="aarch64-linux-gnu-" + [[ -z $UBOOT_COMPILER ]] && UBOOT_COMPILER="aarch64-linux-gnu-" + [[ -z $INITRD_ARCH ]] && INITRD_ARCH=arm64 + QEMU_BINARY="qemu-aarch64-static" + ARCHITECTURE=arm64 + ;; + + armhf) + [[ -z $KERNEL_COMPILER ]] && KERNEL_COMPILER="arm-linux-gnueabihf-" + [[ -z $UBOOT_COMPILER ]] && UBOOT_COMPILER="arm-linux-gnueabihf-" + [[ -z $INITRD_ARCH ]] && INITRD_ARCH=arm + QEMU_BINARY="qemu-arm-static" + ARCHITECTURE=arm + ;; +esac + [[ $LINUXFAMILY == sun*i && $BRANCH != default && $LINUXFAMILY != sun8i ]] && LINUXCONFIG="linux-sunxi-${BRANCH}" [[ $LINUXFAMILY == udoo && $BRANCH == default ]] && LINUXCONFIG="linux-$BOARD-default" [[ -z $LINUXCONFIG ]] && LINUXCONFIG="linux-${LINUXFAMILY}-${BRANCH}" From db6d0666a8d9841519f8b546a7c26837554d4c1e Mon Sep 17 00:00:00 2001 From: zador-blood-stained Date: Sun, 21 Aug 2016 17:08:46 +0300 Subject: [PATCH 3/7] Small fix for build-all.sh --- build-all.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build-all.sh b/build-all.sh index b47bf6c50d..ecde136153 100644 --- a/build-all.sh +++ b/build-all.sh @@ -108,7 +108,7 @@ for line in "${buildlist[@]}"; do unset LINUXFAMILY LINUXCONFIG KERNELDIR KERNELSOURCE KERNELBRANCH BOOTDIR BOOTSOURCE BOOTBRANCH ARCH UBOOT_NEEDS_GCC KERNEL_NEEDS_GCC \ CPUMIN CPUMAX UBOOT_VER KERNEL_VER GOVERNOR BOOTSIZE UBOOT_TOOLCHAIN KERNEL_TOOLCHAIN PACKAGE_LIST_EXCLUDE KERNEL_IMAGE_TYPE \ write_uboot_platform family_tweaks install_boot_script UBOOT_FILES LOCALVERSION UBOOT_COMPILER KERNEL_COMPILER UBOOT_TARGET \ - MODULES MODULES_NEXT + MODULES MODULES_NEXT INITRD_ARCH read BOARD BRANCH RELEASE BUILD_DESKTOP <<< $line n=$[$n+1] From bb15b5dc40d3485233d2cb6803e52b0d297d0440 Mon Sep 17 00:00:00 2001 From: zador-blood-stained Date: Sun, 21 Aug 2016 17:52:28 +0300 Subject: [PATCH 4/7] Small bugfix for chroot-buildpackages.sh --- chroot-buildpackages.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/chroot-buildpackages.sh b/chroot-buildpackages.sh index 51990b7856..b4c1de7038 100644 --- a/chroot-buildpackages.sh +++ b/chroot-buildpackages.sh @@ -27,8 +27,8 @@ create_chroot() qemu_binary['arm64']='qemu-aarch64-static' declare -A apt_mirror apt_mirror['jessie']='httpredir.debian.org/debian' - apt_mirror['xenial']='archive.ubuntu.com/ubuntu' - display_alert "Creating build chroot" "$release" "info" + apt_mirror['xenial']='ports.ubuntu.com' + display_alert "Creating build chroot" "$release $arch" "info" local includes="ccache,locales,git,ca-certificates,devscripts,libfile-fcntllock-perl,debhelper,rsync,python3" debootstrap --variant=buildd --arch=$arch --foreign --include="$includes" $release $target_dir "http://localhost:3142/${apt_mirror[$release]}" [[ $? -ne 0 || ! -f $target_dir/debootstrap/debootstrap ]] && exit_with_error "Create chroot first stage failed" @@ -58,7 +58,7 @@ create_chroot() mkdir -p $target_dir/var/lock fi touch $target_dir/root/.debootstrap-complete - display_alert "Debootstrap complete" "$release" "info" + display_alert "Debootstrap complete" "$release $arch" "info" } ############################################################################# # chroot_build_packages From f9cf3657197e9cb7cc0de0329dded64c1d7cdf46 Mon Sep 17 00:00:00 2001 From: Igor Pecovnik Date: Sun, 21 Aug 2016 17:01:04 +0200 Subject: [PATCH 5/7] Furrter Cubietruck and BT related fixes --- extras/tools.sh | 6 ++---- scripts/brcm40183-patch | 4 ++-- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/extras/tools.sh b/extras/tools.sh index 50fac188fb..4e9c1c0a76 100644 --- a/extras/tools.sh +++ b/extras/tools.sh @@ -43,8 +43,7 @@ compile_tools() END cat <<-END > $tmpdir/armbian-tools-${RELEASE}_${REVISION}_${ARCH}/DEBIAN/postinst - systemctl enable brcm40183-patch.service - systemctl start brcm40183-patch.service + update-rc.d brcm40183 defaults exit 0 END @@ -55,8 +54,7 @@ compile_tools() # brcm cp $tmpdir/brcm/{brcm_bt_reset,brcm_patchram_plus} $tmpdir/armbian-tools-${RELEASE}_${REVISION}_${ARCH}/usr/bin # brcm configs and service - install -m 600 $SRC/lib/scripts/brcm40183 $tmpdir/armbian-tools-${RELEASE}_${REVISION}_${ARCH}/etc/default - install -m 600 $SRC/lib/scripts/brcm40183-patch.service $tmpdir/armbian-tools-${RELEASE}_${REVISION}_${ARCH}/lib/systemd/system + install -m 644 $SRC/lib/scripts/brcm40183 $tmpdir/armbian-tools-${RELEASE}_${REVISION}_${ARCH}/etc/default install -m 755 $SRC/lib/scripts/brcm40183-patch $tmpdir/armbian-tools-${RELEASE}_${REVISION}_${ARCH}/etc/init.d cd $tmpdir/armbian-tools-${RELEASE}_${REVISION}_${ARCH} diff --git a/scripts/brcm40183-patch b/scripts/brcm40183-patch index 7b401222dc..7e70b9a7f8 100644 --- a/scripts/brcm40183-patch +++ b/scripts/brcm40183-patch @@ -43,13 +43,13 @@ else fi # reset port - /usr/local/bin/brcm_bt_reset /dev/$PORT + /usr/bin/brcm_bt_reset /dev/$PORT # Start patching /bin/echo -en "" > /dev/$PORT # pull down RTS on UART log_action_begin_msg "Start pushing firmware to device and waiting max. 60sec to complete" - /usr/bin/timeout 60s /usr/local/bin/brcm_patchram_plus -d --patchram /lib/firmware/ap6210/bcm20710a1.hcd --enable_hci --no2bytes --tosleep 1000 $MAC_OPTIONS /dev/$PORT > /tmp/brcm40183.firmware 2>&1 + /usr/bin/timeout 60s /usr/bin/brcm_patchram_plus -d --patchram /lib/firmware/ap6210/bcm20710a1.hcd --enable_hci --no2bytes --tosleep 1000 $MAC_OPTIONS /dev/$PORT > /tmp/brcm40183.firmware 2>&1 case "$?" in 0) log_action_end_msg 0 From f691c8b9cedec92caeab7dd51c4629c7f98deabe Mon Sep 17 00:00:00 2001 From: Igor Pecovnik Date: Sun, 21 Aug 2016 17:54:21 +0200 Subject: [PATCH 6/7] Typo --- extras/tools.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extras/tools.sh b/extras/tools.sh index 4e9c1c0a76..6ece009e34 100644 --- a/extras/tools.sh +++ b/extras/tools.sh @@ -43,7 +43,7 @@ compile_tools() END cat <<-END > $tmpdir/armbian-tools-${RELEASE}_${REVISION}_${ARCH}/DEBIAN/postinst - update-rc.d brcm40183 defaults + update-rc.d brcm40183-patch defaults exit 0 END From b94dd752ee75c539dc001f18766118fdc5bd10a8 Mon Sep 17 00:00:00 2001 From: zador-blood-stained Date: Sun, 21 Aug 2016 18:55:06 +0300 Subject: [PATCH 7/7] More small bugfixes --- chroot-buildpackages.sh | 6 +++--- desktop.sh | 10 +++++----- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/chroot-buildpackages.sh b/chroot-buildpackages.sh index b4c1de7038..4974821227 100644 --- a/chroot-buildpackages.sh +++ b/chroot-buildpackages.sh @@ -203,7 +203,7 @@ chroot_installpackages_local() cat <<-EOF > $CACHEDIR/sdcard/etc/apt/sources.list.d/armbian-temp.list deb http://localhost:8189/ $RELEASE temp EOF - chroot_installpackages_repo + chroot_installpackages kill $aptly_pid } ############################################################################# @@ -222,7 +222,7 @@ chroot_installpackages() done cat <<-EOF > $CACHEDIR/sdcard/tmp/install.sh #!/bin/bash - [[ $remote_only != yes ]] && apt-key add /tmp/buildpkg.key + [[ "$remote_only" != yes ]] && apt-key add /tmp/buildpkg.key apt-get -o Acquire::http::Proxy=\"http://${APT_PROXY_ADDR:-localhost:3142}\" \ -o Acquire::http::Proxy::localhost="DIRECT" -q update # uncomment to debug @@ -237,7 +237,7 @@ chroot_installpackages() -o Acquire::http::Proxy::localhost="DIRECT" \ --show-progress -o DPKG::Progress-Fancy=1 install -y $install_list apt-get clean - [[ $remote_only != yes ]] && apt-key del "925644A6" + [[ "$remote_only" != yes ]] && apt-key del "925644A6" rm /etc/apt/sources.list.d/armbian-temp.list 2>/dev/null rm /etc/apt/preferences.d/90-armbian-temp.pref 2>/dev/null rm /tmp/buildpkg.key 2>/dev/null diff --git a/desktop.sh b/desktop.sh index db4977646c..a99c31aabb 100644 --- a/desktop.sh +++ b/desktop.sh @@ -48,17 +48,17 @@ install_desktop () umount $CACHEDIR/sdcard/tmp >/dev/null 2>&1 # Enable network manager - if [ -f "${CACHEDIR}/sdcard/etc/NetworkManager/NetworkManager.conf" ]; then + if [[ -f ${CACHEDIR}/sdcard/etc/NetworkManager/NetworkManager.conf ]]; then sed "s/managed=\(.*\)/managed=true/g" -i $CACHEDIR/sdcard/etc/NetworkManager/NetworkManager.conf # Disable dns management withing NM - sed "s/\[main\]/\[main\]\ndns=none/g" -i $CACHEDIR/sdcard/etc/NetworkManager/NetworkManager.conf + sed "s/\[main\]/\[main\]\ndns=none/g" -i $CACHEDIR/sdcard/etc/NetworkManager/NetworkManager.conf fi - + # Disable Pulseaudio timer scheduling which does not work with sndhdmi driver - if [ -f "${CACHEDIR}/sdcard/etc/pulse/default.pa" ]; then + if [[ -f ${CACHEDIR}/sdcard/etc/pulse/default.pa ]]; then sed "s/load-module module-udev-detect$/& tsched=0/g" -i $CACHEDIR/sdcard/etc/pulse/default.pa fi - + # Disable desktop mode autostart for now to enforce creation of normal user account sed "s/NODM_ENABLED=\(.*\)/NODM_ENABLED=false/g" -i $CACHEDIR/sdcard/etc/default/nodm