58 lines
2.0 KiB
Python
58 lines
2.0 KiB
Python
|
#!/usr/bin/env python
|
||
|
# Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
|
||
|
#
|
||
|
# Use of this source code is governed by a BSD-style license
|
||
|
# that can be found in the LICENSE file in the root of the source
|
||
|
# tree. An additional intellectual property rights grant can be found
|
||
|
# in the file PATENTS. All contributing project authors may
|
||
|
# be found in the AUTHORS file in the root of the source tree.
|
||
|
|
||
|
"""Checks for legacy root directory and instructs the user how to upgrade."""
|
||
|
|
||
|
import os
|
||
|
import sys
|
||
|
|
||
|
SOLUTION_ROOT_DIR = os.path.join(os.path.dirname(os.path.abspath(__file__)),
|
||
|
os.pardir)
|
||
|
MESSAGE = """\
|
||
|
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||
|
A C T I O N R E Q I R E D
|
||
|
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||
|
|
||
|
It looks like you have a legacy checkout where the solution's top-level
|
||
|
directory is named 'trunk'. From now on, it must be named 'src'.
|
||
|
|
||
|
What you need to do is to:
|
||
|
|
||
|
1. Edit your .gclient file and change the solution name from 'trunk' to 'src'
|
||
|
2. Rename your 'trunk' directory to 'src'
|
||
|
3. Re-run gclient sync (or gclient runhooks)"""
|
||
|
|
||
|
|
||
|
def main():
|
||
|
gclient_filename = os.path.join(SOLUTION_ROOT_DIR, '.gclient')
|
||
|
config_dict = {}
|
||
|
try:
|
||
|
with open(gclient_filename, 'rb') as gclient_file:
|
||
|
exec(gclient_file, config_dict)
|
||
|
for solution in config_dict.get('solutions', []):
|
||
|
if solution['name'] == 'trunk':
|
||
|
print MESSAGE
|
||
|
if solution.get('custom_vars', {}).get('root_dir'):
|
||
|
print ('4. Optional: Remove your "root_dir" entry from the '
|
||
|
'custom_vars dictionary of the solution.')
|
||
|
|
||
|
# Remove the gclient cache file to avoid an error on the next sync.
|
||
|
entries_file = os.path.join(SOLUTION_ROOT_DIR, '.gclient_entries')
|
||
|
if os.path.exists(entries_file):
|
||
|
os.unlink(entries_file)
|
||
|
return 1
|
||
|
return 0
|
||
|
except Exception as e:
|
||
|
print >> sys.stderr, "Error while parsing .gclient: ", e
|
||
|
return 1
|
||
|
|
||
|
|
||
|
if __name__ == '__main__':
|
||
|
sys.exit(main())
|