Some minor updates to build chrome browser inside the chroot.
PRESUBMIT=passed
R=asharif,bjanakiraman
DELTA=51 (19 added, 4 deleted, 28 changed)
OCL=45085-p2
RCL=45088-p2
RDATE=2010/11/08 11:01:23
P4 change: 42605654
diff --git a/v14/build_chromeos.py b/v14/build_chromeos.py
index cedcb1d..1fbe3ad 100755
--- a/v14/build_chromeos.py
+++ b/v14/build_chromeos.py
@@ -29,7 +29,7 @@
commands = []
tc_enter_chroot = (os.path.dirname(os.path.abspath(__file__)) +
"/tc-enter-chroot.sh")
- commands.append("%s --chromeos_root=%s --toolchain_root=%s %s -- %s"
+ commands.append("%s --chromeos_root=%s --toolchain_root=%s %s -- \"%s\""
% (tc_enter_chroot, chromeos_root, toolchain_root,
chrome_mount, command))
return utils.RunCommands(commands, return_output)
@@ -79,8 +79,8 @@
if options.clobber_chroot:
clobber_chroot = "--replace"
commands.append("./make_chroot --fast " + clobber_chroot)
- ret = utils.RunCommands(commands)
- utils.AssertTrue(ret == 0, "make_chroot failed")
+# ret = utils.RunCommands(commands)
+# utils.AssertTrue(ret == 0, "make_chroot failed")
# Setup board
force = ""
@@ -90,7 +90,8 @@
"FEATURES=\\\"keepwork noclean\\\" "
"./setup_board --nousepkg --board=%s "
"%s" % (options.board, force))
- utils.main_logger.LogError("setup_board failed")
+ if ret != 0:
+ utils.main_logger.LogError("setup_board failed")
#utils.AssertTrue(ret == 0, "setup_board failed")
# Modify make.conf to add CFLAGS/CXXFLAGS/LDFLAGS
@@ -103,13 +104,11 @@
makeconf = ("source make.conf.orig\\\n")
#"CFLAGS='%s'\\\nCXXFLAGS='%s'\\\nLDFLAGS='%s'\\\n" %
#(options.cflags, options.cxxflags, options.ldflags))
- ret2 = utils.RunCommand("sudo rm -f %s/chroot/build/%s/etc/make.conf ; "
- "echo -e \"%s\" > /tmp/make.conf; "
- "sudo cp /tmp/make.conf "
- "%s/chroot/build/%s/etc/make.conf"
- % (options.chromeos_root, options.board,
- makeconf, options.chromeos_root, options.board))
-
+ ret2 = ExecuteCommandInChroot(options.chromeos_root, options.toolchain_root,
+ "sudo echo -e \\\"%s\\\" | sudo tee "
+ "/build/%s/etc/make.conf > /dev/null ;"
+ % (makeconf, options.board))
+ sys.exit(1)
utils.AssertTrue(ret1 == 0 and ret2 == 0, "Could not modify make.conf")
# Find Chrome browser version
@@ -128,8 +127,7 @@
# Build packages
ret = ExecuteCommandInChroot(options.chromeos_root, options.toolchain_root,
- "FEATURES=-usersandbox "
- "CHROME_ORIGIN=LOCAL_SOURCE CHROME_VERSION=%s "
+ "CHROME_ORIGIN=SERVER_SOURCE CHROME_VERSION=%s "
"./build_packages --withdev "
"--board=%s --withtest --withautotest"
% (chrome_version, options.board),
diff --git a/v14/setup_chromeos.py b/v14/setup_chromeos.py
index eaddfbc..cd2bf87 100755
--- a/v14/setup_chromeos.py
+++ b/v14/setup_chromeos.py
@@ -90,7 +90,14 @@
directory = options.directory.strip()
- branch = ".".join(version.split(".")[0:-1]) + ".B"
+ if version == "":
+ branch = "master"
+ else:
+ branch = ".".join(version.split(".")[0:-1]) + ".B"
+
+ # Don't checkout chrome sources outside the chroot at the moment.
+ # If we check them out outside, we can't do some things, like build tests.
+ checkout_chrome_outside_chroot = False
commands = []
commands.append("mkdir -p " + directory)
@@ -108,26 +115,36 @@
commands.append("./get_svn_repos.sh")
utils.RunCommands(commands)
- # Find Chrome browser version
- chrome_version = utils.RunCommand("%s/src/scripts/chromeos_version.sh | "
- "grep CHROME_BUILD" % directory, True)
+ # Setup svn credentials for use inside the chroot
+ utils.RunCommand("svn ls --config-option config:auth:password-stores= "
+ "--config-option "
+ "servers:global:store-plaintext-passwords=yes "
+ "--username $USER@google.com "
+ "svn://svn.chromium.org/leapfrog-internal "
+ "svn://svn.chromium.org/chrome "
+ "svn://svn.chromium.org/chrome-internal > /dev/null")
- chrome_version = chrome_version[1].strip().split("=")
- if len(chrome_version) == 2:
- chrome_version = chrome_version[1]
- else:
- chrome_version = ""
+ if checkout_chrome_outside_chroot:
+ # Find Chrome browser version
+ chrome_version = utils.RunCommand("%s/src/scripts/chromeos_version.sh | "
+ "grep CHROME_BUILD" % directory, True)
- # Checkout chrome
- utils.RunCommand("mkdir -p %s/chrome_browser/" % directory)
- gclient_file = GCLIENT_FILE % chrome_version
- StoreFile(os.path.expanduser("%s/chrome_browser/.gclient"
- % directory), gclient_file)
- commands = []
- commands.append("cd " + options.directory)
- commands.append("cd chrome_browser")
- commands.append("gclient sync -v --nohooks --delete_unversioned_trees")
- utils.RunCommands(commands)
+ chrome_version = chrome_version[1].strip().split("=")
+ if len(chrome_version) == 2:
+ chrome_version = chrome_version[1]
+ else:
+ chrome_version = ""
+
+ # Checkout chrome
+ utils.RunCommand("mkdir -p %s/chrome_browser/" % directory)
+ gclient_file = GCLIENT_FILE % chrome_version
+ StoreFile(os.path.expanduser("%s/chrome_browser/.gclient"
+ % directory), gclient_file)
+ commands = []
+ commands.append("cd " + options.directory)
+ commands.append("cd chrome_browser")
+ commands.append("gclient sync -v --nohooks --delete_unversioned_trees")
+ utils.RunCommands(commands)
print "Done"