SpiecsEngine
 
Loading...
Searching...
No Matches

◆ main()

Build.main ( )
@brief Build Spices Solution with configuration.

Definition at line 43 of file Build.py.

43def main():
44
45 '''
46 @brief Build Spices Solution with configuration.
47 '''
48
49 parser = argparse.ArgumentParser(description='Build Spices Solution')
50 parser.add_argument('--target' , type=str, required=True, help='target solution, e.g. C:/')
51 parser.add_argument('--configuration', type=str, required=True, help='target solution build configuration, e.g. C:/')
52 parser.add_argument('--platform' , type=str, required=True, help='target solution build platform, e.g. C:/')
53 args = parser.parse_args()
54
55 if not os.path.isfile(args.target):
56 raise Exception('Invalid argument for --target: {}'.format(args.target))
57
58 msbuild_path = find_msbuild()
59 solution_path = args.target
60
61 # Solution Build Command
62 build_command = [
63 msbuild_path,
64 solution_path,
65 "/p:Configuration=" + args.configuration,
66 "/p:Platform=" + args.platform,
67 "/v:m" # Set minimal detail level
68 ]
69
70 # Execute Build
71 process = subprocess.Popen(build_command, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, text=True)
72
73 # Output Build result
74 try:
75 for line in process.stdout:
76 print(line, end='')
77 except KeyboardInterrupt:
78 print("\nBuild interrupted by user.")
79 process.terminate()
80 process.wait()
81 return
82
83 # Wait for Build
84 process.wait()
85
86 if process.returncode == 0:
87 print("Build Succeed")
88 else:
89 print("Build Failed, Error Code:", process.returncode)
90
int main()
Main Function.
Definition EntryPoint.h:15

References find_msbuild(), and main().

Referenced by main().