Bug 88867 - cairo 1.12.18 configure testfails with -flto
Summary: cairo 1.12.18 configure testfails with -flto
Status: RESOLVED WONTFIX
Alias: None
Product: cairo
Classification: Unclassified
Component: general (show other bugs)
Version: unspecified
Hardware: x86-64 (AMD64) All
: medium normal
Assignee: Chris Wilson
QA Contact: cairo-bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-01-29 14:54 UTC by David Heidelberg (okias)
Modified: 2015-04-18 11:51 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description David Heidelberg (okias) 2015-01-29 14:54:18 UTC
Compiling 32bit cairo version with -m32.

At least this test need get -fno-lto to work propertly. Or it is gcc bug?

System: Gentoo
CC: Gcc 4.9.2


configure:19462: x86_64-pc-linux-gnu-gcc -m32 -c -O2 -pipe -flto -O3 -march=native -fno-stack-protector -pipe  conftest.c >&5
configure:19462: $? = 0
configure:19480: x86_64-pc-linux-gnu-gcc -m32 -c -O2 -pipe -flto -O3 -march=native -fno-stack-protector -pipe  conftest.c >&5
conftest.c: In function 'main':
conftest.c:37:4: error: unknown type name 'not'
    not big endian
    ^
conftest.c:37:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'endian'
    not big endian
            ^
configure:19480: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "cairo"
| #define PACKAGE_TARNAME "cairo"
| #define PACKAGE_VERSION "1.12.18"
| #define PACKAGE_STRING "cairo 1.12.18"
| #define PACKAGE_BUGREPORT "http://bugs.freedesktop.org/enter_bug.cgi?product=cairo"
| #define PACKAGE_URL "http://cairographics.org/"
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define __EXTENSIONS__ 1
| #define _ALL_SOURCE 1
| #define _GNU_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define _TANDEM_SOURCE 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_IOCTL_H 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define _FILE_OFFSET_BITS 64
| #define WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| /* end confdefs.h.  */
| #include <sys/types.h>
|               #include <sys/param.h>
|
| int
| main ()
| {
| #if BYTE_ORDER != BIG_ENDIAN
|                not big endian
|               #endif
|
|   ;
|   return 0;
| }
configure:19608: result: no
configure:19626: checking whether float word ordering is bigendian
configure:19653: x86_64-pc-linux-gnu-gcc -m32 -c -O2 -pipe -flto -O3 -march=native -fno-stack-protector -pipe  conftest.c >&5
configure:19653: $? = 0
configure:19671: result: unknown
configure:19682: error:

Unknown float word ordering. You need to manually preset
ax_cv_c_float_words_bigendian=no (or yes) according to your system.
Comment 1 Bryce Harrington 2015-03-07 22:13:42 UTC
We ended up removing LTO support entirely for 1.14.0 (see c7ff9bb3).

We left the option there for 1.12 in case anyone is using it successfully but have no further plans to do development on it.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.