diff options
author | RĂ©mi Verschelde <rverschelde@gmail.com> | 2019-05-27 11:57:15 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-27 11:57:15 +0200 |
commit | 8d766ddef144832d12d962ee918eb6e8de16bdeb (patch) | |
tree | 8b0eb663d9a4310361b81fa8a7a9cdba2e0ee606 | |
parent | cfbf23e339c110ba55183e9a75b11fa0b9ea6c7c (diff) | |
parent | be80b0b83c9068cf1576c0a7c909abbdd931c8fc (diff) |
Merge pull request #29199 from mhilbrunner/no-platform-no-more
Scons: Fix .editorconfig, autodetect platform argument if missing
-rw-r--r-- | .editorconfig | 2 | ||||
-rw-r--r-- | SConstruct | 23 |
2 files changed, 21 insertions, 4 deletions
diff --git a/.editorconfig b/.editorconfig index ab03b8421c..56cc2e9c2d 100644 --- a/.editorconfig +++ b/.editorconfig @@ -9,7 +9,7 @@ insert_final_newline = true [*.{cpp,hpp,c,h,mm}] trim_trailing_whitespace = true -[{*.{py,cs},SCsub}] +[{*.{py,cs},SConstruct,SCsub}] indent_style = space indent_size = 4 diff --git a/SConstruct b/SConstruct index da91e7bc1d..b75ca24da6 100644 --- a/SConstruct +++ b/SConstruct @@ -226,6 +226,23 @@ if env_base['platform'] != "": elif env_base['p'] != "": selected_platform = env_base['p'] env_base["platform"] = selected_platform +else: + # Missing `platform` argument, try to detect platform automatically + if sys.platform.startswith('linux'): + selected_platform = 'linux' + elif sys.platform == 'darwin': + selected_platform = 'osx' + elif sys.platform == 'win32': + selected_platform = 'windows' + else: + print("Could not detect platform automatically. Supported platforms:") + for x in platform_list: + print("\t" + x) + print("\nPlease run SCons again and select a valid platform: platform=<string>") + + if selected_platform != "": + print("Automatically detected platform: " + selected_platform) + env_base["platform"] = selected_platform if selected_platform in platform_list: tmppath = "./platform/" + selected_platform @@ -492,13 +509,13 @@ if selected_platform in platform_list: if (conf.CheckCHeader(header[0])): env.AppendUnique(CPPDEFINES=[header[1]]) -else: +elif selected_platform != "": - print("No valid target platform selected.") + 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 with the argument: platform=<string>") + print("\nPlease run SCons again and select a valid platform: platform=<string>") # The following only makes sense when the env is defined, and assumes it is if 'env' in locals(): |