Subject: linux-next: problem building perf

From: Stephen Rothwell <[email-masked]>
Date: Fri, 31 Jan 2020 14:52:01 +1100

Hi all,

This morning trying to do a native perf build (powerpcle) produced
these errors:

util/srcline.c: In function 'find_address_in_section':
util/srcline.c:200:7: error: implicit declaration of function 'bfd_get_section_flags'; did you mean 'bfd_set_section_flags'? [-Werror=implicit-function-declaration]
  200 |  if ((bfd_get_section_flags(abfd, section) & SEC_ALLOC) == 0)
      |       ^~~~~~~~~~~~~~~~~~~~~
      |       bfd_set_section_flags
util/srcline.c:200:7: error: nested extern declaration of 'bfd_get_section_flags' [-Werror=nested-externs]
util/srcline.c:204:8: error: implicit declaration of function 'bfd_get_section_vma'; did you mean 'bfd_set_section_vma'? [-Werror=implicit-function-declaration]
  204 |  vma = bfd_get_section_vma(abfd, section);
      |        ^~~~~~~~~~~~~~~~~~~
      |        bfd_set_section_vma
util/srcline.c:204:8: error: nested extern declaration of 'bfd_get_section_vma' [-Werror=nested-externs]
util/srcline.c:205:9: error: implicit declaration of function 'bfd_get_section_size'; did you mean 'bfd_set_section_size'? [-Werror=implicit-function-declaration]
  205 |  size = bfd_get_section_size(section);
      |         ^~~~~~~~~~~~~~~~~~~~
      |         bfd_set_section_size
util/srcline.c:205:9: error: nested extern declaration of 'bfd_get_section_size' [-Werror=nested-externs]

I traced it back to an update to binutils-dev I did last night :-(  The
update was from 2.33.1 to 2.33.90.20200122 on my Debian build machine.
The above three macros no longer appear anywhere in /usr/include
(they were in /usr/include/bfd.h before the upgrade).  I have backed
the upgrade out for now.

I am wondering if this is a perf bug or a bintuils bug or a Debian
packaging bug?
-- 
Cheers,
Stephen Rothwell