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

[Git][lintian/lintian][master] Remove library-not-linked-against-libc check



Title: GitLab

Louis-Philippe Véronneau pushed to branch master at lintian / lintian

Commits:

  • 02ee7f48
    by Jeremy Bícha at 2025-12-07T23:54:31-05:00
    Remove library-not-linked-against-libc check
    
    This check made assumptions that are no longer true.
    
    -Wl,--as-needed is set by default since Debian 11
    which results in many library files (particularly plugins)
    not linking directly against libc.
    
    Ubuntu enables LTO optimization by default and many
    Debian packages opt in to that, which also
    can trigger this Lintian check. This was seen
    with evolution-data-server 3.56.2-5.
    
    Further, the default Salsa CI pipeline fails for
    any Lintian error, so we should be cautious
    about having Lintian errors.
    
    https://udd.debian.org/lintian-tag/library-not-linked-against-libc?affected=yes
    reports that this is emitted 5000 times before getting past the openkim-models
    package in an alphabetical list
    
    Closes: #896012
    Closes: #909267
    

3 changed files:

Changes:

  • lib/Lintian/Check/Binaries/Prerequisites.pm
    ... ... @@ -120,15 +120,6 @@ sub visit_installed_files {
    120 120
         my $linked_with_libc
    
    121 121
           = any { m{^ libc[.]so[.] }x } @{$item->elf->{NEEDED} // []};
    
    122 122
     
    
    123
    -    $self->pointed_hint('library-not-linked-against-libc', $item->pointer)
    
    124
    -      if !$linked_with_libc
    
    125
    -      && $is_shared
    
    126
    -      && @{$item->elf->{NEEDED} // [] }
    
    127
    -      && (none { /^libc[.]so[.]/ } @{$item->elf->{NEEDED} // [] })
    
    128
    -      && $item->name !~ m{/libc\b}
    
    129
    -      && (!$self->built_with_octave
    
    130
    -        || $item->name !~ m/\.(?:oct|mex)$/);
    
    131
    -
    
    132 123
         $self->pointed_hint('program-not-linked-against-libc', $item->pointer)
    
    133 124
           if !$linked_with_libc
    
    134 125
           && !$is_shared
    

  • t/recipes/checks/binaries/prerequisites/binaries-libc-link/eval/hints
    1 1
     binaries-libc-link (binary): shared-library-lacks-prerequisites [usr/lib/basic/libbasic-nodeps]
    
    2 2
     binaries-libc-link (binary): program-not-linked-against-libc [usr/bin/basic]
    3
    -binaries-libc-link (binary): library-not-linked-against-libc [usr/lib/basic/libbasic-nolibc]

  • tags/l/library-not-linked-against-libc.tag deleted
    1
    -Tag: library-not-linked-against-libc
    
    2
    -Severity: error
    
    3
    -Check: binaries/prerequisites
    
    4
    -Explanation: The package installs a library which is not dynamically linked
    
    5
    - against libc.
    
    6
    - .
    
    7
    - It is theoretically possible to have a library which doesn't use any
    
    8
    - symbols from libc, but it is far more likely that this is a violation
    
    9
    - of the requirement that "shared libraries must be linked against all
    
    10
    - libraries that they use symbols from in the same way that binaries
    
    11
    - are".
    
    12
    -See-Also:
    
    13
    - debian-policy 10.2,
    
    14
    - Bug#698720


  • Reply to: