Bug#844957: dballe: FTBFS: g++: error: .specs: No such file or directory

2016-11-18 Thread Lucas Nussbaum
Source: dballe
Version: 7.19-1
Severity: serious
Tags: stretch sid
User: debian...@lists.debian.org
Usertags: qa-ftbfs-20161118 qa-ftbfs
Justification: FTBFS on amd64

Hi,

During a rebuild of all packages in sid, your package failed to build on
amd64.

Relevant part (hopefully):
> make[4]: Entering directory '/<>/dballe'
> /bin/bash ../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. 
>  -DTABLE_DIR=\"/usr/share/wreport\" -I.. -I..  -I/usr/include/postgresql  
> -I/usr/include/mysql 
> -fdebug-prefix-map=/build/mysql-5.7-lG4h93/mysql-5.7-5.7.16=. .specs 
> -fabi-version=2 -fno-omit-frame-pointer -I/usr/include/lua5.1  -Werror   -g 
> -O2 -Wall -c -o libdballe_la-file.lo `test -f 'file.cc' || echo './'`file.cc
> libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. 
> -DTABLE_DIR=\"/usr/share/wreport\" -I.. -I.. -I/usr/include/postgresql 
> -I/usr/include/mysql 
> -fdebug-prefix-map=/build/mysql-5.7-lG4h93/mysql-5.7-5.7.16=. .specs 
> -fabi-version=2 -fno-omit-frame-pointer -I/usr/include/lua5.1 -Werror -g -O2 
> -Wall -c file.cc  -fPIC -DPIC -o .libs/libdballe_la-file.o
> g++: error: .specs: No such file or directory
> Makefile:1708: recipe for target 'libdballe_la-file.lo' failed
> make[4]: *** [libdballe_la-file.lo] Error 1

The full build log is available from:
   http://aws-logs.debian.net/2016/11/18/dballe_7.19-1_unstable.log

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

About the archive rebuild: The rebuild was done on EC2 VM instances from
Amazon Web Services, using a clean, minimal and up-to-date chroot. Every
failed build was retried once to eliminate random failures.



Bug#844957: dballe: FTBFS: g++: error: .specs: No such file or directory

2016-11-19 Thread Enrico Zini
On Sat, Nov 19, 2016 at 08:08:54AM +0100, Lucas Nussbaum wrote:

> During a rebuild of all packages in sid, your package failed to build on
> amd64.
> 
> Relevant part (hopefully):
> > make[4]: Entering directory '/<>/dballe'
> > /bin/bash ../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. 
> > -I..  -DTABLE_DIR=\"/usr/share/wreport\" -I.. -I..  
> > -I/usr/include/postgresql  -I/usr/include/mysql 
> > -fdebug-prefix-map=/build/mysql-5.7-lG4h93/mysql-5.7-5.7.16=. .specs 
> > -fabi-version=2 -fno-omit-frame-pointer -I/usr/include/lua5.1  -Werror   -g 
> > -O2 -Wall -c -o libdballe_la-file.lo `test -f 'file.cc' || echo './'`file.cc
> > libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. 
> > -DTABLE_DIR=\"/usr/share/wreport\" -I.. -I.. -I/usr/include/postgresql 
> > -I/usr/include/mysql 
> > -fdebug-prefix-map=/build/mysql-5.7-lG4h93/mysql-5.7-5.7.16=. .specs 
> > -fabi-version=2 -fno-omit-frame-pointer -I/usr/include/lua5.1 -Werror -g 
> > -O2 -Wall -c file.cc  -fPIC -DPIC -o .libs/libdballe_la-file.o
> > g++: error: .specs: No such file or directory
> > Makefile:1708: recipe for target 'libdballe_la-file.lo' failed
> > make[4]: *** [libdballe_la-file.lo] Error 1

I have no idea where that .specs comes from:

  $ rgrep specs dballe-7.19/
  dballe-7.19/ltmain.sh:  # -specs=* GCC specs files
  dballe-7.19/ltmain.sh:  -specs=*|-fsanitize=*)
  dballe-7.19/python/doc-dballe:c_argspecs = {
  dballe-7.19/python/doc-dballe:if inspect.isroutine(m) and 
(inspect.isfunction(m) or fullname in c_argspecs):
  dballe-7.19/python/doc-dballe:argspec = c_argspecs.get(fullname, None)
  dballe-7.19/fabfile.py:  " --param=ssp-buffer-size=4 
-grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 
-mtune=generic"
  dballe-7.19/fabfile.py:fedora_ldflags = "-Wl,-z,relro 
-specs=/usr/lib/rpm/redhat/redhat-hardened-ld"
 
Lucas, is there a way for me to reproduce that build in a way that I can
run commands in the build environment, like running pkg-config to see
what compiler flags are being injected, or inspecting config.status to
see what ./configure has found?

Alternatively, if you still have that build environment around, can you
send me a copy of config.status?


Enrico

-- 
GPG key: 4096R/634F4BD1E7AD5568 2009-05-08 Enrico Zini 


signature.asc
Description: PGP signature


Bug#844957: dballe: FTBFS: g++: error: .specs: No such file or directory

2016-11-19 Thread Lucas Nussbaum
Hi Enrico,

On 19/11/16 at 10:30 +0100, Enrico Zini wrote:
> On Sat, Nov 19, 2016 at 08:08:54AM +0100, Lucas Nussbaum wrote:
> 
> > During a rebuild of all packages in sid, your package failed to build on
> > amd64.
> > 
> > Relevant part (hopefully):
> > > make[4]: Entering directory '/<>/dballe'
> > > /bin/bash ../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. 
> > > -I..  -DTABLE_DIR=\"/usr/share/wreport\" -I.. -I..  
> > > -I/usr/include/postgresql  -I/usr/include/mysql 
> > > -fdebug-prefix-map=/build/mysql-5.7-lG4h93/mysql-5.7-5.7.16=. .specs 
> > > -fabi-version=2 -fno-omit-frame-pointer -I/usr/include/lua5.1  -Werror   
> > > -g -O2 -Wall -c -o libdballe_la-file.lo `test -f 'file.cc' || echo 
> > > './'`file.cc
> > > libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. 
> > > -DTABLE_DIR=\"/usr/share/wreport\" -I.. -I.. -I/usr/include/postgresql 
> > > -I/usr/include/mysql 
> > > -fdebug-prefix-map=/build/mysql-5.7-lG4h93/mysql-5.7-5.7.16=. .specs 
> > > -fabi-version=2 -fno-omit-frame-pointer -I/usr/include/lua5.1 -Werror -g 
> > > -O2 -Wall -c file.cc  -fPIC -DPIC -o .libs/libdballe_la-file.o
> > > g++: error: .specs: No such file or directory
> > > Makefile:1708: recipe for target 'libdballe_la-file.lo' failed
> > > make[4]: *** [libdballe_la-file.lo] Error 1
> 
> I have no idea where that .specs comes from:
> 
>   $ rgrep specs dballe-7.19/
>   dballe-7.19/ltmain.sh:  # -specs=* GCC specs files
>   dballe-7.19/ltmain.sh:  -specs=*|-fsanitize=*)
>   dballe-7.19/python/doc-dballe:c_argspecs = {
>   dballe-7.19/python/doc-dballe:if inspect.isroutine(m) and 
> (inspect.isfunction(m) or fullname in c_argspecs):
>   dballe-7.19/python/doc-dballe:argspec = c_argspecs.get(fullname, 
> None)
>   dballe-7.19/fabfile.py:  " --param=ssp-buffer-size=4 
> -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 
> -mtune=generic"
>   dballe-7.19/fabfile.py:fedora_ldflags = "-Wl,-z,relro 
> -specs=/usr/lib/rpm/redhat/redhat-hardened-ld"

#844302 looks similar (but unrelated?)

> Lucas, is there a way for me to reproduce that build in a way that I can
> run commands in the build environment, like running pkg-config to see
> what compiler flags are being injected, or inspecting config.status to
> see what ./configure has found?
> 
> Alternatively, if you still have that build environment around, can you
> send me a copy of config.status?

config.status attached.

Lucas
#! /bin/bash
# Generated by configure.
# Run this file to recreate the current configuration.
# Compiler output produced by configure, useful for debugging
# configure, is in config.log if it exists.

debug=false
ac_cs_recheck=false
ac_cs_silent=false

SHELL=${CONFIG_SHELL-/bin/bash}
export SHELL
##  ##
## M4sh Initialization. ##
##  ##

# Be more Bourne compatible
DUALCASE=1; export DUALCASE # for MKS sh
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
  emulate sh
  NULLCMD=:
  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
  # is contrary to our usage.  Disable this feature.
  alias -g '${1+"$@"}'='"$@"'
  setopt NO_GLOB_SUBST
else
  case `(set -o) 2>/dev/null` in #(
  *posix*) :
set -o posix ;; #(
  *) :
 ;;
esac
fi


as_nl='
'
export as_nl
# Printing a long string crashes Solaris 7 /usr/bin/printf.
as_echo='\\\'
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
# Prefer a ksh shell builtin over an external printf program on Solaris,
# but without wasting forks for bash or zsh.
if test -z "$BASH_VERSION$ZSH_VERSION" \
&& (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
  as_echo='print -r --'
  as_echo_n='print -rn --'
elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
  as_echo='printf %s\n'
  as_echo_n='printf %s'
else
  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
as_echo_n='/usr/ucb/echo -n'
  else
as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
as_echo_n_body='eval
  arg=$1;
  case $arg in #(
  *"$as_nl"*)
expr "X$arg" : "X\\(.*\\)$as_nl";
arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
  esac;
  expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
'
export as_echo_n_body
as_echo_n='sh -c $as_echo_n_body as_echo'
  fi
  export as_echo_body
  as_echo='sh -c $as_echo_body as_echo'
fi

# The user is always right.
if test "${PATH_SEPARATOR+set}" != set; then
  PATH_SEPARATOR=:
  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
(PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
  PATH_SEPARATOR=';'
  }
fi


# IFS
# We need space, tab and new line, in precisely that order.  Quoting is
# there to prevent editors from complaining a

Bug#844957: dballe: FTBFS: g++: error: .specs: No such file or directory

2016-11-19 Thread Enrico Zini
On Sat, Nov 19, 2016 at 08:30:23PM +0100, Lucas Nussbaum wrote:

> #844302 looks similar (but unrelated?)

They seem to be all related:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=844275

> config.status attached.
…
> S["HAVE_MYSQL_FALSE"]="#"
> S["HAVE_MYSQL_TRUE"]=""
> S["MYSQL_LIBS"]="-L/usr/lib/x86_64-linux-gnu -lmysqlclient -lpthread -lz -lm 
> -lrt -latomic -ldl"
> S["MYSQL_CFLAGS"]="-I/usr/include/mysql 
> -fdebug-prefix-map=/build/mysql-5.7-lG4h93/mysql-5.7-5.7.16=. .specs 
> -fabi-version=2 -fno-omit-frame-pointer"
> S["mysql_config"]="/usr/bin/mysql_config"

Indeed, it's libmysqlclient-dev injecting the invalid flag.


Enrico

-- 
GPG key: 4096R/634F4BD1E7AD5568 2009-05-08 Enrico Zini 


signature.asc
Description: PGP signature