Blame view

buildroot/buildroot-2016.08.1/package/cairo/0005-fix-gcc-49-build.patch 1.24 KB
6b13f685e   김민수   BSP 최초 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
  Fix build with gcc 4.9
  
  cairo fails to build with gcc 4.9 due to a bad interaction of cairo
  modules with the LTO mechanism. The suggested workaround is to pass
  -ffat-lto-objects. See
  https://bugs.freedesktop.org/show_bug.cgi?id=77060 for the upstream
  bug report, and
  https://bugs.archlinux.org/task/40313?project=1&openedfrom=-1+week for
  the ArchLinux bug report.
  
  This patch passes -ffat-lto-objects when gcc understands this option,
  in order to provide compatibility with gcc versions older than 4.8,
  which did not provide this option, but are anyway unaffected by the
  issue.
  
  Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
  
  Index: b/configure.ac
  ===================================================================
  --- a/configure.ac
  +++ b/configure.ac
  @@ -37,6 +37,16 @@
   m4_include(build/configure.ac.pthread)  dnl checks for pthreads
   AC_CACHE_SAVE
   
  +old_cflags=$CFLAGS
  +CFLAGS=-ffat-lto-objects
  +AC_MSG_CHECKING([whether CC supports -ffat-lto-objects])
  +AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
  +    [AC_MSG_RESULT([yes])]
  +    [LTO_CFLAGS=-ffat-lto-objects],
  +    [AC_MSG_RESULT([no])]
  +)
  +CFLAGS="${old_CFLAGS} ${LTO_CFLAGS}"
  +
   dnl ===========================================================================
   
   AC_CHECK_LIB(z, compress,