This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: Cross-build issues in gdb/gnulib
- From: Pedro Alves <palves at redhat dot com>
- To: Paul_Koning at dell dot com
- Cc: gdb at sourceware dot org, bug-gnulib <bug-gnulib at gnu dot org>
- Date: Tue, 25 Aug 2015 14:39:56 +0100
- Subject: Re: Cross-build issues in gdb/gnulib
- Authentication-results: sourceware.org; auth=none
- References: <D46D2776-70D7-461B-8B0A-6039058E3BE2 at dell dot com> <55DC3BC4 dot 1000707 at redhat dot com> <1CC14532-8BF3-4C4A-9773-D61B13393DB9 at dell dot com>
Adding gnulib@
Original thread here:
https://sourceware.org/ml/gdb/2015-08/msg00037.html
Thanks,
Pedro Alves
On 08/25/2015 02:12 PM, Paul_Koning@dell.com wrote:
>
>> On Aug 25, 2015, at 5:56 AM, Pedro Alves <palves@redhat.com> wrote:
>>
>> On 08/24/2015 10:20 PM, Paul_Koning@Dell.com wrote:
>>> I'm running into strange problems cross-building with V7.7.1; it looks like the same configure machinery is present in later versions as well.
>>>
>>> The problem is that the configure script in gdb/gnulib tries to run a number of tests, by building and then executing "conftest". It does so unconditionally, there are no checks for whether this is a cross-build, specifically build = x86_64-linux, host = target = netbsd.
>>
>> I have no idea why configure is trying to run the test in your case, but I just yesterday
>> updated master's gnulib copy to current upstream gnulib master. Previously we had
>> a 2012 copy. I don't see any AC_TRY_RUN in current master, for instance,
>> though I didn't check older versions. In any case, try seeing if current master makes
>> a difference.
>
> I tracked down the spot in the configure sources where the problem originates. There is no AC_TRY_RUN involved. Instead, the issue is this bit of code in gnulib/import/m4/locale-ja.m4:
>
> # Test for the AIX locale name.
> if (LC_ALL=ja_JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then
> gt_cv_locale_ja=ja_JP
>
> The comment refers to AIX, but it is in fact executed in the "*" case of a case statement, i.e., for everything other than Windows. The same code pattern also appears in the two other locale-*.m4 files.
>
> So it looks like that code needs some sort of guard checking for cross-build, and some sort of default action if so. I'm not particularly fluent in configure unfortunately.
>
> A quick look at the latest master shows that these files are unchanged by yesterday's update (other than copyright year).
>
> paul
>