GNU bug report logs -
#13353
Coreutils-8.20 mips build broken
Previous Next
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Fri, 04 Jan 2013 17:02:14 +0000
with message-id <50E70B16.7070304 <at> draigBrady.com>
and subject line Re: bug#13353: Coreutils-8.20 mips build broken
has caused the debbugs.gnu.org bug report #13353,
regarding Coreutils-8.20 mips build broken
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
13353: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13353
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
I've tried to update coreutils version used in OpenEmbedded. I've been
building for x86, arm, and mips architectures. Coreutils-8.19 builds
fine for all three, but 8.20 fails on mips with lots of "unable to
emulate 'TI'" errors and "right whift count >= width of type" warnings
from src/factor.c. First error comes from line 766.
- ML
[Message part 3 (message/rfc822, inline)]
On 01/04/2013 04:23 PM, Marko Lindqvist wrote:
> On 4 January 2013 14:12, Pádraig Brady <P <at> draigbrady.com> wrote:
>>
>> So could you try the following patch.
>
>> diff src/longlong.h.orig src/longlong.h
>> 1240c1240
>> < #if (defined (__mips) && __mips >= 3) && W_TYPE_SIZE == 64
>> ---
>>> #if (defined (__mips) && __mips >= 3) && W_TYPE_SIZE == 64 && defined
>>> (_LP64)
>>
>> thanks,
>> Pádraig.
>
> Yes, that works. Thank you.
OK cool.
I think I'll use this more general patch instead.
thanks,
Pádraig.
diff --git a/src/factor.c b/src/factor.c
index 473eee7..95451a5 100644
--- a/src/factor.c
+++ b/src/factor.c
@@ -118,7 +118,14 @@
#endif
#ifndef USE_LONGLONG_H
-# define USE_LONGLONG_H 1
+/* With the way we use longlong.h, it's only safe to use
+ when UWtype = UHWtype, as there were various cases
+ (as can be seen in the history for longlong.h) where
+ for example, _LP64 was required to enable W_TYPE_SIZE==64 code,
+ to avoid compile time or run time issues. */
+# if LONG_MAX == INTMAX_MAX
+# define USE_LONGLONG_H 1
+# endif
#endif
#if USE_LONGLONG_H
This bug report was last modified 12 years and 200 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.