Package: debhelper
Severity: wishlist
Tags: d-i

To make it easier to generate correct dependencies for udebs, please 
consider attached patches.

The patches add support for generating extra udeb: lines in shlibs files. 
This is controlled by a new argument "--add-udeb" which takes the name of 
the udeb package which contains the libs as value.

This BR goes together with a path for dh_shlibdeps that makes use of these 
added lines but which is filed separately because it depends on a change 
in dpkg-dev. The patches in this BR could be applied now so we could make 
a start getting libraries ready for when dpkg-dev adds its support.

Please check the patches for correct implementation.

--- orig/Dh_Getopt.pm	2005-12-31 19:37:22.868461011 +0100
+++ Dh_Getopt.pm	2005-12-31 18:40:25.000000000 +0100
@@ -164,6 +164,8 @@
 		
 		"error-handler=s" => \$options{ERROR_HANDLER},
 
+		"add-udeb=s" => \$options{SHLIBS_UDEB},
+
 		"<>" => \&NonOption,
 	);
 
--- orig/dh_makeshlibs	2005-12-31 19:36:48.743358458 +0100
+++ dh_makeshlibs	2005-12-31 19:31:05.882493019 +0100
@@ -64,6 +64,11 @@
 Exclude files that contain "item" anywhere in their filename or directory 
 from being treated as shared libraries.
 
+=item B<--add-udeb=>I<udeb>
+
+Create an additional line for udebs in shlibs and use "udeb" as the package
+name to depend on instead of the regular library package.
+
 =back
 
 =head1 EXAMPLES
@@ -155,6 +160,10 @@
 				$deps="$package (>= $version)";
 			}
 		}
+		my $udeb_package;
+		if (defined($dh{SHLIBS_UDEB}) && $dh{SHLIBS_UDEB} ne '') {
+			$udeb_package = $dh{SHLIBS_UDEB};
+		}
 		if (defined($library) && defined($major) && defined($deps) &&
 		    $library ne '' && $major ne '' && $deps ne '') {
 		    	$need_ldconfig=1;
@@ -164,6 +173,12 @@
 				$seen{$line}=1;
 				complex_doit("echo '$line' >>$tmp/DEBIAN/shlibs");
 			}
+			if (defined($udeb_package)) {
+				my $udeb_deps = $deps;
+				$udeb_deps =~ s/$package/$udeb_package/e;
+		    		$line="udeb: "."$library $major $udeb_deps";
+				complex_doit("echo '$line' >>$tmp/DEBIAN/shlibs");
+			}
 		}
 	}
 	close FIND;

Attachment: pgpmVIo82KWKz.pgp
Description: PGP signature

Reply via email to