#! /bin/bash -ex ## @id $Id$ ## Resolve Debian Build Dependencies ## Installs all the required packages ## Call: ./resolve-debbuilddeps 'name of build schroot' ## e.g. call: ./resolve-debbuilddeps trusty_amd64 ## 1 2 3 4 5 6 7 8 ## 45678901234567890123456789012345678901234567890123456789012345678901234567890 SCHROOTNAME="$1" sed 's,@[^@]*@, dummytext,g' debian/control.in > debian/control if test -n "${SCHROOTNAME}"; then schroot -c "${SCHROOTNAME}" -- apt-get install -y dpkg-dev DEPS=$(schroot -c "${SCHROOTNAME}" -- dpkg-checkbuilddeps 2>&1 || true) else apt-get install -y dpkg-dev DEPS=$(dpkg-checkbuilddeps 2>&1 || true) fi DEPS=$(echo "$DEPS" | sed -n '/Unmet build dependencies/ { s,.*Unmet build dependencies: ,,g; s, ([^)]*),,g; s, *| *,|,g; p}') for pa in ${DEPS}; do success=0 for p in $(echo "${pa}" | sed 's,|, ,g'); do if test -n "${SCHROOTNAME}"; then if schroot -c "${SCHROOTNAME}" -u root -d / -- apt-get -y install ${p}; then success=1 break; fi else if sudo apt-get -y install ${p}; then success=1 break; fi fi done if test ${success} -eq 0; then echo "**** Error: Installation Failed: ${pa}" fi done echo "**** Success: All Dependencies Resolved"