Greetings, and thanks so much for your report!

Yes as you can see from the configure script, the attempt to extract
OUTPUT_MACH from the linker script is quite unreliable.  This is masked
under Debian as dis-asm.h is not available by default.  I'll try to dig
around and get a better way of detecting this in configure, but if you
have any suggestions I am all ears.

Take care,

Jerry James <loganje...@gmail.com> writes:

> On Fri, Apr 11, 2025 at 1:35 PM Camm Maguire <c...@maguirefamily.org> wrote:
>> Greetings!  While these tiny issues will likely not affect many if any,
>> there are alas a few tiny errata with the 2.7.1 tarball release.  Posted
>> here just for those interested.  Will of course be incorporated in the
>> next release.
>
> Thank you, Camm!  I tried building version 2.7.1 (with the errata) for
> Fedora Rawhide.  All worked well on the x86_64 and aarch64 builders,
> but the ppc64le and s390x builds failed in similar ways.  On s390x:
>
> gcc -DHAVE_CONFIG_H -I. -I./h  -I h -I /usr/include/tirpc
> -fexceptions -g -grecord-gcc-switches -pipe -Wall
> -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3
> -Wp,-D_GLIBCXX_ASSERTIONS
> -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=z13
> -mtune=z14 -fasynchronous-unwind-tables -fstack-clash-protection
> -fsigned-char -pipe -fcommon -fno-builtin-malloc -fno-builtin-free
> -fno-PIE -fno-pie -fno-PIC -fno-pic -std=gnu17 -Wall -Wno-empty-body
> -Wno-unused-but-set-variable -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64
> -I/usr/include/tirpc   -O2 -I o  -c -o o/main.o o/main.c
> In file included from ./h/include.h:39,
>                  from o/main.c:46:
> o/main.c: In function ‘fSdisassemble_instruction’:
> o/main.c:1475:14: error: ‘bfd_mach_64_bit’ undeclared (first use in
> this function); did you mean ‘bfd_mach_x64_32’?
>  1475 |       i.mach=OUTPUT_MACH;
>       |              ^~~~~~~~~~~
> o/main.c:1475:14: note: each undeclared identifier is reported only
> once for each function it appears in
>
> gcl.script has:
>
> OUTPUT_ARCH(s390:64-bit)
>
> The only similar mach definition I see in bfd.h is bfd_mach_s390_64.
>
> The ppc64le situation is similar:
>
> gcc -DHAVE_CONFIG_H -I. -I./h  -I h -I /usr/include/tirpc
> -fexceptions -g -grecord-gcc-switches -pipe -Wall
> -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3
> -Wp,-D_GLIBCXX_ASSERTIONS
> -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mcpu=power8
> -mtune=power8 -fasynchronous-unwind-tables -fstack-clash-protection
> -fsigned-char -pipe -fcommon -fno-builtin-malloc -fno-builtin-free
> -fno-PIE -fno-pie -fno-PIC -fno-pic -std=gnu17 -Wall -Wno-empty-body
> -Wno-unused-but-set-variable -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64
> -mlongcall  -I/usr/include/tirpc   -O2 -I o  -c -o o/main.o o/main.c
> In file included from ./h/include.h:39,
>                  from o/main.c:46:
> o/main.c: In function ‘fSdisassemble_instruction’:
> o/main.c:1475:14: error: ‘bfd_mach_common64’ undeclared (first use in
> this function); did you mean ‘bfd_mach_msp26’?
>  1475 |       i.mach=OUTPUT_MACH;
>       |              ^~~~~~~~~~~
> o/main.c:1475:14: note: each undeclared identifier is reported only
> once for each function it appears in
>
> gcl.script has:
>
> OUTPUT_ARCH(powerpc:common64)
>
> Here I would guess that bfd_mach_ppc64 is wanted.
>
> Regards,

-- 
Camm Maguire                                        c...@maguirefamily.org
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah

Reply via email to