-
Install
depot_tools
as described here:http://dev.chromium.org/developers/how-tos/install-depot-tools
-
Create a Chromium working directory, e.g.
mkdir ~/chromium
-
Clone this GitHub repository with the following command:
cd ~/chromium; git clone https://github.com/eth-srl/ChromeER.git src
Note that the repository is cloned in the
src
subdirectory. By default this command will checkout thesrl
branch. -
Create a file named
.gclient
in thechromium
directory (abovesrc
), with the following content:
solutions = [{
u'managed': False,
u'name': u'src',
u'url': u'https://github.com/eth-srl/ChromeER.git',
u'custom_deps': {},
u'deps_file': u'.DEPS.git',
}]
target_os = ['all'] -
(GNU/Linux only) From the
src
directory run:build/install-build-deps.sh
If the above does not work directly (sometimes it asks to install mingw packages on Linux), then an alternative command is:
build/install-build-deps.sh --no-nacl
-
From the
src
directory run:gclient sync
-
Checkout the srl branch for V8 and BlinkER to get the latest changes
cd ~/chromium/src/v8; git checkout srl
cd ~/chromium/src/third_party/WebKit; git checkout srl
-
Build Chromium with:
cd ~/chromium/src/out/Debug; ninja chrome
-
To run without sandbox on, type:
./chrome --no-sandbox
Otherwise, to build with sandbox, follow:
https://code.google.com/p/chromium/wiki/LinuxSUIDSandboxDevelopment
-
For more information, consult the developer pages at http://chromium.org
-
On some systems (e.g. Ubuntu) it may be necessary to give the user the necessaty
prtace
permissions. Do this with the command:echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
-
On the
srl
branch, the build is modified not to tellgold
to create.gdb_index
section. Instead usebuild/gdb-add-index
. Thus we ensure thegdb
can understand and use the.gdb_index
section format.
- The SRL modifications are based on the
lkgr
branch, which is occasionally merged into thesrl
branch. The tagsrl-base
is updated to point to the last merged revision on thelkgr
branch, thusgit diff srl-base srl
will show the EventRacer related changes to the original sources.