Provided by: libdpkg-perl_1.16.1.2ubuntu7_all bug


       Dpkg::Path - some common path handling functions


       It provides some functions to handle various path.


               This function will scan upwards the hierarchy of directory to find out the
               directory which contains the "DEBIAN" sub-directory and it will return its path.
               This directory is the root directory of a package being built.

               If no DEBIAN subdirectory is found, it will return undef.

               Returns the filename relative to get_pkg_root_dir($file).

               This function tries to guess the root directory of the package build tree.  It
               will first use get_pkg_root_dir(), but it will fallback to a more imprecise check:
               namely it will use the parent directory that is a sub-directory of the debian

               It can still return undef if a file outside of the debian sub-directory is

       check_files_are_the_same($file1, $file2, $resolve_symlink)
               This function verifies that both files are the same by checking that the device
               numbers and the inode numbers returned by stat()/lstat() are the same. If
               $resolve_symlink is true then stat() is used, otherwise lstat() is used.

               This function returns a cleaned path. It simplifies double //, and remove /./ and
               /../ intelligently. For /../ it simplifies the path only if the previous element
               is not a symlink. Thus it should only be used on real filenames.

       $newpath = resolve_symlink($symlink)
               Return the filename of the file pointed by the symlink. The new name is
               canonicalized by canonpath().

       my $cmdpath = find_command($command)
               Return the path of the command if available on an absolute or relative path or on
               the $PATH, undef otherwise.

       my $control_file = get_control_path($pkg, $filetype)
               Return the path of the control file of type $filetype for the given package.

       my @control_files = get_control_path($pkg)
               Return the path of all available control files for the given package.

       my $file = find_build_file($basename)
               Selects the right variant of the given file: the arch-specific variant
               ("$basename.$arch") has priority over the OS-specific variant ("$basename.$os")
               which has priority over the default variant ("$basename"). If none of the files
               exists, then it returns undef.

       my @files = find_build_file($basename)
               Return the available variants of the given file. Returns an empty list if none of
               the files exists.


   Version 1.03
       New function: find_build_file()

   Version 1.02
       New function: get_control_path()

   Version 1.01
       New function: find_command()


       Raphaƫl Hertzog <>.