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

Reply via email to