/usr/bin/pdebuild is in pbuilder 0.229.1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 | #! /bin/bash
# pbuilder -- personal Debian package builder
# Copyright © 2001-2007 Junichi Uekawa <dancer@debian.org>
# 2015 Mattia Rizzolo <mattia@debian.org>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
###############################################################################
set -e
export PBUILDER_OPERATION="pdebuild"
export PBCURRENTCOMMANDLINEOPERATION="pdebuild"
. /usr/lib/pbuilder/pdebuild-checkparams
while ! test -d ./debian -o "$(pwd)" = "/" ; do
cd ..;
done
if test ! -d ./debian; then
log.e "Cannot find ./debian dir"
exit 1
fi;
PKG_SOURCENAME=$(dpkg-parsechangelog|sed -n 's/^Source: //p')
PKG_VERSION=$(dpkg-parsechangelog|sed -n 's/^Version: \(.*:\|\)//p')
ARCHITECTURE="${ARCHITECTURE:-$(dpkg-architecture -qDEB_HOST_ARCH)}"
CHANGES="${PKG_SOURCENAME}_${PKG_VERSION}_${ARCHITECTURE}.changes"
SOURCE_CHANGES="${PKG_SOURCENAME}_${PKG_VERSION}_source.changes"
DSC="${PKG_SOURCENAME}_${PKG_VERSION}.dsc"
if [ -z "${PBUILDER_BUILD_LOGFILE}" ]; then
PBUILDER_BUILD_LOGFILE="../${PKG_SOURCENAME}_${PKG_VERSION}_${ARCHITECTURE}.build"
exec > >(tee "${PBUILDER_BUILD_LOGFILE}") 2>&1
fi
export BUILDRESULTUID=$(id -u)
export BUILDRESULTGID=$(id -g)
if [ "${USE_PDEBUILD_INTERNAL}" = 'yes' ]; then
${PBUILDERROOTCMD} \
${PDEBUILD_PBUILDER} \
--execute \
${EXTRA_CONFIGFILE[@]/#/--configfile } \
--bindmounts $(readlink -f ..) \
"$@" \
-- \
/usr/lib/pbuilder/pdebuild-internal \
${PWD} \
--debbuildopts "" \
--debbuildopts "${DEBBUILDOPTS}" \
--uid "${BUILDRESULTUID}" \
--gid "${BUILDRESULTGID}" \
--pbuildersatisfydepends "$PBUILDERSATISFYDEPENDSCMD"
if [ -d "${BUILDRESULT}" ]; then
for files in $(sed -rn '/^Files:/,${s/^ .* ([^ ]+)$/\1/p}' ../${CHANGES}); do
conditional_cp_a ../"$files" "${BUILDRESULT}"
done
conditional_cp_a ../${CHANGES} "${BUILDRESULT}"
for files in "${ADDITIONAL_BUILDRESULTS[@]}"; do
log.i "Trying to save additional result ${files}"
conditional_cp_a "${files}" "${BUILDRESULT}" || true
done
else
log.e "BUILDRESULT=[$BUILDRESULT] is not a directory."
exit 1
fi
else
if ! dpkg-checkbuilddeps -B ; then
log.w "Unmet build-dependency in source"
fi
# get_changes_options/get_source_options single-quote each element, so an
# eval is needed to reverse that.
SOURCE_OPTIONS=$(get_source_options)
eval dpkg-source ${SOURCE_OPTIONS} --before-build .
if should_clean_source; then
"${BUILDSOURCEROOTCMD}" debian/rules clean
fi
eval dpkg-source ${SOURCE_OPTIONS} -b .
if ! [ "../${DSC}" -ef "${BUILDRESULT}/${DSC}" ]; then
log.i "Generating source changes file for original dsc"
eval dpkg-genchanges -S $(get_changes_options) > "../${SOURCE_CHANGES}"
else
log.i "Generated dsc will be overwritten by build result; not generating changes file"
fi
eval dpkg-source ${SOURCE_OPTIONS} --after-build .
${PBUILDERROOTCMD} \
${PDEBUILD_PBUILDER} \
--build \
${EXTRA_CONFIGFILE[@]/#/--configfile } \
--buildresult "${BUILDRESULT}" \
--debbuildopts "" \
--debbuildopts "${DEBBUILDOPTS}" \
"$@" \
../"${PKG_SOURCENAME}_${PKG_VERSION}".dsc
fi
# do signing with optional key specifier
if [ "${AUTO_DEBSIGN}" = "yes" ]; then
unset DEBSIGN_PARAM || true
if [ -n "${DEBSIGN_KEYID}" ]; then
DEBSIGN_PARAM[1]="-k${DEBSIGN_KEYID}"
fi
if [ -f "${BUILDRESULT}/${CHANGES}" ]; then
DEBSIGN_PARAM[2]="${BUILDRESULT}/${CHANGES}"
elif [ -f "${BUILDRESULT}/${SOURCE_CHANGES}" ]; then
DEBSIGN_PARAM[2]="${BUILDRESULT}/${SOURCE_CHANGES}"
else
log.e "the .changes file can't be found, debsign not done"
exit 1
fi
debsign "${DEBSIGN_PARAM[@]}"
fi
|