Commit 76299305 authored by Nico Weber's avatar Nico Weber Committed by Commit Bot

Download ciopfs from a hook in win/cross builds.

Useful for people where the linux installation doesn't provide it by
default, and for bots.

I copied the system ciopfs binary on my ubuntu trusty box to build/ciopfs
and ran:

  upload_to_google_storage.py -b chromium-browser-clang/ciopfs build/ciopfs

Bug: 808098
Change-Id: Ia6dd7548a5a5761898506f6bbe50625c33151988
Reviewed-on: https://chromium-review.googlesource.com/897890Reviewed-by: default avatarScott Graham <scottmg@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#533804}
parent 3d460314
...@@ -780,6 +780,19 @@ hooks = [ ...@@ -780,6 +780,19 @@ hooks = [
'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py', 'action': ['python', 'src/build/linux/sysroot_scripts/install-sysroot.py',
'--running-as-hook'], '--running-as-hook'],
}, },
{
# Case-insensitivity for the Win SDK. Must run before win_toolchain below.
'name': 'ciopfs_linux',
'pattern': '.',
'condition': 'checkout_win and host_os == "linux"',
'action': [ 'python',
'src/third_party/depot_tools/download_from_google_storage.py',
'--no_resume',
'--no_auth',
'--bucket', 'chromium-browser-clang/ciopfs',
'-s', 'src/build/ciopfs.sha1',
]
},
{ {
# Update the Windows toolchain if necessary. Must run before 'clang' below. # Update the Windows toolchain if necessary. Must run before 'clang' below.
'name': 'win_toolchain', 'name': 'win_toolchain',
...@@ -957,7 +970,7 @@ hooks = [ ...@@ -957,7 +970,7 @@ hooks = [
'-s', 'src/build/toolchain/win/rc/linux64/rc.sha1', '-s', 'src/build/toolchain/win/rc/linux64/rc.sha1',
] ]
}, },
{ {
'name': 'content_shell_fonts', 'name': 'content_shell_fonts',
'pattern': '.', 'pattern': '.',
'condition': 'checkout_linux', 'condition': 'checkout_linux',
......
# This file is needed for projects that has this directory as a separate Git # This file is needed for projects that has this directory as a separate Git
# mirror in DEPS. Without it, a lot is wiped and re-downloaded for each sync. # mirror in DEPS. Without it, a lot is wiped and re-downloaded for each sync.
ciopfs
/android/bin /android/bin
/android/binary_size/apks/**/*.apk /android/binary_size/apks/**/*.apk
/config/gclient_args.gni /config/gclient_args.gni
......
5454b3c4f1c9992047e7ae9d6d14d5b49b1b12f3
\ No newline at end of file
...@@ -382,18 +382,14 @@ def Update(force=False): ...@@ -382,18 +382,14 @@ def Update(force=False):
# exist, set up a ciopfs fuse mount to put the SDK in a case-insensitive # exist, set up a ciopfs fuse mount to put the SDK in a case-insensitive
# part of the file system. # part of the file system.
toolchain_dir = os.path.join(depot_tools_path, 'win_toolchain', 'vs_files') toolchain_dir = os.path.join(depot_tools_path, 'win_toolchain', 'vs_files')
# For testing this block, unmount existing mounts with
# fusermount -u third_party/depot_tools/win_toolchain/vs_files
if sys.platform.startswith('linux') and not os.path.ismount(toolchain_dir): if sys.platform.startswith('linux') and not os.path.ismount(toolchain_dir):
import distutils.spawn import distutils.spawn
ciopfs = distutils.spawn.find_executable('ciopfs') ciopfs = distutils.spawn.find_executable('ciopfs')
if not ciopfs: if not ciopfs:
# TODO(thakis): Offer to auto-install this? Or have a # ciopfs not found in PATH; try the one downloaded from the DEPS hook.
# build/install-build-deps-win.sh script and point to that? (Or run ciopfs = os.path.join(script_dir, 'ciopfs')
# that?)
print >>sys.stderr, \
"\n\tCouldn't set up case-insensitive mount for Windows SDK."
print >>sys.stderr, \
"\tPlease run `sudo apt-get install ciopfs` and try again.\n"
return 1
if not os.path.isdir(toolchain_dir): if not os.path.isdir(toolchain_dir):
os.mkdir(toolchain_dir) os.mkdir(toolchain_dir)
if not os.path.isdir(toolchain_dir + '.ciopfs'): if not os.path.isdir(toolchain_dir + '.ciopfs'):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment