/
Kryuchok
/
flutter
Обзор
Документация
Войти
/
Kryuchok
/
flutter
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
engine/src/build/config/mac/package_framework.py
60 строк
2 KB
Chris Bracken
iOS/macOS: Consistent Flutter copyright headers (#168390)
07 май 2025, 03:09
Не верифицирован
07 май 2025, 03:09
e89c392
Код
Авторство
О чём код?
# Copyright 2013 The Flutter Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import argparse import errno import os import shutil import sys def Main(): parser = argparse.ArgumentParser(description='Create Mac Framework symlinks') parser.add_argument('--framework', action='store', type=str, required=True) parser.add_argument('--version', action='store', type=str) parser.add_argument('--contents', action='store', type=str, nargs='+') parser.add_argument('--stamp', action='store', type=str, required=True) args = parser.parse_args() VERSIONS = 'Versions' CURRENT = 'Current' # Ensure the Foo.framework/Versions/A/ directory exists and create the # Foo.framework/Versions/Current symlink to it. if args.version: try: os.makedirs(os.path.join(args.framework, VERSIONS, args.version), 744) except OSError as e: if e.errno != errno.EEXIST: raise e _Relink(os.path.join(args.version), os.path.join(args.framework, VERSIONS, CURRENT)) # Establish the top-level symlinks in the framework bundle. The dest of # the symlinks may not exist yet. if args.contents: for item in args.contents: _Relink(os.path.join(VERSIONS, CURRENT, item), os.path.join(args.framework, item)) # Write out a stamp file. if args.stamp: with open(args.stamp, 'w') as f: f.write(str(args)) return 0 def _Relink(dest, link): """Creates a symlink to |dest| named |link|. If |link| already exists, it is overwritten.""" try: os.remove(link) except OSError as e: if e.errno != errno.ENOENT: shutil.rmtree(link) os.symlink(dest, link) if __name__ == '__main__': sys.exit(Main())