Source: gdk-pixbuf Version: 2.31.4-2 Tags: patch netsurf failed to build on arm64:
/«BUILDDIR»/netsurf-3.2+dfsg/netsurf/gtk/window.c:1057:(.text+0x2cc): relocation truncated to fit: R_AARCH64_LDST64_ABS_LO12_NC against symbol `menu_cursor_pixdata' defined in .rodata section in build-Linux-gtk/build-Linux-gtk_menu_cursor.o collect2: error: ld returned 1 exit status See https://buildd.debian.org/status/package.php?p=netsurf&suite=sid The root of the problem seems to be here: https://sources.debian.net/src/gdk-pixbuf/2.31.4-2/gdk-pixbuf/gdk-pixdata.c/ In line 768 you need alignment 8 instead of 4. (I don't know about line 764. You could change that as well, perhaps.) However, is there a neater, more portable way of making this stuff work?
diff -ru gdk-pixbuf-2.31.4.orig/gdk-pixbuf/gdk-pixdata.c gdk-pixbuf-2.31.4/gdk-pixbuf/gdk-pixdata.c --- gdk-pixbuf-2.31.4.orig/gdk-pixbuf/gdk-pixdata.c 2014-10-23 01:53:51.000000000 +0000 +++ gdk-pixbuf-2.31.4/gdk-pixbuf/gdk-pixdata.c 2015-06-02 07:59:21.910000000 +0000 @@ -765,7 +765,7 @@ APPEND (gstring, "#endif\n"); APPEND (gstring, "#ifdef __GNUC__\n"); - APPEND (gstring, "%s%s%s %s[] __attribute__ ((__aligned__ (4))) = \n", + APPEND (gstring, "%s%s%s %s[] __attribute__ ((__aligned__ (8))) = \n", cdata.static_prefix, cdata.const_prefix, cdata.dump_gtypes ? "guint8" : "unsigned char", name);