diff options
author | joey <joey> | 2000-03-02 21:23:22 +0000 |
---|---|---|
committer | joey <joey> | 2000-03-02 21:23:22 +0000 |
commit | 67b74298f08a3e2b30e43cbcd7cdaccc2e1b1614 (patch) | |
tree | 3ce180eedb8c91f9371456f3fb40336b4c7c34dd /dh_installdirs | |
parent | c7f541bd2bc869c366e8242baf1faa6856cd2e39 (diff) |
r338: * Patch from Jorgen `forcer' Schaefer <forcer at mindless.com> (much
modified)to make dh_installwm use new window manager registration method,
update-alternatives. Closes: #52156, #34684 (latter bug is obsolete)
* Fixed $dh{flavor} to be upper-case.
* Deprecated dh_installemavcsen --number; use --priority instead. Also,
the option parser requires the parameter be a number now. And,
dh_installwm now accepts --priority, and window manager packages should
start using it.
* dh_installwm now behaves like a proper debhelper command, and reads
debian/<package>.wm too. This is a small behavior change; filenames
specified on the command line no longer apply to all packages it acts
on. I can't belive this program existed for 2 years with such a glaring
problem; I guess most people don't need ot register 5 wm's in 3
sub-packages. Anyway, it can handle such things now. :-)
* Moved Dh_*.pm to /usr/lib/perl5/Debian/Debhelper. *big* change.
Diffstat (limited to 'dh_installdirs')
-rwxr-xr-x | dh_installdirs | 62 |
1 files changed, 32 insertions, 30 deletions
diff --git a/dh_installdirs b/dh_installdirs index bab883d7..1ecf907e 100755 --- a/dh_installdirs +++ b/dh_installdirs @@ -1,39 +1,41 @@ -#!/bin/sh -e +#!/usr/bin/perl -w # -# Reads debian/dirs, creates the directories listed there there +# Reads debian/dirs, creates the directories listed there -PATH=debian:$PATH:/usr/lib/debhelper -. dh_lib +use Debian::Debhelper::Dh_Lib; +init(); -for PACKAGE in $DH_DOPACKAGES; do - TMP=`tmpdir $PACKAGE` - EXT=`pkgext $PACKAGE` +foreach $PACKAGE (@{$dh{DOPACKAGES}}) { + $TMP=tmpdir($PACKAGE); + $file=pkgfile($PACKAGE,"dirs"); - if [ ! -d $TMP/usr/doc/$PACKAGE ]; then - doit "install -d $TMP/usr/doc/$PACKAGE" - fi + if (! -e $TMP) { + doit("install","-d",$TMP); + } - dirs="" + undef @dirs; - if [ -e debian/${EXT}dirs ]; then - dirs=`tr "\n" " " < debian/${EXT}dirs` - fi + if ($file) { + @dirs=filearray($file) + } - if [ "$PACKAGE" = "$MAINPACKAGE" -a "$*" ]; then - dirs="$* $dirs" - fi + if (($PACKAGE eq $dh{FIRSTPACKAGE} || $dh{PARAMS_ALL}) && @ARGV) { + push @dirs, @ARGV; + } + + if (@dirs) { + # Stick the $TMP onto the front of all the dirs. + # This is necessary, for 2 reasons, one to make them + # be in the right directory, but more importantly, it + # protects against the danger of absolute dirs being + # specified. + @dirs=map { + $_="$TMP/$_"; + tr:/:/:s; # just beautification. + $_ + } @dirs; - if [ "$dirs" ]; then - # Check to see if any of the dirs are absolute. - for dir in "$dirs" ; do - if expr "$dir" : "/" >/dev/null ; then - error "Absolute directory name \"$dir\" specified." - fi - done # Create dirs. - verbose_echo "cd $TMP && install -d $dirs && cd ../.." - cd $TMP - install -d $dirs - cd ../.. - fi -done + doit("install","-d",@dirs); + } +} |