Bump buildroot to 2019.02

This commit is contained in:
2019-03-28 22:49:48 +01:00
parent 5598b1b762
commit 920d307141
5121 changed files with 78550 additions and 46132 deletions

View File

@@ -1,55 +0,0 @@
Fix build on platforms where __USER_LABEL_PREFIX__ is not empty
On most platforms, a C language symbol and its assembly equivalent are
identical. However, on the Blackfin architecture, this isn't the case,
the corresponding C language symbol in assembly is prepended with a
"_". Blackfin therefore has __USER_LABEL_PREFIX__ defined to "_".
Cairo already has some code to cope with __USER_LABEL_PREFIX__, but
this code isn't completely correct: it prepends both assembly symbols
and C symbols with __USER_LABEL_PREFIX__, which cannot work.
This patch fixes that by using the existing slim_hidden_asmname() to
define assembly symbols, and introduce a new slim_hidden_realname()
for C symbols.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Index: b/src/cairo-compiler-private.h
===================================================================
--- a/src/cairo-compiler-private.h
+++ b/src/cairo-compiler-private.h
@@ -93,12 +93,13 @@
__asm__ (slim_hidden_asmname (internal))
# define slim_hidden_def1(name, internal) \
extern __typeof (name) EXT_##name __asm__(slim_hidden_asmname(name)) \
- __attribute__((__alias__(slim_hidden_asmname(internal))))
+ __attribute__((__alias__(slim_hidden_realname(internal))))
# define slim_hidden_ulp slim_hidden_ulp1(__USER_LABEL_PREFIX__)
# define slim_hidden_ulp1(x) slim_hidden_ulp2(x)
# define slim_hidden_ulp2(x) #x
# define slim_hidden_asmname(name) slim_hidden_asmname1(name)
# define slim_hidden_asmname1(name) slim_hidden_ulp #name
+# define slim_hidden_realname(name) #name
#else
# define slim_hidden_proto(name) int _cairo_dummy_prototype(void)
# define slim_hidden_proto_no_warn(name) int _cairo_dummy_prototype(void)
Index: b/util/cairo-script/cairo-script-private.h
===================================================================
--- a/util/cairo-script/cairo-script-private.h
+++ b/util/cairo-script/cairo-script-private.h
@@ -109,12 +109,13 @@
__asm__ (slim_hidden_asmname (internal))
# define slim_hidden_def1(name, internal) \
extern __typeof (name) EXT_##name __asm__(slim_hidden_asmname(name)) \
- __attribute__((__alias__(slim_hidden_asmname(internal))))
+ __attribute__((__alias__(slim_hidden_realname(internal))))
# define slim_hidden_ulp slim_hidden_ulp1(__USER_LABEL_PREFIX__)
# define slim_hidden_ulp1(x) slim_hidden_ulp2(x)
# define slim_hidden_ulp2(x) #x
# define slim_hidden_asmname(name) slim_hidden_asmname1(name)
# define slim_hidden_asmname1(name) slim_hidden_ulp #name
+# define slim_hidden_realname(name) #name
#else
# define slim_hidden_proto(name) int _csi_dummy_prototype(void)
# define slim_hidden_proto_no_warn(name) int _csi_dummy_prototype(void)

View File

@@ -1,38 +0,0 @@
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,

View File

@@ -1,4 +1,9 @@
# From http://cairographics.org/releases/cairo-1.14.10.tar.xz.sha1
sha1 28c59d85d6b790c21b8b59ece73a6a1dda28d69a cairo-1.14.10.tar.xz
# From https://www.cairographics.org/snapshots/cairo-1.15.12.tar.xz.sha1
sha1 4e64c6a48789edb4c60bc3fa95bd3992cc388b88 cairo-1.15.12.tar.xz
# Calculated based on the hash above
sha256 7e87878658f2c9951a14fc64114d4958c0e65ac47530b8ac3078b2ce41b66a09 cairo-1.14.10.tar.xz
sha256 7623081b94548a47ee6839a7312af34e9322997806948b6eec421a8c6d0594c9 cairo-1.15.12.tar.xz
# Hash for license files:
sha256 67228a9f7c5f9b67c58f556f1be178f62da4d9e2e6285318d8c74d567255abdf COPYING
sha256 9e9e8608c4cdda51a78cc3a385f4ec9a2e4c96d5ecad74ac8bca5fca3e563b7d COPYING-LGPL-2.1
sha256 53692a2ed6c6a2c6ec9b32dd0b820dfae91e0a1fcdf625ca9ed0bdf8705fcc4f COPYING-MPL-1.1

View File

@@ -4,13 +4,12 @@
#
################################################################################
CAIRO_VERSION = 1.14.10
CAIRO_VERSION = 1.15.12
CAIRO_SOURCE = cairo-$(CAIRO_VERSION).tar.xz
CAIRO_LICENSE = LGPL-2.1 or MPL-1.1 (library)
CAIRO_LICENSE_FILES = COPYING COPYING-LGPL-2.1 COPYING-MPL-1.1
CAIRO_SITE = http://cairographics.org/releases
CAIRO_SITE = http://cairographics.org/snapshots
CAIRO_INSTALL_STAGING = YES
CAIRO_AUTORECONF = YES
# relocation truncated to fit: R_68K_GOT16O
ifeq ($(BR2_m68k_cf),y)