| 
9 | 9 | from datetime import datetime  | 
10 | 10 | from pathlib import Path  | 
11 | 11 | 
 
  | 
12 |  | -from scripts.python.upi_cli_argument_options import PluginID, PlatformID, ConfigID, BuildActionID, CleanActionID  | 
 | 12 | +from scripts.python.upi_cli_argument_options import PluginID, PlatformID, ConfigID, BuildActionID, CleanActionID, CodeSignActionID  | 
13 | 13 | from scripts.python.upi_build_context import BuildContext  | 
14 | 14 | from scripts.python.upi_utility import PromptColor, Printer  | 
15 | 15 | 
 
  | 
16 | 16 | # Set a script version to track evolution  | 
17 |  | -build_script_version = "2.2.0"  | 
 | 17 | +build_script_version = "2.2.1"  | 
18 | 18 | 
 
  | 
19 | 19 | # -----------------  | 
20 | 20 | # Prompt Formatting  | 
 | 
74 | 74 | argument_parser.add_argument("-m", "--platforms", dest="platform_list", nargs='*', default=[PlatformID.ALL], help=f"Selects the desired platforms to target when building native libraries. Possible values are: {PlatformID.IOS}, {PlatformID.IOS_SIMULATOR}, {PlatformID.MACOS}, {PlatformID.TVOS}, {PlatformID.TVOS_SIMULATOR}, {PlatformID.VISIONOS}, {PlatformID.VISIONOS_SIMULATOR}, {PlatformID.SIMULATORS}, {PlatformID.DEVICES} or {PlatformID.ALL}. Default is: {PlatformID.ALL}")  | 
75 | 75 | argument_parser.add_argument("-b", "--build-action", dest="build_actions", nargs='*', default=[BuildActionID.BUILD, BuildActionID.PACK], help=f"Sets the build actions for the selected plug-ins. Possible values are: {BuildActionID.BUILD}, {BuildActionID.PACK}, {BuildActionID.NONE} or {BuildActionID.ALL}. Defaults are: {BuildActionID.BUILD}, {BuildActionID.PACK}")  | 
76 | 76 | argument_parser.add_argument("-bc","--build-config", dest="build_config", default=ConfigID.ALL, help=f"Sets the build configuration to compile. Possible values are: {ConfigID.RELEASE}, {ConfigID.DEBUG}, or {ConfigID.ALL} which builds all other configs. Default is: {ConfigID.ALL}")  | 
77 |  | -argument_parser.add_argument("-c", "--codesign-identity", dest="codesign_identity", default=str(), help=f"String which uniquely identifies your codesign identity, typically represented by a hash. Only applied if build actions include {BuildActionID.BUILD}")  | 
78 |  | -argument_parser.add_argument("-sc", "--skip-codesign", dest="skip_codesign", action="store_true", help=f"Skips codesign and all user prompts.")  | 
 | 77 | +argument_parser.add_argument("-c", "--codesign-identity", dest="codesign_identity", default=str(), help=f"Signs compiled native libraries with provided code signing identity hash or prompts the user to select from a list of identities on the system when {CodeSignActionID.PROMPT} is passed.")  | 
79 | 78 | argument_parser.add_argument("-u", "--unity-installation-root", dest="unity_installation_root", default="", help="Root path to search for Unity installations when building tests. Note: performs a full recursive search of the given directory.")  | 
80 | 79 | argument_parser.add_argument("-o", "--output-path", dest="output_path", default=CTX.build_output_path, help=f"Build result path for final packages. Default: {CTX.build_output_path}")  | 
81 | 80 | argument_parser.add_argument("-k", "--clean-action", dest="clean_actions", nargs='*', default=[CleanActionID.NONE], help=f"Sets the clean actions for the selected plug-ins. Possible values are: {CleanActionID.NATIVE}, {CleanActionID.PACKAGES}, {CleanActionID.TESTS}, {CleanActionID.NONE}, or {CleanActionID.ALL}. Defaults to no clean action.")  | 
@@ -117,14 +116,11 @@ def Main():  | 
117 | 116 |           f"\n            Clean Actions({Printer.Bold('-k')}): {CTX.printer.Context(' '.join(build_args.clean_actions))}"  | 
118 | 117 |           f"\n              Force Clean({Printer.Bold('-f')}): {CTX.printer.Context('Yes (-f set)' if build_args.force_clean else 'No (-f not set)')}"  | 
119 | 118 |           f"\n              Build Tests({Printer.Bold('-t')}): {CTX.printer.Context('Yes (-t set)' if build_args.build_tests else 'No (-t not set)')}"  | 
120 |  | -          f"\n           Skip Codesign({Printer.Bold('-sc')}): {CTX.printer.Context('Yes (-sc set)' if build_args.skip_codesign else 'No (-sc not set)')}")  | 
 | 119 | +          f"\n     Codesigning Identity({Printer.Bold('-c')}): {CTX.printer.Context(build_args.codesign_identity if len(build_args.codesign_identity) > 0 else 'None supplied.')}")  | 
121 | 120 | 
 
  | 
122 | 121 |     if len(build_args.unity_installation_root) > 0:  | 
123 | 122 |         print(f"  Unity Installation Root({Printer.Bold('-u')}): {CTX.printer.Context(build_args.unity_installation_root)}")  | 
124 | 123 | 
 
  | 
125 |  | -    if not build_args.skip_codesign:  | 
126 |  | -        print(f"     Codesigning Identity({Printer.Bold('-c')}): {CTX.printer.Context(build_args.codesign_identity if len(build_args.codesign_identity) > 0 else 'None supplied.')}")  | 
127 |  | - | 
128 | 124 |     if build_args.build_tests:  | 
129 | 125 |         print(f"        Test Output Path({Printer.Bold('-to')}): {CTX.printer.Context(build_args.test_output_path)}")  | 
130 | 126 | 
 
  | 
@@ -358,10 +354,11 @@ def Main():  | 
358 | 354 |         CTX.printer.MessageWithContext("Native library build using: ", f"Xcode {xcode_version} ({xcode_build_number})", "\n")  | 
359 | 355 |         CTX.printer.InfoMessage(f"If this is incorrect, please update your environment with {Printer.Bold('xcode-select')}. (Call \'{Printer.Bold('xcode-select -h')}\' from the command line for more info.)")  | 
360 | 356 | 
 
  | 
361 |  | -        if build_args.skip_codesign:  | 
362 |  | -            CTX.codesign_hash = ""  | 
363 |  | -        else:  | 
364 |  | -            CTX.codesign_hash = build_args.codesign_identity if len(build_args.codesign_identity) > 0 else toolchain.PromptForCodesignIdentity(CTX.printer)  | 
 | 357 | +        if len(build_args.codesign_identity) > 0:  | 
 | 358 | +            if build_args.codesign_identity == CodeSignActionID.PROMPT:  | 
 | 359 | +                CTX.codesign_hash = toolchain.PromptForCodesignIdentity(CTX.printer)  | 
 | 360 | +            else:  | 
 | 361 | +                CTX.codesign_hash = build_args.codesign_identity  | 
365 | 362 | 
 
  | 
366 | 363 |         CTX.printer.SectionHeading("Gather Unity Installation Info")  | 
367 | 364 | 
 
  | 
 | 
0 commit comments