[oe] [meta-browser] [PATCH 2/2] chromium, cef: fetch chromium source from git
Zoltan Kuscsik
zoltan.kuscsik at linaro.org
Wed May 27 17:35:24 UTC 2015
Updated recipe to fetch Chromium from git.
LASTCHANGE file is now created using the proper
gclient hook.
Change-Id: Ie1790abec002a0dd39c8d0aae3d03f5ebe6f46aa
Signed-off-by: Zoltan Kuscsik <zoltan.kuscsik at linaro.org>
---
.../cef3/01_get_svn_version_from_LASTCHANGE.patch | 32 ------------
recipes-browser/chromium/cef3_280796.bb | 57
++++++++++++++++------
2 files changed, 43 insertions(+), 46 deletions(-)
delete mode 100644
recipes-browser/chromium/cef3/01_get_svn_version_from_LASTCHANGE.patch
diff --git
a/recipes-browser/chromium/cef3/01_get_svn_version_from_LASTCHANGE.patch
b/recipes-browser/chromium/cef3/01_get_svn_version_from_LASTCHANGE.patch
deleted file mode 100644
index 9b14429..0000000
--- a/recipes-browser/chromium/cef3/01_get_svn_version_from_LASTCHANGE.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Fetch the revision from LASTCHANGE file programmatically
-
-Upstream-Status: Pending
-
-Signed-off-by: Zoltan Kuscsik <zoltan.kuscsik at linaro.org>
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
-
-diff --git a/cef/tools/make_version_header.py
b/cef/tools/make_version_header.py
-index 84d49f5..395c2cf 100644
---- a/cef/tools/make_version_header.py
-+++ b/cef/tools/make_version_header.py
-@@ -64,6 +64,8 @@ def write_svn_header(header, chrome_version,
cef_version, cpp_header_dir):
- revision = svn.get_revision()
- elif git.is_checkout('.'):
- revision = git.get_svn_revision()
-+ elif os.path.isfile("../build/util/LASTCHANGE"):
-+ revision =
open("../build/util/LASTCHANGE").read().split("=")[1].strip()
- else:
- raise Exception('Not a valid checkout')
-
-diff --git a/cef/tools/revision.py b/cef/tools/revision.py
-index 1d94602..eb89e3b 100644
---- a/cef/tools/revision.py
-+++ b/cef/tools/revision.py
-@@ -16,6 +16,8 @@ if os.path.exists(os.path.join('.', '.svn')):
- sys.stdout.write(svn.get_revision())
- elif os.path.exists(os.path.join('.', '.git')):
- sys.stdout.write(git.get_svn_revision())
-+elif os.path.isfile("../build/util/LASTCHANGE"):
-+ revision = open("../build/util/LASTCHANGE").read().split("=")[1].strip()
- else:
- raise Exception('Not a valid checkout')
diff --git a/recipes-browser/chromium/cef3_280796.bb
b/recipes-browser/chromium/cef3_280796.bb
index 9a9efe5..806a4ac 100644
--- a/recipes-browser/chromium/cef3_280796.bb
+++ b/recipes-browser/chromium/cef3_280796.bb
@@ -7,21 +7,22 @@ RDEPENDS_${PN} += "pango cairo fontconfig pciutils
pulseaudio freetype fontconfi
SRCREV_tools = "99bcb0e676eb396bcf8e1af3903aa4b578aeeee0"
SRCREV_cef = "bbad53dfca9f98dddcb31a590410fece0a4f0234"
SRCREV_egl = "a5b81b7617ba6757802b9b5f8c950034d5f961ec"
-SRCREV_FORMAT = "cef_egl_tools"
+SRCREV_FORMAT = "cef_egl"
-SRC_URI = "
http://people.linaro.org/~zoltan.kuscsik/chromium-browser/chromium_rev_${PV}.tar.xz
\
- git://
github.com/kuscsik/chromiumembedded.git;protocol=https;destsuffix=src/cef;branch=aura;name=cef
\
- git://
github.com/kuscsik/ozone-egl.git;protocol=https;destsuffix=src/ui/ozone/platform/egl;branch=master;name=egl
\
- git://
chromium.googlesource.com/chromium/tools/depot_tools.git;protocol=https;destsuffix=depot_tools;branch=master;name=tools
\
- file://01_get_svn_version_from_LASTCHANGE.patch \
- file://cef-simple \
- "
-SRC_URI[md5sum] = "9efbb50283b731042e62b9bd5e312b2f"
-SRC_URI[sha256sum] =
"f608e97dadf6ea4d885b24fd876896d46840fa39bf743ea2025075aee9fb348d"
+SRC_URI = "git://
chromium.googlesource.com/chromium/tools/depot_tools.git;protocol=https;destsuffix=depot_tools;branch=master;name=tools
\
+ git://
github.com/kuscsik/chromiumembedded.git;protocol=https;destsuffix=${S}/src/cef;branch=aura;name=cef
<http://github.com/kuscsik/chromiumembedded.git;protocol=https;destsuffix=$%7BS%7D/src/cef;branch=aura;name=cef>
\
+ git://
github.com/kuscsik/ozone-egl.git;protocol=https;destsuffix=${S}/src/ui/ozone/platform/egl;branch=master;name=egl\
<http://github.com/kuscsik/ozone-egl.git;protocol=https;destsuffix=$%7BS%7D/src/ui/ozone/platform/egl;branch=master;name=egl%5C>
+ file://cef-simple\
+ "
-S = "${WORKDIR}/chromium_rev_${PV}"
+export CHROMIUM_SRC_GIT_URL="https://chromium.googlesource.com/chromium/src
"
+export CHROMIUM_SRC_GIT_COMMIT="e800fe7470fa87dc1ca5b148a7c2c41f603fdcbd"
-do_fetch[vardeps] += "SRCREV_FORMAT SRCREV_cef SRCREV_egl SRCREV_tools"
+S = "${WORKDIR}/chromium_rev_${PV}/"
+
+B = "${S}/src/"
+
+do_fetch[vardeps] += "SRCREV_FORMAT SRCREV_cef SRCREV_egl"
GYP_ARCH_DEFINES_armv7a = " target_arch=arm arm_float_abi=hard"
GYP_ARCH_DEFINES_i586 = " target_arch=ia32"
@@ -30,14 +31,41 @@ export GYP_GENERATORS="ninja"
export BUILD_TARGET_ARCH="${TARGET_ARCH}"
export GYP_DEFINES="${GYP_ARCH_DEFINES}
release_extra_cflags='-Wno-error=unused-local-typedefs' sysroot=''"
+do_fetch_chromium_source_from_git() {
+ cd ${S}
+ export PATH=${WORKDIR}/depot_tools:"$PATH"
+
+ # Note: --deps-file needs to set to .DEPS.git for syncing to old
+ # chromium versions
+ gclient config ${CHROMIUM_SRC_GIT_URL} --deps-file=".DEPS.git"
+
+ # Runhooks is disabled. Running the hooks will trigger the
+ # gyp_chromium command replaced with cef_create_projects.sh by
+ # cef3.
+
+ gclient sync -f --nohooks --revision src@${CHROMIUM_SRC_GIT_COMMIT}
+
+ # We need the lastchange hook to generate the LASTCHANGE revision info
+ # file.
+
+ python src/build/util/lastchange.py -o src/build/util/LASTCHANGE
+}
+
+addtask fetch_chromium_source_from_git after do_patch before do_configure
+
do_configure_append() {
export PATH=${WORKDIR}/depot_tools:"$PATH"
# End of LD Workaround
#-----------------------
# Configure cef
#------------------------
- cd cef
- ./cef_create_projects.sh -I ${BUILD_TARGET_ARCH}_ozone.gypi --depth
../
+ cd ${S}/src/cef
+
+ # Fatal linker warnings need to be disalbed to avoid linker issu
+ # with GCC 4.9:
+ #
http://lists.openembedded.org/pipermail/openembedded-core/2014-August/095947.html
+
+ ./cef_create_projects.sh -I ${BUILD_TARGET_ARCH}_ozone.gypi --depth
../ -Ddisable_fatal_linker_warnings=
cd -
}
@@ -47,5 +75,6 @@ do_qa_configure() {
}
do_compile() {
+ cd ${S}/src
ninja -C out/${CHROMIUM_BUILD_TYPE} cefsimple
}
--
1.9.1
More information about the Openembedded-devel
mailing list