• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#!/usr/bin/perl -w
2
3				# Adjust debian/changelog and build a new
4				# Debian package of a CVS archive.
5
6				# Written 17 November 1998 by Ben Gertzfield
7				# <che@debian.org>
8
9				# This work is released under the GNU
10				# General Public License, version 2 or
11				# later.
12
13use strict;
14use diagnostics;
15use File::Copy;
16
17my $maintainer = 'Ben Gertzfield <che@debian.org>';
18
19my @date = localtime;
20
21my $datestr = sprintf("%d%.2d%.2d", $date[5] + 1900, $date[4] + 1, $date[3]);
22my $revision = '01';
23
24open (CHANGELOG, 'debian/changelog') or die "Couldn't open debian/changelog: $!\n";
25
26$_ = <CHANGELOG>;
27chomp;
28
29close CHANGELOG;
30
31my ($package, $last_date, $last_revision) = /^(.*?) \((.*?)\.(.*)?\)/;
32
33if ($last_date eq $datestr) {
34  $revision = sprintf("%.2d", $last_revision + 1);
35}
36
37my $new_version = "$datestr.$revision";
38
39copy('debian/changelog', 'debian/changelog.old') or die "Couldn't copy debian/changelog to debian/changelog.old: $!\n";
40
41open(NEWCHANGELOG, ">debian/changelog") or die "Couldn't open debian/changelog for writing: $!\n";
42
43print NEWCHANGELOG "$package ($new_version) unstable; urgency=low\n\n  * CVS snapshot build at " . scalar localtime() . "\n\n -- $maintainer  " . `date -R` . "\n";
44
45open(OLDCHANGELOG, "debian/changelog.old") or die "Couldn't open debian/changelog.old: $!\n";
46
47while (<OLDCHANGELOG>) {
48  print NEWCHANGELOG;
49}
50
51close OLDCHANGELOG;
52close NEWCHANGELOG;
53
54unlink('debian/changelog.old') or die "Couldn't unlink debian/changelog.old: $!\n";
55
56open(NEWVERSION, '>debian/version') or die "Couldn't open debian/version for writing: $!\n";
57print NEWVERSION "$new_version\n";
58close NEWVERSION;
59
60system('dpkg-buildpackage -b -rfakeroot -us -uc');
61unlink 'debian/version' or die "Couldn't unlink debian/version: $!\n";
62
63