Add ambuild 2.2 compat, Add libuv build script launched in configure.py

This commit is contained in:
maxime1907
2022-09-24 15:03:34 +02:00
parent bda96d75f8
commit 5a06bf10ae
6 changed files with 569 additions and 73 deletions
+31 -7
View File
@@ -1,7 +1,9 @@
# vim: set ts=2 sw=2 tw=99 noet:
import sys
import os
import subprocess
try:
from ambuild2 import run
from ambuild2 import run, util
except:
try:
import ambuild
@@ -12,10 +14,32 @@ except:
sys.stderr.write('http://www.alliedmods.net/ambuild\n')
sys.exit(1)
run = run.PrepareBuild(sourcePath=sys.path[0])
run.default_build_folder = 'obj-' + run.target_platform
run.options.add_option('--sm-path', type=str, dest='sm_path', default=None, help='Path to SourceMod')
run.options.add_option('--enable-debug', action='store_const', const='1', dest='debug', help='Enable debugging symbols')
run.options.add_option('--enable-optimize', action='store_const', const='1', dest='opt', help='Enable optimization')
# Hack to show a decent upgrade message, which wasn't done until 2.2.
ambuild_version = getattr(run, 'CURRENT_API', '2.1')
if ambuild_version.startswith('2.1'):
sys.stderr.write("AMBuild 2.2 or higher is required; please update\n")
sys.exit(1)
run.Configure()
parser = run.BuildParser(sourcePath = sys.path[0], api='2.2')
parser.options.add_argument('--hl2sdk-root', type=str, dest='hl2sdk_root', default=None,
help='Root search folder for HL2SDKs')
parser.options.add_argument('--mms-path', type=str, dest='mms_path', default=None,
help='Path to Metamod:Source')
parser.options.add_argument('--sm-path', type=str, dest='sm_path', default=None,
help='Path to SourceMod')
parser.options.add_argument('--enable-debug', action='store_const', const='1', dest='debug',
help='Enable debugging symbols')
parser.options.add_argument('--enable-optimize', action='store_const', const='1', dest='opt',
help='Enable optimization')
parser.options.add_argument('-s', '--sdks', default='all', dest='sdks',
help='Build against specified SDKs; valid args are "all", "present", or '
'comma-delimited list of engine names (default: %default)')
parser.options.add_argument('--targets', type=str, dest='targets', default=None,
help="Override the target architecture (use commas to separate multiple targets).")
parser.Configure()
# Run libuv compilation and copy files to corresponding folders
os.chmod('../build_libuv.sh', 0o755)
subprocess.call("../build_libuv.sh")