Re: Time for a MinGW-GDB Upgrade?

Keith Marshall <[email protected]> Fri, 17 Jul 2020 09:07:53 +0100
Newsgroups gmane.comp.gnu.mingw.user
Organization MinGW.org Project
Message-ID <[email protected]>
On 16/07/2020 17:39, Eli Zaretskii wrote:
>> From: Keith Marshall, Wed, 15 Jul 2020 21:10:29 +0100
>>
>> In message
>> https://osdn.net/projects/mingw/lists/archive/users/2020-July/000584.html,
>> Eli Zaretskii indicated that, pursuant to resolution of an issue with
>> the build of GCC-9.2.0, (subsequently resolved), GDB can be readily
>> built with MinGW.
> 
> FTR, I was building snapshots of what will shortly become GDB 10.1.

Yes, I had understood that, thanks.  My rationale for choosing 9.2 is
that, with 9.2 being the current stable release, if I can iron out the
wrinkles with it, I should be better placed to progress to GDB-10 when
it is, eventually, released.

>>   In file included from ../../src/gdb-9.2/bfd/archive.c:134:
>>   ../../src/gdb-9.2/bfd/sysdep.h:185:11: fatal error: libintl.h:
>>    No such file or directory
>>     185 | # include <libintl.h>
>>         |           ^~~~~~~~~~~
>>   compilation terminated.
>>
>> This arises because, rather than having libintl in my default GCC search
>> path, I have it in a /mingw staging path, whence my GCC build procedure
>> accesses it via a "--with-libintl-prefix=/mingw" configuration option.
>>
>> Given that GDB's configuration procedure has every appearance of being a
>> cobbled-together derivative of GCC's, I specified this same option in my
>> GDB configuration, but sadly, it has no effect!
> 
> Maybe it's worth reporting to gdb-patches-9JcytcrH/[email protected], as a
> potential bug.

Will do.  Can I post as a guest, or do I need to subscribe?

>> I can kludge around this GDB bug, by passing "CPPFLAGS=-I/mingw" through
>> the process environment[1], when running make:
>>
>>   CPPFLAGS=-I/mingw make
>>
>> but the alternative, (and possibly more natural):
>>
>>   make CPPFLAGS=-I/mingw
>>
>> does *not* work; in this latter case, CPPFLAGS does not propagate to the
>> subdirectory makefiles.
> 
> I think the canonical ways of doing this is to set CPPFLAGS when
> running 'configure', i.e.
> 
>  CPPFLAGS=-I/mingw ./configure ...

That is the archaic (pre autoconf-2.50, IIRC) way; contemporary autoconf
wisdom would express it as

  ./configure CPPFLAGS=-I/mingw/include ...

(with the correction, as I posted later), but the effect should be the
same either way, and yes ...

> Did you try that?

I did, (using the contemporary syntax); it doesn't work.  The reason is
that most of GDB's configuration (in subdirectories) is deferred until
the top level "make" is run, and the top level configure's notion of
CPPFLAGS isn't propagated, through the "make" phase, to the subdirectory
"configure" runs.  OTOH, running

  CPPFLAGS=-I/mingw/include make

at top level causes the subdirectory configures to run, as if invoked
with the archaic syntax, and they pick up the proper CPPFLAGS through
the environment, as it prevails when they are run.

-- 
Regards,
Keith.

Public key available from keys.gnupg.net
Key fingerprint: C19E C018 1547 DE50 E1D4 8F53 C0AD 36C6 347E 5A3F

_______________________________________________
MinGW-Users mailing list
[email protected]

This list observes the Etiquette found at
http://www.mingw.org/Mailing_Lists.
We ask that you be polite and do the same.  Disregard for the list etiquette may cause your account to be moderated.

_______________________________________________
You may change your MinGW Account Options or unsubscribe at:
https://lists.osdn.me/mailman/listinfo/mingw-users
Also: mailto:[email protected]?subject=unsubscribe
signature.asc (application/pgp-signature, 833 B)
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEwZ7AGBVH3lDh1I9TwK02xjR+Wj8FAl8RXFoACgkQwK02xjR+
Wj9AlxAApNBZhC9bqj4ehx7e6h7ckNhig4PuMlu8ctO2mIdcyKPjt192ljtiUMfP
wQuAuqqe9Bl1qpPjymH9pAOEx1s9xSvYzI3cHSXbGwCtWVKvJdURmJRo+lhTxjEK
VXgbU6SkRO7ao1vqR6KG/QYWklpWr3XFZ3npLiQajBka6kX6AmENSXhCKcpztEDL
uVDGl+hr0zaMFEq78u3hPJj+KmmRo6GnnbfmLMYt6b1S3O84YNGP/pTdt/A5e5HM
VPi9YT2YCbQxX06yWefiyim1G9/mY6+Qf2xYe0mXrvo87OTH0KGBze7rs5KNhWqc
ZkIW83AKkQZ10CRRrTth/xtelvFAlDYhqfrCqa9g/Rvg4ukVWtiSDRDK/Fn4YllG
RfuK4JpT3oEY0Hx5RU43VVBoRnJY6hI0JimYY3kQXvVSVXPyvFkBzLrbVDSEomiZ
O1poPm6JWJ2ep3erIKkEnHvun3EsPMckFLq8kQbqqWrotdNWh2n/DGrhcx4DXWKP
VTcq56BIjfciPZDUOgJdhjgC3kXUdrESuWjfhhmPvZEFkyQsFr/plFiUcBzWQRIr
ZpqSf+5BmpdowaTAswWe6BPvTEdetDqwkLmiMaCq89Uq2NvxaKjBhx/r/O58nBdb
VkbAwilgViSckcKWDu+kOoDxtSzGDoVp/3CAJpxZoKaPvz7e9+c=
=qmbO
-----END PGP SIGNATURE-----