~ubuntu-branches/ubuntu/hardy/sbuild/hardy

« back to all changes in this revision

Viewing changes to bin/sbuild-hold

  • Committer: Bazaar Package Importer
  • Author(s): Roger Leigh, Jan-Marek Glogowski
  • Date: 2008-01-01 11:36:55 UTC
  • mfrom: (8.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20080101113655-rxlefdonr61fnikq
Tags: 0.57.0-1
* Sbuild/*.pm: Reindent to increase readability.
* Sbuild/Chroot.pm: set APT::Install-Recommends to false inside the
  chroot (Closes: #449253).
* Sbuild/Conf.pm: Add and export $check_depends_algorithm.
  [Jan-Marek Glogowski]
* sbuild:
  - Reindent to increase readability.
  - Add additional syntax checks.  Thanks to Jan-Marek Glogowski.
  - build: Use unicode line drawing characters instead of ASCII.
  - filter_dependencies: Remove redundant conditional.
    [Jan-Marek Glogowski]
  - Add check for check-depends-algorithm option. [Jan-Marek Glogowski]
  - filter_dependencies: Change dependency behaviour depending upon
    check_depends_algorithm.  [Jan-Marek Glogowski]
  - Move to bin/.
* avg-pkg-build-time:
  - Move to bin/.
* bin/*: Reindent to increase readability.
* chroot/*: Reindent to increase readability.
* bin/sbuild-createchroot:
  - Moved from chroot/buildd.chroot.
  - Also install fakeroot and build-essential.
* sbuild-createchroot.1.in: Add manual page.
* chroot/buildd.chroot:
  - Add GPL boilerplate.
  - Remove /etc/passwd creation (already done by debootstrap).
  - Remove sbuild directory creation (already done by schroot).
  - Use here doc to set up /etc/apt/sources.list.
  - List sources.list.
* chroot/README: Rename from README.buildd-chroot.  Remove
  buildd.chroot section.
* example.sbuildrc: Add missing variable types.  [Jan-Marek Glogowski]
* example.sbuildrc: Add missing variable types and add
  $check_depends_algorithm.  [Jan-Marek Glogowski]
* sbuild.1: Document --check-depends-algorithm [Jan-Marek Glogowski]
* Move manual pages to man/.
* debian/manpages: Move manual pages to man/.
* sbuild.conf: Move to etc/.
* example.sbuildrc: Move to etc/.
* debian/compat: Move to debhelper v6 compatibility level.
* debian/control: Update to Standards-Version 3.7.3.
* debian/copyright:
  - Update git repository location.
  - Update GPL boilerplate.
* debian/sbuild.dirs:
  - Rename from debian/dirs.
  - Remove all but -var/lib/sbuild/srcdep-lock.
* debian/manpages: Remove.
* debian/sbuild.postinst: Rename from debian/postinst.
* debian/sbuild.preinst: Rename from debian/preinst.
* debian/sbuild.postrm: Rename from debian/postrm.
* debian/sbuild.install:
  - New file.
  - Install files from usr/sbin and usr/share/man/man8.
* debian/rules:
  - Install sbuild-createchroot, and add buildd.chroot compatibility
    symlink.
  - Move -stamp files to debian/.
  - Remove GENFILES.
  - Run configure, make, and make install in appropriate rules.
  - Use dh_install.
  - Remove all special-cased installation rules (now handled by automake).
* Note: All upstream changes are now in an upstream ChangeLog.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/usr/bin/perl -w
 
2
# changes the dpkg status of a package in a chroot to "hold"
 
3
#
 
4
# Copyright © 2006 Roger Leigh <rleigh@debian.org>
 
5
#
 
6
# This program is free software: you can redistribute it and/or modify
 
7
# it under the terms of the GNU General Public License as published by
 
8
# the Free Software Foundation, either version 2 of the License, or
 
9
# (at your option) any later version.
 
10
#
 
11
# This program is distributed in the hope that it will be useful, but
 
12
# WITHOUT ANY WARRANTY; without even the implied warranty of
 
13
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 
14
# General Public License for more details.
 
15
#
 
16
# You should have received a copy of the GNU General Public License
 
17
# along with this program.  If not, see
 
18
# <http://www.gnu.org/licenses/>.
 
19
#
 
20
#######################################################################
 
21
 
 
22
use strict;
 
23
use warnings;
 
24
use Sbuild::Utility qw(setup cleanup shutdown);
 
25
 
 
26
package main;
 
27
 
 
28
sub usage {
 
29
    print STDERR "Usage: $0 <chroot> package [package ...]\n";
 
30
    exit 1;
 
31
}
 
32
 
 
33
usage() if (@ARGV < 2);
 
34
 
 
35
my $chroot = Sbuild::Utility::get_dist($ARGV[0]);
 
36
 
 
37
!setup($ARGV[0]) or die "Chroot setup failed for $chroot chroot";
 
38
 
 
39
print STDOUT "Holding packages in $chroot chroot:";
 
40
 
 
41
my $command = get_command("$Sbuild::Conf::dpkg --set-selections", "root", 1);
 
42
if (!open(SELECTIONS, "| $command")) {
 
43
    print STDERR "Can't run dpkg --set-selections in chroot\n";
 
44
    shutdown();
 
45
}
 
46
 
 
47
shift @ARGV;
 
48
foreach (@ARGV) {
 
49
    print SELECTIONS "$_        hold\n";
 
50
    print STDOUT " $_";
 
51
}
 
52
 
 
53
if (!close SELECTIONS) {
 
54
    print STDERR "Can't run dpkg --set-selections in chroot\n";
 
55
    shutdown();
 
56
}
 
57
 
 
58
print STDOUT ".\n";
 
59
 
 
60
my $packages = join(" ", @ARGV);
 
61
my $status = run_command("$Sbuild::Conf::dpkg --list $packages", "root", 1, 0);
 
62
 
 
63
cleanup();
 
64
 
 
65
exit $status;