summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgor Pashev <pashev.igor@gmail.com>2013-07-14 00:05:49 +0400
committerIgor Pashev <pashev.igor@gmail.com>2013-07-14 00:05:49 +0400
commit97d4d87685ee1e32ba347120a91798289f492ea7 (patch)
tree00087b5846cd009695a88a87db536f9f3aad4f7c
parentf853ba73ce17151aa0a8a75b94fd629cc89c1cea (diff)
downloaddh-smf-97d4d87685ee1e32ba347120a91798289f492ea7.tar.gz
Install debian/pkg.smf/*
-rwxr-xr-xdh_smf75
1 files changed, 66 insertions, 9 deletions
diff --git a/dh_smf b/dh_smf
index 7dab5b0..f2a0067 100755
--- a/dh_smf
+++ b/dh_smf
@@ -82,15 +82,72 @@ instances of the same text to be added to maintainer scripts.
=cut
-init(options => {
- "r" => \$dh{R_FLAG},
- "no-restart-on-upgrade" => \$dh{R_FLAG},
- "no-start" => \$dh{NO_START},
- "R|restart-after-upgrade" => \$dh{RESTART_AFTER_UPGRADE},
-});
-
-foreach my $package (@{$dh{DOPACKAGES}}) {
- my $tmp=tmpdir($package);
+# Same as pkgfile in /usr/share/perl5/Debian/Debhelper/Dh_Lib.pm,
+# but -f => -d
+sub pkgdir {
+ my $package = shift;
+ my $filename = shift;
+
+ if ( defined $dh{NAME} ) {
+ $filename = "$dh{NAME}.$filename";
+ }
+
+ # First, check for files ending in buildarch and buildos.
+ my $match;
+ foreach my $file ( glob("debian/$package.$filename.*") ) {
+ next if !-d $file;
+ next if $dh{IGNORE} && exists $dh{IGNORE}->{$file};
+ if ( $file eq "debian/$package.$filename." . buildarch() ) {
+ $match = $file;
+
+ # buildarch files are used in preference to buildos files.
+ last;
+ }
+ elsif ( $file eq "debian/$package.$filename." . buildos() ) {
+ $match = $file;
+ }
+ }
+ return $match if defined $match;
+
+ my @try = ("debian/$package.$filename");
+ if ( $package eq $dh{MAINPACKAGE} ) {
+ push @try, "debian/$filename";
+ }
+
+ foreach my $file (@try) {
+ if ( -d $file
+ && ( !$dh{IGNORE} || !exists $dh{IGNORE}->{$file} ) )
+ {
+ return $file;
+ }
+
+ }
+
+ return "";
+}
+
+init(
+ options => {
+ "r" => \$dh{R_FLAG},
+ "no-restart-on-upgrade" => \$dh{R_FLAG},
+ "no-start" => \$dh{NO_START},
+ "R|restart-after-upgrade" => \$dh{RESTART_AFTER_UPGRADE},
+ }
+);
+
+foreach my $package ( @{ $dh{DOPACKAGES} } ) {
+ my $tmp = tmpdir($package);
+ print "\$tmp = $tmp\n";
+
+ my $smf = pkgdir( $package, 'smf' );
+ print "\$smf = $smf\n";
+ if ( $smf ne '' && !$dh{'ONLYSCRIPTS'} ) {
+ my $svcdir = "$tmp/lib/svc";
+ if ( !-d "$svcdir" ) {
+ doit( "install", "-d", "$svcdir" );
+ }
+ complex_doit("cp -a -v -f $smf/* $svcdir/");
+ }
}
=head1 SEE ALSO