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

Bug#871956: lintian: false positive: binary-file-built-without-LFS-support on x32



On Sat, Sep 02, 2017 at 12:18:59AM +0200, Boud Roukema wrote:
> On Fri, 1 Sep 2017, Adam Borowski wrote:
> > And what AC_SYS_LARGEFILE does, at least on Linux, is to return a hardcoded
> > setting so programs switch from off_t to off64_t whether they need to or
> > not.  This does the right thing on old 32-bit archs and is harmless on
> > 64-bit and new 32-bit.
> 
> AC_SYS_LARGEFILE on i386 (linux) for mpgrafic-0.3.15-1 apparently does *not*
> always do the right thing:

You call it but don't actually use what it returns: 

mpicc -DHAVE_CONFIG_H -I.  -I..  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2
    -fdebug-prefix-map=/<<PKGBUILDDIR>>=.  -fstack-protector-strong -Wformat
    -Werror=format-security -c -o parallel_io.o parallel_io.c

#define _XOPEN_SOURCE 500
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <stdint.h>
#include <string.h>

You don't include "config.h" anywhere.

> > N: Processing source package mpgrafic (version 0.3.15-1, arch source) ...
> > C: mpgrafic source (0.3.15-1) [source]: debian-build-system dh
> > C: mpgrafic source (0.3.15-1) [source]: source-format 3.0 (quilt)
> > P: mpgrafic source (0.3.15-1) [source]: debian-watch-may-check-gpg-signature
> > N: ----
> > N: Processing binary package mpgrafic (version 0.3.15-1, arch i386) ...
> > X: mpgrafic binary (0.3.15-1) [i386]: binary-file-built-without-LFS-support usr/bin/mpgrafic
> > C: mpgrafic binary (0.3.15-1) [i386]: no-ctrl-scripts
> > N: ----
> > N: Processing binary package mpgrafic (version 0.3.15-1, arch amd64) ...
> > C: mpgrafic binary (0.3.15-1) [amd64]: no-ctrl-scripts
> > N: ----
> > N: Processing binary package mpgrafic-dbgsym (version 0.3.15-1, arch i386) ...
> > C: mpgrafic-dbgsym binary (0.3.15-1) [i386]: no-ctrl-scripts
> > N: ----
> > N: Processing binary package mpgrafic-dbgsym (version 0.3.15-1, arch amd64) ...
> 
> https://anonscm.debian.org/git/debian-astro/packages/mpgrafic.git/tree/configure.ac
> 
> https://anonscm.debian.org/git/debian-astro/packages/mpgrafic.git/tree/configure
> 
> This is a lintian false positive with AC_SYS_LARGEFILE.

Nope, you use pwrite() not pwrite64() -- on i386 you need the latter to get
LFS; they're aliases only on amd64, x32 and so on.


But in any case, even if it had been indeed a false positive, it'd be a
different bug.

-- 
⢀⣴⠾⠻⢶⣦⠀ 
⣾⠁⢰⠒⠀⣿⡁ Vat kind uf sufficiently advanced technology iz dis!?
⢿⡄⠘⠷⠚⠋⠀                                 -- Genghis Ht'rok'din
⠈⠳⣄⠀⠀⠀⠀ 


Reply to: