Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
'variables': {
# Configure for armv6 compilation
'target_arch': 'arm',
'armv7': 0,
'arm_neon': 0,
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
'variables': {
'use_system_bzip2': 1,
'disable_nacl': 1,
'proprietary_codecs': 1,
'v8_use_snapshot': 1,
'use_system_ffmpeg': 0,
'linux_use_tcmalloc': 0,
'linux_link_kerberos': 0,
'use_kerberos': 0,
'use_cups': 0,
'use_gnome_keyring': 0,
'linux_link_gnome_keyring': 0
},
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
'variables': {
# Configure for armv7 compilation
'target_arch': 'arm',
'armv7': 1,
'arm_thumb': 1,
'arm_neon': 1,
},
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
'variables': {
'use_system_bzip2': 1,
'disable_nacl': 1,
'proprietary_codecs': 1,
'v8_use_snapshot': 1,
'use_system_ffmpeg': 0,
'linux_use_tcmalloc': 0,
'linux_link_kerberos': 0,
'use_kerberos': 0,
'use_cups': 0,
'use_gnome_keyring': 0,
'linux_link_gnome_keyring': 0
},
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
diff -upr chromium-20.0.1132.57.orig/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h chromium-20.0.1132.57/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h
--- chromium-20.0.1132.57.orig/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h 2012-07-10 10:48:31.000000000 +0300
+++ chromium-20.0.1132.57/third_party/tcmalloc/chromium/src/base/linux_syscall_support.h 2012-07-11 23:44:11.000000000 +0300
@@ -243,14 +243,13 @@ struct kernel_rusage {
long ru_nivcsw;
};

-struct siginfo;
#if defined(__i386__) || defined(__arm__) || defined(__PPC__)

/* include/asm-{arm,i386,mips,ppc}/signal.h */
struct kernel_old_sigaction {
union {
void (*sa_handler_)(int);
- void (*sa_sigaction_)(int, struct siginfo *, void *);
+ void (*sa_sigaction_)(int, siginfo_t *, void *);
};
unsigned long sa_mask;
unsigned long sa_flags;
@@ -287,13 +286,13 @@ struct kernel_sigaction {
unsigned long sa_flags;
union {
void (*sa_handler_)(int);
- void (*sa_sigaction_)(int, struct siginfo *, void *);
+ void (*sa_sigaction_)(int, siginfo_t *, void *);
};
struct kernel_sigset_t sa_mask;
#else
union {
void (*sa_handler_)(int);
- void (*sa_sigaction_)(int, struct siginfo *, void *);
+ void (*sa_sigaction_)(int, siginfo_t *, void *);
};
unsigned long sa_flags;
void (*sa_restorer)(void);
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
'variables': {
'target_arch': 'ia32',
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
'variables': {
'use_system_bzip2': 1,
'disable_nacl': 1,
'proprietary_codecs': 0,
'v8_use_snapshot': 1,
'use_system_ffmpeg': 0,
'linux_use_tcmalloc': 1,
'linux_link_kerberos': 0,
'use_kerberos': 0,
'use_cups': 0,
'use_gnome_keyring': 0,
'linux_link_gnome_keyring': 0,
},
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
diff --git a/ui/gl/gl.gyp b/ui/gl/gl.gyp
index 3d0ffb8..d38e87a 100644
--- a/ui/gl/gl.gyp
+++ b/ui/gl/gl.gyp
@@ -36,6 +36,15 @@
'<(gl_binding_output_dir)',
],
},
+ # Disable narrowing-conversion-in-initialization-list warnings in that we
+ # do not want to fix
+ # ../../ui/gl/gl_image_glx.cc: In member function 'virtual bool gfx::GLImageGLX::Initialize()'
+ # ../../ui/gl/gl_image_glx.cc:90:3: error: narrowing conversion of
+ # 'visinfo.scoped_ptr_malloc<C, FreeProc>::operator-><XVisualInfo,
+ # gfx::{anonymous}::ScopedPtrXFree>()->XVisualInfo::visualid'
+ # from 'VisualID {aka long unsigned int}' to 'int' inside { } is ill-formed in C++11 [-Werror=narrowing]
+ 'cflags+': ['-Wno-narrowing'],
+ 'cflags_cc+': ['-Wno-narrowing'],
'sources': [
'gl_bindings.h',
'gl_bindings_skia_in_process.cc',
27 changes: 27 additions & 0 deletions recipes-browser/chromium/chromium-24.0.1312.52/unistd-2.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
diff --git a/chrome/browser/memory_details_linux.cc b/chrome/browser/memory_details_linux.cc
index bee24ce..299f237 100644
--- a/chrome/browser/memory_details_linux.cc
+++ b/chrome/browser/memory_details_linux.cc
@@ -7,6 +7,10 @@
#include <map>
#include <set>

+#if defined(OS_POSIX)
+#include <unistd.h>
+#endif
+
#include "base/bind.h"
#include "base/process_util.h"
#include "base/string_util.h"
diff --git a/ipc/ipc_channel.h b/ipc/ipc_channel.h
index 14c375b..345f9eb 100644
--- a/ipc/ipc_channel.h
+++ b/ipc/ipc_channel.h
@@ -10,6 +10,7 @@

#if defined(OS_POSIX)
#include <sys/types.h>
+#include <unistd.h>
#endif

#include "base/compiler_specific.h"
141 changes: 141 additions & 0 deletions recipes-browser/chromium/chromium_21.0.1168.0.bb
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
DESCRIPTION = "Chromium browser"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://LICENSE;md5=0750f191c9bbf46869b70508e7eb455b"
DEPENDS = "xextproto cairo nss gtk+-native zlib-native libav libxi libgnome-keyring libxss cups"

SRC_URI = "http://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.bz2 \
file://include.gypi \
file://unistd-2.patch \
"

PR="r1"

# include.gypi exists only for armv6 and armv7a and there isn't something like COMPATIBLE_ARCH afaik
COMPATIBLE_MACHINE = "(-)"
COMPATIBLE_MACHINE_armv6 = "(.*)"
COMPATIBLE_MACHINE_armv7a = "(.*)"

SRC_URI[md5sum] = "e214d3c888659ad9b2e0b1f5675c8cb2"
SRC_URI[sha256sum] = "f38416fdfb96fafb684cdbeb110497254b9691f456997a0b86142e181cb33013"

inherit gettext

EXTRA_OEGYP = " \
-Duse_system_bzip2=1 \
\
-Dproprietary_codecs=1 \
\
-Dtarget_arch=${TARGET_ARCH} \
-Ddisable_nacl=1 \
-Dlinux_use_tcmalloc=0 \
\
-Dlinux_link_kerberos=0 \
-Duse_kerberos=0 \
-Duse_cups=1 \
-Duse_gnome_keyring=1 \
-Dlinux_link_gnome_keyring=1 \
\
${@base_contains('DISTRO_FEATURES', 'ld-is-gold', '', '-Dlinux_use_gold_binary=0', d)} \
${@base_contains('DISTRO_FEATURES', 'ld-is-gold', '', '-Dlinux_use_gold_flags=0', d)} \
"

EXTRA_OEGYP_append_armv7a = " \
-Darmv7=1 \
-Darm_neon=1 \
"

do_configure() {
cd ${WORKDIR}
export GYP_GENERATORS=make
rm -f ${S}/tools/gyp/pylib/gyp/__init__.pyc
rm -f ${S}/tools/gyp/pylib/gyp/__init__.pyo
sed -e 's|__PATH__TO_BE_REPLACED__|"${WORKDIR}/include.gypi"|' -i ${S}/tools/gyp/pylib/gyp/__init__.py
sed -e "s|__PATH__TO_BE_REPLACED__||" -i ${WORKDIR}/include.gypi

cd ${S}
build/gyp_chromium --depth=. ${EXTRA_OEGYP}
}

EXTRA_OEMAKE = "-r ${PARALLEL_MAKE} LDFLAGS.host=-L${STAGING_LIBDIR_NATIVE} V=1 BUILDTYPE=Release chrome"

TARGET_CFLAGS += "-I${STAGING_INCDIR}/mozilla/nss -I${STAGING_INCDIR}/dst"
TARGET_CXXFLAGS += "-I${STAGING_INCDIR}/mozilla/nss -I${STAGING_INCDIR}/dst"

TARGET_CC_ARCH += " -Wno-error=deprecated-declarations -Wno-error=c++0x-compat "

do_compile_prepend() {
export CROSSTOOL=${TARGET_PREFIX}
export AR=${CROSSTOOL}ar
export AS=${CROSSTOOL}as
export RANLIB=${CROSSTOOL}ranlib
# host tools are supposed to be linked with gold so we hack the
# makefiles to use gold which must be present on the host and named
# ld.gold.
# -fuse-ld=gold could be an option but that actually fails on Fedora
ln -sf `which ld.gold` ${WORKDIR}/ld
sed -i "s#LDFLAGS.host ?=#LDFLAGS.host = -B${WORKDIR}/#g" Makefile
for i in `find . -iname *.host*.mk`; do
sed -i "s#-B\$(builddir)/../../third_party/gold#-B${WORKDIR}/#g" $i
done
# chromium seems to force the usage of its internal copy of a binary
# gold linker so remove this setting
for i in `find . -iname *.target*.mk`; do
sed -i "s#-B\$(builddir)/../../third_party/gold# #g" $i
done
}

do_install() {
install -d ${D}${bindir}
install -d ${D}${bindir}/chrome/
install -m 0755 ${S}/out/Release/chrome ${D}${bindir}/chrome/chrome
install -m 0644 ${S}/out/Release/chrome.pak ${D}${bindir}/chrome/
install -m 0644 ${S}/out/Release/resources.pak ${D}${bindir}/chrome/
install -m 0644 ${S}/out/Release/product_logo_48.png ${D}${bindir}/chrome/
install -d ${D}${bindir}/chrome/locales/
install -m 0644 ${S}/out/Release/locales/en-US.pak ${D}${bindir}/chrome/locales
cp -a ${S}/out/Release/obj ${D}${bindir}/chrome/
cp -a ${S}/out/Release/obj.target ${D}${bindir}/chrome/
cp -a ${S}/out/Release/resources ${D}${bindir}/chrome/

mv ${D}${bindir}/chrome/obj.target/third_party/ffmpeg/libffmpegsumo.so ${D}/${bindir}/chrome/libffmpegsumo.so

find ${D}${bindir}/chrome/ -name "*.d" -delete
find ${D}${bindir}/chrome/ -name "*.o" -delete
find ${D}${bindir}/chrome/ -name "*.a" -delete
find ${D}${bindir}/chrome/ -name "*.cpp" -delete
find ${D}${bindir}/chrome/ -name "*.h" -delete
find ${D}${bindir}/chrome/ -name "*.cc" -delete
}

# FIXME : hundred of WARNINGs
FILES_${PN} = "/usr/bin/chrome/"
FILES_${PN}-dbg = " \
${bindir}/chrome/.debug \
${bindir}/chrome/obj.target/third_party/WebKit/Source/WebKit/chromium/.debug \
${bindir}/chrome/obj.target/third_party/ffmpeg/.debug \
${bindir}/chrome/obj.target/third_party/angle/src/.debug \
${bindir}/chrome/obj.target/third_party/icu/.debug \
${bindir}/chrome/obj.target/third_party/icu/.debug \
${bindir}/chrome/obj.target/content/.debug \
${bindir}/chrome/obj.target/webkit/support/.debug \
${bindir}/chrome/obj.target/webkit/support/.debug \
${bindir}/chrome/obj.target/webkit/support/.debug \
${bindir}/chrome/obj.target/ui/gfx/surface/.debug \
${bindir}/chrome/obj.target/ui/gfx/gl/.debug \
${bindir}/chrome/obj.target/ui/.debug \
${bindir}/chrome/obj.target/sql/.debug \
${bindir}/chrome/obj.target/v8/tools/gyp/.debug \
${bindir}/chrome/obj.target/printing/.debug \
${bindir}/chrome/obj.target/crypto/.debug \
${bindir}/chrome/obj.target/net/.debug \
${bindir}/chrome/obj.target/base/.debug \
${bindir}/chrome/obj.target/base/.debug \
${bindir}/chrome/obj.target/ipc/.debug \
${bindir}/chrome/obj.target/media/.debug \
${bindir}/chrome/obj.target/skia/.debug \
${bindir}/chrome/obj.target/gpu/command_buffer/.debug \
${bindir}/chrome/obj.target/gpu/.debug \
${bindir}/chrome/obj.target/ppapi/.debug \
${bindir}/chrome/obj.target/ppapi/.debug \
${bindir}/chrome/obj.target/build/temp_gyp/.debug \
"
67 changes: 67 additions & 0 deletions recipes-browser/chromium/chromium_24.0.1312.52.bb
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
DESCRIPTION = "Chromium browser"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://LICENSE;md5=0750f191c9bbf46869b70508e7eb455b"
DEPENDS = "xextproto cairo nss gtk+-native zlib-native libav libxi libgnome-keyring libxss cups ninja-native"

SRC_URI = "http://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.bz2 \
file://include.gypi \
file://oe-defaults.gypi \
file://unistd-2.patch;patch=1 \
file://glib-2.16-use-siginfo_t.patch;patch=1 \
file://ui-gl-no-narrowing.patch;patch=1 \
"

PR="r1"

# include.gypi exists only for armv6 and armv7a and there isn't something like COMPATIBLE_ARCH afaik
COMPATIBLE_MACHINE = "(-)"
COMPATIBLE_MACHINE_i586 = "(.*)"
COMPATIBLE_MACHINE_armv6 = "(.*)"
COMPATIBLE_MACHINE_armv7a = "(.*)"

SRC_URI[md5sum] = "ed027b16b20e673af6dcf1831a6d8652"
SRC_URI[sha256sum] = "f30df8b0f4c999185bb11d873f0caa5d8bc581eb4f37ce0fe85fb7900a01d711"

inherit gettext

EXTRA_OEGYP = " \
${@base_contains('DISTRO_FEATURES', 'ld-is-gold', '', '-Dlinux_use_gold_binary=0', d)} \
${@base_contains('DISTRO_FEATURES', 'ld-is-gold', '', '-Dlinux_use_gold_flags=0', d)} \
-I ${WORKDIR}/oe-defaults.gypi \
-I ${WORKDIR}/include.gypi \
-f ninja \
"

do_configure() {

cd ${S}
# replace LD with CXX, to workaround a possible gyp issue?
LD="${CXX}" export LD
CC="${CC}" export CC
CXX="${CXX}" export CXX
CC_host="gcc" export CC_host
CXX_host="g++" export CXX_host
build/gyp_chromium --depth=. ${EXTRA_OEGYP}
}

do_compile() {
# build with ninja
ninja -C ${S}/out/Release chrome
}

do_install() {
install -d ${D}${bindir}
install -d ${D}${bindir}/chrome/
install -m 0755 ${S}/out/Release/chrome ${D}${bindir}/chrome/chrome
install -m 0644 ${S}/out/Release/chrome.pak ${D}${bindir}/chrome/
install -m 0644 ${S}/out/Release/resources.pak ${D}${bindir}/chrome/
install -m 0644 ${S}/out/Release/chrome_100_percent.pak ${D}${bindir}/chrome/
install -m 0644 ${S}/out/Release/product_logo_48.png ${D}${bindir}/chrome/
install -m 0755 ${S}/out/Release/libffmpegsumo.so ${D}${bindir}/chrome/

install -d ${D}${bindir}/chrome/locales/
install -m 0644 ${S}/out/Release/locales/en-US.pak ${D}${bindir}/chrome/locales
}

FILES_${PN} = "${bindir}/chrome/"
FILES_${PN}-dbg = "${bindir}/chrome/.debug/"
25 changes: 25 additions & 0 deletions recipes-devtools/ninja/ninja-native_1.1.0.bb
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
DESCRIPTION = "Ninja is a small build system with a focus on speed."
LICENSE = "Apache-2"

inherit native

LIC_FILES_CHKSUM = "file://COPYING;md5=a81586a64ad4e476c791cda7e2f2c52e"

PR = "r1"

SRCREV="2c953d1501de5195e2485185fa24a2ebfd76bbb5"

SRC_URI = "git://github.com/martine/ninja.git;protocol=https \
"

S="${WORKDIR}/git"

do_compile() {
python ${S}/bootstrap.py
}

do_install() {
install -d ${D}${bindir}
install -m 0755 ${S}/ninja ${D}${bindir}/ninja
}

2 changes: 1 addition & 1 deletion recipes-support/nss/nss-3.13.3/nss.pc.in
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ Description: Mozilla Network Security Services
Version: @VERSION@
Requires: nspr
Libs: -L${libdir} -lnss3 -lnssutil3 -lsmime3 -lssl3
Cflags: -I${includedir}
Cflags: -I${includedir} -I${includedir}/mozilla/nss
Loading