]> git.donarmstrong.com Git - debhelper.git/blobdiff - dh_installexamples
simplify
[debhelper.git] / dh_installexamples
index 4e0bace0d66d7a60c48ed540b1e687d35c8db40b..8e9431a67d009f82c9cf797899b2a88f15ec79f5 100755 (executable)
@@ -19,12 +19,15 @@ dh_installexamples is a debhelper program that is responsible for
 installing examples into usr/share/doc/package/examples in package
 build directories.
 
 installing examples into usr/share/doc/package/examples in package
 build directories.
 
-Any file names specified as parameters will be installed into the first
-package dh_installexamples 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.
+=head1 FILES
 
 
-Files named debian/package.examples can list other files to be installed.
+=over 4
+
+=item debian/I<package>.examples
+
+Lists example files or directories to be installed.
+
+=back
 
 =head1 OPTIONS
 
 
 =head1 OPTIONS
 
@@ -35,16 +38,16 @@ Files named debian/package.examples can list other files to be installed.
 Install any files specified by command line parameters in ALL packages
 acted on.
 
 Install any files specified by command line parameters in ALL packages
 acted on.
 
-=item I<file ...>
-
-Install these files as examples into the first package acted on. (Or into
-all packages if -A is specified.)
-
 =item B<-Xitem>, B<--exclude=item>
 
 Exclude files that contain "item" anywhere in their filename from
 being installed.
 
 =item B<-Xitem>, B<--exclude=item>
 
 Exclude files that contain "item" anywhere in their filename from
 being installed.
 
+=item I<file ...>
+
+Install these files (or directories) as examples into the first package
+acted on. (Or into all packages if -A is specified.)
+
 =back
 
 =head1 NOTES
 =back
 
 =head1 NOTES
@@ -78,7 +81,7 @@ foreach my $package (@{$dh{DOPACKAGES}}) {
                        doit("install","-d","$tmp/usr/share/doc/$package/examples");
                }
                
                        doit("install","-d","$tmp/usr/share/doc/$package/examples");
                }
                
-               my $exclude = '-type f';
+               my $exclude = '';
                if ($dh{EXCLUDE_FIND}) {
                        $exclude .= ' -and ! \( '.$dh{EXCLUDE_FIND}.' \)';
                }
                if ($dh{EXCLUDE_FIND}) {
                        $exclude .= ' -and ! \( '.$dh{EXCLUDE_FIND}.' \)';
                }
@@ -86,10 +89,12 @@ foreach my $package (@{$dh{DOPACKAGES}}) {
                foreach my $example (@examples) {
                        next if excludefile($example);
                        if (-d $example && $exclude) {
                foreach my $example (@examples) {
                        next if excludefile($example);
                        if (-d $example && $exclude) {
-                               my ($dir_basename) = basename($example);
+                               my $basename = basename($example);
+                               my $dir = ($basename eq '.') ? $example : "$example/..";
                                my $pwd=`pwd`;
                                chomp $pwd;
                                my $pwd=`pwd`;
                                chomp $pwd;
-                               complex_doit("cd '$example/..' && find '$dir_basename' $exclude -exec cp --parents -dp {} $pwd/$tmp/usr/share/doc/$package/examples \\;");
+                               my $exclude2 = '-type f'.$exclude;
+                               complex_doit("cd '$dir' && find '$basename' -type f$exclude -exec cp --parents -dp {} $pwd/$tmp/usr/share/doc/$package/examples \\;");
                        }
                        else {
                                doit("cp", "-a", $example, "$tmp/usr/share/doc/$package/examples");
                        }
                        else {
                                doit("cp", "-a", $example, "$tmp/usr/share/doc/$package/examples");