/*
  Strings for user-modifiable options in the Tulsi Xcode project generator.
  Each string key is a user-editable option for the project generator.
  Each key may have an optional _DESC pairing that provides a detailed description of the option
    (e.g., to be used in a tooltip or help string)
*/

"ALWAYS_SEARCH_USER_PATHS" = "Always search user paths";
"ALWAYS_SEARCH_USER_PATHS_DESC" ="Whether to search for all headers (not just \"\" included ones) in the user header search paths before system paths.";

"BazelBuildOptions" = "'build' options";
"BazelBuildOptions_DESC" = "Options for bazel 'build' invocations.";
"BazelBuildOptionsDebug" = "Debug";
"BazelBuildOptionsFastbuild" = "Fastbuild";
"BazelBuildOptionsRelease" = "Release";

"BazelBuildStartupOptions" = "'build' startup options";
"BazelBuildStartupOptions_DESC" = "Startup options for bazel 'build' invocations.";
"BazelBuildStartupOptionsDebug" = "Debug";
"BazelBuildStartupOptionsFastbuild" = "Fastbuild";
"BazelBuildStartupOptionsRelease" = "Release";

"BazelContinueBuildingAfterError" = "Continue building after error";
"ObjCModuleMapWorkarounds" = "Experimental improvements for ObjC Modules in Swift.";

"UseAspectForTestSuites" = "Expand test_suites via an aspect instead of bazel query.";
"UseAspectForTestSuites_DESC" = "Requires a Bazel which supports --noexpand_test_suites";

"CommandlineArguments" = "Commandline arguments";
"EnvironmentVariables" = "Environment variables";

"PreActionScriptOptions" = "PreActionScripts";
"PostActionScriptOptions" = "PostActionScripts";
"BuildActionPreActionScript" = "Build";
"BuildActionPostActionScript" = "Build";
"LaunchActionPreActionScript" = "Run";
"LaunchActionPostActionScript" = "Run";
"TestActionPreActionScript" = "Test";
"TestActionPostActionScript" = "Test";

"SuppressSwiftUpdateCheck" = "Suppress Xcode Swift update check";
"SuppressSwiftUpdateCheck_DESC" = "Suppresses Xcode's update notification for projects containing Swift code. This asserts that the Swift code is at least version 2.1.";

"IncludeBuildSources" = "Include Bazel sources in the generated project.";
"IncludeBuildSources_DESC" = "Add .bzl and BUILD files related to selected targets in the generated Xcode project. This may slow down project generation significantly.";

