summaryrefslogtreecommitdiffstats
path: root/unmaintained
diff options
context:
space:
mode:
Diffstat (limited to 'unmaintained')
-rw-r--r--unmaintained/chromium/APKBUILD183
-rw-r--r--unmaintained/chromium/chromium-breakpad.patch11
-rw-r--r--unmaintained/chromium/chromium-c99math.patch11
-rw-r--r--unmaintained/chromium/chromium-dlfcn.patch10
-rw-r--r--unmaintained/chromium/chromium-futimens.patch22
-rw-r--r--unmaintained/chromium/chromium-malloc.patch19
-rw-r--r--unmaintained/chromium/chromium-no-mit-screensaver.patch91
-rw-r--r--unmaintained/chromium/chromium-stdstring.patch15
-rw-r--r--unmaintained/chromium/chromium-uclibc-resolv.patch88
-rw-r--r--unmaintained/chromium/chromium-webrtc.patch10
-rw-r--r--unmaintained/chromium/chromium-yasm.patch10
11 files changed, 470 insertions, 0 deletions
diff --git a/unmaintained/chromium/APKBUILD b/unmaintained/chromium/APKBUILD
new file mode 100644
index 000000000..9fb958289
--- /dev/null
+++ b/unmaintained/chromium/APKBUILD
@@ -0,0 +1,183 @@
+# Contributor: William Pitcock <nenolod@dereferenced.org>
+# Maintainer: Unmaintained <unmaintained@alpinelinux.org>
+pkgname=chromium
+pkgver=17.0.942.0
+pkgrel=1
+pkgdesc="chromium web browser"
+url="http://www.chromium.org/"
+arch="x86 x86_64 arm"
+license="BSD"
+depends="xdg-utils"
+depends_dev="alsa-lib-dev libevent-dev libpng-dev jpeg-dev cairo-dev cups-dev mesa-dev
+ dbus-glib-dev gtk+-dev libxml2-dev freetype-dev
+ libxslt-dev libxtst-dev icu-dev flac-dev speex-dev
+ hunspell-dev libxinerama-dev ffmpeg-dev nss-dev
+ libwebp-dev v8-dev bzip2-dev libevent-dev libvpx-dev
+ sqlite-dev libelf-dev libgcrypt-dev gnutls-dev"
+makedepends="$depends_dev xdg-utils yasm gperf bison flex perl python"
+install=""
+subpackages="$pkgname-doc"
+source="http://gsdview.appspot.com/chromium-browser-official/chromium-$pkgver.tar.bz2
+ chromium-c99math.patch
+ chromium-futimens.patch
+ chromium-dlfcn.patch
+ chromium-yasm.patch
+ chromium-no-mit-screensaver.patch
+ chromium-uclibc-resolv.patch
+ chromium-breakpad.patch
+ chromium-webrtc.patch
+ chromium-malloc.patch"
+
+_builddir="$srcdir"/chromium-$pkgver
+
+CHROMIUM_HOME="/usr/lib/${pkgname}"
+CHROMIUM_IMAGE="${_builddir}/out/Release"
+
+# ugly hack to deal with google shipping weird tarballs
+unpack() {
+ default_unpack || return 0
+}
+
+prepare() {
+ local i
+ cd "$_builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+
+ msg "Stripping Google cruft..."
+ find third_party -type f \! -iname '*.gyp*' \
+ \! -path 'third_party/WebKit/*' \
+ \! -path 'third_party/angle/*' \
+ \! -path 'third_party/cacheinvalidation/*' \
+ \! -path 'third_party/cld/*' \
+ \! -path 'third_party/expat/*' \
+ \! -path 'third_party/ffmpeg/*' \
+ \! -path 'third_party/flac/flac.h' \
+ \! -path 'third_party/gpsd/*' \
+ \! -path 'third_party/harfbuzz/*' \
+ \! -path 'third_party/hunspell/*' \
+ \! -path 'third_party/iccjpeg/*' \
+ \! -path 'third_party/jsoncpp/*' \
+ \! -path 'third_party/launchpad_translations/*' \
+ \! -path 'third_party/leveldb/*' \
+ \! -path 'third_party/leveldatabase/*' \
+ \! -path 'third_party/libjingle/*' \
+ \! -path 'third_party/libphonenumber/*' \
+ \! -path 'third_party/libvpx/*' \
+ \! -path 'third_party/lss/*' \
+ \! -path 'third_party/mesa/*' \
+ \! -path 'third_party/modp_b64/*' \
+ \! -path 'third_party/mongoose/*' \
+ \! -path 'third_party/npapi/*' \
+ \! -path 'third_party/openmax/*' \
+ \! -path 'third_party/ots/*' \
+ \! -path 'third_party/protobuf/*' \
+ \! -path 'third_party/scons-2.0.1/*' \
+ \! -path 'third_party/sfntly/*' \
+ \! -path 'third_party/skia/*' \
+ \! -path 'third_party/smhasher/*' \
+ \! -path 'third_party/speex/speex.h' \
+ \! -path 'third_party/sqlite/*' \
+ \! -path 'third_party/tcmalloc/*' \
+ \! -path 'third_party/tlslite/*' \
+ \! -path 'third_party/undoview/*' \
+ \! -path 'third_party/v8-i18n/*' \
+ \! -path 'third_party/webdriver/*' \
+ \! -path 'third_party/webgl_conformance/*' \
+ \! -path 'third_party/webrtc/*' \
+ \! -path 'third_party/zlib/contrib/minizip/*' \
+ -delete || return 1
+
+ msg "Hacking source tree to use system V8 headers..."
+ find v8 -type f \! -iname '*.gyp*' -delete || return 1
+ rmdir v8/include || return 1
+ ln -s /usr/include v8/include || return 1
+}
+
+build() {
+ cd "$_builddir"
+
+ chromium_arch=ia32
+ test ${CARCH} = x86_64 && chromium_arch=x64
+
+ # enabling SSE2 causes psABI breakage.
+ msg "chromium architecture is ${chromium_arch}"
+ GYP_DEFINES="\
+ werror= \
+ disable_sse2=1 \
+ no_strict_aliasing=1 \
+ linux_sandbox_path=${CHROMIUM_HOME}/chrome_sandbox \
+ linux_sandbox_chrome_path=${CHROMIUM_HOME}/chrome \
+ linux_use_tcmalloc=0 \
+ release_extra_cflags='${CFLAGS}' \
+ proprietary_codecs=1 \
+ use_system_libjpeg=1 \
+ use_system_libxslt=1 \
+ use_system_libxml=1 \
+ use_system_bzip2=1 \
+ use_system_zlib=1 \
+ use_system_libpng=1 \
+ use_system_yasm=1 \
+ use_system_flac=1 \
+ use_system_libevent=1 \
+ use_system_icu=1 \
+ use_system_v8=1 \
+ use_system_libwebp=1 \
+ use_system_ffmpeg=1 \
+ use_system_vpx=1 \
+ use_system_ssl=0 \
+ use_system_sqlite=0 \
+ use_system_speex=1 \
+ use_system_xdg_utils=1 \
+ use_cups=1 \
+ use_gconf=0 \
+ use_gnome_keyring=0 \
+ use_kerberos=0 \
+ linux_link_kerberos=0 \
+ disable_nacl=1 \
+ remoting=0 \
+ target_arch=${chromium_arch}"
+ export GYP_DEFINES
+
+ msg "setting up makefiles"
+ python build/gyp_chromium -f make --depth=. build/all.gyp
+
+ msg "building chrome and chrome_sandbox targets"
+ make V=1 BUILDTYPE=Release -j$JOBS chrome chrome_sandbox chromedriver || return 1
+}
+
+package() {
+ cd "$_builddir"
+
+ mkdir -p "$pkgdir"/${CHROMIUM_HOME}
+
+ install -m755 -c "${CHROMIUM_IMAGE}/chrome" "${pkgdir}/${CHROMIUM_HOME}/chrome"
+ install -m755 -c "${CHROMIUM_IMAGE}/chromedriver" "${pkgdir}/${CHROMIUM_HOME}/chromedriver"
+ install -m755 -c "${CHROMIUM_IMAGE}/chrome_sandbox" "${pkgdir}/${CHROMIUM_HOME}/chrome_sandbox"
+ install -m644 -c "${CHROMIUM_IMAGE}/chrome.pak" "${pkgdir}/${CHROMIUM_HOME}/chrome.pak"
+ install -m644 -c "${CHROMIUM_IMAGE}/resources.pak" "${pkgdir}/${CHROMIUM_HOME}/resources.pak"
+
+ mkdir -p "$pkgdir"/usr/share/man/man1
+ install -m644 -c "${CHROMIUM_IMAGE}/chrome.1" "${pkgdir}/usr/share/man/man1/chrome.1"
+ ln -sf "chrome.1" "${pkgdir}/usr/share/man/man1/chrome-browser.1"
+
+ install -d "${pkgdir}"/usr/bin
+ ln -sf "${CHROMIUM_HOME}/chrome" "${pkgdir}/usr/bin/chrome"
+ ln -sf "${CHROMIUM_HOME}/chrome" "${pkgdir}/usr/bin/chrome-browser"
+ ln -sf "${CHROMIUM_HOME}/chrome" "${pkgdir}/usr/bin/chromium"
+ ln -sf "${CHROMIUM_HOME}/chrome" "${pkgdir}/usr/bin/chromium-browser"
+}
+
+md5sums="5660529559b1845217b679a883160873 chromium-17.0.942.0.tar.bz2
+320d611dba59a881a4f178df743c4912 chromium-c99math.patch
+1328245f1f21cf3abf54223ed06a70f4 chromium-futimens.patch
+768d2ca4daa2db611fd4aeb561701f4e chromium-dlfcn.patch
+76cb0975e631d54fb57bd298041cec05 chromium-yasm.patch
+327850010ae407477083b91a4e04af51 chromium-no-mit-screensaver.patch
+441bcd9fc987e290c610e2f1bbfb75f8 chromium-uclibc-resolv.patch
+f6531589ce894fcd9b6f4917e83cd3aa chromium-breakpad.patch
+6257d567f83ad591360c3de4f9073725 chromium-webrtc.patch
+42f0beecf6a9e4e65c88b5acb77d8a51 chromium-malloc.patch"
diff --git a/unmaintained/chromium/chromium-breakpad.patch b/unmaintained/chromium/chromium-breakpad.patch
new file mode 100644
index 000000000..deb3af8cf
--- /dev/null
+++ b/unmaintained/chromium/chromium-breakpad.patch
@@ -0,0 +1,11 @@
+--- chromium-17.0.942.0.orig/breakpad/src/client/linux/handler/exception_handler.cc
++++ chromium-17.0.942.0/breakpad/src/client/linux/handler/exception_handler.cc
+@@ -474,7 +474,7 @@
+ }
+
+ bool ExceptionHandler::WriteMinidump() {
+-#if !defined(__ARM_EABI__)
++#if !defined(__ARM_EABI__) && !defined(__UCLIBC__)
+ // Allow ourselves to be dumped.
+ sys_prctl(PR_SET_DUMPABLE, 1);
+
diff --git a/unmaintained/chromium/chromium-c99math.patch b/unmaintained/chromium/chromium-c99math.patch
new file mode 100644
index 000000000..37ed224c6
--- /dev/null
+++ b/unmaintained/chromium/chromium-c99math.patch
@@ -0,0 +1,11 @@
+--- chromium-13.0.754.0.orig/base/float_util.h
++++ chromium-13.0.754.0/base/float_util.h
+@@ -19,7 +19,7 @@
+
+ inline bool IsFinite(const double& number) {
+ #if defined(OS_POSIX)
+- return finite(number) != 0;
++ return isfinite(number) != 0;
+ #elif defined(OS_WIN)
+ return _finite(number) != 0;
+ #endif
diff --git a/unmaintained/chromium/chromium-dlfcn.patch b/unmaintained/chromium/chromium-dlfcn.patch
new file mode 100644
index 000000000..9397b1523
--- /dev/null
+++ b/unmaintained/chromium/chromium-dlfcn.patch
@@ -0,0 +1,10 @@
+--- chromium-13.0.754.0.orig/net/socket/nss_ssl_util.cc
++++ chromium-13.0.754.0/net/socket/nss_ssl_util.cc
+@@ -8,6 +8,7 @@
+ #include <secerr.h>
+ #include <ssl.h>
+ #include <sslerr.h>
++#include <dlfcn.h>
+
+ #include <string>
+
diff --git a/unmaintained/chromium/chromium-futimens.patch b/unmaintained/chromium/chromium-futimens.patch
new file mode 100644
index 000000000..0662bcad1
--- /dev/null
+++ b/unmaintained/chromium/chromium-futimens.patch
@@ -0,0 +1,22 @@
+--- chromium-13.0.754.0.orig/base/platform_file_posix.cc
++++ chromium-13.0.754.0/base/platform_file_posix.cc
+@@ -167,10 +167,15 @@
+ if (file < 0)
+ return false;
+
+- timeval times[2];
+- times[0] = last_access_time.ToTimeVal();
+- times[1] = last_modified_time.ToTimeVal();
+- return !futimes(file, times);
++ timespec times[2];
++
++ times[0].tv_sec = last_access_time.ToTimeT();
++ times[0].tv_nsec = 0;
++
++ times[1].tv_sec = last_modified_time.ToTimeT();
++ times[1].tv_nsec = 0;
++
++ return !futimens(file, times);
+ }
+
+ bool GetPlatformFileInfo(PlatformFile file, PlatformFileInfo* info) {
diff --git a/unmaintained/chromium/chromium-malloc.patch b/unmaintained/chromium/chromium-malloc.patch
new file mode 100644
index 000000000..2fe5bfda8
--- /dev/null
+++ b/unmaintained/chromium/chromium-malloc.patch
@@ -0,0 +1,19 @@
+--- chromium-17.0.942.0.orig/base/process_util_linux.cc
++++ chromium-17.0.942.0/base/process_util_linux.cc
+@@ -640,7 +640,7 @@
+
+ extern "C" {
+ #if !defined(USE_TCMALLOC) && !defined(ADDRESS_SANITIZER) && \
+- !defined(OS_ANDROID)
++ !defined(OS_ANDROID) && !defined(__UCLIBC__)
+
+ extern "C" {
+ void* __libc_malloc(size_t size);
+@@ -700,6 +700,7 @@
+ OnNoMemorySize(size); \
+ return ret; \
+ }
++
+
+ DIE_ON_OOM_1(malloc)
+ DIE_ON_OOM_1(valloc)
diff --git a/unmaintained/chromium/chromium-no-mit-screensaver.patch b/unmaintained/chromium/chromium-no-mit-screensaver.patch
new file mode 100644
index 000000000..25ca29ac9
--- /dev/null
+++ b/unmaintained/chromium/chromium-no-mit-screensaver.patch
@@ -0,0 +1,91 @@
+--- chromium-17.0.942.0.orig/chrome/browser/idle_query_linux.cc
++++ chromium-17.0.942.0/chrome/browser/idle_query_linux.cc
+@@ -4,30 +4,12 @@
+
+ #include "chrome/browser/idle_query_linux.h"
+
+-#include <X11/extensions/scrnsaver.h>
+-#include "ui/base/x/x11_util.h"
+-
+ namespace browser {
+
+ class IdleData {
+ public:
+- IdleData() {
+- int event_base;
+- int error_base;
+- if (XScreenSaverQueryExtension(ui::GetXDisplay(), &event_base,
+- &error_base)) {
+- mit_info = XScreenSaverAllocInfo();
+- } else {
+- mit_info = NULL;
+- }
+- }
+-
+- ~IdleData() {
+- if (mit_info)
+- XFree(mit_info);
+- }
+-
+- XScreenSaverInfo *mit_info;
++ IdleData() {}
++ ~IdleData() {}
+ };
+
+ IdleQueryLinux::IdleQueryLinux() : idle_data_(new IdleData()) {}
+@@ -35,16 +17,7 @@
+ IdleQueryLinux::~IdleQueryLinux() {}
+
+ int IdleQueryLinux::IdleTime() {
+- if (!idle_data_->mit_info)
+- return 0;
+-
+- if (XScreenSaverQueryInfo(ui::GetXDisplay(),
+- RootWindow(ui::GetXDisplay(), 0),
+- idle_data_->mit_info)) {
+- return (idle_data_->mit_info->idle) / 1000;
+- } else {
+- return 0;
+- }
++ return 0;
+ }
+
+ } // namespace browser
+--- chromium-17.0.942.0.orig/chrome/chrome.gyp
++++ chromium-17.0.942.0/chrome/chrome.gyp
+@@ -530,11 +530,6 @@
+ 'dependencies': [
+ '../build/linux/system.gyp:gtk',
+ ],
+- 'link_settings': {
+- 'libraries': [
+- '-lXss',
+- ],
+- },
+ }],
+ ['OS=="linux" and chromeos==1', {
+ 'include_dirs': [
+--- chromium-17.0.942.0.orig/chrome/chrome_common.gypi
++++ chromium-17.0.942.0/chrome/chrome_common.gypi
+@@ -257,7 +257,6 @@
+ 'libraries': [
+ '-lX11',
+ '-lXrender',
+- '-lXss',
+ '-lXext',
+ ],
+ },
+--- chromium-17.0.942.0.orig/chrome/chrome_browser.gypi
++++ chromium-17.0.942.0/chrome/chrome_browser.gypi
+@@ -4260,11 +4260,6 @@
+ ],
+ }],
+ ['os_posix == 1 and OS != "mac"', {
+- 'link_settings': {
+- 'libraries': [
+- '-lXss',
+- ],
+- },
+ 'conditions': [
+ ['linux_breakpad==1', {
+ 'sources': [
diff --git a/unmaintained/chromium/chromium-stdstring.patch b/unmaintained/chromium/chromium-stdstring.patch
new file mode 100644
index 000000000..4085c7b77
--- /dev/null
+++ b/unmaintained/chromium/chromium-stdstring.patch
@@ -0,0 +1,15 @@
+--- chromium-13.0.754.0.orig/chrome/browser/debugger/devtools_remote_listen_socket.cc
++++ chromium-13.0.754.0/chrome/browser/debugger/devtools_remote_listen_socket.cc
+@@ -157,11 +157,7 @@
+ static const std::string kHandshakeString = "ChromeDevToolsHandshake";
+ switch (state_) {
+ case HANDSHAKE:
+- if (protocol_field_.compare(kHandshakeString)) {
+- state_ = INVALID;
+- } else {
+- Send(kHandshakeString, true);
+- }
++ Send(kHandshakeString, true);
+ break;
+ case HEADERS: {
+ if (!protocol_field_.empty()) { // not end-of-headers
diff --git a/unmaintained/chromium/chromium-uclibc-resolv.patch b/unmaintained/chromium/chromium-uclibc-resolv.patch
new file mode 100644
index 000000000..decc14bc9
--- /dev/null
+++ b/unmaintained/chromium/chromium-uclibc-resolv.patch
@@ -0,0 +1,88 @@
+--- chromium-17.0.942.0.orig/net/base/dnsrr_resolver.cc
++++ chromium-17.0.942.0/net/base/dnsrr_resolver.cc
+@@ -187,7 +187,7 @@
+ }
+
+ bool r = true;
+-#if defined(OS_MACOSX) || defined(OS_OPENBSD)
++#if !defined(__UCLIBC__) && (defined(OS_MACOSX) || defined(OS_OPENBSD))
+ if ((_res.options & RES_INIT) == 0) {
+ #if defined(OS_OPENBSD)
+ if (res_init() != 0)
+--- chromium-17.0.942.0.orig/net/base/host_resolver_proc.cc
++++ chromium-17.0.942.0/net/base/host_resolver_proc.cc
+@@ -184,7 +184,7 @@
+ hints.ai_socktype = SOCK_STREAM;
+
+ #if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_OPENBSD) && \
+- !defined(OS_ANDROID)
++ !defined(OS_ANDROID) && !defined(__UCLIBC__)
+ DnsReloaderMaybeReload();
+ #endif
+ int err = getaddrinfo(host.c_str(), NULL, &hints, &ai);
+--- chromium-17.0.942.0.orig/net/base/dns_reloader.cc
++++ chromium-17.0.942.0/net/base/dns_reloader.cc
+@@ -4,7 +4,7 @@
+
+ #include "net/base/dns_reloader.h"
+
+-#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_OPENBSD)
++#if 0
+
+ #include <resolv.h>
+
+--- chromium-17.0.942.0.orig/net/base/dnsrr_resolver.cc
++++ chromium-17.0.942.0/net/base/dnsrr_resolver.cc
+@@ -187,9 +187,9 @@
+ }
+
+ bool r = true;
+-#if !defined(__UCLIBC__) && (defined(OS_MACOSX) || defined(OS_OPENBSD))
++#if defined(OS_MACOSX) || defined(OS_OPENBSD) || defined(__UCLIBC__)
+ if ((_res.options & RES_INIT) == 0) {
+-#if defined(OS_OPENBSD)
++#if defined(OS_OPENBSD) || defined(__UCLIBC__)
+ if (res_init() != 0)
+ #else
+ if (res_ninit(&_res) != 0)
+--- chromium-17.0.942.0.orig/net/dns/dns_config_service_posix.cc
++++ chromium-17.0.942.0/net/dns/dns_config_service_posix.cc
+@@ -30,7 +30,7 @@
+ success_(false) {}
+
+ void DoWork() OVERRIDE {
+-#if defined(OS_OPENBSD)
++#if defined(OS_OPENBSD) || defined(__UCLIBC__)
+ if ((res_init() == 0) && (_res.options & RES_INIT)) {
+ success_ = ConvertResToConfig(_res, &dns_config_);
+ #else
+@@ -45,7 +45,7 @@
+ }
+ #if defined(OS_MACOSX)
+ res_ndestroy(&res);
+-#elif !defined(OS_OPENBSD)
++#elif !defined(OS_OPENBSD) && !defined(__UCLIBC__)
+ res_nclose(&res);
+ #endif
+ }
+@@ -132,7 +132,9 @@
+ #if defined(RES_ROTATE)
+ dns_config->rotate = res.options & RES_ROTATE;
+ #endif
++#if defined(RES_USE_EDNS0)
+ dns_config->edns0 = res.options & RES_USE_EDNS0;
++#endif
+
+ return true;
+ }
+--- chromium-17.0.942.0.orig/net/base/host_resolver_impl.cc
++++ chromium-17.0.942.0/net/base/host_resolver_impl.cc
+@@ -1081,7 +1081,7 @@
+ additional_resolver_flags_ |= HOST_RESOLVER_LOOPBACK_ONLY;
+ #endif
+ NetworkChangeNotifier::AddIPAddressObserver(this);
+-#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_OPENBSD)
++#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_OPENBSD) && !defined(__UCLIBC__)
+ EnsureDnsReloaderInit();
+ NetworkChangeNotifier::AddDNSObserver(this);
+ #endif
diff --git a/unmaintained/chromium/chromium-webrtc.patch b/unmaintained/chromium/chromium-webrtc.patch
new file mode 100644
index 000000000..66bbcbd1d
--- /dev/null
+++ b/unmaintained/chromium/chromium-webrtc.patch
@@ -0,0 +1,10 @@
+--- chromium-17.0.942.0.orig/third_party/webrtc/system_wrappers/source/cpu_info.cc
++++ chromium-17.0.942.0/third_party/webrtc/system_wrappers/source/cpu_info.cc
+@@ -20,6 +20,7 @@
+ #elif defined(WEBRTC_ANDROID)
+ // Not implemented yet, might be possible to use Linux implementation
+ #else // defined(WEBRTC_LINUX)
++#include <unistd.h>
+ #include <sys/sysinfo.h>
+ #endif
+
diff --git a/unmaintained/chromium/chromium-yasm.patch b/unmaintained/chromium/chromium-yasm.patch
new file mode 100644
index 000000000..a48fda414
--- /dev/null
+++ b/unmaintained/chromium/chromium-yasm.patch
@@ -0,0 +1,10 @@
+--- chromium-13.0.754.0.orig/third_party/yasm/yasm.gyp
++++ chromium-13.0.754.0/third_party/yasm/yasm.gyp
+@@ -59,6 +59,7 @@
+ 'targets': [
+ {
+ 'target_name': 'yasm',
++ 'ldflags': ['-lintl'],
+ 'type': 'executable',
+ 'toolsets': ['host'],
+ 'dependencies': [