Code review changes

This commit is contained in:
Tom Daffin 2020-11-07 06:35:08 -07:00
parent d2f48f2b45
commit 913582e1df
2 changed files with 8 additions and 6 deletions

View File

@ -34,13 +34,13 @@ export MONO_SOURCE_ROOT=$HOME/git/mono
In order to compile mono into Godot for deskop you will need to first build for desktop (see 'Desktop' below), and then Base Class Libraries (see 'Base Class library' below). In order to compile mono into Godot for deskop you will need to first build for desktop (see 'Desktop' below), and then Base Class Libraries (see 'Base Class library' below).
Then run the 'copy_bcl' action of the same desktop script you ran configure and make on, specifying the same target platforms you used before. This will copy the bcl runtime into the runtime directories that the subsequent Godot build (using `copy_mono_root=yes`) expects to find them in. Then run the 'copy-bcl' action of the same desktop script you ran configure and make on, specifying the same target platforms you used before. This will copy the bcl runtime into the runtime directories that the subsequent Godot build (using `copy_mono_root=yes`) expects to find them in.
e.g. e.g.
`./linux.py copy_bcl --target=x86 --target=x86_64` `./linux.py copy-bcl --target=x86 --target=x86_64`
Then you'll need to compile Godot using `copy_mono_root=yes` and `mono_static=yes` Then you'll need to compile Godot using `copy_mono_root=yes`
e.g. e.g.
`scons -j6 target=release_debug tools=yes module_mono_enabled=yes copy_mono_root=yes mono_static=yes mono_prefix="$HOME/mono-installs/desktop-linux-x86_64-release"` `scons -j6 target=release_debug tools=yes module_mono_enabled=yes copy_mono_root=yes mono_prefix="$HOME/mono-installs/desktop-linux-x86_64-release"`
## Desktop ## Desktop

View File

@ -203,6 +203,8 @@ def copy_bcl(opts: DesktopOpts, product: str, target_platform: str, target: str)
from bcl import get_profile_install_dirs from bcl import get_profile_install_dirs
dest_dir = path_join(opts.install_dir, '%s-%s-%s' % (product, target, opts.configuration), 'lib/mono/4.5') dest_dir = path_join(opts.install_dir, '%s-%s-%s' % (product, target, opts.configuration), 'lib/mono/4.5')
for src_dir in get_profile_install_dirs(opts, 'desktop'): for src_dir in get_profile_install_dirs(opts, 'desktop'):
if not os.path.isdir(src_dir):
raise BuildError('BCL source directory does not exist: %s. The BCL must be built prior to this.' % src_dir)
copy_tree(src_dir, dest_dir) copy_tree(src_dir, dest_dir)
def clean(opts: DesktopOpts, product: str, target_platform: str, target: str): def clean(opts: DesktopOpts, product: str, target_platform: str, target: str):
@ -221,14 +223,14 @@ def run_main(raw_args, target_platform):
actions = OrderedDict() actions = OrderedDict()
actions['configure'] = configure actions['configure'] = configure
actions['make'] = make actions['make'] = make
actions['copy_bcl'] = copy_bcl actions['copy-bcl'] = copy_bcl
actions['clean'] = clean actions['clean'] = clean
parser = cmd_utils.build_arg_parser(description='Builds the Mono runtime for the Desktop') parser = cmd_utils.build_arg_parser(description='Builds the Mono runtime for the Desktop')
default_help = 'default: %(default)s' default_help = 'default: %(default)s'
parser.add_argument('action', choices=['configure', 'make', 'copy_bcl', 'clean']) parser.add_argument('action', choices=['configure', 'make', 'copy-bcl', 'clean'])
parser.add_argument('--target', choices=targets[target_platform], action='append', required=True) parser.add_argument('--target', choices=targets[target_platform], action='append', required=True)
parser.add_argument('--with-llvm', action='store_true', default=False, help=default_help) parser.add_argument('--with-llvm', action='store_true', default=False, help=default_help)