[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[pkg-wine-party] Lintian patches (was Re: Bug#585409: Bug#585409: Bug#585409: Too ambitious!)



On Wed, 11 Apr 2012 01:30:11 Michael Gilbert wrote:
> 1.1.39 is now up at http://people.debian.org/~mgilbert
> 

Hi Michael,

I've also packaged 1.1.37, and have some patches for some of the lintian 
complaints which may be useful. See attached.

-- 
Regards,
Scott.
From e3969b815d2bd10ba849c002d6966ffca801e7cb Mon Sep 17 00:00:00 2001
From: Scott Leggett <scott@sl.id.au>
Date: Thu, 1 Mar 2012 22:41:53 +0800
Subject: [PATCH 1/4] Fixed malformed man pages.

Fixed lintian warning 'manpage-has-bad-whatis-entry'.
Brief description is now taken from the first line of the DESCRIPTION
section, if available.
---
 tools/c2man.pl |   22 +++++++++++++++++++---
 1 file changed, 19 insertions(+), 3 deletions(-)

diff --git a/tools/c2man.pl b/tools/c2man.pl
index 62d7e17..6ae29c2 100755
--- a/tools/c2man.pl
+++ b/tools/c2man.pl
@@ -1162,10 +1162,20 @@ sub output_spec($)
   }
   my $contribstring = join (", ", @contributors);
 
+  # Add a brief description if available (first sentence of description)
+  my $brief_description = "No description available.";
+  if (@{$spec_details->{DESCRIPTION}})
+  {
+    join(" ", @{$spec_details->{DESCRIPTION}}) =~ m/(.*?\.)/;
+    $brief_description = $1;
+  }
+
   # Create the initial comment text
   @{$comment->{TEXT}} = (
     "NAME",
-    $comment->{COMMENT_NAME}
+    $comment->{COMMENT_NAME},
+    "\\-",
+    $brief_description
   );
 
   # Add the description, if we have one
@@ -1428,7 +1438,6 @@ sub output_api_name($)
 
   output_api_section_start($comment,"NAME");
 
-
   my $dll_ordinal = "";
   if ($comment->{ORDINAL} ne "")
   {
@@ -1447,7 +1456,14 @@ sub output_api_name($)
   }
   else
   {
-    print OUTPUT "\\fB",$readable_name,"\\fR ",$dll_ordinal;
+    # Add a brief description if available (first sentence of description)
+    my $brief_description = "No description available.";
+    if (@{$comment->{TEXT}})
+    {
+        join(" ", @{$comment->{TEXT}}) =~ m/DESCRIPTION (.*?\.)/;
+        $brief_description = $1;
+    }
+    print OUTPUT "\\fB",$readable_name,"\\fR_",$dll_ordinal," \\-",$brief_description;
   }
 
   output_api_section_end();
-- 
1.7.9.5

From 9e321f0dfec49ead8933b4519d7cd60780a0e119 Mon Sep 17 00:00:00 2001
From: Scott Leggett <scott@sl.id.au>
Date: Fri, 2 Mar 2012 12:28:06 +0800
Subject: [PATCH 2/4] Properly escape backslashes in windows-style paths.

Fixed a lintian warning about badly formatted man pages generated from
source. Fixes paths like "%SystemRoot%\system32".
---
 tools/c2man.pl |    2 ++
 1 file changed, 2 insertions(+)

diff --git a/tools/c2man.pl b/tools/c2man.pl
index 6ae29c2..4040da8 100755
--- a/tools/c2man.pl
+++ b/tools/c2man.pl
@@ -495,6 +495,8 @@ sub process_comment_text($)
     {
       $in_params = 1;
     }
+    # fix representation of windows paths e.g. "%SystemRoot%\system32"
+    $line =~ s/([^\\])\\([^\\])/$1\\\\$2/g;
     push (@tmp_list, $line);
   }
 
-- 
1.7.9.5

From d07b7a94a641ac42b8d5c80a2dd4caabcb4edc9a Mon Sep 17 00:00:00 2001
From: Scott Leggett <scott@sl.id.au>
Date: Fri, 2 Mar 2012 12:30:48 +0800
Subject: [PATCH 3/4] Fix lintian warning debhelper-but-no-misc-depends.

---
 debian/control.in |   38 +++++++++++++++++++-------------------
 1 file changed, 19 insertions(+), 19 deletions(-)

diff --git a/debian/control.in b/debian/control.in
index 5c046e2..cc05e95 100644
--- a/debian/control.in
+++ b/debian/control.in
@@ -38,7 +38,7 @@ Vcs-Git: git://git.debian.org/git/pkg-wine/wine.git
 Package: wine
 Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powerpc hurd-powerpc kfreebsd-powerpc netbsd-powerpc sparc hurd-sparc kfreebsd-sparc netbsd-sparc
 Multi-Arch: foreign
-Depends: wine-bin (= ${binary:Version}),
+Depends: ${misc:Depends}, wine-bin (= ${binary:Version}),
  libwine-alsa (= ${binary:Version}) [i386 amd64 powerpc sparc] | libwine-oss (= ${binary:Version}) | libwine-esd (= ${binary:Version}) | libwine-jack (= ${binary:Version}) | libwine-nas (= ${binary:Version}),
  libwine-gl (= ${binary:Version}), libwine-print (= ${binary:Version}), libwine-sane (= ${binary:Version}),
  libwine-cms (= ${binary:Version}), libwine-gphoto2 (= ${binary:Version}), libwine-ldap (= ${binary:Version}),
@@ -54,7 +54,7 @@ Description: Windows API implementation - standard suite
 Package: wine-bin
 Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powerpc hurd-powerpc kfreebsd-powerpc netbsd-powerpc sparc hurd-sparc kfreebsd-sparc netbsd-sparc
 Multi-Arch: foreign
-Depends: ${shlibs:Depends}, libwine-bin (= ${binary:Version}), libwine-gecko, x11-utils | xbase-clients (>= 4.0) | xcontrib
+Depends: ${misc:Depends}, ${shlibs:Depends}, libwine-bin (= ${binary:Version}), libwine-gecko, x11-utils | xbase-clients (>= 4.0) | xcontrib
 Suggests: libwine-print, libwine-gl
 Conflicts: binfmt-support (<< 1.1.2)
 Replaces: libwine (<< 0.0.20010216), wine-utils (<< 1.1.25-1), wine (<< 0.9.35)
@@ -70,7 +70,7 @@ Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powe
 Multi-Arch: same
 Section: debug
 Priority: extra
-Depends: libwine (= ${binary:Version})
+Depends: ${misc:Depends}, libwine (= ${binary:Version})
 Description: Windows API implementation - debugging symbols
  Wine is a free MS-Windows API implementation.
  This is still a work in progress and many applications may still not work.
@@ -80,7 +80,7 @@ Description: Windows API implementation - debugging symbols
 Package: libwine-dev
 Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powerpc hurd-powerpc kfreebsd-powerpc netbsd-powerpc sparc hurd-sparc kfreebsd-sparc netbsd-sparc
 Section: libdevel
-Depends: ${shlibs:Depends}, libwine (= ${binary:Version}), libc6-dev, libc6-dev-i386 [amd64 kfreebsd-amd64]
+Depends: ${misc:Depends}, ${shlibs:Depends}, libwine (= ${binary:Version}), libc6-dev, libc6-dev-i386 [amd64 kfreebsd-amd64]
 Replaces: libwine (<< 0.0.20010216), wine-utils (<< 1.1.25-1)
 Suggests: wine-doc
 Description: Windows API implementation - development files
@@ -93,7 +93,7 @@ Package: libwine
 Section: libs
 Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powerpc hurd-powerpc kfreebsd-powerpc netbsd-powerpc sparc hurd-sparc kfreebsd-sparc netbsd-sparc
 Multi-Arch: same
-Depends: ${wine:Depends}, ${shlibs:Depends}
+Depends: ${misc:Depends}, ${wine:Depends}, ${shlibs:Depends}
 Pre-Depends: ${wine:Pre-Depends}
 Replaces: wine (<< 0.9.11-1), libwine-twain (<< 0.9.13), libwine-gl (<< 0.9.53-1)
 Recommends: ${shlibs:Recommends}
@@ -108,7 +108,7 @@ Package: libwine-alsa
 Section: libs
 Architecture: i386 amd64 powerpc sparc
 Multi-Arch: same
-Depends: ${shlibs:Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
 Description: Windows API implementation - ALSA sound module
  Wine is a free MS-Windows API implementation.
  This is still a work in progress and many applications may still not work.
@@ -119,7 +119,7 @@ Package: libwine-bin
 Section: libs
 Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powerpc hurd-powerpc kfreebsd-powerpc netbsd-powerpc sparc hurd-sparc kfreebsd-sparc netbsd-sparc
 Multi-Arch: same
-Depends: ${shlibs:Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
 Replaces: wine-bin (<< 1.1.25-1), wine-utils (<< 1.1.25-1)
 Description: Windows API implementation - system services
  Wine is a free MS-Windows API implementation.
@@ -133,7 +133,7 @@ Section: libs
 Priority: extra
 Architecture: i386 amd64 powerpc sparc
 Multi-Arch: same
-Depends: ${shlibs:Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
 Description: Windows API implementation - ISDN module
  Wine is a free MS-Windows API implementation.
  This is still a work in progress and many applications may still not work.
@@ -145,7 +145,7 @@ Package: libwine-cms
 Section: libs
 Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powerpc hurd-powerpc kfreebsd-powerpc netbsd-powerpc sparc hurd-sparc kfreebsd-sparc netbsd-sparc
 Multi-Arch: same
-Depends: ${shlibs:Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
 Replaces: libwine (<< 0.0.20050830)
 Description: Windows API implementation - color management module
  Wine is a free MS-Windows API implementation.
@@ -158,7 +158,7 @@ Package: libwine-esd
 Section: libs
 Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powerpc hurd-powerpc kfreebsd-powerpc netbsd-powerpc sparc hurd-sparc kfreebsd-sparc netbsd-sparc
 Multi-Arch: same
-Depends: ${shlibs:Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
 Description: Windows API implementation - EsounD sound module
  Wine is a free MS-Windows API implementation.
  This is still a work in progress and many applications may still not work.
@@ -169,7 +169,7 @@ Package: libwine-gl
 Section: libs
 Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powerpc hurd-powerpc kfreebsd-powerpc netbsd-powerpc sparc hurd-sparc kfreebsd-sparc netbsd-sparc
 Multi-Arch: same
-Depends: ${shlibs:Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
 Replaces: libwine (<< 0.9.56)
 Description: Windows API implementation - OpenGL module
  Wine is a free MS-Windows API implementation.
@@ -182,7 +182,7 @@ Package: libwine-gphoto2
 Section: libs
 Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powerpc hurd-powerpc kfreebsd-powerpc netbsd-powerpc sparc hurd-sparc kfreebsd-sparc netbsd-sparc
 Multi-Arch: same
-Depends: ${shlibs:Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
 Description: Windows API implementation - camera module
  Wine is a free MS-Windows API implementation.
  This is still a work in progress and many applications may still not work.
@@ -194,7 +194,7 @@ Package: libwine-jack
 Section: libs
 Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powerpc hurd-powerpc kfreebsd-powerpc netbsd-powerpc sparc hurd-sparc kfreebsd-sparc netbsd-sparc
 Multi-Arch: same
-Depends: ${shlibs:Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
 Description: Windows API implementation - JACK sound module
  Wine is a free MS-Windows API implementation.
  This is still a work in progress and many applications may still not work.
@@ -205,7 +205,7 @@ Package: libwine-ldap
 Section: libs
 Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powerpc hurd-powerpc kfreebsd-powerpc netbsd-powerpc sparc hurd-sparc kfreebsd-sparc netbsd-sparc
 Multi-Arch: same
-Depends: ${shlibs:Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
 Description: Windows API implementation - LDAP module
  Wine is a free MS-Windows API implementation.
  This is still a work in progress and many applications may still not work.
@@ -217,7 +217,7 @@ Package: libwine-nas
 Section: libs
 Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powerpc hurd-powerpc kfreebsd-powerpc netbsd-powerpc sparc hurd-sparc kfreebsd-sparc netbsd-sparc
 Multi-Arch: same
-Depends: ${shlibs:Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
 Replaces: libwine (<< 0.0.20020710)
 Description: Windows API implementation - NAS sound module
  Wine is a free MS-Windows API implementation.
@@ -229,7 +229,7 @@ Package: libwine-openal
 Section: libs
 Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powerpc hurd-powerpc kfreebsd-powerpc netbsd-powerpc sparc hurd-sparc kfreebsd-sparc netbsd-sparc
 Multi-Arch: same
-Depends: ${shlibs:Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
 Description: Windows API implementation - OpenAL module
  Wine is a free MS-Windows API implementation.
  This is still a work in progress and many applications may still not work.
@@ -241,7 +241,7 @@ Package: libwine-oss
 Section: libs
 Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powerpc hurd-powerpc kfreebsd-powerpc netbsd-powerpc sparc hurd-sparc kfreebsd-sparc netbsd-sparc
 Multi-Arch: same
-Depends: ${shlibs:Depends}, oss-compat
+Depends: ${misc:Depends}, ${shlibs:Depends}, oss-compat
 Replaces: libwine (<< 0.9.35)
 Description: Windows API implementation - OSS sound module
  Wine is a free MS-Windows API implementation.
@@ -253,7 +253,7 @@ Package: libwine-print
 Section: libs
 Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powerpc hurd-powerpc kfreebsd-powerpc netbsd-powerpc sparc hurd-sparc kfreebsd-sparc netbsd-sparc
 Multi-Arch: same
-Depends: ${shlibs:Depends}, cups-bsd | cupsys-bsd | lpr
+Depends: ${misc:Depends}, ${shlibs:Depends}, cups-bsd | cupsys-bsd | lpr
 Replaces: libwine (<< 0.0.20020710)
 Description: Windows API implementation - printing module
  Wine is a free MS-Windows API implementation.
@@ -266,7 +266,7 @@ Package: libwine-sane
 Section: libs
 Architecture: i386 hurd-i386 kfreebsd-i386 netbsd-i386 amd64 kfreebsd-amd64 powerpc hurd-powerpc kfreebsd-powerpc netbsd-powerpc sparc hurd-sparc kfreebsd-sparc netbsd-sparc
 Multi-Arch: same
-Depends: ${shlibs:Depends}
+Depends: ${misc:Depends}, ${shlibs:Depends}
 Replaces: libwine-twain (<< 0.9.13)
 Description: Windows API implementation - scanner module
  Wine is a free MS-Windows API implementation.
-- 
1.7.9.5

From d4214da5c1243344f95f862807f38bf07391d6ab Mon Sep 17 00:00:00 2001
From: Scott Leggett <scott@sl.id.au>
Date: Sun, 4 Mar 2012 02:15:17 +0800
Subject: [PATCH 4/4] Fixed several more manpage generation errors.

---
 tools/c2man.pl |    9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/tools/c2man.pl b/tools/c2man.pl
index 4040da8..6c45e09 100755
--- a/tools/c2man.pl
+++ b/tools/c2man.pl
@@ -1169,7 +1169,7 @@ sub output_spec($)
   if (@{$spec_details->{DESCRIPTION}})
   {
     join(" ", @{$spec_details->{DESCRIPTION}}) =~ m/(.*?\.)/;
-    $brief_description = $1;
+    $brief_description = $1 if (defined $1);
   }
 
   # Create the initial comment text
@@ -1436,7 +1436,7 @@ sub output_api_name($)
 {
   my $comment = shift;
   my $readable_name = $comment->{COMMENT_NAME};
-  $readable_name =~ s/-/ /g; # make section names more readable
+  $readable_name =~ s/-/_/g; # make section names more readable
 
   output_api_section_start($comment,"NAME");
 
@@ -1463,7 +1463,7 @@ sub output_api_name($)
     if (@{$comment->{TEXT}})
     {
         join(" ", @{$comment->{TEXT}}) =~ m/DESCRIPTION (.*?\.)/;
-        $brief_description = $1;
+        $brief_description = $1 if (defined $1)
     }
     print OUTPUT "\\fB",$readable_name,"\\fR_",$dll_ordinal," \\-",$brief_description;
   }
@@ -1530,6 +1530,7 @@ sub output_api_synopsis($)
     my $line = ${$comment->{PROTOTYPE}}[$i];
     my $comma = ($i == @{$comment->{PROTOTYPE}}-1) ? "" : ",";
     $line =~ s/(.+?)([A-Za-z_][A-Za-z_0-9]*)$/  $fmt[0]$1$fmt[2]$2$fmt[3]$comma$fmt[1]/;
+    $line =~ s/(\.\.\.)$/  $1/;
     print OUTPUT $line;
   }
 
@@ -1630,6 +1631,8 @@ sub output_api_comment($)
         # Link to the file in WineHQ cvs
         s/^(Implemented in \")(.+?)(\"\.)/$1$2$3 http:\/\/source.winehq.org\/source\/$2/g;
       }
+      # Escape lines starting with ' or .
+      s/^(['.])/\\&$1/g;
       # Highlight strings
       s/(\".+?\")/$fmt[2]$1$fmt[3]/g;
       # Highlight literal chars
-- 
1.7.9.5


Reply to: