File: pbuilder-satisfydepends-checkparams

package info (click to toggle)
pbuilder 0.231.1
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 3,864 kB
  • sloc: sh: 5,726; xml: 1,755; makefile: 248; ansic: 11
file content (124 lines) | stat: -rwxr-xr-x 3,046 bytes parent folder | download | duplicates (5)
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
#! /bin/bash
#   pbuilder -- personal Debian package builder
#   Copyright © 2001-2007 Junichi Uekawa <dancer@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
###############################################################################

# module to satisfy build dependencies; parse command line parameters


BUILD_ARCH="$(dpkg --print-architecture)"
HOST_ARCH="$BUILD_ARCH"
DEBIAN_CONTROL=debian/control
CHROOT=""
CHROOTEXEC=""
BINARY_ARCH="any"
FORCEVERSION=""
CONTINUE_FAIL="no"
CHROOTEXEC_AFTER_INTERNAL_CHROOTEXEC=no
ALLOWUNTRUSTED=no
EATMYDATA=no

while [ -n "$1" ]; do
    case "$1" in
	--control|-c)
	    DEBIAN_CONTROL="$2"
	    shift; shift
	    ;;

	# --chroot option and --internal-chrootexec options and --echo options somewhat conflict with each other.

	--chroot)
	    CHROOT="$2"
	    CHROOTEXEC="chroot $2 "
	    if [ ${CHROOTEXEC_AFTER_INTERNAL_CHROOTEXEC} = maybe ]; then
		echo '--chroot specified after --internal-chrootexec' >&2
		exit 1
	    fi
	    shift; shift
	    ;;
	--internal-chrootexec)
	    CHROOTEXEC="$2"
	    CHROOTEXEC_AFTER_INTERNAL_CHROOTEXEC=maybe
	    shift; shift 
	    ;;
	--echo)
	    CHROOTEXEC="echo $CHROOTEXEC"
	    CHROOTEXEC_AFTER_INTERNAL_CHROOTEXEC=maybe
	    shift
	    ;;

	--binary-all)
	    BINARY_ARCH="any"
	    shift
	    ;;
	--binary-arch)
	    BINARY_ARCH="binary"
	    shift
	    ;;
    --binary-indep)
        BINARY_ARCH="all"
        shift
        ;;
	--continue-fail)
	    CONTINUE_FAIL="yes"
	    shift
	    ;;
	--force-version)
	    FORCEVERSION="yes"
	    shift;
	    ;;
	--check-key)
	    ALLOWUNTRUSTED=no
	    shift;
	    ;;
	--allow-untrusted)
	    ALLOWUNTRUSTED=yes
	    shift;
	    ;;
    --eatmydata)
        EATMYDATA=yes
        shift
        ;;
    --build-arch)
        BUILD_ARCH=$2
        shift 2
        ;;
    --host-arch)
        HOST_ARCH=$2
        shift 2
        ;;
	--help|-h|*)
	    print_help
	    exit 1
	    ;;
    esac
done

if [ $ALLOWUNTRUSTED = yes ]; then
	# Also duplicated in pbuilder-checkparams!
	# apt flag to accept untrusted packages
	APTGETOPT[${#APTGETOPT[@]}]='--force-yes'
	# aptitude flag to accept untrusted packages
	APTITUDEOPT[${#APTITUDEOPT[@]}]='-o'
	APTITUDEOPT[${#APTITUDEOPT[@]}]='Aptitude::CmdLine::Ignore-Trust-Violations=true'
fi

if [ "$EATMYDATA" = "yes" ]; then
    CHROOTEXEC="$CHROOTEXEC eatmydata"
fi

checkbuilddep_internal