mirror of
https://github.com/dart-lang/sdk
synced 2024-09-16 03:27:43 +00:00
Add a post-sync hook to generate the package_config.json file.
Change-Id: I19967e8ae7eaa4e3071e335e43932e27128d8173 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/235764 Reviewed-by: Alexander Thomas <athom@google.com> Commit-Queue: Devon Carew <devoncarew@google.com>
This commit is contained in:
parent
7d115ed0ad
commit
7933a3970c
6
DEPS
6
DEPS
|
@ -697,6 +697,12 @@ deps_os = {
|
|||
}
|
||||
|
||||
hooks = [
|
||||
{
|
||||
# Generate the .dart_tool/package_confg.json file.
|
||||
'name': 'Generate .dart_tool/package_confg.json',
|
||||
'pattern': '.',
|
||||
'action': ['python3', 'sdk/tools/generate_package_config.py'],
|
||||
},
|
||||
{
|
||||
# Pull Debian sysroot for i386 Linux
|
||||
'name': 'sysroot_i386',
|
||||
|
|
48
tools/generate_package_config.py
Normal file
48
tools/generate_package_config.py
Normal file
|
@ -0,0 +1,48 @@
|
|||
#!/usr/bin/env python3
|
||||
# Copyright (c) 2022, the Dart project authors. Please see the AUTHORS file
|
||||
# for details. All rights reserved. Use of this source code is governed by a
|
||||
# BSD-style license that can be found in the LICENSE file.
|
||||
|
||||
# Invoke the `tools/generate_package_config.dart` script.
|
||||
|
||||
import os
|
||||
import os.path
|
||||
import platform
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
USE_PYTHON3 = True
|
||||
|
||||
|
||||
def is_windows():
|
||||
os_id = platform.system()
|
||||
return os_id == 'Windows'
|
||||
|
||||
|
||||
def checked_in_sdk_path():
|
||||
tools_dir = os.path.dirname(os.path.realpath(__file__))
|
||||
return os.path.join(tools_dir, 'sdks', 'dart-sdk')
|
||||
|
||||
|
||||
def checked_in_sdk_executable():
|
||||
name = 'dart'
|
||||
if is_windows():
|
||||
name = 'dart.exe'
|
||||
return os.path.join(checked_in_sdk_path(), 'bin', name)
|
||||
|
||||
|
||||
def generate_package_config():
|
||||
tools_dir = os.path.dirname(os.path.realpath(__file__))
|
||||
process = subprocess.run([
|
||||
checked_in_sdk_executable(),
|
||||
os.path.join(tools_dir, 'generate_package_config.dart')
|
||||
])
|
||||
return process.returncode
|
||||
|
||||
|
||||
def Main():
|
||||
sys.exit(generate_package_config())
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
Main()
|
Loading…
Reference in a new issue