Skip to content

Commit

Permalink
Add a platform=list SCons argument to list platforms
Browse files Browse the repository at this point in the history
This also improves the message display and makes an invalid selection
exit with a non-zero status code.
  • Loading branch information
Calinou committed Jul 17, 2019
1 parent 4d99e73 commit b07e46c
Showing 1 changed file with 13 additions and 3 deletions.
16 changes: 13 additions & 3 deletions SConstruct
Original file line number Diff line number Diff line change
Expand Up @@ -422,7 +422,7 @@ if selected_platform in platform_list:
if (can_build):
config.configure(env)
env.module_list.append(x)

# Get doc classes paths (if present)
try:
doc_classes = config.get_doc_classes()
Expand Down Expand Up @@ -522,13 +522,23 @@ if selected_platform in platform_list:
env.AppendUnique(CPPDEFINES=[header[1]])

elif selected_platform != "":
if selected_platform == "list":
print("The following platforms are available:\n")
else:
print('Invalid target platform "' + selected_platform + '".')
print("The following platforms were detected:\n")

print("Invalid target platform: " + selected_platform)
print("The following platforms were detected:")
for x in platform_list:
print("\t" + x)

print("\nPlease run SCons again and select a valid platform: platform=<string>")

if selected_platform == "list":
# Exit early to suppress the rest of the built-in SCons messages
sys.exit(0)
else:
sys.exit(255)

# The following only makes sense when the env is defined, and assumes it is
if 'env' in locals():
screen = sys.stdout
Expand Down

0 comments on commit b07e46c

Please sign in to comment.