#! /bin/bash # this is sourced from pbuilder packages to process the optional parameters. # pbuilder -- personal Debian package builder # Copyright (C) 2001-2003 Junichi Uekawa # # 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA . /usr/lib/pbuilder/pbuilder-loadconfig . /usr/lib/pbuilder/pbuilder-modules #default value for this option is !empty! INTERNAL_BUILD_UML="" CHROOTEXEC="" OVERRIDE_APTLINES="no" BINARY_ARCH="no" PBUILDER_BUILD_LOGFILE= USE_PKGNAME_LOGFILE="" PRESERVE_BUILDPLACE="no" #option for user-mode-linux only. IGNORE_UMOUNT="" while [ -n "$1" ]; do case "$1" in --basetgz) if [ "${PBCURRENTCOMMANDLINEOPERATION}" = 'create' ]; then touch "$2"; fi BASETGZ=$(readlink -f "$2"); shift; shift; ;; --buildplace) BUILDPLACE=$(readlink -f "$2"); shift; shift; ;; --mirror) MIRRORSITE="$2"; shift; shift; ;; --nonusmirror) NONUSMIRRORSITE="$2"; shift; shift; ;; --othermirror) OTHERMIRROR="$2"; shift; shift; ;; --http-proxy) export http_proxy="$2"; shift; shift; ;; --distribution) DISTRIBUTION="$2"; shift; shift; ;; --buildresult) if [ -n "$2" ]; then BUILDRESULT=$(readlink -f "$2"); else BUILDRESULT= fi shift; shift; ;; --removepackages) REMOVEPACKAGES="$2"; shift; shift; ;; --configfile) . "$2"; shift; shift; ;; --extrapackages) EXTRAPACKAGES="$2"; shift; shift; ;; --hookdir) HOOKDIR="$2"; shift; shift; ;; --debemail) DEBEMAIL="$2"; shift; shift; ;; --debbuildopts) DEBBUILDOPTS="$2"; shift; shift; ;; --logfile) exec > "$2"; exec 2>&1 PBUILDER_BUILD_LOGFILE=$(readlink -f "$2") shift; shift; ;; --pkgname-logfile) USE_PKGNAME_LOGFILE="yes" shift; ;; --aptconfdir) APTCONFDIR="$2"; shift; shift; ;; --timeout) TIMEOUT_TIME="$2" shift; shift; ;; --help) showhelp ;; --override-config) OVERRIDE_APTLINES="yes" shift; ;; --binary-arch) BINARY_ARCH="yes" DEBBUILDOPTS="${DEBBUILDOPTS} -B" shift; ;; --preserve-buildplace) PRESERVE_BUILDPLACE="yes" shift; ;; --bindmounts) BINDMOUNTS="$2" shift; shift; ;; ## pdebuild option --auto-debsign) AUTO_DEBSIGN="yes" shift; ;; --buildsourceroot*) BUILDSOURCEROOTCMD="$2"; shift; shift; ;; --pbuilderroot*) PBUILDERROOTCMD="$2"; shift; shift; ;; ## internal options. --internal-chrootexec) # specify custom chrootexec function -- this is internal debugging function CHROOTEXEC="$2" shift; shift; ;; --no-targz) # specify this option if I am running in no-targz mode echo " -> Running in no-targz mode" INTERNAL_BUILD_UML="yes" shift; ;; --internal-build-uml) # specify this option if I am running inside UML. echo " -> Running in pbuilder-user-mode-linux mode" INTERNAL_BUILD_UML="yes" IGNORE_UMOUNT="yes" shift; ;; --) # end of processing for this shift; break; ;; --*) echo "Error: Unknown option [$1] was specified " >&2 exit 1; ;; *) break; ;; esac done BUILDPLACE=${BUILDPLACE?"Build root directory is not defined"} # the default is to add a PID in the buildplace specified in the config file. BASEBUILDPLACE="$BUILDPLACE" if [ "${INTERNAL_BUILD_UML}" != "yes" -a "${PRESERVE_BUILDPLACE}" != "yes" ]; then BUILDPLACE="$BUILDPLACE/$$" fi if [ -z "${CHROOTEXEC}" ]; then CHROOTEXEC="chroot $BUILDPLACE " fi case "$PBCURRENTCOMMANDLINEOPERATION" in login|execute|pdebuild) # don't do anything if it is "login", or pdebuild ;; *) # line from kobras@debian.org if [ "$DEBIAN_FRONTEND" = "noninteractive" -o "$DEBIAN_FRONTEND" = "Noninteractive" ]; then exec < /dev/null fi ;; esac