RFR: 8295795: hsdis does not build with binutils 2.39+ [v4]
Robbin Ehn
rehn at openjdk.org
Fri Sep 29 16:39:26 UTC 2023
On Fri, 29 Sep 2023 10:44:49 GMT, Magnus Ihse Bursie <ihse at openjdk.org> wrote:
> Nevertheless, I believe the .libs issue needs to be addressed as well, otherwise this will be a regression for older versions of binutils that are in a non-build installed location.
>
> That is, you need to break out the check for `libbfd.a`, and look for it first in `bfd` and secondly in `bfd/.libs`.
All version I checked (2.30, 2.34, 2.38, 2.39, 2.40, 2.41, current tip) all libs are in .libs.
And make install copy them from the .lib folder. (in older versions also)
`libtool: install: /usr/bin/install -c .libs/libbfd.a /home/rehn/source/gdb/binutils-gdb/install/lib/libbfd.a`
Arguably we should only use .libs directory,
> make/autoconf/lib-hsdis.m4 line 259:
>
>> 257: # If we have libsframe add it.
>> 258: if test -e $BINUTILS_DIR/libsframe/.libs/libsframe.a; then
>> 259: HSDIS_LIBS="$BINUTILS_DIR/bfd/.libs/libbfd.a $BINUTILS_DIR/opcodes/libopcodes.a $BINUTILS_DIR/libiberty/libiberty.a $BINUTILS_DIR/zlib/libz.a $BINUTILS_DIR/libsframe/.libs/libsframe.a"
>
> Just append the additional lib.
>
> Suggestion:
>
> HSDIS_LIBS="$HSDIS_LIBS $BINUTILS_DIR/libsframe/.libs/libsframe.a"
Fixed
> make/autoconf/lib-hsdis.m4 line 266:
>
>> 264: AC_MSG_CHECKING([Checking binutils API])
>> 265: if test -n "$BINUTILS_SRC"; then
>> 266: include_dis="#include \"$BINUTILS_SRC/include/dis-asm.h\""
>
> All this quoting and duplication seems quite messy. Can't you just set e.g. `binutils_include_dir` to either `%BINUTILS_SRC/include` or `%BINUTILS_DIR/include`, and then just do
>
>
> AC_LANG_PROGRAM([#include "$binutils_include_dir/dis-asm.h"], ...
>
> ?
>
> (Code written in github editor; warning for quoting mistakes etc)
I can check. No really my usual place in the world doing autoconf :)
-------------
PR Comment: https://git.openjdk.org/jdk/pull/15138#issuecomment-1740757681
PR Review Comment: https://git.openjdk.org/jdk/pull/15138#discussion_r1341302077
PR Review Comment: https://git.openjdk.org/jdk/pull/15138#discussion_r1341272088
More information about the build-dev
mailing list