Apparently this is a bug in gold for armel/armhf -will file a bug report there soon- as chromium builds and works fine if linked with the plain linker. The updated patch enables the build for armhf and most likely on armel as well. Working packages (tested) for armhf can be found here:
http://people.debian.org/~markos/armhf/chromium/ Thanks Konstantinos
diff -ruN chromium-browser-16.0.912.75~r116452/debian/changelog chromium-browser-16.0.912.75~r116452.armhf/debian/changelog --- chromium-browser-16.0.912.75~r116452/debian/changelog 2012-01-09 11:16:17.000000000 +0000 +++ chromium-browser-16.0.912.75~r116452.armhf/debian/changelog 2012-02-01 14:06:22.684130925 +0000 @@ -1,3 +1,9 @@ +chromium-browser (16.0.912.75~r116452-1linaro1) unstable; urgency=low + + * build fixes for arm + + -- Riku Voipio <riku.voi...@linaro.org> Tue, 24 Jan 2012 12:25:07 +0200 + chromium-browser (16.0.912.75~r116452-1) unstable; urgency=low * New stable version: diff -ruN chromium-browser-16.0.912.75~r116452/debian/control chromium-browser-16.0.912.75~r116452.armhf/debian/control --- chromium-browser-16.0.912.75~r116452/debian/control 2012-01-09 11:16:17.000000000 +0000 +++ chromium-browser-16.0.912.75~r116452.armhf/debian/control 2012-02-01 14:06:22.684130925 +0000 @@ -64,7 +64,7 @@ libxt-dev, libxtst-dev, libpam0g-dev, - binutils-gold, + binutils-gold [!armel !armhf], libflac-dev, libwebp-dev, autotools-dev, @@ -75,7 +75,9 @@ libavutil-dev (>= 4:0.7.1), scons, libelf-dev, - python-simplejson + python-simplejson, + libegl1-mesa-dev [armel armhf], + libgles2-mesa-dev [armel armhf] Standards-Version: 3.9.2 Package: chromium-browser @@ -130,7 +132,7 @@ This package contains 'inspector', transitional dummy package. Package: chromium -Architecture: i386 amd64 armel +Architecture: i386 amd64 armel armhf Depends: ${shlibs:Depends}, ${misc:Depends}, libnss3-1d (>= 3.12.3), libvpx0 (>= 0.9.6), @@ -151,7 +153,7 @@ This package contains the Chromium browser. Package: chromium-dbg -Architecture: i386 amd64 armel +Architecture: i386 amd64 armel armhf Section: debug Priority: extra Depends: ${shlibs:Depends}, ${misc:Depends}, chromium (= ${binary:Version}) diff -ruN chromium-browser-16.0.912.75~r116452/debian/patches/arm-no-float-abi.patch chromium-browser-16.0.912.75~r116452.armhf/debian/patches/arm-no-float-abi.patch --- chromium-browser-16.0.912.75~r116452/debian/patches/arm-no-float-abi.patch 1970-01-01 00:00:00.000000000 +0000 +++ chromium-browser-16.0.912.75~r116452.armhf/debian/patches/arm-no-float-abi.patch 2012-02-01 14:06:22.684130925 +0000 @@ -0,0 +1,11 @@ +--- chromium-browser-16.0.912.75~r116452/src/build/common.gypi 2012-02-01 11:23:00.000000000 +0000 ++++ chromium-browser-16.0.912.75~r116452.armhf/src/build/common.gypi 2012-01-25 07:51:41.472311848 +0000 +@@ -1766,7 +1766,6 @@ + 'cflags': [ + '-march=armv7-a', + '-mtune=cortex-a8', +- '-mfloat-abi=softfp', + ], + 'conditions': [ + ['arm_neon==1', { + diff -ruN chromium-browser-16.0.912.75~r116452/debian/patches/fix-libav.patch chromium-browser-16.0.912.75~r116452.armhf/debian/patches/fix-libav.patch --- chromium-browser-16.0.912.75~r116452/debian/patches/fix-libav.patch 1970-01-01 00:00:00.000000000 +0000 +++ chromium-browser-16.0.912.75~r116452.armhf/debian/patches/fix-libav.patch 2012-02-01 14:06:22.691943806 +0000 @@ -0,0 +1,12 @@ +Index: chromium-browser-16.0.912.75~r116452/src/media/ffmpeg/ffmpeg_common.h +=================================================================== +--- chromium-browser-16.0.912.75~r116452.orig/src/media/ffmpeg/ffmpeg_common.h 2012-01-20 13:00:29.195257001 +0200 ++++ chromium-browser-16.0.912.75~r116452/src/media/ffmpeg/ffmpeg_common.h 2012-01-20 13:00:58.103257001 +0200 +@@ -26,6 +26,7 @@ + #include <libavformat/avformat.h> + #include <libavformat/avio.h> + #include <libavutil/avutil.h> ++#include <libavutil/mathematics.h> + #include <libavutil/log.h> + MSVC_POP_WARNING(); + } // extern "C" diff -ruN chromium-browser-16.0.912.75~r116452/debian/patches/series chromium-browser-16.0.912.75~r116452.armhf/debian/patches/series --- chromium-browser-16.0.912.75~r116452/debian/patches/series 2012-01-09 11:16:17.000000000 +0000 +++ chromium-browser-16.0.912.75~r116452.armhf/debian/patches/series 2012-02-01 14:06:22.691943806 +0000 @@ -19,3 +19,6 @@ system_v8.patch #protobuf.patch nss-workaround.patch +system-vpx.patch +fix-libav.patch +arm-no-float-abi.patch diff -ruN chromium-browser-16.0.912.75~r116452/debian/patches/system-vpx.patch chromium-browser-16.0.912.75~r116452.armhf/debian/patches/system-vpx.patch --- chromium-browser-16.0.912.75~r116452/debian/patches/system-vpx.patch 1970-01-01 00:00:00.000000000 +0000 +++ chromium-browser-16.0.912.75~r116452.armhf/debian/patches/system-vpx.patch 2012-02-01 14:06:22.691943806 +0000 @@ -0,0 +1,26 @@ +Index: chromium-browser-16.0.912.75~r116452/src/remoting/remoting.gyp +=================================================================== +--- chromium-browser-16.0.912.75~r116452.orig/src/remoting/remoting.gyp 2012-01-19 17:32:12.490537001 +0200 ++++ chromium-browser-16.0.912.75~r116452/src/remoting/remoting.gyp 2012-01-19 17:38:38.000000000 +0200 +@@ -378,7 +378,7 @@ + '../ui/ui.gyp:ui', + '../net/net.gyp:net', + '../skia/skia.gyp:skia', +- '../third_party/libvpx/libvpx.gyp:libvpx', ++ '../third_party/libvpx/libvpx.gyp:libvpx_include', + '../third_party/protobuf/protobuf.gyp:protobuf_lite', + '../third_party/zlib/zlib.gyp:zlib', + '../media/media.gyp:yuv_convert', +Index: chromium-browser-16.0.912.75~r116452/src/third_party/ffmpeg/ffmpeg.gyp +=================================================================== +--- chromium-browser-16.0.912.75~r116452.orig/src/third_party/ffmpeg/ffmpeg.gyp 2012-01-24 10:04:55.899931002 +0200 ++++ chromium-browser-16.0.912.75~r116452/src/third_party/ffmpeg/ffmpeg.gyp 2012-01-24 10:21:46.519931001 +0200 +@@ -490,7 +490,7 @@ + ['OS == "linux" or OS == "solaris"', { + 'link_settings': { + 'libraries': [ +- '-ldl', ++ '-ldl', '-lvpx', + ], + }, + }], diff -ruN chromium-browser-16.0.912.75~r116452/debian/rules chromium-browser-16.0.912.75~r116452.armhf/debian/rules --- chromium-browser-16.0.912.75~r116452/debian/rules 2012-01-09 11:16:17.000000000 +0000 +++ chromium-browser-16.0.912.75~r116452.armhf/debian/rules 2012-02-01 14:06:22.699756559 +0000 @@ -34,7 +34,7 @@ WANT_TESTS ?= 0 WANT_SANDBOXING ?= 1 USE_SYSTEM_V8 ?= 1 -VERBOSE ?= 0 +VERBOSE ?= 1 export DEB_BUILD_HARDENING=1 #use DEB_BUILD_OPTIONS's parallel=n option (see Policy 4.9.1) @@ -73,17 +73,30 @@ endif DEB_HOST_ARCH_CPU := $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU) +DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH) ifeq (arm,$(DEB_HOST_ARCH_CPU)) -AVOID_GCC_44 := 0 GYP_DEFINES += \ - arm_thumb=0 \ target_arch=arm \ disable_nacl=1 \ linux_use_tcmalloc=0 \ + enable_webrtc=0 \ + use_cups=1 +ifeq (armel,$(DEB_HOST_ARCH)) +AVOID_GCC_44 := 0 +GYP_DEFINES += \ + arm_thumb=0 \ armv7=0 \ arm_neon=0 \ $(NULL) +endif +ifeq (armhf,$(DEB_HOST_ARCH)) +GYP_DEFINES += \ + arm_thumb=1 \ + armv7=1 \ + arm_neon=0 \ + $(NULL) +endif WANT_LZMA_DEBS := 0 WANT_TESTS := 0 else