[X2Go-Commits] [buildscripts] 01/02: bin/sbuild-deb-package: add support for building Raspbian armhf packages.

git-admin at x2go.org git-admin at x2go.org
Tue Nov 15 04:59:33 CET 2016


This is an automated email from the git hooks/post-receive script.

x2go pushed a commit to branch master
in repository buildscripts.

commit d4b9f0629a2b4d599403594d7e90ed80d0392e4b
Author: Mihai Moldovan <ionic at ionic.de>
Date:   Tue Nov 15 04:59:02 2016 +0100

    bin/sbuild-deb-package: add support for building Raspbian armhf packages.
---
 bin/sbuild-deb-package |   58 ++++++++++++++++++++++++++++++++++--------------
 1 file changed, 41 insertions(+), 17 deletions(-)

diff --git a/bin/sbuild-deb-package b/bin/sbuild-deb-package
index 8aa113f..5b648b0 100755
--- a/bin/sbuild-deb-package
+++ b/bin/sbuild-deb-package
@@ -26,8 +26,9 @@ GIT_HOSTNAME="git.mydomain.org"
 DEBEMAIL="firstname.lastname at mydomain.org"
 DEBFULLNAME="Firstname Lastname"
 GPG_KEY=""
-DEB_DISTS_SUPPORTED="debian ubuntu"
+DEB_DISTS_SUPPORTED="debian ubuntu raspbian"
 DEBIAN_DISTROS="lenny,squeeze,wheezy,jessie,stretch,sid"
+RASPBIAN_DISTROS="jessie"
 UBUNTU_DISTROS="lucid,precise,trusty,xenial,yakkety"
 
 COMPONENT_RELEASE="main"
@@ -52,7 +53,8 @@ test -f "${HOME}/.buildscripts/${PREFIX}.conf" && . "${HOME}/.buildscripts/${PRE
 
 : ${NO_DELAY:="no"}
 : ${FORCE_BUILD:="no"}
-: ${DEB_BUILD_FOR:="debian:${DEBIAN_DISTROS} ubuntu:${UBUNTU_DISTROS}"}
+: ${DEB_BUILD_FOR:="debian:${DEBIAN_DISTROS} ubuntu:${UBUNTU_DISTROS} raspbian:${RASPBIAN_DISTROS}"}
+: ${FLAVOR:="native"}
 
 # These parts are not user-serviceable.
 typeset -ag temp_cleanup=""
@@ -117,10 +119,16 @@ set_vars() {
 
 	# by default we build for all current debian versions
 	if [ "x${ARGV2_CODENAME}" != "x" ]; then
-		if grep -qs "${ARGV2_CODENAME}" <<< "${DEBIAN_DISTROS}"; then
-			DEB_BUILD_FOR="debian:${ARGV2_CODENAME}"
-		elif grep -qs "${ARGV2_CODENAME}" <<< "${UBUNTU_DISTROS}"; then
-			DEB_BUILD_FOR="ubuntu:${ARGV2_CODENAME}"
+		if [[ "$FLAVOR" = "raspbian" ]]; then
+			if grep -qs "${ARGV2_CODENAME}" <<< "${RASPBIAN_DISTROS}"; then
+				DEB_BUILD_FOR="raspbian:${ARGV2_CODENAME}"
+			fi
+		else
+			if grep -qs "${ARGV2_CODENAME}" <<< "${DEBIAN_DISTROS}"; then
+				DEB_BUILD_FOR="debian:${ARGV2_CODENAME}"
+			elif grep -qs "${ARGV2_CODENAME}" <<< "${UBUNTU_DISTROS}"; then
+				DEB_BUILD_FOR="ubuntu:${ARGV2_CODENAME}"
+			fi
 		fi
 	fi
 
@@ -190,7 +198,11 @@ clear_pkgdist() {
 				# the wrong distribution here...
 				test -z "${CODENAMES}" || grep "${CODENAMES}" <<< "${line}" || break
 
-				for l_ARCH in amd64 i386; do
+				typeset arch="amd64 i386"
+
+				[ "${l_DIST}" = "raspbian" ] && arch="armhf"
+
+				for l_ARCH in ${arch}; do
 					[ "x${SKIP_ARCH}" != "x${l_ARCH}" ] && {
 						mkdir -p -- "${PKGDIST}/${l_DIST}/${l_CODENAME}/${l_ARCH}"
 						rm -f -- "${PKGDIST}/${l_DIST}/${l_CODENAME}/${l_ARCH}/dupload.conf"
@@ -270,7 +282,7 @@ build_packages() {
 				typeset -i tmp_ret="1"
 				typeset pretty_dist=""
 
-				if [ -n "${l_DIST}" ] && [ "${l_DIST}" = "debian" ]; then
+				if [ -n "${l_DIST}" ] && [ "${l_DIST}" = "debian" ] || [ "${l_DIST}" = "raspbian" ]; then
 					pretty_dist="Debian"
 					numerical_version="$("debian-codename-to-version.sh" "${codename}")"
 					tmp_ret="${?}"
@@ -299,7 +311,7 @@ build_packages() {
 				else
 					dch --distribution "${codename}" --force-distribution -l "~git${DATE}.${GITREV}+${numerical_version}.${COMPONENT}." "Development-Snapshot!!! Auto-built ${pretty_dist} ${l_CODENAME} (${numerical_version}) package for ${REPOS_SERVER} repository (Git commit: ${GIT_OBJECT_ID})."
 				fi
-				mkdir -p -- "${PKGDIST}/${l_DIST}/${l_CODENAME}/"{amd64,i386}
+				[ "${l_DIST}" = "raspbian" ] && mkdir -p -- "${PKGDIST}/${l_DIST}/${l_CODENAME}/armhf" || mkdir -p -- "${PKGDIST}/${l_DIST}/${l_CODENAME}/"{amd64,i386}
 				OTHERMIRROR=""
 				if [ "x${COMPONENT}" = "x${COMPONENT_NIGHTLY}" ]; then
 					grep -qs "${PROJECT}" <<< "${PACKAGE_WITHOUT_OTHERMIRROR}" || OTHERMIRROR="deb http://${REPOS_SERVER}/${l_DIST} ${l_CODENAME} ${COMPONENT_RELEASE} ${COMPONENT}"
@@ -325,14 +337,22 @@ build_packages() {
 
 				SBUILD_OPTIONS_64="${SBUILD_OPTIONS}"
 				SBUILD_OPTIONS_32="${SBUILD_OPTIONS} --arch=i386 --debbuildopts=\"-B\""
+				SBUILD_OPTIONS_ARMHF="${SBUILD_OPTIONS} --arch=armhf"
 
-				[ "x${SKIP_ARCH}" != "xamd64" ] && grep -Eqs 'Architecture.*(all|any|amd64)' "${TEMP_DIR}/${PROJECT}/debian/control" && {
-					cd "${PKGDIST}/${l_DIST}/${l_CODENAME}/amd64"
-					nice ${SBUILD} ${SBUILD_OPTIONS_64} "${PROJECT_DIR}"
-				}
-				[ "x${SKIP_ARCH}" != "xi386" ] && grep -Eqs 'Architecture.*(any|i386)' "${TEMP_DIR}/${PROJECT}/debian/control" && {
-					cd "${PKGDIST}/${l_DIST}/${l_CODENAME}/i386"
-					nice ${SBUILD} ${SBUILD_OPTIONS_32} "${PROJECT_DIR}"
+				[ "${l_DIST}" != "raspbian" ] && {
+					[ "${SKIP_ARCH}" != "armhf" ] && grep -Eqs 'Architecture.*(all|any|armhf)' "${TEMP_DIR}/${PROJECT}/debian/control" && {
+						cd "${PKGDIST}/${l_DIST}/${l_CODENAME}/armhf"
+						nice ${SBUILD} ${SBUILD_OPTIONS_ARMHF} "${PROJECT_DIR}"
+					}
+				} || {
+					[ "x${SKIP_ARCH}" != "xamd64" ] && grep -Eqs 'Architecture.*(all|any|amd64)' "${TEMP_DIR}/${PROJECT}/debian/control" && {
+						cd "${PKGDIST}/${l_DIST}/${l_CODENAME}/amd64"
+						nice ${SBUILD} ${SBUILD_OPTIONS_64} "${PROJECT_DIR}"
+					}
+					[ "x${SKIP_ARCH}" != "xi386" ] && grep -Eqs 'Architecture.*(any|i386)' "${TEMP_DIR}/${PROJECT}/debian/control" && {
+						cd "${PKGDIST}/${l_DIST}/${l_CODENAME}/i386"
+						nice ${SBUILD} ${SBUILD_OPTIONS_32} "${PROJECT_DIR}"
+					}
 				}
 			done
 		}
@@ -361,7 +381,11 @@ upload_packages() {
 			# the wrong distribution here...
 			test -z "${CODENAMES}" || grep "${CODENAMES}" <<< "${line}" || break
 
-			for l_ARCH in amd64 i386; do
+			typeset arch="amd64 i386"
+
+			[ "${l_DIST}" = "raspbian" ] && arch="armhf"
+
+			for l_ARCH in ${arch}; do
 				[ "x${SKIP_ARCH}" != "x${l_ARCH}" ] && {
 					cd "${PKGDIST}/${l_DIST}/${l_CODENAME}/${l_ARCH}"
 					test -f "./dupload.conf" || ln -s -- "${HOME}/.dupload.conf.${PREFIX}" "./dupload.conf"

--
Alioth's /srv/git/code.x2go.org/buildscripts.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/buildscripts.git


More information about the x2go-commits mailing list