From 47bba14b6b1f805e5811e6dd55075d1a4bf985ef Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 28 Jul 2003 18:45:50 +0000 Subject: [PATCH] r939: This commit was manufactured by cvs2svn to create tag 'upstream_version_1_2_53'. --- .foo | 0 BUGS | 0 Makefile | 0 PROGRAMMING | 187 ------------------------- README | 100 ------------- Test.pm | 254 ---------------------------------- debian/cron.d | 0 debian/cron.daily | 0 debian/debhelper2.substvars | 0 debian/debhelperfoo.substvars | 0 debian/dhelp | 1 - debian/docs | 1 - debian/emacsen-install | 0 debian/emacsen-remove | 0 debian/init.d | 0 debian/links | 4 - debian/menu | 0 debian/subtsvars | 1 - dh_getopt.pl | 57 -------- dh_installinfo | 61 -------- dh_installinfo.1 | 54 -------- dh_installmime | 22 --- dh_installmime.1 | 38 ----- dh_installpam | 21 --- dh_installpam.1 | 30 ---- dh_perl | 158 --------------------- dh_perl.1 | 60 -------- dh_testversion.in | 23 --- foo | 2 - from-debstd | 63 --------- me | 0 me.info | 0 pgptemp.$00 | 0 t/dh_link | 20 --- 34 files changed, 1157 deletions(-) delete mode 100644 .foo delete mode 100644 BUGS delete mode 100644 Makefile delete mode 100644 PROGRAMMING delete mode 100644 README delete mode 100644 Test.pm delete mode 100644 debian/cron.d delete mode 100644 debian/cron.daily delete mode 100644 debian/debhelper2.substvars delete mode 100644 debian/debhelperfoo.substvars delete mode 100644 debian/dhelp delete mode 100644 debian/docs delete mode 100644 debian/emacsen-install delete mode 100644 debian/emacsen-remove delete mode 100644 debian/init.d delete mode 100644 debian/links delete mode 100644 debian/menu delete mode 100644 debian/subtsvars delete mode 100755 dh_getopt.pl delete mode 100755 dh_installinfo delete mode 100644 dh_installinfo.1 delete mode 100755 dh_installmime delete mode 100644 dh_installmime.1 delete mode 100755 dh_installpam delete mode 100644 dh_installpam.1 delete mode 100755 dh_perl delete mode 100644 dh_perl.1 delete mode 100644 dh_testversion.in delete mode 100644 foo delete mode 100644 from-debstd delete mode 100644 me delete mode 100644 me.info delete mode 100644 pgptemp.$00 delete mode 100644 t/dh_link diff --git a/.foo b/.foo deleted file mode 100644 index e69de29..0000000 diff --git a/BUGS b/BUGS deleted file mode 100644 index e69de29..0000000 diff --git a/Makefile b/Makefile deleted file mode 100644 index e69de29..0000000 diff --git a/PROGRAMMING b/PROGRAMMING deleted file mode 100644 index 7dc0c63..0000000 --- a/PROGRAMMING +++ /dev/null @@ -1,187 +0,0 @@ -This file documents things you should know to write a new debhelper program. - -Standardization: ---------------- - -There are lots of debhelper commands. To make the learning curve shallower, -I want them all to behave in a standard manner: - -All debhelper programs have names beginning with "dh_". This is so we don't -pollute the name space too much. - -Debhelper programs should never output anything to standard output except -error messages, important warnings, and the actual commands they run that -modify files under debian/ and debian/tmp, etc (this last only if they are -passed -v, and if you output the commands, you should indent them with 1 tab). -This is so we don't have a lot of noise output when all the debhelper commands -in a debian/rules are run, so the important stuff is clearly visible. - -Debhelper programs should accept the options, -v, -i, -a, -p, --no-act, and --P, and any long forms of these options, like --verbose . If necessary, the -options may be ignored. - -If debhelper commands need config files, they should use -debian/package.filename as the name of the config file (replace filename -with whatever your command wants), and debian/filename should also be -checked for config information for the first binary package in -debian/control. Also, debhelper commands should accept the same sort of -information that appears in the config files, on their command lines, if -possible, and apply that information to the first package they act on. - -Debhelper programs should never modify the debian/postinst, debian/prerm, -etc scripts, instead, they can add lines to debian/postinst.debhelper, etc. -The autoscript() function (see below) is one easy way to do this. -dh_installdeb is an exception, it will run after the other commands and -merge these modifications into the actual postinst scripts. - -There are always exceptions. Just ask me. - -Introducing dh_lib: ------------------- - -All debhelper programs use the dh_lib library (actually it's a shell script) -to parse their arguments and set some useful variables. It's not mandatory -that your program use dh_lib, but it will make it a lot easier to keep it in -sync with the rest of debhelper if it does, so this is highly encouraged. - -Typically, you invoke dh_lib like this: - -PATH=debian:$PATH:/usr/lib/debhelper -. dh_lib - -The path statement is there to make your program look first in debian/ for -dh_lib (so users can install a modified version there if necessary), then the -rest of the path, then the canonical location of dh_lib, /usr/lib/debhelper. - -Argument processing: -------------------- - -All debhelper programs should respond to certain arguments, such as -v, -i, --a, and -p. To help you make this work right, dh_lib handles argument -processing. - -As soon as dh_lib loads, it processes any arguments that have been passed to -your program. The following variables may be set during this stage; your -program can use them later: - -switch variable description --v DH_VERBOSE should the program verbosely output what it is - doing? ---no-act DH_NO_ACT should the program not actually do anything? --i,-a,-p DH_DOPACKAGES a space delimited list of the binary packages - to act on --i,-p DH_DOINDEP a space delimited list of the binary independent - packages to act on --a,-p DH_DOARCH a space delimited list of the binary dependent - packages to act on --n DH_NOSCRIPTS if set, do not make any modifications to the - package's postinst, postrm, etc scripts. --X DH_EXCLUDE exclude a something from processing (you - decide what this means for your program) - DH_EXCLUDE_GREP same as DH_EXCLUDE, except all items are - separated by '|' characters, instead of spaces, - handy for egrep -v --x DH_INCLUDE_CONFFILES - include conffiles. It's -x for obscure - historical reasons. --d DH_D_FLAG you decide what this means to your program --r DH_R_FLAG you decide what this means to your program --k DH_K_FLAG you decide what this means to your program --P DH_TMPDIR package build directory (implies only one - package is being acted on) --u DH_U_PARAMS will be set to a string, that is typically - parameters your program passes on to some - other program. --m DH_M_PARAMS will be set to a string, you decide what it - means to your program --V DH_V_FLAG will be set to a string, you decide what it - means to your program --V DH_V_FLAG_SET will be 1 if -V was specified, even if no - parameters were passed along with the -V --A DH_PARAMS_ALL generally means that additional command line - parameters passed to the program (other than - those processed here), will apply to all - binary packages the program acts on, not just - the first ---init-script DH_INIT_SCRIPT will be set to a string, which specifies an - init script name (probably only - dh_installinit will ever use this) - -Any additional command line parameters that do not start with "-" will be -ignored, and you can access them later just as you normally would ($1, $2, -etc). - -If you need a new command line option, just ask me, and I will add it. - -Global variables: ----------------- - -The following variables are also set, you can use any of them: - -MAINPACKAGE the name of the first binary package listed in - debian/control -DH_FIRSTPACKAGE the first package we were instructed to act on. This package - typically gets special treatment, additional arguments - specified on the command line may effect it. - -Functions: ---------- - -Dh_lib also contains a number of functions you may find useful. - -doit() - Pass this function a string that is a shell command. It will run the - command (unless DH_NO_ACT is set), and if DH_VERBOSE is set, it will - also output the command to stdout. You should use this function for - almost all commands your program performs that manipulate files in - the package build directories. -complex_doit() - This is the same as doit(), except you can pass more complicated - commands to it (ie, commands involving piping redirection) -verbose_echo() - Pass this command a string, and it will echo it if DH_VERBOSE is set. -error() - Pass this command a string, it will output it to standard error and - exit. -warning() - Pass this command a string, and it will output it to standard error - as a warning message. -tmpdir() - Pass this command the name of a binary package, it will return the - name of the tmp directory that will be used as this package's - package build directory. Typically, this will be "debian/tmp" or - "debian/package". -pkgfile() - Pass this command the name of a binary package, and the base name of a - file, and it will return the actual filename to use. This is used - for allowing debhelper programs to have configuration files in the - debian/ directory, so there can be one config file per binary - package. The convention is that the files are named - debian/package.filename, and debian/filename is also allowable for - the MAINPACKAGE. If the file does not exist, nothing is returned. -pkgext() - Pass this command the name of a binary package, and it will return - the name to prefix to files in debian/ for this package. For the - MAINPACKAGE, it returns nothing (there is no prefix), for the other - packages, it returns "package.". -isnative() - Pass this command the name of a package, it returns 1 if the package - is a native debian package. - As a side effect, VERSION is set to the version number of the - package. -autoscript() - Pass 3 parameters: - 1: script to add to - 2: filename of snippet - 3: sed commands to run on the snippet. Ie, s/#PACKAGE#/$PACKAGE/ - (optional) - This command automatically adds shell script snippets to a debian - maintainer script (like the postinst or prerm). - -Notes: ------ - -Dh_lib is still evolving. -There will probably be a perl version too, in the future. - --- Joey Hess diff --git a/README b/README deleted file mode 100644 index 986eb02..0000000 --- a/README +++ /dev/null @@ -1,100 +0,0 @@ -Debhelper is a collection of programs that can be used in debian/rules files -to automate common tasks. For further documentation, see the man pages for -dh_* commands. - -To help you get started, I've included examples of debian/rules files -that use debhelper commands extensively. See /usr/doc/debhelper/examples/ . -These files are also useful as they give one good order you can run the -various debhelper scripts in (though other variations are possible). - -Starting a new package: ----------------------- - -You can just use the example rules files and do the rest of the new package -set up by hand, or you could try the new dh-make package, which contains a -"dh_make" command that is similar to debmake, and tries to automate the -process. - -Converting from debstd to debhelper: ------------------------------------ - -See the file "from-debstd" for documentation on how to do this. - -Automatic generation of debian install scripts: ----------------------------------------------- - -Some debhelper commands will automatically generate parts of debian install -scripts. If you want these automatically generated things included in your -debian install scripts, then you need to add "#DEBHELPER#" to your scripts, -in the place the code should be added. "#DEBHELPER#" will be replaced by any -auto-generated code when you run dh_installdeb. - -All scripts that automatically generate code in this way let it be disabled -by the -n parameter. - -Note that it will be shell code, so you cannot directly use it in a perl -script. If you would like to embed it into a perl script, here is one way to -do that: - -print << `EOF` -#DEBHELPER# -EOF - - -Notes on multiple binary packages: ---------------------------------- - -If your source package generates more than one binary package, debhelper -programs will default to acting on all binary packages when run. If your -source package happens to generate one architecture dependent package, and -another architecture independent package, this is not the correct behavior, -because you need to generate the architecture dependent packages in the -binary-arch debian/rules target, and the architecture independent packages -in the binary-indep debian/rules target. - -To facilitate this, as well as give you more control over which packages -are acted on by debhelper programs, all debhelper programs accept the -following parameters: - --a Act on architecture dependent packages --i Act on architecture independent packages --ppackage Act on the package named "package" (may be repeated multiple - times) - -These parameters are cumulative. If none are given, the tools default to -affecting all packages. - -See examples/rules.multi for an example of how to use this. - -Package build directories -- debian/tmp, etc: --------------------------------------------- - -By default, all debhelper programs assume that the temporary directory used -for assembling the tree of files in a package is debian/tmp for the first -package listed in debian/control, and debian/ for each -additional package. - -Sometimes, you might want to use some other temporary directory. This is -supported by the -P flag. The directory to use is specified after -P, for -example, "dh_installdocs -Pdebian/tmp", will use debian/tmp as the temporary -directory. Note that if you use -P, the debhelper programs can only be -acting on a single package at a time. So if you have a package that builds -many binary packages, you will need to use the -p flag to specify which -binary package the debhelper program will act on. For example: - - dh_installdocs -pfoolib1 -Pdebian/tmp-foolib1 - dh_installdocs -pfoolib1-dev -Pdebian/tmp-foolib1-dev - dh_installdocs -pfoolib-bin -Pdebian/tmp-foolib-bin - -This uses debian/tmp- as the package build directory. - -Other notes: ------------ - -* In general, if any debhelper program needs a directory to exist under - debian/, it will create it. I haven't bothered to document this in all the - man pages, but for example, dh_installdeb knows to make debian/tmp/DEBIAN/ - before trying to put files there, dh_installmenu knows you need a - debian/tmp/usr/lib/menu/ before installing the menu files, etc. - --- Joey Hess diff --git a/Test.pm b/Test.pm deleted file mode 100644 index 55f80ac..0000000 --- a/Test.pm +++ /dev/null @@ -1,254 +0,0 @@ -use strict; -package Test; -use Test::Harness 1.1501 (); -use Carp; -use vars (qw($VERSION @ISA @EXPORT @EXPORT_OK $ntest $TestLevel), #public-ish - qw($TESTOUT $ONFAIL %todo %history $planned @FAILDETAIL)); #private-ish -$VERSION = '1.13'; -require Exporter; -@ISA=('Exporter'); -@EXPORT=qw(&plan &ok &skip); -@EXPORT_OK=qw($ntest $TESTOUT); - -$TestLevel = 0; # how many extra stack frames to skip -$|=1; -#$^W=1; ? -$ntest=1; -$TESTOUT = *STDOUT{IO}; - -# Use of this variable is strongly discouraged. It is set mainly to -# help test coverage analyzers know which test is running. -$ENV{REGRESSION_TEST} = $0; - -sub plan { - croak "Test::plan(%args): odd number of arguments" if @_ & 1; - croak "Test::plan(): should not be called more than once" if $planned; - my $max=0; - for (my $x=0; $x < @_; $x+=2) { - my ($k,$v) = @_[$x,$x+1]; - if ($k =~ /^test(s)?$/) { $max = $v; } - elsif ($k eq 'todo' or - $k eq 'failok') { for (@$v) { $todo{$_}=1; }; } - elsif ($k eq 'onfail') { - ref $v eq 'CODE' or croak "Test::plan(onfail => $v): must be CODE"; - $ONFAIL = $v; - } - else { carp "Test::plan(): skipping unrecognized directive '$k'" } - } - my @todo = sort { $a <=> $b } keys %todo; - if (@todo) { - print $TESTOUT "1..$max todo ".join(' ', @todo).";\n"; - } else { - print $TESTOUT "1..$max\n"; - } - ++$planned; -} - -sub to_value { - my ($v) = @_; - (ref $v or '') eq 'CODE' ? $v->() : $v; -} - -sub ok ($;$$) { - croak "ok: plan before you test!" if !$planned; - my ($pkg,$file,$line) = caller($TestLevel); - my $repetition = ++$history{"$file:$line"}; - my $context = ("$file at line $line". - ($repetition > 1 ? " fail \#$repetition" : '')); - my $ok=0; - my $result = to_value(shift); - my ($expected,$diag); - if (@_ == 0) { - $ok = $result; - } else { - $expected = to_value(shift); - my ($regex,$ignore); - if (!defined $expected) { - $ok = !defined $result; - } elsif (!defined $result) { - $ok = 0; - } elsif ((ref($expected)||'') eq 'Regexp') { - $ok = $result =~ /$expected/; - } elsif (($regex) = ($expected =~ m,^ / (.+) / $,sx) or - ($ignore, $regex) = ($expected =~ m,^ m([^\w\s]) (.+) \1 $,sx)) { - $ok = $result =~ /$regex/; - } else { - $ok = $result eq $expected; - } - } - my $todo = $todo{$ntest}; - if ($todo and $ok) { - $context .= ' TODO?!' if $todo; - print $TESTOUT "ok $ntest # ($context)\n"; - } else { - print $TESTOUT "not " if !$ok; - print $TESTOUT "ok $ntest\n"; - - if (!$ok) { - my $detail = { 'repetition' => $repetition, 'package' => $pkg, - 'result' => $result, 'todo' => $todo }; - $$detail{expected} = $expected if defined $expected; - $diag = $$detail{diagnostic} = to_value(shift) if @_; - $context .= ' *TODO*' if $todo; - if (!defined $expected) { - if (!$diag) { - print $TESTOUT "# Failed test $ntest in $context\n"; - } else { - print $TESTOUT "# Failed test $ntest in $context: $diag\n"; - } - } else { - my $prefix = "Test $ntest"; - print $TESTOUT "# $prefix got: ". - (defined $result? "'$result'":'')." ($context)\n"; - $prefix = ' ' x (length($prefix) - 5); - if ((ref($expected)||'') eq 'Regexp') { - $expected = 'qr/'.$expected.'/' - } else { - $expected = "'$expected'"; - } - if (!$diag) { - print $TESTOUT "# $prefix Expected: $expected\n"; - } else { - print $TESTOUT "# $prefix Expected: $expected ($diag)\n"; - } - } - push @FAILDETAIL, $detail; - } - } - ++ $ntest; - $ok; -} - -sub skip ($$;$$) { - my $whyskip = to_value(shift); - if ($whyskip) { - $whyskip = 'skip' if $whyskip =~ m/^\d+$/; - print $TESTOUT "ok $ntest # $whyskip\n"; - ++ $ntest; - 1; - } else { - local($TestLevel) = $TestLevel+1; #ignore this stack frame - &ok; - } -} - -END { - $ONFAIL->(\@FAILDETAIL) if @FAILDETAIL && $ONFAIL; -} - -1; -__END__ - -=head1 NAME - - Test - provides a simple framework for writing test scripts - -=head1 SYNOPSIS - - use strict; - use Test; - - # use a BEGIN block so we print our plan before MyModule is loaded - BEGIN { plan tests => 14, todo => [3,4] } - - # load your module... - use MyModule; - - ok(0); # failure - ok(1); # success - - ok(0); # ok, expected failure (see todo list, above) - ok(1); # surprise success! - - ok(0,1); # failure: '0' ne '1' - ok('broke','fixed'); # failure: 'broke' ne 'fixed' - ok('fixed','fixed'); # success: 'fixed' eq 'fixed' - ok('fixed',qr/x/); # success: 'fixed' =~ qr/x/ - - ok(sub { 1+1 }, 2); # success: '2' eq '2' - ok(sub { 1+1 }, 3); # failure: '2' ne '3' - ok(0, int(rand(2)); # (just kidding :-) - - my @list = (0,0); - ok @list, 3, "\@list=".join(',',@list); #extra diagnostics - ok 'segmentation fault', '/(?i)success/'; #regex match - - skip($feature_is_missing, ...); #do platform specific test - -=head1 DESCRIPTION - -L expects to see particular output when it executes -tests. This module aims to make writing proper test scripts just a -little bit easier (and less error prone :-). - -=head1 TEST TYPES - -=over 4 - -=item * NORMAL TESTS - -These tests are expected to succeed. If they don't something's -screwed up! - -=item * SKIPPED TESTS - -Skip is for tests that might or might not be possible to run depending -on the availability of platform specific features. The first argument -should evaluate to true (think "yes, please skip") if the required -feature is not available. After the first argument, skip works -exactly the same way as do normal tests. - -=item * TODO TESTS - -TODO tests are designed for maintaining an B. -These tests are expected NOT to succeed. If a TODO test does succeed, -the feature in question should not be on the TODO list, now should it? - -Packages should NOT be released with succeeding TODO tests. As soon -as a TODO test starts working, it should be promoted to a normal test -and the newly working feature should be documented in the release -notes or change log. - -=back - -=head1 RETURN VALUE - -Both C and C return true if their test succeeds and false -otherwise in a scalar context. - -=head1 ONFAIL - - BEGIN { plan test => 4, onfail => sub { warn "CALL 911!" } } - -While test failures should be enough, extra diagnostics can be -triggered at the end of a test run. C is passed an array ref -of hash refs that describe each test failure. Each hash will contain -at least the following fields: C, C, and -C. (The file, line, and test number are not included because -their correspondence to a particular test is tenuous.) If the test -had an expected value or a diagnostic string, these will also be -included. - -The B C hook might be used simply to print out the -version of your package and/or how to report problems. It might also -be used to generate extremely sophisticated diagnostics for a -particularly bizarre test failure. However it's not a panacea. Core -dumps or other unrecoverable errors prevent the C hook from -running. (It is run inside an C block.) Besides, C is -probably over-kill in most cases. (Your test code should be simpler -than the code it is testing, yes?) - -=head1 SEE ALSO - -L and, perhaps, test coverage analysis tools. - -=head1 AUTHOR - -Copyright (c) 1998-1999 Joshua Nathaniel Pritikin. All rights reserved. - -This package is free software and is provided "as is" without express -or implied warranty. It may be used, redistributed and/or modified -under the terms of the Perl Artistic License (see -http://www.perl.com/perl/misc/Artistic.html) - -=cut diff --git a/debian/cron.d b/debian/cron.d deleted file mode 100644 index e69de29..0000000 diff --git a/debian/cron.daily b/debian/cron.daily deleted file mode 100644 index e69de29..0000000 diff --git a/debian/debhelper2.substvars b/debian/debhelper2.substvars deleted file mode 100644 index e69de29..0000000 diff --git a/debian/debhelperfoo.substvars b/debian/debhelperfoo.substvars deleted file mode 100644 index e69de29..0000000 diff --git a/debian/dhelp b/debian/dhelp deleted file mode 100644 index 31e980b..0000000 --- a/debian/dhelp +++ /dev/null @@ -1 +0,0 @@ -hhihihi diff --git a/debian/docs b/debian/docs deleted file mode 100644 index 8b13789..0000000 --- a/debian/docs +++ /dev/null @@ -1 +0,0 @@ - diff --git a/debian/emacsen-install b/debian/emacsen-install deleted file mode 100644 index e69de29..0000000 diff --git a/debian/emacsen-remove b/debian/emacsen-remove deleted file mode 100644 index e69de29..0000000 diff --git a/debian/init.d b/debian/init.d deleted file mode 100644 index e69de29..0000000 diff --git a/debian/links b/debian/links deleted file mode 100644 index 9a72e0f..0000000 --- a/debian/links +++ /dev/null @@ -1,4 +0,0 @@ -usr/bin/sysdb-wrapper usr/bin/chfn -usr/bin/sysdb-wrapper usr/bin/chsh -usr/bin/sysdb-wrapper usr/bin/passwd - diff --git a/debian/menu b/debian/menu deleted file mode 100644 index e69de29..0000000 diff --git a/debian/subtsvars b/debian/subtsvars deleted file mode 100644 index 458d787..0000000 --- a/debian/subtsvars +++ /dev/null @@ -1 +0,0 @@ -perl:Depends=perl5 diff --git a/dh_getopt.pl b/dh_getopt.pl deleted file mode 100755 index 4d1d390..0000000 --- a/dh_getopt.pl +++ /dev/null @@ -1,57 +0,0 @@ -#!/usr/bin/perl -# -# Because the getopt() program is so horribly broken, I wrote my own argument -# processer that uses the find Getopt::Long module. This is used by all -# debhelper shell scripts. -# -# Joey Hess, GPL copyright 1998. - -BEGIN { push @INC, "debian", "/usr/lib/debhelper" } -use strict; -use Dh_Getopt; - -# This is a tricky (and nasty) bit: override the error() function, which -# comes from Dh_Lib, with one of our own so we print out the list of errors -# to the shell, which can do what it wants with them. -sub Dh_Getopt::error { my $message=shift; - print "DH_PARSE_ERROR='$message'\n"; - exit 1; -} - -# Parse options. -my %options=Dh_Getopt::parseopts(); - -# Change a few lists in %options into strings, -# generate some options that only need to be visible to the -# shell scripts so Dh_Getopt doesn't bother generating. -$options{DOPACKAGES}=join " ",@{$options{DOPACKAGES}}; -if ($#{$options{EXCLUDE}} > -1) { - $options{EXCLUDE_GREP}=join '|', @{$options{EXCLUDE}}; -} -$options{EXCLUDE}=join " ",@{$options{EXCLUDE}}; - -# Check to see if DH_VERBOSE environment variable was set, if so, -# make sure verbose is on. -if (defined $main::ENV{DH_VERBOSE}) { - if ($main::ENV{DH_VERBOSE} ne undef) { - $options{VERBOSE}=1; - } -} - -# Check to see if DH_NO_ACT environment variable was set, if so, -# make sure no act mode is on. -if (defined $main::ENV{DH_NO_ACT}) { - if ($main::ENV{DH_NO_ACT} ne undef) { - $options{NO_ACT}=1; - } -} - -# Now output everything, in a format suitable for a shell to eval it. -foreach (keys(%options)) { - if (defined $options{$_}) { - print "DH_$_='$options{$_}'\n"; - } -} - -# This sets $@ in the shell to whatever arguements remain. -print "set -- @ARGV\n" diff --git a/dh_installinfo b/dh_installinfo deleted file mode 100755 index 2983d28..0000000 --- a/dh_installinfo +++ /dev/null @@ -1,61 +0,0 @@ -#!/usr/bin/perl -w -# -# Reads debian/info, installs all files listed there into /usr/info -# and puts appropriate commands into the postinst. - -BEGIN { push @INC, "debian", "/usr/share/debhelper" } -use Dh_Lib; -init(); - -foreach $PACKAGE (@{$dh{DOPACKAGES}}) { - $TMP=tmpdir($PACKAGE); - $file=pkgfile($PACKAGE,"info"); - - undef @info; - - if ($file) { - @info=filearray($file); - } - - if (($PACKAGE eq $dh{FIRSTPACKAGE} || $dh{PARAMS_ALL}) && @ARGV) { - push @info, @ARGV; - } - - if (@info) { - if ( ! -d "$TMP/usr/info") { - doit("install","-d","$TMP/usr/info"); - } - doit("cp",@info,"$TMP/usr/info"); - doit("chmod","-R", "go=rX","$TMP/usr/info/"); - doit("chmod","-R", "u+rw","$TMP/usr/info/"); - } - - foreach $file (@info) { - # Only register with install-info if this is a head file in - # a tree of info files. - if ($file=~/\.info$/ && ! $dh{NOSCRIPTS}) { - # Figure out what section this file goes in. - my $section=''; - open (IN, "<$file") || die "$file: $!"; - while () { - if (/INFO-DIR-SECTION\s+(.*)/) { - $section=$1; - last; - } - } - close IN; - - my $fn="/usr/info/".Dh_Lib::basename($file); - - if ($section ne '') { - autoscript($PACKAGE,"postinst","postinst-info", - "s/#SECTION#/$section/g;s:#FILE#:$fn:"); - } - else { - autoscript($PACKAGE,"postinst","postinst-info-nosection", - "s:#FILE#:$fn:"); - } - autoscript($PACKAGE,"prerm","prerm-info", "s:#FILE#:$fn:"); - } - } -} diff --git a/dh_installinfo.1 b/dh_installinfo.1 deleted file mode 100644 index 33e388a..0000000 --- a/dh_installinfo.1 +++ /dev/null @@ -1,54 +0,0 @@ -.TH DH_INSTALLINFO 1 "" "Debhelper Commands" "Debhelper Commands" -.SH NAME -dh_installinfo \- install and register info files -.SH SYNOPSIS -.B dh_installinfo -.I "[debhelper options] [-A] [-n] [file ...]" -.SH "DESCRIPTION" -dh_installinfo is a debhelper program that is responsible for installing -info files and registering them with install-info. -.P -Any filenames specified as parameters will be installed into the first -package dh_installinfo is told to act on. By default, this is the first -binary package in debian/control, but if you use -p, -i, or -a flags, it -will be the first package specified by those flags. -.P -A file named debian/package.info (debian/info may be used for the first -binary package in debian/control) can list other files to be installed. -.P -dh_installinfo will automatically generate the postinst and prerm commands -needed to interface with install-info. See -.BR dh_installdeb (1) -for an explanation of how this works. -.SH OPTIONS -.TP -.B debhelper options -See -.BR debhelper (1) -for a list of options common to all debhelper commands. -.TP -.B \-A, \--all -Install all files specified by command line parameters in ALL packages -acted on. -.TP -.B \-n, \--noscripts -Do not modify postinst/prerm scripts. -.TP -.B file ... -Install these info files into the first package acted on. (Or in -all packages if -A is specified). -.SH ENVIRONMENT -See -.BR debhelper (1) -for a list of environment variables that affect all debhelper commands. -.SH "SEE ALSO" -.BR debhelper (1) -.TP -.BR install-info (8) -.SH BUGS -It's impossible to specify filenames with spaces or other whitespace in them -in debian/info file. This is more a historical design flaw than a bug. -.SH "CONFORMS TO" -Debian policy, version 2.5.0.0 -.SH AUTHOR -Joey Hess diff --git a/dh_installmime b/dh_installmime deleted file mode 100755 index 7cada57..0000000 --- a/dh_installmime +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/perl -w - -BEGIN { push @INC, "debian", "/usr/share/debhelper" } -use Dh_Lib; -init(); - -foreach $PACKAGE (@{$dh{DOPACKAGES}}) { - $TMP=tmpdir($PACKAGE); - $mime=pkgfile($PACKAGE,"mime"); - - if ($mime ne '') { - if (! -d "$TMP/usr/lib/mime/packages") { - doit("install","-d","$TMP/usr/lib/mime/packages"); - } - doit("install","-p","-m644",$mime,"$TMP/usr/lib/mime/packages/$PACKAGE"); - - if (! $dh{NOSCRIPTS}) { - autoscript($PACKAGE,"postinst","postinst-mime"); - autoscript($PACKAGE,"postrm","postrm-mime") - } - } -} diff --git a/dh_installmime.1 b/dh_installmime.1 deleted file mode 100644 index 4ace998..0000000 --- a/dh_installmime.1 +++ /dev/null @@ -1,38 +0,0 @@ -.TH DH_INSTALLMIME 1 "" "Debhelper Commands" "Debhelper Commands" -.SH NAME -dh_installmime \- install mime files into package build directories -.SH SYNOPSIS -.B dh_installmime -.I "[debhelper options] [-n]" -.SH "DESCRIPTION" -dh_installmime is a debhelper program that is responsible for installing -mime files into package build directories. -.P -It also automatically generates the postinst and postrm commands needed to -interface with the debian mime-support package. See -.BR dh_installdeb (1) -for an explanation of how this works. -.P -If a file named debian/package.mime exists, then it is installed into -usr/lib/mime/packages/package in the package build directory. -.P -For the first first binary package listed in the control file, you may use -debian/mime instead. -.SH OPTIONS -.TP -.B debhelper options -See -.BR debhelper (1) -for a list of options common to all debhelper commands. -.TP -.B \-n, \--noscripts -Do not modify postinst/postrm scripts. -.SH ENVIRONMENT -See -.BR debhelper (1) -for a list of environment variables that affect all debhelper commands. -.SH "SEE ALSO" -.TP -.BR debhelper (1) -.SH AUTHOR -Joey Hess diff --git a/dh_installpam b/dh_installpam deleted file mode 100755 index 897fd7d..0000000 --- a/dh_installpam +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/perl -w -# -# Integration with debian pam system: -# -# If debian/pam file exists, save it to $TMP/etc/pam.d/$PACKAGE - -BEGIN { push @INC, "debian", "/usr/share/debhelper" } -use Dh_Lib; -init(); - -foreach $PACKAGE (@{$dh{DOPACKAGES}}) { - $TMP=tmpdir($PACKAGE); - $pam=pkgfile($PACKAGE,"pam"); - - if ($pam ne '') { - if (! -d "$TMP/etc/pam.d") { - doit("install","-d","$TMP/etc/pam.d"); - } - doit("install","-p","-m644",$pam,"$TMP/etc/pam.d/$PACKAGE"); - } -} diff --git a/dh_installpam.1 b/dh_installpam.1 deleted file mode 100644 index bb34a45..0000000 --- a/dh_installpam.1 +++ /dev/null @@ -1,30 +0,0 @@ -.TH DH_INSTALLPAM 1 "" "Debhelper Commands" "Debhelper Commands" -.SH NAME -dh_installpam \- install pam support files -.SH SYNOPSIS -.B dh_installpam -.I "[debhelper options] [-n]" -.SH "DESCRIPTION" -dh_installpam is a debhelper program that is responsible for installing -files used by PAM into package build directories. -.P -If a file named debian/package.pam exists, then it is installed into -etc/pam.d/package in the package build directory. -.P -For the first first binary package listed in the control file, you may use -debian/pam instead. -.SH OPTIONS -.TP -.B debhelper options -See -.BR debhelper (1) -for a list of options common to all debhelper commands. -.SH ENVIRONMENT -See -.BR debhelper (1) -for a list of environment variables that affect all debhelper commands. -.SH "SEE ALSO" -.TP -.BR debhelper (1) -.SH AUTHOR -Joey Hess diff --git a/dh_perl b/dh_perl deleted file mode 100755 index fa9c8eb..0000000 --- a/dh_perl +++ /dev/null @@ -1,158 +0,0 @@ -#!/usr/bin/perl -w -# -# Find dependencies on perl stuff -# Remove .packlist files - -BEGIN { push @INC, "debian", "/usr/share/debhelper" } -use Dh_Lib; -init(); - -my $ext = ''; -my $lib_dir = 'usr/lib/perl5'; - -# Figure out the version of perl. If $ENV{PERL} is set, query the perl binary -# it points to, otherwise query perl directly. -my $version=sprintf("%.3f", $]); -if (defined $ENV{PERL}) { - $version=`$ENV{PERL} -e 'printf "%.3f", \$]'`; -} - -# Cleaning the paths given on the command line -foreach (@ARGV) { - s#/$##; - s#^/##; -} - -# If -d is given, then we'll try to depend on one of the perl-5.00X-base -# package instead of perl-5.00X -$ext='-base' if ($dh{'D_FLAG'}); - -foreach $PACKAGE (@{$dh{DOPACKAGES}}) { - $TMP=tmpdir($PACKAGE); - $EXT=pkgext($PACKAGE); - - my ($file, $v, $arch); - my $dep_arch = ''; - my $dep = ''; - my $found = 0; - - # Check also for alternate locations given on the command line - my $dirs = ''; - foreach ($lib_dir, @ARGV) { - $dirs .= "$TMP/$_ " if (-d "$TMP/$_"); - } - my $re = '(?:' . join('|', ($lib_dir, @ARGV)) . ')'; - - # Look for perl modules and check where they are installed - if ($dirs) { - foreach $file (split(/\n/,`find $dirs -type f \\( -name "*.pm" -or -name "*.so" \\)`)) { - $found++; - if ($file =~ m<^$TMP/$re/(\d\.\d{3})/([^/]+)/>) { - $v = $1; - $arch = $2; - check_module_version ($v, $version); - $v .= '-thread' if ($arch =~ /-thread/); - $dep_arch = add_deps ($dep_arch, "perl-$v"); - } elsif ($file =~ m<^$TMP/$re/(\d.\d{3})/>) { - $v = $1; - check_module_version ($v, $version); - $dep_arch = add_deps ($dep_arch, "perl-$v"); - } - } - } - - if ($found and not $dep_arch) { - $dep = "perl5$ext"; - } elsif ($dep_arch) { - $dep = $dep_arch; - } - - # Look for perl scripts - my ($ff, $newdep); - foreach $file (split(/\n/,`find $TMP -type f \\( -name "*.pl" -or -perm +111 \\)`)) { - $ff=`file -b $file`; - if ($ff =~ /perl/) { - $newdep = dep_from_script ($file); - $dep = add_deps ($dep, $newdep) if $newdep; - } - } - - # Remove .packlist files and eventually some empty directories - if (not $dh{'K_FLAG'}) { - foreach $file (split(/\n/,`find $TMP -type f -name .packlist`)) - { - unlink($file); - # Get the directory name - while ($file =~ s#/[^/]+$##){ - last if (not -d $file); - last if (not rmdir $file); - } - } - } - - next unless $dep; - - if (-e "debian/$EXT\substvars") { - open (IN, "; - close IN; - open (OUT, ">debian/$EXT\substvars"); - print OUT @lines; - } else { - open (OUT, ">debian/$EXT\substvars"); - } - print OUT "perl:Depends=$dep\n"; - close OUT; -} - -sub add_deps { - my ($dep, $new) = @_; - - # If the $new-base package can exist then add $ext to $new - $new = "$new$ext" if ($new =~ m/^(?:perl5|perl-\d\.\d{3})$/); - - # If $new = perl5 or perl5-thread check if perl-X.XXX(-thread)? - # is not already in the dependencies - if ($new eq "perl5") { - return $dep if ($dep =~ m/(^|\s)perl-5\.\d{3}(\s|,|$)/); - } elsif ($new eq "perl5-thread") { - return $dep if ($dep =~ m/(^|\s)perl-5\.\d{3}-thread(\s|,|$)/); - } - - if (not $dep) { - $dep = $new; - } else { - $dep .= ", $new" unless ($dep =~ m/(^|\s)$new(\s|,|$)/); - } - - return $dep; -} - -sub check_module_version { - my ($v1, $v2) = @_; - unless ($v1 eq $v2) { - warning("A module has been found in perl-$v1 arch directory. But perl-$v2 is the perl currently used ...\n"); - } -} - -sub dep_from_script { - my $file = shift; - my ($line, $perl, $dep); - open (SCRIPT, "<$file") || die "Can't open $file: $!\n"; - $line =