mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2025-03-09 00:17:31 +00:00
extra/chromium to 26.0.1410.43-1
This commit is contained in:
parent
6aa87f6ba0
commit
1d62ba8406
5 changed files with 236 additions and 52 deletions
|
@ -16,14 +16,15 @@ buildarch=4
|
|||
highmem=1
|
||||
|
||||
pkgname=chromium
|
||||
pkgver=25.0.1364.172
|
||||
pkgrel=2
|
||||
pkgver=26.0.1410.43
|
||||
pkgrel=1
|
||||
pkgdesc="The open-source project behind Google Chrome, an attempt at creating a safer, faster, and more stable browser"
|
||||
arch=('i686' 'x86_64')
|
||||
url="http://www.chromium.org/"
|
||||
license=('BSD')
|
||||
depends=('gtk2' 'nss' 'alsa-lib' 'xdg-utils' 'bzip2' 'libevent' 'libxss'
|
||||
'libgcrypt' 'ttf-font' 'udev' 'dbus' 'pciutils' 'desktop-file-utils'
|
||||
'libgcrypt' 'ttf-font' 'udev' 'dbus' 'flac' 'opus' 'libwebp' 'ffmpeg'
|
||||
'speech-dispatcher' 'pciutils' 'desktop-file-utils'
|
||||
'hicolor-icon-theme')
|
||||
makedepends=('python2' 'perl' 'gperf' 'yasm' 'mesa' 'libgnome-keyring'
|
||||
'elfutils' 'subversion')
|
||||
|
@ -34,25 +35,25 @@ provides=('chromium-browser')
|
|||
conflicts=('chromium-browser')
|
||||
backup=('etc/chromium/default')
|
||||
install=chromium.install
|
||||
source=(http://commondatastorage.googleapis.com/chromium-browser-official/$pkgname-$pkgver.tar.bz2
|
||||
source=(http://commondatastorage.googleapis.com/chromium-browser-official/$pkgname-$pkgver.tar.xz
|
||||
chromium.desktop
|
||||
chromium.default
|
||||
chromium.sh
|
||||
chromium-20.0.1132.57-glib-2.16-use-siginfo_t.patch
|
||||
chromium-25.0.1364.152-fix-crash-when-cups-is-down.patch
|
||||
chromium-system-libpng-r0.patch
|
||||
chromium-ppapi-r0.patch
|
||||
chromium-no-pnacl-r0.patch
|
||||
chromium-system-ffmpeg-r2a.patch
|
||||
chromium-26.0.1410.43-speechd-0.8.patch
|
||||
die-sysroot-die.patch)
|
||||
sha256sums=('1ca3ff61dbd77c69a26de03b9ca4ce35cb6ca9ba6a510bf279b5a0f107379288'
|
||||
sha256sums=('31021f81642124b75cb9fa68aa806206dea345bf1aaf7094c71b3f84344b1d84'
|
||||
'09bfac44104f4ccda4c228053f689c947b3e97da9a4ab6fa34ce061ee83d0322'
|
||||
'478340d5760a9bd6c549e19b1b5d1c5b4933ebf5f8cfb2b3e2d70d07443fe232'
|
||||
'4999fded897af692f4974f0a3e3bbb215193519918a1fa9b31ed51e74a2dccb9'
|
||||
'c1baf14121502efbc2a31b64029dcafa0e28ca5b71ad0e28a3c6342d18198615'
|
||||
'36ff43d8e85a7eac305727057c4ffd45eb7a357ce212a4a3f153037bc34a5ace'
|
||||
'd0a8b8f5b3d25be4bd2f060422c467dc827997a0b69dfc34a6d18dc9d2f36868'
|
||||
'1f4b57670d317959bc2dc60e5d2a44aa8fc6028f7ed540cdb502fa0aa99c81bd'
|
||||
'44061e1648ac4674ad0b9990c265c96c33de435679f6854e4b54a421d81cbe6c'
|
||||
'8344737762508e33f748a04a81fc460c82e1752ad49d214abf4ff670ecd06925'
|
||||
'23b04468881642ffdc8457016c8f91df395dfccb4af2ad6b758168180ae070f3'
|
||||
'66705264d9e679a58ed522b4475a06c8a5a4fe52a709c537b1a7d5aa43fb6c84')
|
||||
|
||||
build() {
|
||||
|
@ -67,19 +68,14 @@ build() {
|
|||
# http://code.google.com/p/chromium/issues/detail?id=160574
|
||||
patch -Np1 -i "$srcdir/chromium-25.0.1364.152-fix-crash-when-cups-is-down.patch"
|
||||
|
||||
# Fix compilation against system libpng (patch from Gentoo)
|
||||
patch -Np0 -i "$srcdir/chromium-system-libpng-r0.patch"
|
||||
# It somehow still manages to build against bundled libpng
|
||||
find third_party/libpng -type f -not -iname '*.gyp*' -delete
|
||||
|
||||
# Fix build without NaCl glibc toolchain (patch from Gentoo)
|
||||
patch -Np0 -i "$srcdir/chromium-ppapi-r0.patch"
|
||||
|
||||
# Fix build without NaCl pnacl toolchain (patch from Gentoo)
|
||||
patch -Np0 -i "$srcdir/chromium-no-pnacl-r0.patch"
|
||||
# Patch to build with system ffmpeg (patch from Gentoo)
|
||||
patch -Np1 -i "$srcdir/chromium-system-ffmpeg-r2a.patch"
|
||||
|
||||
# Missing gyp files in tarball (http://crbug.com/144823)
|
||||
sed -i '/nacl_test_data\.gyp/d' chrome/chrome_tests.gypi
|
||||
# Fix header location for speech-dispatcher 0.8 (patch from PLD Linux)
|
||||
patch -Np2 -i "$srcdir/chromium-26.0.1410.43-speechd-0.8.patch"
|
||||
|
||||
# Use Python 2
|
||||
find . -type f -exec sed -i -r \
|
||||
|
@ -101,24 +97,29 @@ build() {
|
|||
-Dwerror= \
|
||||
-Dlinux_link_gsettings=1 \
|
||||
-Dlinux_link_libpci=1 \
|
||||
-Dlinux_link_libspeechd=1 \
|
||||
-Dlinux_sandbox_path=/usr/lib/chromium/chromium-sandbox \
|
||||
-Dlinux_strip_binary=1 \
|
||||
-Dlinux_use_gold_binary=0 \
|
||||
-Dlinux_use_gold_flags=0 \
|
||||
-Drelease_extra_cflags="$CFLAGS -DUSE_EABI_HARDFLOAT" \
|
||||
-Dffmpeg_branding=Chrome \
|
||||
-Dproprietary_codecs=1 \
|
||||
-Duse_system_bzip2=1 \
|
||||
-Duse_system_ffmpeg=0 \
|
||||
-Duse_system_flac=1 \
|
||||
-Duse_system_ffmpeg=1 \
|
||||
-Duse_system_libevent=1 \
|
||||
-Duse_system_libjpeg=1 \
|
||||
-Duse_system_libpng=1 \
|
||||
-Duse_system_libwebp=1 \
|
||||
-Duse_system_libxml=0 \
|
||||
-Duse_system_opus=1 \
|
||||
-Duse_system_ssl=0 \
|
||||
-Duse_system_xdg_utils=1 \
|
||||
-Duse_system_yasm=1 \
|
||||
-Duse_system_zlib=0 \
|
||||
-Duse_gconf=0 \
|
||||
-Ddisable_glibc=1 \
|
||||
-Ddisable_newlib_untar=1 \
|
||||
-Ddisable_sse2=1 \
|
||||
-Dtarget_arch=arm \
|
||||
-Darmv7=1 \
|
||||
|
@ -141,7 +142,7 @@ package() {
|
|||
install -Dm4755 -o root -g root out/Release/chrome_sandbox \
|
||||
"$pkgdir/usr/lib/chromium/chromium-sandbox"
|
||||
|
||||
cp out/Release/{*.pak,libffmpegsumo.so} \
|
||||
cp out/Release/{*.pak} \
|
||||
"$pkgdir/usr/lib/chromium/"
|
||||
|
||||
# Allow users to override command-line options
|
||||
|
|
11
extra/chromium/chromium-26.0.1410.43-speechd-0.8.patch
Normal file
11
extra/chromium/chromium-26.0.1410.43-speechd-0.8.patch
Normal file
|
@ -0,0 +1,11 @@
|
|||
--- chromium-browser-26.0.1410.19/src/build/linux/system.gyp~ 2013-03-04 00:04:06.000000000 +0200
|
||||
+++ chromium-browser-26.0.1410.19/src/build/linux/system.gyp 2013-03-04 13:45:31.822101677 +0200
|
||||
@@ -494,7 +494,7 @@
|
||||
'--name', 'LibSpeechdLoader',
|
||||
'--output-h', '<(output_h)',
|
||||
'--output-cc', '<(output_cc)',
|
||||
- '--header', '<libspeechd.h>',
|
||||
+ '--header', '<speech-dispatcher/libspeechd.h>',
|
||||
'--link-directly=<(linux_link_libspeechd)',
|
||||
'spd_open',
|
||||
'spd_say',
|
|
@ -1,20 +0,0 @@
|
|||
--- native_client/build/untrusted.gypi (revision 10450)
|
||||
+++ native_client/build/untrusted.gypi (working copy)
|
||||
@@ -771,7 +771,7 @@
|
||||
],
|
||||
},
|
||||
'target_conditions': [
|
||||
- ['nexe_target!="" and build_pnacl_newlib!=0', {
|
||||
+ ['nexe_target!="" and disable_pnacl==0 and build_pnacl_newlib!=0', {
|
||||
'variables': {
|
||||
'out_pnacl_newlib_x86_32_nexe%': '<(PRODUCT_DIR)/>(nexe_target)_pnacl_newlib_x32.nexe',
|
||||
'out_pnacl_newlib_x86_64_nexe%': '<(PRODUCT_DIR)/>(nexe_target)_pnacl_newlib_x64.nexe',
|
||||
@@ -889,7 +889,7 @@
|
||||
}],
|
||||
],
|
||||
}],
|
||||
- ['nlib_target!="" and build_pnacl_newlib!=0', {
|
||||
+ ['nlib_target!="" and disable_pnacl==0 and build_pnacl_newlib!=0', {
|
||||
'variables': {
|
||||
'tool_name': 'pnacl_newlib',
|
||||
'inst_dir': '<(SHARED_INTERMEDIATE_DIR)/tc_pnacl_newlib',
|
203
extra/chromium/chromium-system-ffmpeg-r2a.patch
Normal file
203
extra/chromium/chromium-system-ffmpeg-r2a.patch
Normal file
|
@ -0,0 +1,203 @@
|
|||
diff --git a/media/filters/ffmpeg_glue.h b/media/filters/ffmpeg_glue.h
|
||||
index 17241b9..8a92312 100644
|
||||
--- a/media/filters/ffmpeg_glue.h
|
||||
+++ b/media/filters/ffmpeg_glue.h
|
||||
@@ -28,9 +28,9 @@
|
||||
#include "base/basictypes.h"
|
||||
#include "base/memory/scoped_ptr.h"
|
||||
#include "media/base/media_export.h"
|
||||
+#include "media/ffmpeg/ffmpeg_common.h"
|
||||
|
||||
struct AVFormatContext;
|
||||
-struct AVIOContext;
|
||||
|
||||
namespace media {
|
||||
|
||||
diff --git a/media/media.gyp b/media/media.gyp
|
||||
index df217d2..fde3830 100644
|
||||
--- a/media/media.gyp
|
||||
+++ b/media/media.gyp
|
||||
@@ -363,6 +363,9 @@
|
||||
'dependencies': [
|
||||
'../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
|
||||
],
|
||||
+ 'export_dependent_settings': [
|
||||
+ '../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
|
||||
+ ],
|
||||
}, { # media_use_ffmpeg == 0
|
||||
# Exclude the sources that depend on ffmpeg.
|
||||
'sources!': [
|
||||
--- a/media/ffmpeg/ffmpeg_common.cc.orig 2013-01-17 00:07:51.635057013 +0000
|
||||
+++ b/media/ffmpeg/ffmpeg_common.cc 2013-01-17 00:15:50.867406811 +0000
|
||||
@@ -10,6 +10,8 @@
|
||||
#include "media/base/video_frame.h"
|
||||
#include "media/base/video_util.h"
|
||||
|
||||
+#undef SampleFormat
|
||||
+
|
||||
namespace media {
|
||||
|
||||
// Why FF_INPUT_BUFFER_PADDING_SIZE? FFmpeg assumes all input buffers are
|
||||
Index: build/common.gypi
|
||||
diff --git a/build/common.gypi b/build/common.gypi
|
||||
index 34c6a15e0add1001e4a24712c9c809e3b698a390..521decfa19d102263086ebf4de7c8bac74c95e30 100644
|
||||
--- a/build/common.gypi
|
||||
+++ b/build/common.gypi
|
||||
@@ -741,6 +741,9 @@
|
||||
'google_default_client_secret%': '<(google_default_client_secret)',
|
||||
'enable_managed_users%': '<(enable_managed_users)',
|
||||
|
||||
+ # Use system ffmpeg instead of bundled one.
|
||||
+ 'use_system_ffmpeg%': 0,
|
||||
+
|
||||
# Use system mesa instead of bundled one.
|
||||
'use_system_mesa%': 0,
|
||||
|
||||
Index: media/ffmpeg/ffmpeg_common.cc
|
||||
diff --git a/media/ffmpeg/ffmpeg_common.cc b/media/ffmpeg/ffmpeg_common.cc
|
||||
index 26953efc699a0dc1ce9cd951eb47b04713974b44..bf234304aa2b26fb7e0f729a4e75257099c00358 100644
|
||||
--- a/media/ffmpeg/ffmpeg_common.cc
|
||||
+++ b/media/ffmpeg/ffmpeg_common.cc
|
||||
@@ -84,8 +84,10 @@ AudioCodec CodecIDToAudioCodec(CodecID codec_id) {
|
||||
return kCodecGSM_MS;
|
||||
case CODEC_ID_PCM_MULAW:
|
||||
return kCodecPCM_MULAW;
|
||||
+#ifndef CHROMIUM_OMIT_CODEC_ID_OPUS
|
||||
case CODEC_ID_OPUS:
|
||||
return kCodecOpus;
|
||||
+#endif
|
||||
default:
|
||||
DVLOG(1) << "Unknown audio CodecID: " << codec_id;
|
||||
}
|
||||
@@ -129,8 +131,10 @@ static CodecID AudioCodecToCodecID(AudioCodec audio_codec,
|
||||
return CODEC_ID_GSM_MS;
|
||||
case kCodecPCM_MULAW:
|
||||
return CODEC_ID_PCM_MULAW;
|
||||
+#ifndef CHROMIUM_OMIT_CODEC_ID_OPUS
|
||||
case kCodecOpus:
|
||||
return CODEC_ID_OPUS;
|
||||
+#endif
|
||||
default:
|
||||
DVLOG(1) << "Unknown AudioCodec: " << audio_codec;
|
||||
}
|
||||
@@ -147,8 +151,10 @@ VideoCodec CodecIDToVideoCodec(CodecID codec_id) {
|
||||
return kCodecMPEG4;
|
||||
case CODEC_ID_VP8:
|
||||
return kCodecVP8;
|
||||
+#ifndef CHROMIUM_OMIT_AV_CODEC_ID_VP9
|
||||
case AV_CODEC_ID_VP9:
|
||||
return kCodecVP9;
|
||||
+#endif
|
||||
default:
|
||||
DVLOG(1) << "Unknown video CodecID: " << codec_id;
|
||||
}
|
||||
@@ -165,8 +171,10 @@ static CodecID VideoCodecToCodecID(VideoCodec video_codec) {
|
||||
return CODEC_ID_MPEG4;
|
||||
case kCodecVP8:
|
||||
return CODEC_ID_VP8;
|
||||
+#ifndef CHROMIUM_OMIT_AV_CODEC_ID_VP9
|
||||
case kCodecVP9:
|
||||
return AV_CODEC_ID_VP9;
|
||||
+#endif
|
||||
default:
|
||||
DVLOG(1) << "Unknown VideoCodec: " << video_codec;
|
||||
}
|
||||
@@ -468,8 +476,10 @@ ChannelLayout ChannelLayoutToChromeChannelLayout(int64_t layout, int channels) {
|
||||
return CHANNEL_LAYOUT_6_1_FRONT;
|
||||
case AV_CH_LAYOUT_7POINT0_FRONT:
|
||||
return CHANNEL_LAYOUT_7_0_FRONT;
|
||||
+#ifdef AV_CH_LAYOUT_7POINT1_WIDE_BACK
|
||||
case AV_CH_LAYOUT_7POINT1_WIDE_BACK:
|
||||
return CHANNEL_LAYOUT_7_1_WIDE_BACK;
|
||||
+#endif
|
||||
case AV_CH_LAYOUT_OCTAGONAL:
|
||||
return CHANNEL_LAYOUT_OCTAGONAL;
|
||||
default:
|
||||
Index: media/media.gyp
|
||||
diff --git a/media/media.gyp b/media/media.gyp
|
||||
index f514dec48e5cc78567d141f20e2cb970a8707e92..75b62bebb503e2d9488bf0fc5cec3fd0a7e1916d 100644
|
||||
--- a/media/media.gyp
|
||||
+++ b/media/media.gyp
|
||||
@@ -469,6 +469,18 @@
|
||||
'filters/vpx_video_decoder.h',
|
||||
],
|
||||
}],
|
||||
+ ['use_system_ffmpeg == 1', {
|
||||
+ 'defines': [
|
||||
+ '<!(python <(DEPTH)/tools/compile_test/compile_test.py '
|
||||
+ '--code "#include <libavcodec/avcodec.h>\n'
|
||||
+ 'int test() { return CODEC_ID_OPUS; }" '
|
||||
+ '--on-failure CHROMIUM_OMIT_CODEC_ID_OPUS)',
|
||||
+ '<!(python <(DEPTH)/tools/compile_test/compile_test.py '
|
||||
+ '--code "#include <libavcodec/avcodec.h>\n'
|
||||
+ 'int test() { return AV_CODEC_ID_VP9; }" '
|
||||
+ '--on-failure CHROMIUM_OMIT_AV_CODEC_ID_VP9)',
|
||||
+ ],
|
||||
+ }],
|
||||
['OS == "ios"', {
|
||||
'includes': [
|
||||
# For shared_memory_support_sources variable.
|
||||
Index: tools/compile_test/compile_test.py
|
||||
diff --git a/tools/compile_test/compile_test.py b/tools/compile_test/compile_test.py
|
||||
new file mode 100755
|
||||
index 0000000000000000000000000000000000000000..a52c0720209142af858d656a071ca43328dd3b16
|
||||
--- /dev/null
|
||||
+++ b/tools/compile_test/compile_test.py
|
||||
@@ -0,0 +1,57 @@
|
||||
+#!/usr/bin/env python
|
||||
+# Copyright (c) 2013 The Chromium Authors. All rights reserved.
|
||||
+# Use of this source code is governed by a BSD-style license that can be
|
||||
+# found in the LICENSE file.
|
||||
+
|
||||
+"""
|
||||
+Tries to compile given code, produces different output depending on success.
|
||||
+
|
||||
+This is similar to checks done by ./configure scripts.
|
||||
+"""
|
||||
+
|
||||
+
|
||||
+import optparse
|
||||
+import os
|
||||
+import shutil
|
||||
+import subprocess
|
||||
+import sys
|
||||
+import tempfile
|
||||
+
|
||||
+
|
||||
+def DoMain(argv):
|
||||
+ parser = optparse.OptionParser()
|
||||
+ parser.add_option('--code')
|
||||
+ parser.add_option('--on-success', default='')
|
||||
+ parser.add_option('--on-failure', default='')
|
||||
+
|
||||
+ options, args = parser.parse_args(argv)
|
||||
+
|
||||
+ if not options.code:
|
||||
+ parser.error('Missing required --code switch.')
|
||||
+
|
||||
+ cxx = os.environ.get('CXX', 'g++')
|
||||
+
|
||||
+ tmpdir = tempfile.mkdtemp()
|
||||
+ try:
|
||||
+ cxx_path = os.path.join(tmpdir, 'test.cc')
|
||||
+ with open(cxx_path, 'w') as f:
|
||||
+ f.write(options.code.decode('string-escape'))
|
||||
+
|
||||
+ o_path = os.path.join(tmpdir, 'test.o')
|
||||
+
|
||||
+ cxx_popen = subprocess.Popen([cxx, cxx_path, '-o', o_path, '-c'],
|
||||
+ stdout=subprocess.PIPE,
|
||||
+ stderr=subprocess.PIPE)
|
||||
+ cxx_stdout, cxx_stderr = cxx_popen.communicate()
|
||||
+ if cxx_popen.returncode == 0:
|
||||
+ print options.on_success
|
||||
+ else:
|
||||
+ print options.on_failure
|
||||
+ finally:
|
||||
+ shutil.rmtree(tmpdir)
|
||||
+
|
||||
+ return 0
|
||||
+
|
||||
+
|
||||
+if __name__ == '__main__':
|
||||
+ sys.exit(DoMain(sys.argv[1:]))
|
|
@ -1,11 +0,0 @@
|
|||
--- build/shim_headers.gypi.orig 2012-12-20 02:51:12.000000000 +0100
|
||||
+++ build/shim_headers.gypi 2012-12-20 02:51:40.000000000 +0100
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
{
|
||||
'variables': {
|
||||
- 'shim_headers_path': '<(INTERMEDIATE_DIR)/shim_headers',
|
||||
+ 'shim_headers_path': '<(SHARED_INTERMEDIATE_DIR)/shim_headers/<(_target_name)',
|
||||
},
|
||||
'direct_dependent_settings': {
|
||||
'include_dirs+': [
|
Loading…
Reference in a new issue