|
@@ -599,6 +599,8 @@ enum BuildFlagKind {
|
|
|
BuildFlag_GoToDefinitions,
|
|
|
|
|
|
BuildFlag_Package,
|
|
|
+ BuildFlag_All,
|
|
|
+ BuildFlag_AllPackages,
|
|
|
|
|
|
#if defined(GB_SYSTEM_WINDOWS)
|
|
|
BuildFlag_IgnoreVsSearch,
|
|
@@ -706,7 +708,9 @@ bool parse_build_flags(Array<String> args) {
|
|
|
add_flag(&build_flags, BuildFlag_GlobalDefinitions, str_lit("global-definitions"), BuildFlagParam_None, Command_query);
|
|
|
add_flag(&build_flags, BuildFlag_GoToDefinitions, str_lit("go-to-definitions"), BuildFlagParam_None, Command_query);
|
|
|
|
|
|
- add_flag(&build_flags, BuildFlag_Package, str_lit("package"), BuildFlagParam_String, Command_doc, true);
|
|
|
+ add_flag(&build_flags, BuildFlag_Package, str_lit("package"), BuildFlagParam_String, Command_doc, true);
|
|
|
+ add_flag(&build_flags, BuildFlag_All, str_lit("all"), BuildFlagParam_None, Command_doc);
|
|
|
+ add_flag(&build_flags, BuildFlag_AllPackages, str_lit("all-packages"), BuildFlagParam_None, Command_doc);
|
|
|
|
|
|
|
|
|
#if defined(GB_SYSTEM_WINDOWS)
|
|
@@ -1204,6 +1208,13 @@ bool parse_build_flags(Array<String> args) {
|
|
|
array_add(&build_context.doc_packages, value.value_string);
|
|
|
}
|
|
|
break;
|
|
|
+ case BuildFlag_All:
|
|
|
+ build_context.cmd_doc_flags |= CmdDocFlag_All;
|
|
|
+ break;
|
|
|
+ case BuildFlag_AllPackages:
|
|
|
+ build_context.cmd_doc_flags |= CmdDocFlag_AllPackages;
|
|
|
+ break;
|
|
|
+
|
|
|
|
|
|
#if defined(GB_SYSTEM_WINDOWS)
|
|
|
case BuildFlag_IgnoreVsSearch:
|
|
@@ -1297,6 +1308,11 @@ bool parse_build_flags(Array<String> args) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ if (build_context.doc_packages.count > 0 && set_flags[BuildFlag_AllPackages]) {
|
|
|
+ gb_printf_err("'odin doc' does not allow both flags together '-all-packages' and '-package' together");;
|
|
|
+ bad_flags = true;
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
if (build_context.query_data_set_settings.ok) {
|
|
|
if (build_context.query_data_set_settings.kind == QueryDataSet_Invalid) {
|