From bfb54fe35ad9263f2aecb882eb425f5d9ee3b093 Mon Sep 17 00:00:00 2001 From: Kevin Day Date: Wed, 20 Oct 2021 19:41:31 -0500 Subject: [PATCH] Update: Add support for indexer_arguments, update documentation, and fix printing bugs. This is a step towards removing hardcoded defaults that I had initially added just to save time. The indexer now has an indexer_arguments that will expect the arguments, such as "rcs". Update the documentation, documenting this behavior, fix problems in the documentation, and do some cleanup of the documentation. There are some places where "linker" is still used. Replace this usage with "indexer". Fix some cases with printing mistakes. These mistakes are likely regressions resulting from the mass refactor to the fl_print_format() and fll_print_format(). I've noticed that there are some problems with the settings in the fakefile. The custom settings, such as "compiler", "indexer", etc.., are being overwritten by the build settings. It may also be a good idea to provide another iki parameter to expose some of these settings. --- build/level_0/settings | 1 + build/level_1/settings | 1 + build/level_2/settings | 1 + build/monolithic/settings | 1 + build/scripts/bootstrap.sh | 228 +++++++++++---------- level_0/f_account/data/build/settings | 1 + level_0/f_capability/data/build/settings | 1 + level_0/f_color/data/build/settings | 1 + level_0/f_console/data/build/settings | 1 + level_0/f_control_group/data/build/settings | 1 + level_0/f_conversion/data/build/settings | 1 + level_0/f_directory/data/build/settings | 1 + level_0/f_environment/data/build/settings | 1 + level_0/f_execute/data/build/settings | 1 + level_0/f_file/data/build/settings | 1 + level_0/f_fss/data/build/settings | 1 + level_0/f_iki/data/build/settings | 1 + level_0/f_limit/data/build/settings | 1 + level_0/f_memory/data/build/settings | 1 + level_0/f_path/data/build/settings | 1 + level_0/f_pipe/data/build/settings | 1 + level_0/f_print/data/build/settings | 1 + level_0/f_serialize/data/build/settings | 1 + level_0/f_signal/data/build/settings | 1 + level_0/f_socket/data/build/settings | 1 + level_0/f_status/data/build/settings | 1 + level_0/f_string/data/build/settings | 1 + level_0/f_thread/data/build/settings | 1 + level_0/f_type/data/build/settings | 1 + level_0/f_type_array/data/build/settings | 1 + level_0/f_utf/data/build/settings | 1 + level_1/fl_console/data/build/settings | 1 + level_1/fl_control_group/data/build/settings | 1 + level_1/fl_conversion/data/build/settings | 1 + level_1/fl_directory/data/build/settings | 1 + level_1/fl_environment/data/build/settings | 1 + level_1/fl_execute/data/build/settings | 1 + level_1/fl_fss/data/build/settings | 1 + level_1/fl_iki/data/build/settings | 1 + level_1/fl_print/data/build/settings | 1 + level_1/fl_signal/data/build/settings | 1 + level_1/fl_status/data/build/settings | 1 + level_1/fl_string/data/build/settings | 1 + level_1/fl_utf/data/build/settings | 1 + level_1/fl_utf_file/data/build/settings | 1 + level_2/fll_control_group/data/build/settings | 1 + level_2/fll_error/data/build/settings | 1 + level_2/fll_execute/data/build/settings | 1 + level_2/fll_file/data/build/settings | 1 + level_2/fll_fss/data/build/settings | 1 + level_2/fll_iki/data/build/settings | 1 + level_2/fll_path/data/build/settings | 1 + level_2/fll_print/data/build/settings | 1 + level_2/fll_program/data/build/settings | 1 + level_2/fll_status/data/build/settings | 1 + level_3/byte_dump/data/build/settings | 1 + level_3/control/data/build/settings | 1 + level_3/controller/data/build/settings | 1 + level_3/fake/c/private-build.c | 26 ++- level_3/fake/c/private-common.c | 6 +- level_3/fake/c/private-common.h | 53 ++--- level_3/fake/c/private-make.c | 75 +++++-- level_3/fake/data/build/fakefile | 1 + level_3/fake/data/build/fakefile-example-bzip2 | 1 + level_3/fake/data/build/settings | 1 + level_3/fake/data/build/settings-example-bzip2 | 1 + .../fake/data/build/settings-example-bzip2recover | 1 + level_3/fake/documents/fakefile.txt | 10 + level_3/fake/documents/settings.txt | 149 +++++++------- level_3/fake/specifications/fakefile.txt | 5 +- level_3/fake/specifications/settings.txt | 203 +++++++++--------- level_3/firewall/data/build/settings | 1 + level_3/fss_basic_list_read/data/build/settings | 1 + level_3/fss_basic_list_write/data/build/settings | 1 + level_3/fss_basic_read/data/build/settings | 1 + level_3/fss_basic_write/data/build/settings | 1 + level_3/fss_embedded_list_read/data/build/settings | 1 + .../fss_embedded_list_write/data/build/settings | 1 + level_3/fss_extended_list_read/data/build/settings | 1 + .../fss_extended_list_write/data/build/settings | 1 + level_3/fss_extended_read/data/build/settings | 1 + level_3/fss_extended_write/data/build/settings | 1 + level_3/fss_identify/data/build/settings | 1 + level_3/fss_status_code/data/build/settings | 1 + level_3/iki_read/data/build/settings | 1 + level_3/iki_write/data/build/settings | 1 + level_3/status_code/data/build/settings | 1 + 87 files changed, 494 insertions(+), 339 deletions(-) diff --git a/build/level_0/settings b/build/level_0/settings index 1faf205..2e1e3c6 100644 --- a/build/level_0/settings +++ b/build/level_0/settings @@ -18,6 +18,7 @@ modes_default level build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc -lcap build_libraries-level diff --git a/build/level_1/settings b/build/level_1/settings index 20bf00d..fae5d05 100644 --- a/build/level_1/settings +++ b/build/level_1/settings @@ -18,6 +18,7 @@ modes_default level build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc -lcap build_libraries-level -lfll_0 diff --git a/build/level_2/settings b/build/level_2/settings index 31dfbd8..9dfd8a4 100644 --- a/build/level_2/settings +++ b/build/level_2/settings @@ -18,6 +18,7 @@ modes_default level build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc -lcap build_libraries-level -lfll_1 -lfll_0 diff --git a/build/monolithic/settings b/build/monolithic/settings index 46ada63..5566b4f 100644 --- a/build/monolithic/settings +++ b/build/monolithic/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc -lcap build_libraries-monolithic diff --git a/build/scripts/bootstrap.sh b/build/scripts/bootstrap.sh index d595230..e5d5ddd 100644 --- a/build/scripts/bootstrap.sh +++ b/build/scripts/bootstrap.sh @@ -433,116 +433,117 @@ bootstrap_id() { case $name in "build_compiler") echo -n 0;; "build_indexer") echo -n 1;; - "build_language") echo -n 2;; - "build_libraries") echo -n 3;; - "build_libraries_shared") echo -n 4;; - "build_libraries_static") echo -n 5;; - "build_script") echo -n 6;; - "build_shared") echo -n 7;; - "build_sources_headers") echo -n 8;; - "build_sources_headers_shared") echo -n 9;; - "build_sources_headers_static") echo -n 10;; - "build_sources_library") echo -n 11;; - "build_sources_library_shared") echo -n 12;; - "build_sources_library_static") echo -n 13;; - "build_sources_program") echo -n 14;; - "build_sources_program_shared") echo -n 15;; - "build_sources_program_static") echo -n 16;; - "build_sources_script") echo -n 17;; - "build_sources_setting") echo -n 18;; - "build_static") echo -n 19;; - "defines") echo -n 20;; - "defines_library") echo -n 21;; - "defines_library_shared") echo -n 22;; - "defines_library_static") echo -n 23;; - "defines_program") echo -n 24;; - "defines_program_shared") echo -n 25;; - "defines_program_static") echo -n 26;; - "defines_shared") echo -n 27;; - "defines_static") echo -n 28;; - "environment") echo -n 29;; - "flags") echo -n 30;; - "flags_library") echo -n 31;; - "flags_library_shared") echo -n 32;; - "flags_library_static") echo -n 33;; - "flags_program") echo -n 34;; - "flags_program_shared") echo -n 35;; - "flags_program_static") echo -n 36;; - "flags_shared") echo -n 37;; - "flags_static") echo -n 38;; - "modes") echo -n 39;; - "modes_default") echo -n 40;; - "path_headers") echo -n 41;; - "path_headers_preserve") echo -n 42;; - "path_language") echo -n 42;; - "path_library_script") echo -n 43;; - "path_library_shared") echo -n 44;; - "path_library_static") echo -n 45;; - "path_program_script") echo -n 46;; - "path_program_shared") echo -n 47;; - "path_program_static") echo -n 48;; - "path_sources") echo -n 50;; - "path_standard") echo -n 51;; - "process_post") echo -n 52;; - "process_pre") echo -n 53;; - "project_name") echo -n 54;; - "search_exclusive") echo -n 55;; - "search_shared") echo -n 56;; - "search_static") echo -n 57;; - "version_file") echo -n 58;; - "version_major") echo -n 59;; - "version_major_prefix") echo -n 60;; - "version_micro") echo -n 61;; - "version_micro_prefix") echo -n 62;; - "version_minor") echo -n 63;; - "version_minor_prefix") echo -n 64;; - "version_nano") echo -n 65;; - "version_nano_prefix") echo -n 66;; - "version_target") echo -n 67;; - - "build_libraries-$mode") echo -n 68;; - "build_libraries_shared-$mode") echo -n 69;; - "build_libraries_static-$mode") echo -n 70;; - "build_sources_headers-$mode") echo -n 71;; - "build_sources_headers_shared-$mode") echo -n 72;; - "build_sources_headers_static-$mode") echo -n 73;; - "build_sources_library-$mode") echo -n 74;; - "build_sources_library_shared-$mode") echo -n 75;; - "build_sources_library_static-$mode") echo -n 76;; - "build_sources_program-$mode") echo -n 77;; - "build_sources_program_shared-$mode") echo -n 78;; - "build_sources_program_static-$mode") echo -n 79;; - "build_sources_script-$mode") echo -n 80;; - "build_sources_setting-$mode") echo -n 81;; - "defines-$mode") echo -n 82;; - "defines_library-$mode") echo -n 83;; - "defines_library_shared-$mode") echo -n 84;; - "defines_library_static-$mode") echo -n 85;; - "defines_program-$mode") echo -n 86;; - "defines_program_shared-$mode") echo -n 87;; - "defines_program_static-$mode") echo -n 88;; - "defines_shared-$mode") echo -n 89;; - "defines_static-$mode") echo -n 90;; - "environment-$mode") echo -n 91;; - "flags-$mode") echo -n 92;; - "flags_library-$mode") echo -n 93;; - "flags_library_shared-$mode") echo -n 94;; - "flags_library_static-$mode") echo -n 95;; - "flags_program-$mode") echo -n 96;; - "flags_program_shared-$mode") echo -n 97;; - "flags_program_static-$mode") echo -n 98;; - "flags_shared-$mode") echo -n 99;; - "flags_static-$mode") echo -n 100;; - - "has-version_major_prefix") echo -n 101;; - "has-version_micro_prefix") echo -n 102;; - "has-version_minor_prefix") echo -n 103;; - "has-version_nano_prefix") echo -n 104;; - - "has-version_major_prefix-$mode") echo -n 105;; - "has-version_micro_prefix-$mode") echo -n 106;; - "has-version_minor_prefix-$mode") echo -n 107;; - "has-version_nano_prefix-$mode") echo -n 108;; + "build_indexer_arguments") echo -n 2;; + "build_language") echo -n 3;; + "build_libraries") echo -n 4;; + "build_libraries_shared") echo -n 5;; + "build_libraries_static") echo -n 6;; + "build_script") echo -n 7;; + "build_shared") echo -n 8;; + "build_sources_headers") echo -n 9;; + "build_sources_headers_shared") echo -n 10;; + "build_sources_headers_static") echo -n 11;; + "build_sources_library") echo -n 12;; + "build_sources_library_shared") echo -n 13;; + "build_sources_library_static") echo -n 14;; + "build_sources_program") echo -n 15;; + "build_sources_program_shared") echo -n 16;; + "build_sources_program_static") echo -n 17;; + "build_sources_script") echo -n 18;; + "build_sources_setting") echo -n 19;; + "build_static") echo -n 20;; + "defines") echo -n 21;; + "defines_library") echo -n 22;; + "defines_library_shared") echo -n 23;; + "defines_library_static") echo -n 24;; + "defines_program") echo -n 25;; + "defines_program_shared") echo -n 26;; + "defines_program_static") echo -n 27;; + "defines_shared") echo -n 28;; + "defines_static") echo -n 29;; + "environment") echo -n 30;; + "flags") echo -n 31;; + "flags_library") echo -n 32;; + "flags_library_shared") echo -n 33;; + "flags_library_static") echo -n 34;; + "flags_program") echo -n 35;; + "flags_program_shared") echo -n 36;; + "flags_program_static") echo -n 37;; + "flags_shared") echo -n 38;; + "flags_static") echo -n 39;; + "modes") echo -n 40;; + "modes_default") echo -n 41;; + "path_headers") echo -n 42;; + "path_headers_preserve") echo -n 43;; + "path_language") echo -n 44;; + "path_library_script") echo -n 45;; + "path_library_shared") echo -n 46;; + "path_library_static") echo -n 47;; + "path_program_script") echo -n 48;; + "path_program_shared") echo -n 49;; + "path_program_static") echo -n 50;; + "path_sources") echo -n 51;; + "path_standard") echo -n 52;; + "process_post") echo -n 53;; + "process_pre") echo -n 54;; + "project_name") echo -n 55;; + "search_exclusive") echo -n 56;; + "search_shared") echo -n 57;; + "search_static") echo -n 58;; + "version_file") echo -n 59;; + "version_major") echo -n 60;; + "version_major_prefix") echo -n 61;; + "version_micro") echo -n 62;; + "version_micro_prefix") echo -n 63;; + "version_minor") echo -n 64;; + "version_minor_prefix") echo -n 65;; + "version_nano") echo -n 66;; + "version_nano_prefix") echo -n 67;; + "version_target") echo -n 68;; + + "build_libraries-$mode") echo -n 69;; + "build_libraries_shared-$mode") echo -n 70;; + "build_libraries_static-$mode") echo -n 71;; + "build_sources_headers-$mode") echo -n 72;; + "build_sources_headers_shared-$mode") echo -n 73;; + "build_sources_headers_static-$mode") echo -n 74;; + "build_sources_library-$mode") echo -n 75;; + "build_sources_library_shared-$mode") echo -n 76;; + "build_sources_library_static-$mode") echo -n 77;; + "build_sources_program-$mode") echo -n 78;; + "build_sources_program_shared-$mode") echo -n 79;; + "build_sources_program_static-$mode") echo -n 80;; + "build_sources_script-$mode") echo -n 81;; + "build_sources_setting-$mode") echo -n 82;; + "defines-$mode") echo -n 83;; + "defines_library-$mode") echo -n 84;; + "defines_library_shared-$mode") echo -n 85;; + "defines_library_static-$mode") echo -n 86;; + "defines_program-$mode") echo -n 87;; + "defines_program_shared-$mode") echo -n 88;; + "defines_program_static-$mode") echo -n 89;; + "defines_shared-$mode") echo -n 90;; + "defines_static-$mode") echo -n 91;; + "environment-$mode") echo -n 92;; + "flags-$mode") echo -n 93;; + "flags_library-$mode") echo -n 94;; + "flags_library_shared-$mode") echo -n 95;; + "flags_library_static-$mode") echo -n 96;; + "flags_program-$mode") echo -n 97;; + "flags_program_shared-$mode") echo -n 98;; + "flags_program_static-$mode") echo -n 99;; + "flags_shared-$mode") echo -n 100;; + "flags_static-$mode") echo -n 101;; + + "has-version_major_prefix") echo -n 102;; + "has-version_micro_prefix") echo -n 103;; + "has-version_minor_prefix") echo -n 104;; + "has-version_nano_prefix") echo -n 105;; + + "has-version_major_prefix-$mode") echo -n 106;; + "has-version_micro_prefix-$mode") echo -n 107;; + "has-version_minor_prefix-$mode") echo -n 108;; + "has-version_nano_prefix-$mode") echo -n 109;; esac } @@ -569,7 +570,7 @@ bootstrap_load_settings() { return 1 fi - for i in build_compiler build_indexer build_language build_libraries build_libraries_shared build_libraries_static build_script build_shared build_sources_headers build_sources_headers_shared build_sources_headers_static build_sources_library build_sources_library_shared build_sources_library_static build_sources_program build_sources_program_shared build_sources_program_static build_sources_script build_sources_setting build_static defines defines_library defines_library_shared defines_library_static defines_program defines_shared defines_program_shared defines_program_static defines_static environment flags flags_library flags_program flags_shared flags_static modes modes_default path_headers path_headers_preserve path_language path_library_script path_library_shared path_library_static path_program_script path_program_shared path_program_static path_sources path_standard process_post process_pre project_name search_exclusive search_shared search_static version_major version_major_prefix version_micro version_micro_prefix version_minor version_minor_prefix version_nano version_nano_prefix version_target ; do + for i in build_compiler build_indexer build_indexer_arguments build_language build_libraries build_libraries_shared build_libraries_static build_script build_shared build_sources_headers build_sources_headers_shared build_sources_headers_static build_sources_library build_sources_library_shared build_sources_library_static build_sources_program build_sources_program_shared build_sources_program_static build_sources_script build_sources_setting build_static defines defines_library defines_library_shared defines_library_static defines_program defines_shared defines_program_shared defines_program_static defines_static environment flags flags_library flags_program flags_shared flags_static modes modes_default path_headers path_headers_preserve path_language path_library_script path_library_shared path_library_static path_program_script path_program_shared path_program_static path_sources path_standard process_post process_pre project_name search_exclusive search_shared search_static version_major version_major_prefix version_micro version_micro_prefix version_minor version_minor_prefix version_nano version_nano_prefix version_target ; do variables[$(bootstrap_id $i)]=$(grep -s -o "^[[:space:]]*$i[[:space:]].*\$" $settings_file | sed -e "s|^[[:space:]]*$i\>||" -e 's|^[[:space:]]*||') done } @@ -637,6 +638,7 @@ bootstrap_operation_build() { local target=${variables[$(bootstrap_id version_target)]} local compiler=${variables[$(bootstrap_id build_compiler)]} local indexer=${variables[$(bootstrap_id build_indexer)]} + local indexer_arguments=${variables[$(bootstrap_id build_indexer_arguments)]} local arguments_include="-I${path_build}includes" local arguments_shared="-L${path_build}libraries/shared" local arguments_static="-L${path_build}libraries/static" @@ -1192,10 +1194,10 @@ bootstrap_operation_build() { if [[ $failure == "" && ( $sources_library != "" || $sources_library_static != "" ) ]] ; then if [[ $verbosity == "verbose" ]] ; then - echo $indexer rcs ${path_build}libraries/static/lib$name.a $sources + echo $indexer $indexer_arguments ${path_build}libraries/static/lib$name.a $sources fi - $indexer rcs ${path_build}libraries/static/lib$name.a $sources || failure=1 + $indexer $indexer_arguments ${path_build}libraries/static/lib$name.a $sources || failure=1 fi fi diff --git a/level_0/f_account/data/build/settings b/level_0/f_account/data/build/settings index 613cb18..4020c72 100644 --- a/level_0/f_account/data/build/settings +++ b/level_0/f_account/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string diff --git a/level_0/f_capability/data/build/settings b/level_0/f_capability/data/build/settings index bf0437d..5a17bb7 100644 --- a/level_0/f_capability/data/build/settings +++ b/level_0/f_capability/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc -lcap build_libraries-individual -lf_memory -lf_string -lf_type_array diff --git a/level_0/f_color/data/build/settings b/level_0/f_color/data/build/settings index 1f39e83..492d88f 100644 --- a/level_0/f_color/data/build/settings +++ b/level_0/f_color/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string diff --git a/level_0/f_console/data/build/settings b/level_0/f_console/data/build/settings index 996b967..27689c9 100644 --- a/level_0/f_console/data/build/settings +++ b/level_0/f_console/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string -lf_type_array -lf_utf diff --git a/level_0/f_control_group/data/build/settings b/level_0/f_control_group/data/build/settings index 3956123..0c21753 100644 --- a/level_0/f_control_group/data/build/settings +++ b/level_0/f_control_group/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string diff --git a/level_0/f_conversion/data/build/settings b/level_0/f_conversion/data/build/settings index 0937644..2b5e47f 100644 --- a/level_0/f_conversion/data/build/settings +++ b/level_0/f_conversion/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string -lf_utf diff --git a/level_0/f_directory/data/build/settings b/level_0/f_directory/data/build/settings index 9872503..16f0bba 100644 --- a/level_0/f_directory/data/build/settings +++ b/level_0/f_directory/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string diff --git a/level_0/f_environment/data/build/settings b/level_0/f_environment/data/build/settings index 16b2f12..55bf79b 100644 --- a/level_0/f_environment/data/build/settings +++ b/level_0/f_environment/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string diff --git a/level_0/f_execute/data/build/settings b/level_0/f_execute/data/build/settings index 5f3806f..47fde83 100644 --- a/level_0/f_execute/data/build/settings +++ b/level_0/f_execute/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string diff --git a/level_0/f_file/data/build/settings b/level_0/f_file/data/build/settings index f9ecd31..abef42e 100644 --- a/level_0/f_file/data/build/settings +++ b/level_0/f_file/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string diff --git a/level_0/f_fss/data/build/settings b/level_0/f_fss/data/build/settings index 522e5d1..36cf4f5 100644 --- a/level_0/f_fss/data/build/settings +++ b/level_0/f_fss/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string -lf_type_array -lf_utf diff --git a/level_0/f_iki/data/build/settings b/level_0/f_iki/data/build/settings index 2b9113c..6f87b8f 100644 --- a/level_0/f_iki/data/build/settings +++ b/level_0/f_iki/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string -lf_utf diff --git a/level_0/f_limit/data/build/settings b/level_0/f_limit/data/build/settings index bccef77..ceaba6a 100644 --- a/level_0/f_limit/data/build/settings +++ b/level_0/f_limit/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory diff --git a/level_0/f_memory/data/build/settings b/level_0/f_memory/data/build/settings index b44a2e4..11fcfb8 100644 --- a/level_0/f_memory/data/build/settings +++ b/level_0/f_memory/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual diff --git a/level_0/f_path/data/build/settings b/level_0/f_path/data/build/settings index 9db1c58..b8ee812 100644 --- a/level_0/f_path/data/build/settings +++ b/level_0/f_path/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string diff --git a/level_0/f_pipe/data/build/settings b/level_0/f_pipe/data/build/settings index 7d28dbc..61ee778 100644 --- a/level_0/f_pipe/data/build/settings +++ b/level_0/f_pipe/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual diff --git a/level_0/f_print/data/build/settings b/level_0/f_print/data/build/settings index 7306c0e..3e64740 100644 --- a/level_0/f_print/data/build/settings +++ b/level_0/f_print/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string -lf_utf diff --git a/level_0/f_serialize/data/build/settings b/level_0/f_serialize/data/build/settings index c1a82b0..4697131 100644 --- a/level_0/f_serialize/data/build/settings +++ b/level_0/f_serialize/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string -lf_utf diff --git a/level_0/f_signal/data/build/settings b/level_0/f_signal/data/build/settings index 4e8f8d3..612853c 100644 --- a/level_0/f_signal/data/build/settings +++ b/level_0/f_signal/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual diff --git a/level_0/f_socket/data/build/settings b/level_0/f_socket/data/build/settings index 13915ef..bcb1af7 100644 --- a/level_0/f_socket/data/build/settings +++ b/level_0/f_socket/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string diff --git a/level_0/f_status/data/build/settings b/level_0/f_status/data/build/settings index 76b377b..2016394 100644 --- a/level_0/f_status/data/build/settings +++ b/level_0/f_status/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual diff --git a/level_0/f_string/data/build/settings b/level_0/f_string/data/build/settings index 5e5b252..43cf0da 100644 --- a/level_0/f_string/data/build/settings +++ b/level_0/f_string/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory diff --git a/level_0/f_thread/data/build/settings b/level_0/f_thread/data/build/settings index 43918fb..1fddd45 100644 --- a/level_0/f_thread/data/build/settings +++ b/level_0/f_thread/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -pthread -lc build_libraries-individual -lf_memory -lf_string diff --git a/level_0/f_type/data/build/settings b/level_0/f_type/data/build/settings index 83b4c83..390d8b2 100644 --- a/level_0/f_type/data/build/settings +++ b/level_0/f_type/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual diff --git a/level_0/f_type_array/data/build/settings b/level_0/f_type_array/data/build/settings index ecca8c1..7d06a00 100644 --- a/level_0/f_type_array/data/build/settings +++ b/level_0/f_type_array/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory diff --git a/level_0/f_utf/data/build/settings b/level_0/f_utf/data/build/settings index 03a13d8..22c3e21 100644 --- a/level_0/f_utf/data/build/settings +++ b/level_0/f_utf/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string diff --git a/level_1/fl_console/data/build/settings b/level_1/fl_console/data/build/settings index 66630f3..1308811 100644 --- a/level_1/fl_console/data/build/settings +++ b/level_1/fl_console/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_console -lf_conversion -lf_memory -lf_path -lf_string -lf_type_array -lf_utf diff --git a/level_1/fl_control_group/data/build/settings b/level_1/fl_control_group/data/build/settings index fd66d2f..b19a0bc 100644 --- a/level_1/fl_control_group/data/build/settings +++ b/level_1/fl_control_group/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_control_group -lf_file -lf_memory -lf_string diff --git a/level_1/fl_conversion/data/build/settings b/level_1/fl_conversion/data/build/settings index 96ee9e3..ec25442 100644 --- a/level_1/fl_conversion/data/build/settings +++ b/level_1/fl_conversion/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_conversion -lf_memory -lf_string -lf_utf diff --git a/level_1/fl_directory/data/build/settings b/level_1/fl_directory/data/build/settings index 0da69eb..474087c 100644 --- a/level_1/fl_directory/data/build/settings +++ b/level_1/fl_directory/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_directory -lf_file -lf_memory -lf_path -lf_string -lf_utf diff --git a/level_1/fl_environment/data/build/settings b/level_1/fl_environment/data/build/settings index 0ad28e6..e8acb1a 100644 --- a/level_1/fl_environment/data/build/settings +++ b/level_1/fl_environment/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_environment -lf_memory -lf_path -lf_string -lf_utf diff --git a/level_1/fl_execute/data/build/settings b/level_1/fl_execute/data/build/settings index 5b024c1..72e1950 100644 --- a/level_1/fl_execute/data/build/settings +++ b/level_1/fl_execute/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc -lcap build_libraries-individual -lf_capability -lf_execute -lf_limit -lf_memory -lf_signal -lf_string -lf_type_array diff --git a/level_1/fl_fss/data/build/settings b/level_1/fl_fss/data/build/settings index 2a5c832..545a95d 100644 --- a/level_1/fl_fss/data/build/settings +++ b/level_1/fl_fss/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_file -lf_fss -lf_memory -lf_string -lf_type_array -lf_utf diff --git a/level_1/fl_iki/data/build/settings b/level_1/fl_iki/data/build/settings index 382c2e5..1129ea3 100644 --- a/level_1/fl_iki/data/build/settings +++ b/level_1/fl_iki/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_iki -lf_memory -lf_string -lf_utf diff --git a/level_1/fl_print/data/build/settings b/level_1/fl_print/data/build/settings index 1ddf663..de8bea0 100644 --- a/level_1/fl_print/data/build/settings +++ b/level_1/fl_print/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_color -lf_conversion -lf_file -lf_memory -lf_print -lf_string -lf_utf diff --git a/level_1/fl_signal/data/build/settings b/level_1/fl_signal/data/build/settings index f8a7105..a8ecca5 100644 --- a/level_1/fl_signal/data/build/settings +++ b/level_1/fl_signal/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_signal diff --git a/level_1/fl_status/data/build/settings b/level_1/fl_status/data/build/settings index f405af5..20fa8be 100644 --- a/level_1/fl_status/data/build/settings +++ b/level_1/fl_status/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string -lf_utf diff --git a/level_1/fl_string/data/build/settings b/level_1/fl_string/data/build/settings index a2042f5..b9b6f42 100644 --- a/level_1/fl_string/data/build/settings +++ b/level_1/fl_string/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string -lf_utf diff --git a/level_1/fl_utf/data/build/settings b/level_1/fl_utf/data/build/settings index 524ab53..352a1f4 100644 --- a/level_1/fl_utf/data/build/settings +++ b/level_1/fl_utf/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_string -lf_utf diff --git a/level_1/fl_utf_file/data/build/settings b/level_1/fl_utf_file/data/build/settings index 145721a..b46306c 100644 --- a/level_1/fl_utf_file/data/build/settings +++ b/level_1/fl_utf_file/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_file -lf_memory -lf_string -lf_utf diff --git a/level_2/fll_control_group/data/build/settings b/level_2/fll_control_group/data/build/settings index 5b124b6..266ee10 100644 --- a/level_2/fll_control_group/data/build/settings +++ b/level_2/fll_control_group/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfl_control_group -lfl_directory -lf_control_group -lf_directory -lf_file -lf_memory -lf_path -lf_string -lf_utf diff --git a/level_2/fll_error/data/build/settings b/level_2/fll_error/data/build/settings index 8f9c298..ba135ae 100644 --- a/level_2/fll_error/data/build/settings +++ b/level_2/fll_error/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfl_print -lf_color -lf_console -lf_conversion -lf_file -lf_memory -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_2/fll_execute/data/build/settings b/level_2/fll_execute/data/build/settings index 7814f2c..f4fda77 100644 --- a/level_2/fll_execute/data/build/settings +++ b/level_2/fll_execute/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc -lcap build_libraries-individual -lfl_control_group -lfl_environment -lf_account -lf_capability -lf_control_group -lf_environment -lf_execute -lf_file -lf_limit -lf_memory -lf_path -lf_signal -lf_string -lf_thread -lf_type_array -lf_utf diff --git a/level_2/fll_file/data/build/settings b/level_2/fll_file/data/build/settings index 4a2e71d..372dddf 100644 --- a/level_2/fll_file/data/build/settings +++ b/level_2/fll_file/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfl_directory -lf_color -lf_directory -lf_file -lf_memory -lf_path -lf_string -lf_utf diff --git a/level_2/fll_fss/data/build/settings b/level_2/fll_fss/data/build/settings index 1bf1caa..342d508 100644 --- a/level_2/fll_fss/data/build/settings +++ b/level_2/fll_fss/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfl_conversion -lfl_fss -lfl_status -lfl_string -lf_conversion -lf_file -lf_fss -lf_memory -lf_string -lf_type_array -lf_utf diff --git a/level_2/fll_iki/data/build/settings b/level_2/fll_iki/data/build/settings index a47bf0b..205fc73 100644 --- a/level_2/fll_iki/data/build/settings +++ b/level_2/fll_iki/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfl_iki -lf_iki -lf_memory -lf_string -lf_utf diff --git a/level_2/fll_path/data/build/settings b/level_2/fll_path/data/build/settings index cba534f..7a0177f 100644 --- a/level_2/fll_path/data/build/settings +++ b/level_2/fll_path/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lf_memory -lf_path -lf_string diff --git a/level_2/fll_print/data/build/settings b/level_2/fll_print/data/build/settings index 7a03edf..62f503f 100644 --- a/level_2/fll_print/data/build/settings +++ b/level_2/fll_print/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfl_print -lf_color -lf_conversion -lf_file -lf_memory -lf_print -lf_string -lf_utf diff --git a/level_2/fll_program/data/build/settings b/level_2/fll_program/data/build/settings index d7863b0..2ed40b8 100644 --- a/level_2/fll_program/data/build/settings +++ b/level_2/fll_program/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfl_print -lfl_string -lf_color -lf_console -lf_conversion -lf_file -lf_memory -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_2/fll_status/data/build/settings b/level_2/fll_status/data/build/settings index f463d14..765005d 100644 --- a/level_2/fll_status/data/build/settings +++ b/level_2/fll_status/data/build/settings @@ -18,6 +18,7 @@ modes_default individual build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfl_status -lfl_string -lf_conversion -lf_memory -lf_string -lf_utf diff --git a/level_3/byte_dump/data/build/settings b/level_3/byte_dump/data/build/settings index bd0cae8..727ebca 100644 --- a/level_3/byte_dump/data/build/settings +++ b/level_3/byte_dump/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_print -lfll_program -lfl_console -lfl_conversion -lfl_print -lfl_string -lf_color -lf_console -lf_conversion -lf_file -lf_memory -lf_path -lf_pipe -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_3/control/data/build/settings b/level_3/control/data/build/settings index cd4ea4c..daf814c 100644 --- a/level_3/control/data/build/settings +++ b/level_3/control/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_print -lfll_program -lfl_console -lfl_print -lfl_string -lf_color -lf_console -lf_conversion -lf_file -lf_memory -lf_path -lf_pipe -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_3/controller/data/build/settings b/level_3/controller/data/build/settings index 11a71d8..e6ed4e3 100644 --- a/level_3/controller/data/build/settings +++ b/level_3/controller/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc -lcap build_libraries-individual -lfll_control_group -lfll_error -lfll_execute -lfll_fss -lfll_path -lfll_print -lfll_program -lfl_console -lfl_control_group -lfl_conversion -lfl_directory -lfl_environment -lfl_fss -lfl_iki -lfl_print -lfl_status -lfl_string -lf_account -lf_capability -lf_color -lf_console -lf_control_group -lf_conversion -lf_directory -lf_environment -lf_execute -lf_file -lf_fss -lf_iki -lf_limit -lf_memory -lf_path -lf_pipe -lf_print -lf_signal -lf_string -lf_thread -lf_type_array -lf_utf diff --git a/level_3/fake/c/private-build.c b/level_3/fake/c/private-build.c index a5c3ca9..68f4ce1 100644 --- a/level_3/fake/c/private-build.c +++ b/level_3/fake/c/private-build.c @@ -1335,7 +1335,13 @@ extern "C" { f_string_dynamic_t source_path = f_string_dynamic_t_initialize; f_string_dynamics_t arguments = f_string_dynamics_t_initialize; - *status = fll_execute_arguments_add(fake_build_parameter_object_link_arguments_s, fake_build_parameter_object_link_arguments_s_length, &arguments); + f_array_length_t i = 0; + + for (; i < data_build.setting.build_indexer_arguments.used; ++i) { + + *status = fll_execute_arguments_add(data_build.setting.build_indexer_arguments.array[i].string, data_build.setting.build_indexer_arguments.array[i].used, &arguments); + if (F_status_is_error(*status)) break; + } // for if (F_status_is_error_not(*status)) { f_array_length_t destination_length = main.path_build_libraries_static.used + fake_build_parameter_library_name_prefix_s_length; @@ -1364,16 +1370,14 @@ extern "C" { if (F_status_is_error_not(*status)) { f_array_length_t source_length = 0; + f_array_length_t j = 0; const f_string_dynamics_t *sources[2] = { &data_build.setting.build_sources_library, &data_build.setting.build_sources_library_static, }; - f_array_length_t i = 0; - f_array_length_t j = 0; - - for (; i < 2; ++i) { + for (i = 0; i < 2; ++i) { for (j = 0; j < sources[i]->used; ++j) { @@ -1691,6 +1695,7 @@ extern "C" { const f_string_t settings_name[] = { fake_build_setting_name_build_compiler_s, fake_build_setting_name_build_indexer_s, + fake_build_setting_name_build_indexer_arguments_s, fake_build_setting_name_build_language_s, fake_build_setting_name_build_libraries_s, fake_build_setting_name_build_libraries_shared_s, @@ -1762,6 +1767,7 @@ extern "C" { const f_array_length_t settings_length[] = { fake_build_setting_name_build_compiler_s_length, fake_build_setting_name_build_indexer_s_length, + fake_build_setting_name_build_indexer_arguments_s_length, fake_build_setting_name_build_language_s_length, fake_build_setting_name_build_libraries_s_length, fake_build_setting_name_build_libraries_shared_s_length, @@ -1833,6 +1839,7 @@ extern "C" { f_string_dynamics_t *settings_value[] = { &build_compiler, &build_indexer, + &setting->build_indexer_arguments, &build_language, &setting->build_libraries, &setting->build_libraries_shared, @@ -1970,6 +1977,7 @@ extern "C" { F_false, F_false, F_false, + F_false, }; f_string_t function = "fll_fss_snatch_apart"; @@ -2597,10 +2605,10 @@ extern "C" { }; bool has_prefix_object[] = { - settings_matches[60], // version_major_prefix - settings_matches[62], // version_minor_prefix - settings_matches[64], // version_micro_prefix - settings_matches[66], // version_nano_prefix + settings_matches[61], // version_major_prefix + settings_matches[63], // version_minor_prefix + settings_matches[65], // version_micro_prefix + settings_matches[67], // version_nano_prefix }; const char *name_target[] = { diff --git a/level_3/fake/c/private-common.c b/level_3/fake/c/private-common.c index 274cdbc..b6c8072 100644 --- a/level_3/fake/c/private-common.c +++ b/level_3/fake/c/private-common.c @@ -12,6 +12,7 @@ extern "C" { const f_string_t fake_build_setting_name_build_libraries_shared_s = FAKE_build_setting_name_build_libraries_shared_s; const f_string_t fake_build_setting_name_build_libraries_static_s = FAKE_build_setting_name_build_libraries_static_s; const f_string_t fake_build_setting_name_build_indexer_s = FAKE_build_setting_name_build_indexer_s; + const f_string_t fake_build_setting_name_build_indexer_arguments_s = FAKE_build_setting_name_build_indexer_arguments_s; const f_string_t fake_build_setting_name_build_script_s = FAKE_build_setting_name_build_script_s; const f_string_t fake_build_setting_name_build_shared_s = FAKE_build_setting_name_build_shared_s; const f_string_t fake_build_setting_name_build_sources_headers_s = FAKE_build_setting_name_build_sources_headers_s; @@ -113,8 +114,6 @@ extern "C" { const f_string_t fake_build_parameter_object_name_suffix_s = FAKE_build_parameter_object_name_suffix_s; const f_string_t fake_build_parameter_object_output_s = FAKE_build_parameter_object_output_s; const f_string_t fake_build_parameter_object_static_s = FAKE_build_parameter_object_static_s; - - const f_string_t fake_build_parameter_object_link_arguments_s = FAKE_build_parameter_object_link_arguments_s; #endif // _di_fake_build_parameter_ #ifndef _di_fake_common_ @@ -132,7 +131,8 @@ extern "C" { const f_string_t fake_make_setting_define_s = FAKE_make_setting_define_s; const f_string_t fake_make_setting_environment_s = FAKE_make_setting_environment_s; const f_string_t fake_make_setting_fail_s = FAKE_make_setting_fail_s; - const f_string_t fake_make_setting_linker_s = FAKE_make_setting_linker_s; + const f_string_t fake_make_setting_indexer_s = FAKE_make_setting_indexer_s; + const f_string_t fake_make_setting_indexer_arguments_s = FAKE_make_setting_indexer_arguments_s; const f_string_t fake_make_setting_load_build_s = FAKE_make_setting_load_build_s; const f_string_t fake_make_setting_parameter_s = FAKE_make_setting_parameter_s; const f_string_t fake_make_setting_return_s = FAKE_make_setting_return_s; diff --git a/level_3/fake/c/private-common.h b/level_3/fake/c/private-common.h index f72994b..15d3455 100644 --- a/level_3/fake/c/private-common.h +++ b/level_3/fake/c/private-common.h @@ -53,6 +53,7 @@ extern "C" { f_string_dynamic_t version_nano; f_string_dynamic_t version_nano_prefix; + f_string_dynamics_t build_indexer_arguments; f_string_dynamics_t build_libraries; f_string_dynamics_t build_libraries_shared; f_string_dynamics_t build_libraries_static; @@ -159,6 +160,7 @@ extern "C" { f_string_dynamics_t_initialize, \ f_string_dynamics_t_initialize, \ f_string_dynamics_t_initialize, \ + f_string_dynamics_t_initialize, \ } #define macro_fake_build_setting_t_delete_simple(setting) \ @@ -184,6 +186,7 @@ extern "C" { macro_f_string_dynamic_t_delete_simple(setting.version_minor_prefix); \ macro_f_string_dynamic_t_delete_simple(setting.version_nano); \ macro_f_string_dynamic_t_delete_simple(setting.version_nano_prefix); \ + macro_f_string_dynamics_t_delete_simple(setting.build_indexer_arguments); \ macro_f_string_dynamics_t_delete_simple(setting.build_libraries); \ macro_f_string_dynamics_t_delete_simple(setting.build_libraries_shared); \ macro_f_string_dynamics_t_delete_simple(setting.build_libraries_static); \ @@ -226,6 +229,7 @@ extern "C" { #define FAKE_build_setting_name_build_libraries_shared_s "build_libraries_shared" #define FAKE_build_setting_name_build_libraries_static_s "build_libraries_static" #define FAKE_build_setting_name_build_indexer_s "build_indexer" + #define FAKE_build_setting_name_build_indexer_arguments_s "build_indexer_arguments" #define FAKE_build_setting_name_build_script_s "build_script" #define FAKE_build_setting_name_build_shared_s "build_shared" #define FAKE_build_setting_name_build_sources_headers_s "build_sources_headers" @@ -295,6 +299,7 @@ extern "C" { #define fake_build_setting_name_build_libraries_shared_s_length 22 #define fake_build_setting_name_build_libraries_static_s_length 22 #define fake_build_setting_name_build_indexer_s_length 13 + #define fake_build_setting_name_build_indexer_arguments_s_length 23 #define fake_build_setting_name_build_script_s_length 12 #define fake_build_setting_name_build_shared_s_length 12 #define fake_build_setting_name_build_sources_headers_s_length 21 @@ -364,6 +369,7 @@ extern "C" { extern const f_string_t fake_build_setting_name_build_libraries_shared_s; extern const f_string_t fake_build_setting_name_build_libraries_static_s; extern const f_string_t fake_build_setting_name_build_indexer_s; + extern const f_string_t fake_build_setting_name_build_indexer_arguments_s; extern const f_string_t fake_build_setting_name_build_script_s; extern const f_string_t fake_build_setting_name_build_shared_s; extern const f_string_t fake_build_setting_name_build_sources_headers_s; @@ -427,7 +433,7 @@ extern "C" { extern const f_string_t fake_build_setting_name_version_nano_prefix_s; extern const f_string_t fake_build_setting_name_version_target_s; - #define fake_build_setting_total_d 68 + #define fake_build_setting_total_d 69 #define FAKE_build_setting_default_version_s "0" #define FAKE_build_setting_default_version_prefix_s "." @@ -602,12 +608,6 @@ extern "C" { extern const f_string_t fake_build_parameter_object_name_suffix_s; extern const f_string_t fake_build_parameter_object_output_s; extern const f_string_t fake_build_parameter_object_static_s; - - #define FAKE_build_parameter_object_link_arguments_s "rcs" - - #define fake_build_parameter_object_link_arguments_s_length 3 - - extern const f_string_t fake_build_parameter_object_link_arguments_s; #endif // _di_fake_build_parameter_ /** @@ -675,29 +675,32 @@ extern "C" { #define macro_fake_make_setting_t_delete_simple(setting) \ macro_f_string_map_multis_t_delete_simple(setting.parameter) - #define FAKE_make_setting_compiler_s "compiler" - #define FAKE_make_setting_define_s "define" - #define FAKE_make_setting_environment_s "environment" - #define FAKE_make_setting_fail_s "fail" - #define FAKE_make_setting_linker_s "linker" - #define FAKE_make_setting_load_build_s "load_build" - #define FAKE_make_setting_parameter_s "parameter" - #define FAKE_make_setting_return_s "return" - - #define fake_make_setting_compiler_s_length 8 - #define fake_make_setting_define_s_length 6 - #define fake_make_setting_environment_s_length 11 - #define fake_make_setting_fail_s_length 4 - #define fake_make_setting_linker_s_length 6 - #define fake_make_setting_load_build_s_length 10 - #define fake_make_setting_parameter_s_length 9 - #define fake_make_setting_return_s_length 6 + #define FAKE_make_setting_compiler_s "compiler" + #define FAKE_make_setting_define_s "define" + #define FAKE_make_setting_environment_s "environment" + #define FAKE_make_setting_fail_s "fail" + #define FAKE_make_setting_indexer_s "indexer" + #define FAKE_make_setting_indexer_arguments_s "indexer_arguments" + #define FAKE_make_setting_load_build_s "load_build" + #define FAKE_make_setting_parameter_s "parameter" + #define FAKE_make_setting_return_s "return" + + #define fake_make_setting_compiler_s_length 8 + #define fake_make_setting_define_s_length 6 + #define fake_make_setting_environment_s_length 11 + #define fake_make_setting_fail_s_length 4 + #define fake_make_setting_indexer_s_length 7 + #define fake_make_setting_indexer_arguments_s_length 17 + #define fake_make_setting_load_build_s_length 10 + #define fake_make_setting_parameter_s_length 9 + #define fake_make_setting_return_s_length 6 extern const f_string_t fake_make_setting_compiler_s; extern const f_string_t fake_make_setting_define_s; extern const f_string_t fake_make_setting_environment_s; extern const f_string_t fake_make_setting_fail_s; - extern const f_string_t fake_make_setting_linker_s; + extern const f_string_t fake_make_setting_indexer_s; + extern const f_string_t fake_make_setting_indexer_arguments_s; extern const f_string_t fake_make_setting_load_build_s; extern const f_string_t fake_make_setting_parameter_s; extern const f_string_t fake_make_setting_return_s; diff --git a/level_3/fake/c/private-make.c b/level_3/fake/c/private-make.c index df07087..e54f416 100644 --- a/level_3/fake/c/private-make.c +++ b/level_3/fake/c/private-make.c @@ -423,7 +423,7 @@ extern "C" { } f_string_range_t *range_compiler = 0; - f_string_range_t *range_linker = 0; + f_string_range_t *range_indexer = 0; data_make->setting_make.parameter.array[0].value.used = 1; data_make->setting_make.load_build = F_true; @@ -565,16 +565,16 @@ extern "C" { fake_print_warning_settings_content_multiple(main, main.file_data_build_fakefile.string, fake_make_setting_fail_s); } } - else if (fl_string_dynamic_partial_compare_string(fake_make_setting_linker_s, data_make->buffer, fake_make_setting_linker_s_length, settings.objects.array[i]) == F_equal_to) { - if (range_linker) { - fake_print_warning_settings_content_multiple(main, main.file_data_build_fakefile.string, fake_make_setting_linker_s); + else if (fl_string_dynamic_partial_compare_string(fake_make_setting_indexer_s, data_make->buffer, fake_make_setting_indexer_s_length, settings.objects.array[i]) == F_equal_to) { + if (range_indexer) { + fake_print_warning_settings_content_multiple(main, main.file_data_build_fakefile.string, fake_make_setting_indexer_s); } else { if (settings.contents.array[i].used) { - range_linker = &settings.contents.array[i].array[0]; + range_indexer = &settings.contents.array[i].array[0]; if (settings.contents.array[i].used > 1) { - fake_print_warning_settings_content_multiple(main, main.file_data_build_fakefile.string, fake_make_setting_linker_s); + fake_print_warning_settings_content_multiple(main, main.file_data_build_fakefile.string, fake_make_setting_indexer_s); } } else { @@ -582,6 +582,48 @@ extern "C" { } } } + else if (fl_string_dynamic_partial_compare_string(fake_make_setting_indexer_arguments_s, data_make->buffer, fake_make_setting_indexer_arguments_s_length, settings.objects.array[i]) == F_equal_to) { + f_array_length_t j = 0; + + // clear all existing indexer arguments. + for (; j < data_make->setting_build.build_indexer_arguments.used; ++j) { + data_make->setting_build.build_indexer_arguments.array[j].used = 0; + } // for + + data_make->setting_build.build_indexer_arguments.used = 0; + + if (settings.contents.array[i].used > data_make->setting_build.build_indexer_arguments.size) { + *status = f_string_dynamics_increase_by(F_memory_default_allocation_small_d, &data_make->setting_build.build_indexer_arguments); + + if (F_status_is_error(*status)) { + fll_error_print(main.error, F_status_set_fine(*status), "f_string_dynamic_terminate_after", F_true); + break; + } + } + + for (j = 0; j < settings.contents.array[i].used; ++j) { + + *status = f_string_dynamic_partial_append_nulless(data_make->buffer, settings.contents.array[i].array[j], &data_make->setting_build.build_indexer_arguments.array[data_make->setting_build.build_indexer_arguments.used]); + + if (F_status_is_error(*status)) { + fll_error_print(main.error, F_status_set_fine(*status), "f_string_dynamic_partial_append_nulless", F_true); + break; + } + + *status = f_string_dynamic_terminate_after(&data_make->setting_build.build_indexer_arguments.array[data_make->setting_build.build_indexer_arguments.used]); + + if (F_status_is_error(*status)) { + fll_error_print(main.error, F_status_set_fine(*status), "f_string_dynamic_terminate_after", F_true); + break; + } + + ++data_make->setting_build.build_indexer_arguments.used; + } // for + + if (F_status_is_error(*status)) break; + + *status = F_none; + } else if (fl_string_dynamic_partial_compare_string(fake_make_setting_load_build_s, data_make->buffer, fake_make_setting_load_build_s_length, settings.objects.array[i]) == F_equal_to) { if (unmatched_load) { if (settings.contents.array[i].used) { @@ -684,9 +726,9 @@ extern "C" { *status = f_string_dynamic_partial_append(data_make->buffer, *range_compiler, &data_make->setting_build.build_compiler); } - if (F_status_is_error_not(*status) && range_linker) { + if (F_status_is_error_not(*status) && range_indexer) { data_make->setting_build.build_indexer.used = 0; - *status = f_string_dynamic_partial_append(data_make->buffer, *range_linker, &data_make->setting_build.build_indexer); + *status = f_string_dynamic_partial_append(data_make->buffer, *range_indexer, &data_make->setting_build.build_indexer); } if (F_status_is_error(*status)) { @@ -736,14 +778,17 @@ extern "C" { f_status_t status_validate = F_none; f_string_dynamic_t combined = f_string_dynamic_t_initialize; - for (f_array_length_t i = 0; i < define.used; ++i) { + f_array_length_t i = 0; + f_array_length_t j = 0; + + for (; i < define.used; ++i) { status_validate = fake_make_operate_validate_define_name(define.array[i].name); if (status_validate) { combined.used = 0; - for (f_array_length_t j = 0; j < define.array[i].value.used; ++j) { + for (j = 0; j < define.array[i].value.used; ++j) { *status = f_string_dynamic_mash(f_string_space_s, 1, define.array[i].value.array[j], &combined); @@ -1107,7 +1152,7 @@ extern "C" { } if (main->output.verbosity != f_console_verbosity_quiet) { - fll_print_format("%c$[Making project.%]%c", main->output.to.stream, f_string_eol_s[0], main->context.set.important, main->context.set.important, f_string_eol_s[0]); + fll_print_format("%c%[Making project.%]%c", main->output.to.stream, f_string_eol_s[0], main->context.set.important, main->context.set.important, f_string_eol_s[0]); } f_status_t status = F_none; @@ -2053,7 +2098,7 @@ extern "C" { flockfile(main->output.to.stream); fl_print_format("%c%[Processing Section '%]", main->output.to.stream, f_string_eol_s[0], main->context.set.important, main->context.set.important); - fl_print_format("%[%Q%]", main->output.to.stream, main->context.set.notable, section->name, main->context.set.notable); + fl_print_format("%[%/Q%]", main->output.to.stream, main->context.set.notable, data_make->buffer, section->name, main->context.set.notable); fl_print_format("%['.%]%c", main->output.to.stream, main->context.set.important, main->context.set.important, f_string_eol_s[0]); funlockfile(main->output.to.stream); @@ -4047,9 +4092,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%c%[%SFailed with return code '%]", data_make->error.to.stream, f_string_eol_s[0], data_make->error.context, data_make->error.prefix, data_make->error.context); - fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, data_make->setting_make.parameter.array[0].value.array[0], data_make->error.notable); - fl_print_format("%['.%]%c", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s[0]); + fl_print_format("%c%[%SFailed with return code %]", data_make->error.to.stream, f_string_eol_s[0], data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%[%i%]", data_make->error.to.stream, data_make->error.notable, return_code, data_make->error.notable); + fl_print_format("%[.%]%c", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s[0]); funlockfile(data_make->error.to.stream); } diff --git a/level_3/fake/data/build/fakefile b/level_3/fake/data/build/fakefile index 23ededa..d853245 100644 --- a/level_3/fake/data/build/fakefile +++ b/level_3/fake/data/build/fakefile @@ -6,6 +6,7 @@ settings: compiler gcc indexer ar + indexer_arguments rcs environment diff --git a/level_3/fake/data/build/fakefile-example-bzip2 b/level_3/fake/data/build/fakefile-example-bzip2 index f2beb43..558b937 100644 --- a/level_3/fake/data/build/fakefile-example-bzip2 +++ b/level_3/fake/data/build/fakefile-example-bzip2 @@ -15,6 +15,7 @@ settings: compiler gcc indexer ar + indexer_arguments rcs main: operate bzip2 diff --git a/level_3/fake/data/build/settings b/level_3/fake/data/build/settings index 5dfd2d4..c3cfd4c 100644 --- a/level_3/fake/data/build/settings +++ b/level_3/fake/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc -lcap build_libraries-individual -lfll_error -lfll_execute -lfll_file -lfll_fss -lfll_path -lfll_print -lfll_program -lfl_console -lfl_control_group -lfl_conversion -lfl_directory -lfl_environment -lfl_fss -lfl_iki -lfl_print -lfl_status -lfl_string -lf_account -lf_capability -lf_color -lf_console -lf_control_group -lf_conversion -lf_directory -lf_environment -lf_execute -lf_file -lf_fss -lf_iki -lf_limit -lf_memory -lf_path -lf_print -lf_signal -lf_string -lf_thread -lf_type_array -lf_utf diff --git a/level_3/fake/data/build/settings-example-bzip2 b/level_3/fake/data/build/settings-example-bzip2 index dcc4722..611aac0 100644 --- a/level_3/fake/data/build/settings-example-bzip2 +++ b/level_3/fake/data/build/settings-example-bzip2 @@ -18,6 +18,7 @@ version_target major build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_sources_program blocksort.c huffman.c crctable.c randtable.c compress.c decompress.c bzlib.c bzip2.c diff --git a/level_3/fake/data/build/settings-example-bzip2recover b/level_3/fake/data/build/settings-example-bzip2recover index eff7569..18a8acf 100644 --- a/level_3/fake/data/build/settings-example-bzip2recover +++ b/level_3/fake/data/build/settings-example-bzip2recover @@ -18,6 +18,7 @@ version_target major build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_sources_program bzip2recover.c diff --git a/level_3/fake/documents/fakefile.txt b/level_3/fake/documents/fakefile.txt index e58c6fb..6c50454 100644 --- a/level_3/fake/documents/fakefile.txt +++ b/level_3/fake/documents/fakefile.txt @@ -17,6 +17,9 @@ Fakefile Documentation: - compiler\: This represents the name of the compiler program to use, such as "gcc". + The programs "gcc" and "clang" are known to work. + Many of the parameters in the settings file can be changed if using a non-GCC, but there may be certain hard-coded functionality that may need to be changed. + When specified and "load_build" is "true", then this will override the "build_compiler" specified in the loaded build settings. - define\: @@ -43,9 +46,16 @@ Fakefile Documentation: - indexer\: This represents the name of the indexer program to use, such as "ar". + An indexer is often called a linker. + + Similar to "build_compiler", any linker that supports the "ar" program parameters is effectively supported. When specified and "load_build" is "true", then this will override the "build_indexer" specified in the loaded build settings. + - indexer_arguments\: + This represents arguments needed to build an archive file from object files, such as "rcs". + These arguments are placed immediately before the object files passed to the "indexer" program. + - load_build\: This represents whether or not to load the load the build settings file. The first Content value may be "true" to load the build settings and "false" to not load the build settings file. diff --git a/level_3/fake/documents/settings.txt b/level_3/fake/documents/settings.txt index 62c190c..5a24645 100644 --- a/level_3/fake/documents/settings.txt +++ b/level_3/fake/documents/settings.txt @@ -5,59 +5,66 @@ Settings Documentation: The settings file is designed for very simple compilations that represent a single named program and/or a single named library. For specific details on the allowed formatting, see the settings.txt under the specifications folder. - build_compiler\: - Expects the name of the compiler, which generally should not be the path to the file, just the executable name. + - build_compiler\: + This represents the name of the compiler program to use, such as "gcc". + The programs "gcc" and "clang" are known to work. - Many of the parameters in the settings file can be changed if using a non-GCC, but there is certain hard-coded functionality that may still need changing. + Many of the parameters in the settings file can be changed if using a non-GCC, but there may be certain hard-coded functionality that may need to be changed. + + - build_indexer\: + This represents the name of the indexer program to use, such as "ar". + An indexer is often called a linker. - build_indexer\: - Exactly like build_compiler, except for the linker, aka indexer. The default behavior is to support the GNU "ar" program. Similar to "build_compiler", any linker that supports the "ar" program parameters is effectively supported. - build_language\: + - build_indexer_arguments\: + This represents arguments needed to build an archive file from object files, such as "rcs". + These arguments are placed immediately before the object files passed to the "indexer" program. + + - build_language\: The programming language to build with. The languages "c" and "c++" are supported (with "bash" as a consideration for support). The "bash" language is not currently implemented and needs some consideration because there is nothing to compile. The "bash" language will likely build a set of individual scripts, and perhaps script dependencies, into a single Bash script. - build_libraries\: + - build_libraries\: A collection of libraries to be linked against. This should include the compiler specific parameter parts, such as the "-l" prefix in "-lc". The order of these may matter if the compiler (such as GCC or a linker via GCC) is order sensitive. - build_libraries_shared\: + - build_libraries_shared\: A collection of libraries to be linked against. This should include the compiler specific parameter parts, such as the "-l" prefix in "-lc". The order of these may matter if the compiler (such as GCC or a linker via GCC) is order sensitive. These are applied to only shared builds. - build_libraries_static\: + - build_libraries_static\: A collection of libraries to be linked against. This should include the compiler specific parameter parts, such as the "-l" prefix in "-lc". The order of these may matter if the compiler (such as GCC or a linker via GCC) is order sensitive. These are applied to only static builds. - build_script\: + - build_script\: When "yes", the build process will build any scripts, such as a Bash script. This is currently not implemented. - build_shared\: + - build_shared\: When "yes", the build process will compile any source code for any supported language that supports shared library linking. - build_sources_headers\: + - build_sources_headers\: A collection of header files. May include a relative sub-path to each individual header (such as: "level_0/a.h level_0/b.h level_1/c.h"). The order of these may matter if the compiler (such as GCC or a linker via GCC) is order sensitive. - build_sources_headers_shared\: + - build_sources_headers_shared\: A collection of header files. May include a relative sub-path to each individual header (such as: "level_0/a.h level_0/b.h level_1/c.h"). The order of these may matter if the compiler (such as GCC or a linker via GCC) is order sensitive. Be careful not to have any conflicting names between this and build_sources_headers_static in case of when static and shared builds are both enabled. These are applied to only shared builds. - build_sources_headers_static\: + - build_sources_headers_static\: A collection of header files. May include a relative sub-path to each individual header (such as: "level_0/a.h level_0/b.h level_1/c.h"). The order of these may matter if the compiler (such as GCC or a linker via GCC) is order sensitive. @@ -65,216 +72,216 @@ Settings Documentation: Be careful not to have any conflicting names between this and build_sources_headers_shared in case of when static and shared builds are both enabled. These are applied to only static builds. - build_sources_library\: + - build_sources_library\: A collection of library related source files. May include a relative sub-path to each individual source file (such as: "level_0/a.c level_0/b.c level_1/c.c"). The order of these may matter if the compiler (such as GCC or a linker via GCC) is order sensitive. - build_sources_library_shared\: + - build_sources_library_shared\: A collection of library related source files. May include a relative sub-path to each individual source file (such as: "level_0/a.c level_0/b.c level_1/c.c"). The order of these may matter if the compiler (such as GCC or a linker via GCC) is order sensitive. These are applied to only shared builds. - build_sources_library_static\: + - build_sources_library_static\: A collection of library related source files. May include a relative sub-path to each individual source file (such as: "level_0/a.c level_0/b.c level_1/c.c"). The order of these may matter if the compiler (such as GCC or a linker via GCC) is order sensitive. These are applied to only static builds. - build_sources_program\: + - build_sources_program\: A collection of program related source files. May include a relative sub-path to each individual source file (such as: "level_0/a.c level_0/b.c level_1/c.c"). The order of these may matter if the compiler (such as GCC or a linker via GCC) is order sensitive. These files are used when compiling the program. - build_sources_program_shared\: + - build_sources_program_shared\: A collection of program related source files. May include a relative sub-path to each individual source file (such as: "level_0/a.c level_0/b.c level_1/c.c"). The order of these may matter if the compiler (such as GCC or a linker via GCC) is order sensitive. These files are used when compiling the program for shared builds. - build_sources_program_static\: + - build_sources_program_static\: A collection of program related source files. May include a relative sub-path to each individual source file (such as: "level_0/a.c level_0/b.c level_1/c.c"). The order of these may matter if the compiler (such as GCC or a linker via GCC) is order sensitive. These files are used when compiling the program for static builds. - build_sources_script\: + - build_sources_script\: A collection of script files. These are settings files used by the project and are simply copied over to the build directory. Unless a pre-process script (or in theory post-process script) is configured to alter these, they are not modified. Unlike the "compile_language" setting "bash", this is not for built Bash script, but is instead for any valid scripting language (including Bash). These could be in any language. - build_sources_setting\: + - build_sources_setting\: A collection of settings files. These are settings files used by the project and are simply copied over to the build directory. Unless a pre-process script (or in theory post-process script) is configured to alter these, they are not modified. - build_static\: + - build_static\: When "yes", the build process will compile any source code for any supported language that supports static library linking. - defines\: + - defines\: A collection of macro names. This includes the any compiler specific parameters required by the "build_compiler", such as the "-D" used by gcc and clang. These will be appended to the compiler for compiled languages such as C and C++. These are applied to both shared and static builds. - defines_library\: + - defines_library\: A collection of macro names. This includes the any compiler specific parameters required by the "build_compiler", such as the "-D" used by gcc and clang. These will be appended to the compiler for compiled languages such as C and C++. These are applied to only library builds. - defines_library_shared\: + - defines_library_shared\: A collection of macro names. This includes the any compiler specific parameters required by the "build_compiler", such as the "-D" used by gcc and clang. These will be appended to the compiler for compiled languages such as C and C++. These are applied to only shared library builds. - defines_library_static\: + - defines_library_static\: A collection of macro names. This includes the any compiler specific parameters required by the "build_compiler", such as the "-D" used by gcc and clang. These will be appended to the compiler for compiled languages such as C and C++. These are applied to only static library builds. - defines_program\: + - defines_program\: A collection of macro names. This includes the any compiler specific parameters required by the "build_compiler", such as the "-D" used by gcc and clang. These will be appended to the compiler for compiled languages such as C and C++. These are applied to only program builds. - defines_program_shared\: + - defines_program_shared\: A collection of macro names. This includes the any compiler specific parameters required by the "build_compiler", such as the "-D" used by gcc and clang. These will be appended to the compiler for compiled languages such as C and C++. These are applied to only shared program builds. - defines_program_static\: + - defines_program_static\: A collection of macro names. This includes the any compiler specific parameters required by the "build_compiler", such as the "-D" used by gcc and clang. These will be appended to the compiler for compiled languages such as C and C++. These are applied to only shared program builds. - defines_shared\: + - defines_shared\: A collection of macro names. This includes the any compiler specific parameters required by the "build_compiler", such as the "-D" used by gcc and clang. These will be appended to the compiler for compiled languages such as C and C++. These are applied to only shared builds. - defines_static\: + - defines_static\: A collection of macro names. This includes the any compiler specific parameters required by the "build_compiler", such as the "-D" used by gcc and clang. These will be appended to the compiler for compiled languages such as C and C++. These are applied to only static builds. - environment\: + - environment\: A collection of environment names to pass from the callers environment into the executed programs environment. For security and integrity reasons, all environment variables are removed when calling user-space programs, such as "gcc". There are times when someone desires that an environment variable be exposed to the user-space programs. Add them here and they will be available in the environment of all user-space programs executed. - flags\: + - flags\: A collection of any flag supported by the "build_compiler", such as gcc. This includes the any compiler specific parameters to defined this, such as the "-f" used by gcc and clang. These are applied to both shared and static builds. - flags_library\: + - flags_library\: A collection of any flag supported by the "build_compiler", such as gcc. This includes the any compiler specific parameters to defined this, such as the "-f" used by gcc and clang. These are applied when building a library. - flags_library_shared\: + - flags_library_shared\: A collection of any flag supported by the "build_compiler", such as gcc. This includes the any compiler specific parameters to defined this, such as the "-f" used by gcc and clang. These are applied to only library shared builds. - flags_library_static\: + - flags_library_static\: A collection of any flag supported by the "build_compiler", such as gcc. This includes the any compiler specific parameters to defined this, such as the "-f" used by gcc and clang. These are applied to only library static builds. - flags_program\: + - flags_program\: A collection of any flag supported by the "build_compiler", such as gcc. This includes the any compiler specific parameters to defined this, such as the "-f" used by gcc and clang. These are applied when building a program. - flags_program_shared\: + - flags_program_shared\: A collection of any flag supported by the "build_compiler", such as gcc. This includes the any compiler specific parameters to defined this, such as the "-f" used by gcc and clang. These are applied to only program shared builds. - flags_program_static\: + - flags_program_static\: A collection of any flag supported by the "build_compiler", such as gcc. This includes the any compiler specific parameters to defined this, such as the "-f" used by gcc and clang. These are applied to only program static builds. - flags_shared\: + - flags_shared\: A collection of any flag supported by the "build_compiler", such as gcc. This includes the any compiler specific parameters to defined this, such as the "-f" used by gcc and clang. These are applied to only shared builds. - flags_static\: + - flags_static\: A collection of any flag supported by the "build_compiler", such as gcc. This includes the any compiler specific parameters to defined this, such as the "-f" used by gcc and clang. These are applied to only static builds. - modes\: + - modes\: A collection of available build modes. Build modes provide custom variants of the build process where certain settings are appended onto others. See the settings.txt specification for a list of which setting names this applies to. - modes_default\: + - modes_default\: The name of the default mode to use when no mode is specified. This must be one of the modes specified in the "modes" setting. - path_headers\: + - path_headers\: A sub-path in which headers are to be installed under. For example, the FLL project might use the "level_0", "level_1", etc.. headers without requiring that structure within the source. A resulting build destination for a path_headers of "level_0" would be something like "build/includes/level_0/". If "path_headers" is "level_0", "path_headers_preserve" is "yes", and "build_sources_headers" has "xxx/a.h yyy/zzz/b.h", then the headers would be at: "build/includes/level_0/xxx/a.h build/includes/level_0/yyy/zzz/b.h" - path_headers_preserve\: + - path_headers_preserve\: When "yes" the relative directory structure in the source (as defined in "build_sources_headers") is preserved. If the "build_sources_headers" has the header files "xxx/a.h yyy/zzz/b.h" and this is "yes", then the directories "xxx/" and "yyy/zzz/" are created and the files are stored within them. If the "build_sources_headers" has the header files "xxx/a.h yyy/zzz/b.h" and this is "no", then the directories "xxx/" and "yyy/zzz/" are stripped before installing. When this is "no" and the "build_sources_headers" has header files "xxx/a.h yyy/a.h", then one of the "a.h" files will be overwritten, depending on order they were supplied. - path_language\: + - path_language\: A sub-path in which to find the source files for the currently defined language. If the "build_language" is changed, it is recommended to change this as well to match. - path_library_script\: + - path_library_script\: A sub-path representing when the built library script files are placed. This is currently not implemented. - path_library_shared\: + - path_library_shared\: A sub-path representing when the built shared library files are placed. - path_library_static\: + - path_library_static\: A sub-path representing when the built shared library files are placed. - path_program_script\: + - path_program_script\: A sub-path representing when the built program script files are placed. This is currently not implemented. - path_program_shared\: + - path_program_shared\: A sub-path representing when the built shared program files are placed. - path_program_static\: + - path_program_static\: A sub-path representing when the built shared program files are placed. - path_sources\: + - path_sources\: A sub-path representing when the built shared program files are placed. - path_standard\: + - path_standard\: When "yes", the sources path will be built using the sources path with the language, such as "sources/c/", ignoring "path_sources" completely. When "no", the default sources path structure is not used and instead "path_sources" is used. When the parameter -S/--sources is specified, such as "-S xxx", then when "yes" is used path would be "xxx/c/" and when "no" path would be "xxx/". The default behavior is "yes". - process_post\: + - process_post\: The filename (relative to the "data/build/" directory) of a script to execute after the "build" operation successfully completes. A small subset of parameters from the main execution are passed to this script during execution as parameters (using short parameter codes)\: Color context parameters, such as: "+l", "+n", and "+d". @@ -288,7 +295,7 @@ Settings Documentation: Sources Path parameter, such as "-S X', whereas "X" is any valid argument associated with "-S". Work Path parameter, such as "-w X', whereas "X" is any valid argument associated with "-w". - process_pre\: + - process_pre\: The filename (relative to the "data/build/" directory) of a script to execute before the "build" operation is executed. A small subset of parameters from the main execution are passed to this script during execution as parameters (using short parameter codes)\: Color context parameters, such as: "+l", "+n", and "+d". @@ -302,28 +309,28 @@ Settings Documentation: Sources Path parameter, such as "-S X', whereas "X" is any valid argument associated with "-S". Work Path parameter, such as "-w X', whereas "X" is any valid argument associated with "-w". - project_name\: + - project_name\: The name of the project. If program sources are specified, then this will be used as the program name. If library sources are specified, then this will be used in the library name, such as "libX.so" where "X" would be the "project_name" value. - search_exclusive\: + - search_exclusive\: When "yes", the search path during compile for shared libraries will only include shared library paths. When "no", the search path during compile time for shared libraries will include shared library paths followed by static library paths. Setting this to "yes" helps prevent static libraries from ending up in shared libraries (very useful when bootstrapping a system). Setting this to "no" allows for including static libraries if no shared libraries are found but static are. This does not alter search paths introduced automatically by the "build_compiler" or "build_indexer", so it is still possible for static libraries to end up even when this is set to "yes". - search_shared\: + - search_shared\: When "yes", shared library paths are searched during compile. Both this and "search_static" cannot be "no" at the same time. The default behavior is "yes". - search_shared\: + - search_shared\: When "yes", static library paths are searched during compile. Both this and search_shared cannot be "no" at the same time. - version_file\: + - version_file\: Designates which version should be used when building the symbolic links. Any version prefixes are used as defined. A Symbolic link is created against this created file such that "libX.so" is a link to "libX.so.A". @@ -334,59 +341,59 @@ Settings Documentation: When "micro" is used, the file created is "libX.so.A.B.C", whereas "X" is the "project_name" and "A.B.C" is the major, minor, and micro versions, respectively. When "nano" is used, the file created is "libX.so.A.B.C.D", whereas "X" is the "project_name" and "A.B.C.D" is the major, minor, micro, and nano versions, respectively. - version_major\: + - version_major\: The major version number (or in theory any characters allowed in a filename). This should generally be a positive number or 0. Anything else is currently untested but allowed. With a structure of "A.B.C", the major version would be the "A". - version_major_prefix\: + - version_major_prefix\: The version major prefix is the character used to designate the start of the major version. This can zero or more characters. The default is an empty string. With a structure of "A.B.C", the major version prefix would be before the "A". This is only added if "version_major" is not empty. - version_minor\: + - version_minor\: The minor version number (or in theory any characters allowed in a filename). This should generally be a positive number or 0. Anything else is currently untested but allowed. With a structure of "A.B.C", the minor version would be the "B". - version_minor_prefix\: + - version_minor_prefix\: The version minor prefix is the character used to separate the major from the minor. This can zero or more characters. The default prefix is an ASCII period character "." if and only if "version_minor" is not an empty string. With a structure of "A.B.C", the minor version prefix would be the "." before the "B". This is only added if "version_minor" is not empty. - version_micro\: + - version_micro\: The micro version number (or in theory any characters allowed in a filename). This should generally be a positive number or 0. Anything else is currently untested but allowed. With a structure of "A.B.C", the micro version would be the "C". - version_micro_prefix\: + - version_micro_prefix\: The version micro prefix is the character used to separate the minor from the micro. This can zero or more characters. The default prefix is an ASCII period character "." if and only if "version_micro" is not an empty string. With a structure of "A.B.C", the micro version prefix would be the "." before the "C". This is only added if "version_micro" is not empty. - version_nano\: + - version_nano\: The nano version number (or in theory any characters allowed in a filename). This should generally be a positive number or 0. Anything else is currently untested but allowed. With a structure of "A.B.C.D", the micro version prefix would be the "." before the "D". - version_nano_prefix\: + - version_nano_prefix\: The version nano prefix is the character used to separate the micro from the nano. This can zero or more characters. The default prefix is an ASCII period character "." if and only if "version_nano" is not an empty string. With a structure of "A.B.C.D", the minor version would be the "." before the "D". This is only added if "version_nano" is not empty. - version_target\: + - version_target\: Designates which version should be used when linking the shared library. Any version prefixes are used as defined. The default target is "micro". diff --git a/level_3/fake/specifications/fakefile.txt b/level_3/fake/specifications/fakefile.txt index 4954e27..7eddd77 100644 --- a/level_3/fake/specifications/fakefile.txt +++ b/level_3/fake/specifications/fakefile.txt @@ -30,6 +30,7 @@ Fakefile Specification: - environment: Zero or more Content representing valid environment variable names (alpha-numeric with underscore, but cannot begin with a number). - fail: Only one Content, which must be either "exit", "warn" or "ignore" (quotes not required) (case-sensitive). - indexer: Only one Content, which must only be a valid filename. + - indexer_arguments: Zero or more arguments supported by the indexer specified in "build_indexer". - load_build: Only one Content, which must be either "yes" or "no" (quotes not required) (case-sensitive). - parameter: First Content represents variable name (case-sensitive), remaining Content represents varaiable value for IKI substitution. @@ -84,7 +85,7 @@ Fakefile Specification: - success: has no other Content. The "if" Section Operation conditions and numbers\: - The numbers may be represented in any of the forms: + The numbers may be represented in any of the forms\: 1) decimal: all numbers without a base-type prefix are of base-type 10, referred to as decimal. 2) binary: all numbers with the prefix "0b" (uppercase or lowercase 'b') are of base-type 2, referred to as binary. 3) octal: all numbers with the prefix "0o" (that is zero followed by the letter o, uppercase or lowercase 'o') are of base-type 8, referred to as octal. @@ -95,7 +96,7 @@ Fakefile Specification: (At this time) The numbers may only be whole numbers. Note: there are plans to impose no limits on the number size or any decimal values, but this requires significant work is not to be implemented at this time. - Only the following "if" Section Operation conditions operate using these numbers: + Only the following "if" Section Operation conditions operate using these numbers\: - > - < - >= diff --git a/level_3/fake/specifications/settings.txt b/level_3/fake/specifications/settings.txt index 46731ff..1e514d6 100644 --- a/level_3/fake/specifications/settings.txt +++ b/level_3/fake/specifications/settings.txt @@ -10,106 +10,107 @@ Settings Specification: Additional restrictions are applied to each Content depending on each specific Object name (see below). Object Names and their respective Content purpose/restrictions\: - "build_compiler": Must only be a valid filename. - "build_indexer": Must only be a valid filename. - "build_language": Must only be one of: "bash", "c", or "c++". - "build_libraries": Must only contain any number of valid library include arguments that are valid for the compiler defined in "build_compiler" Object. - "build_libraries_shared": Must only contain any number of valid library include arguments that are valid for the compiler defined in "build_compiler" Object. - "build_libraries_static": Must only contain any number of valid library include arguments that are valid for the compiler defined in "build_compiler" Object. - "build_script": Must only one of: "yes" or "no". - "build_shared": Must only one of: "yes" or "no". - "build_sources_headers": Must only contain any number of valid filenames. - "build_sources_headers_shared": Must only contain any number of valid filenames. - "build_sources_headers_static": Must only contain any number of valid filenames. - "build_sources_library": Must only contain any number of valid filenames. - "build_sources_library_shared": Must only contain any number of valid filenames. - "build_sources_library_static": Must only contain any number of valid filenames. - "build_sources_program": Must only contain any number of valid filenames. - "build_sources_program_shared": Must only contain any number of valid filenames. - "build_sources_program_static": Must only contain any number of valid filenames. - "build_sources_script": Must only contain any number of valid filenames. - "build_sources_setting": Must only contain any number of valid filenames. - "build_static": Must only one of: "yes" or "no". - "defines": Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". - "defines_library": Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". - "defines_library_shared": Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". - "defines_library_static": Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". - "defines_program": Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". - "defines_program_shared": Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". - "defines_program_static": Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". - "defines_shared": Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". - "defines_static": Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". - "environment": Environment variable names, case-sensitive, usually uppercase. May only contain characters allowed in an environment variable. - "flags": Must only contain any number of parameters supported by the compiler specified in "build_compiler". - "flags_library": Must only contain any number of parameters supported by the compiler specified in "build_compiler". - "flags_library_shared": Must only contain any number of parameters supported by the compiler specified in "build_compiler". - "flags_library_static": Must only contain any number of parameters supported by the compiler specified in "build_compiler". - "flags_program": Must only contain any number of parameters supported by the compiler specified in "build_compiler". - "flags_program_shared": Must only contain any number of parameters supported by the compiler specified in "build_compiler". - "flags_program_static": Must only contain any number of parameters supported by the compiler specified in "build_compiler". - "flags_shared": Must only contain any number of parameters supported by the compiler specified in "build_compiler". - "flags_static": Must only contain any number of parameters supported by the compiler specified in "build_compiler". - "modes": Any valid word character, '-', or '+'. - "modes_default": May only be a single complete Content word defined in "modes" Object. - "path_headers": Must be a single valid path. - "path_headers_preserve": Must only be one of "yes" or "no". - "path_language": Must be a single valid path. - "path_library_script": Must be a single valid path. - "path_library_shared": Must be a single valid path. - "path_library_static": Must be a single valid path. - "path_program_script": Must be a single valid path. - "path_program_shared": Must be a single valid path. - "path_program_static": Must be a single valid path. - "path_sources": Must only be a valid directory path or not specified. - "path_standard": Must only one of: "yes" or "no". - "process_post": Must contain only a single valid filename. - "process_pre": Must contain only a single valid filename. - "project_name": Must only contain characters allowed in a filename. - "search_exclusive": Must only one of: "yes" or "no". - "search_shared": Must only one of: "yes" or "no". - "search_static": Must only one of: "yes" or "no". - "version_file": Must only be one of: "major", "minor", "micro", or "nano". - "version_major": Must only be a single value containing valid filename characters. - "version_major_prefix": Must be zero or more valid filename characters. - "version_minor": Must only be a single value containing valid filename characters. - "version_minor_prefix": Must be zero or more valid filename characters. - "version_micro": Must only be a single value containing valid filename characters. - "version_micro_prefix": Must be zero or more valid filename characters. - "version_nano": Must only be a single value containing valid filename characters. - "version_nano_prefix": Must be zero or more valid filename characters. - "version_target": Must only be one of: "major", "minor", "micro", or "nano". + - build_compiler: Must only be a valid filename. + - build_indexer: Must only be a valid filename. + - build_indexer_arguments: Zero or more arguments supported by the indexer specified in "build_indexer". + - build_language: Must only be one of: "bash", "c", or "c++". + - build_libraries: Must only contain any number of valid library include arguments that are valid for the compiler defined in "build_compiler" Object. + - build_libraries_shared: Must only contain any number of valid library include arguments that are valid for the compiler defined in "build_compiler" Object. + - build_libraries_static: Must only contain any number of valid library include arguments that are valid for the compiler defined in "build_compiler" Object. + - build_script: Must only one of: "yes" or "no". + - build_shared: Must only one of: "yes" or "no". + - build_sources_headers: Must only contain any number of valid filenames. + - build_sources_headers_shared: Must only contain any number of valid filenames. + - build_sources_headers_static: Must only contain any number of valid filenames. + - build_sources_library: Must only contain any number of valid filenames. + - build_sources_library_shared: Must only contain any number of valid filenames. + - build_sources_library_static: Must only contain any number of valid filenames. + - build_sources_program: Must only contain any number of valid filenames. + - build_sources_program_shared: Must only contain any number of valid filenames. + - build_sources_program_static: Must only contain any number of valid filenames. + - build_sources_script: Must only contain any number of valid filenames. + - build_sources_setting: Must only contain any number of valid filenames. + - build_static: Must only one of: "yes" or "no". + - defines": Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". + - defines_library: Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". + - defines_library_shared: Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". + - defines_library_static: Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". + - defines_program: Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". + - defines_program_shared: Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". + - defines_program_static: Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". + - defines_shared: Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". + - defines_static: Must only contain any number of valid macro names supported by the compiler specified in "build_compiler". + - environment: Environment variable names, case-sensitive, usually uppercase. May only contain characters allowed in an environment variable. + - flags: Must only contain any number of parameters supported by the compiler specified in "build_compiler". + - flags_library: Must only contain any number of parameters supported by the compiler specified in "build_compiler". + - flags_library_shared: Must only contain any number of parameters supported by the compiler specified in "build_compiler". + - flags_library_static: Must only contain any number of parameters supported by the compiler specified in "build_compiler". + - flags_program: Must only contain any number of parameters supported by the compiler specified in "build_compiler". + - flags_program_shared: Must only contain any number of parameters supported by the compiler specified in "build_compiler". + - flags_program_static: Must only contain any number of parameters supported by the compiler specified in "build_compiler". + - flags_shared: Must only contain any number of parameters supported by the compiler specified in "build_compiler". + - flags_static: Must only contain any number of parameters supported by the compiler specified in "build_compiler". + - modes: Any valid word character, '-', or '+'. + - modes_default: May only be a single complete Content word defined in "modes" Object. + - path_headers: Must be a single valid path. + - path_headers_preserve: Must only be one of "yes" or "no". + - path_language: Must be a single valid path. + - path_library_script: Must be a single valid path. + - path_library_shared: Must be a single valid path. + - path_library_static: Must be a single valid path. + - path_program_script: Must be a single valid path. + - path_program_shared: Must be a single valid path. + - path_program_static: Must be a single valid path. + - path_sources: Must only be a valid directory path or not specified. + - path_standard: Must only one of: "yes" or "no". + - process_post: Must contain only a single valid filename. + - process_pre: Must contain only a single valid filename. + - project_name: Must only contain characters allowed in a filename. + - search_exclusive: Must only one of: "yes" or "no". + - search_shared: Must only one of: "yes" or "no". + - search_static: Must only one of: "yes" or "no". + - version_file: Must only be one of: "major", "minor", "micro", or "nano". + - version_major: Must only be a single value containing valid filename characters. + - version_major_prefix: Must be zero or more valid filename characters. + - version_minor: Must only be a single value containing valid filename characters. + - version_minor_prefix: Must be zero or more valid filename characters. + - version_micro: Must only be a single value containing valid filename characters. + - version_micro_prefix: Must be zero or more valid filename characters. + - version_nano: Must only be a single value containing valid filename characters. + - version_nano_prefix: Must be zero or more valid filename characters. + - version_target: Must only be one of: "major", "minor", "micro", or "nano". The following Object names support having a "-" and a "mode" name, such as "build_libraries-individual" for a mode called "individual"\: - "build_libraries" - "build_libraries_shared" - "build_libraries_static" - "build_sources_headers" - "build_sources_headers_shared" - "build_sources_headers_static" - "build_sources_library" - "build_sources_library_shared" - "build_sources_library_static" - "build_sources_program" - "build_sources_program_shared" - "build_sources_program_static" - "build_sources_script" - "build_sources_setting" - "defines" - "defines_library" - "defines_library_shared" - "defines_library_static" - "defines_program" - "defines_program_shared" - "defines_program_static" - "defines_shared" - "defines_static" - "environment" - "flags" - "flags_library" - "flags_library_shared" - "flags_library_static" - "flags_program" - "flags_program_shared" - "flags_program_static" - "flags_shared" - "flags_static" + - build_libraries + - build_libraries_shared + - build_libraries_static + - build_sources_headers + - build_sources_headers_shared + - build_sources_headers_static + - build_sources_library + - build_sources_library_shared + - build_sources_library_static + - build_sources_program + - build_sources_program_shared + - build_sources_program_static + - build_sources_script + - build_sources_setting + - defines + - defines_library + - defines_library_shared + - defines_library_static + - defines_program + - defines_program_shared + - defines_program_static + - defines_shared + - defines_static + - environment + - flags + - flags_library + - flags_library_shared + - flags_library_static + - flags_program + - flags_program_shared + - flags_program_static + - flags_shared + - flags_static diff --git a/level_3/firewall/data/build/settings b/level_3/firewall/data/build/settings index a00c68a..3c708d4 100644 --- a/level_3/firewall/data/build/settings +++ b/level_3/firewall/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc -lcap build_libraries-individual -lfll_error -lfll_execute -lfll_fss -lfll_print -lfll_program -lfl_console -lfl_control_group -lfl_conversion -lfl_environment -lfl_fss -lfl_print -lfl_status -lfl_string -lf_account -lf_capability -lf_color -lf_console -lf_control_group -lf_conversion -lf_directory -lf_environment -lf_execute -lf_file -lf_fss -lf_limit -lf_memory -lf_path -lf_pipe -lf_print -lf_signal -lf_string -lf_thread -lf_type_array -lf_utf diff --git a/level_3/fss_basic_list_read/data/build/settings b/level_3/fss_basic_list_read/data/build/settings index d3765f4..d6ba8f8 100644 --- a/level_3/fss_basic_list_read/data/build/settings +++ b/level_3/fss_basic_list_read/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_file -lfll_fss -lfll_print -lfll_program -lfl_console -lfl_conversion -lfl_directory -lfl_fss -lfl_print -lfl_status -lfl_string -lf_color -lf_console -lf_conversion -lf_directory -lf_environment -lf_file -lf_fss -lf_memory -lf_path -lf_pipe -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_3/fss_basic_list_write/data/build/settings b/level_3/fss_basic_list_write/data/build/settings index 101c5fc..cc03141 100644 --- a/level_3/fss_basic_list_write/data/build/settings +++ b/level_3/fss_basic_list_write/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_file -lfll_fss -lfll_print -lfll_program -lfl_console -lfl_conversion -lfl_directory -lfl_fss -lfl_print -lfl_status -lfl_string -lf_color -lf_console -lf_conversion -lf_directory -lf_environment -lf_file -lf_fss -lf_memory -lf_path -lf_pipe -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_3/fss_basic_read/data/build/settings b/level_3/fss_basic_read/data/build/settings index 09e5ddc..e5e9034 100644 --- a/level_3/fss_basic_read/data/build/settings +++ b/level_3/fss_basic_read/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_file -lfll_fss -lfll_print -lfll_program -lfl_console -lfl_conversion -lfl_directory -lfl_fss -lfl_print -lfl_status -lfl_string -lf_color -lf_console -lf_conversion -lf_directory -lf_environment -lf_file -lf_fss -lf_memory -lf_path -lf_pipe -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_3/fss_basic_write/data/build/settings b/level_3/fss_basic_write/data/build/settings index 54adac2..b4e61c3 100644 --- a/level_3/fss_basic_write/data/build/settings +++ b/level_3/fss_basic_write/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_file -lfll_fss -lfll_print -lfll_program -lfl_console -lfl_conversion -lfl_directory -lfl_fss -lfl_print -lfl_status -lfl_string -lf_color -lf_console -lf_conversion -lf_directory -lf_environment -lf_file -lf_fss -lf_memory -lf_path -lf_pipe -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_3/fss_embedded_list_read/data/build/settings b/level_3/fss_embedded_list_read/data/build/settings index eb852ad..5b24f8f 100644 --- a/level_3/fss_embedded_list_read/data/build/settings +++ b/level_3/fss_embedded_list_read/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_file -lfll_fss -lfll_print -lfll_program -lfl_console -lfl_conversion -lfl_directory -lfl_fss -lfl_print -lfl_status -lfl_string -lf_color -lf_console -lf_conversion -lf_directory -lf_environment -lf_file -lf_fss -lf_memory -lf_path -lf_pipe -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_3/fss_embedded_list_write/data/build/settings b/level_3/fss_embedded_list_write/data/build/settings index e47f681..f2ca654 100644 --- a/level_3/fss_embedded_list_write/data/build/settings +++ b/level_3/fss_embedded_list_write/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_file -lfll_fss -lfll_print -lfll_program -lfl_console -lfl_conversion -lfl_directory -lfl_fss -lfl_print -lfl_status -lfl_string -lf_color -lf_console -lf_conversion -lf_directory -lf_environment -lf_file -lf_fss -lf_memory -lf_path -lf_pipe -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_3/fss_extended_list_read/data/build/settings b/level_3/fss_extended_list_read/data/build/settings index d5272c4..f59433b 100644 --- a/level_3/fss_extended_list_read/data/build/settings +++ b/level_3/fss_extended_list_read/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_file -lfll_fss -lfll_print -lfll_program -lfl_console -lfl_conversion -lfl_directory -lfl_fss -lfl_print -lfl_status -lfl_string -lf_color -lf_console -lf_conversion -lf_directory -lf_environment -lf_file -lf_fss -lf_memory -lf_path -lf_pipe -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_3/fss_extended_list_write/data/build/settings b/level_3/fss_extended_list_write/data/build/settings index 987d39b..0fa1089 100644 --- a/level_3/fss_extended_list_write/data/build/settings +++ b/level_3/fss_extended_list_write/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_file -lfll_fss -lfll_print -lfll_program -lfl_console -lfl_conversion -lfl_directory -lfl_fss -lfl_print -lfl_status -lfl_string -lf_color -lf_console -lf_conversion -lf_directory -lf_environment -lf_file -lf_fss -lf_memory -lf_path -lf_pipe -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_3/fss_extended_read/data/build/settings b/level_3/fss_extended_read/data/build/settings index 35bc7f3..bd7c7b6 100644 --- a/level_3/fss_extended_read/data/build/settings +++ b/level_3/fss_extended_read/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_file -lfll_fss -lfll_print -lfll_program -lfl_console -lfl_conversion -lfl_directory -lfl_fss -lfl_print -lfl_status -lfl_string -lf_color -lf_console -lf_conversion -lf_directory -lf_environment -lf_file -lf_fss -lf_memory -lf_path -lf_pipe -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_3/fss_extended_write/data/build/settings b/level_3/fss_extended_write/data/build/settings index cf9d861..b8cf3c2 100644 --- a/level_3/fss_extended_write/data/build/settings +++ b/level_3/fss_extended_write/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_file -lfll_fss -lfll_print -lfll_program -lfl_conversion -lfl_directory -lfl_fss -lfl_print -lfl_status -lfl_string -lf_color -lf_console -lf_conversion -lf_directory -lf_environment -lf_file -lf_fss -lf_memory -lf_path -lf_pipe -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_3/fss_identify/data/build/settings b/level_3/fss_identify/data/build/settings index a92ae72..914829e 100644 --- a/level_3/fss_identify/data/build/settings +++ b/level_3/fss_identify/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_fss -lfll_print -lfll_program -lfl_console -lfl_conversion -lfl_fss -lfl_print -lfl_status -lfl_string -lf_color -lf_console -lf_conversion -lf_file -lf_fss -lf_memory -lf_path -lf_pipe -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_3/fss_status_code/data/build/settings b/level_3/fss_status_code/data/build/settings index 1f0ccec..c89ed2e 100644 --- a/level_3/fss_status_code/data/build/settings +++ b/level_3/fss_status_code/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_file -lfll_fss -lfll_print -lfll_program -lfll_status -lfl_console -lfl_conversion -lfl_directory -lfl_fss -lfl_print -lfl_status -lfl_string -lf_color -lf_console -lf_conversion -lf_directory -lf_environment -lf_file -lf_fss -lf_memory -lf_path -lf_pipe -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_3/iki_read/data/build/settings b/level_3/iki_read/data/build/settings index b74e42b..e9c8b0c 100644 --- a/level_3/iki_read/data/build/settings +++ b/level_3/iki_read/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_print -lfll_program -lfl_console -lfl_conversion -lfl_iki -lfl_print -lfl_signal -lfl_string -lf_color -lf_console -lf_conversion -lf_file -lf_iki -lf_memory -lf_path -lf_pipe -lf_print -lf_signal -lf_string -lf_type_array -lf_utf diff --git a/level_3/iki_write/data/build/settings b/level_3/iki_write/data/build/settings index 8771d77..73cca29 100644 --- a/level_3/iki_write/data/build/settings +++ b/level_3/iki_write/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_iki -lfll_print -lfll_program -lfl_console -lfl_iki -lfl_print -lfl_string -lf_color -lf_console -lf_conversion -lf_file -lf_iki -lf_memory -lf_path -lf_pipe -lf_print -lf_string -lf_type_array -lf_utf diff --git a/level_3/status_code/data/build/settings b/level_3/status_code/data/build/settings index bf28621..0023e6b 100644 --- a/level_3/status_code/data/build/settings +++ b/level_3/status_code/data/build/settings @@ -18,6 +18,7 @@ modes_default monolithic build_compiler gcc build_indexer ar +build_indexer_arguments rcs build_language c build_libraries -lc build_libraries-individual -lfll_error -lfll_print -lfll_program -lfll_status -lfl_console -lfl_conversion -lfl_print -lfl_status -lfl_string -lf_color -lf_console -lf_conversion -lf_file -lf_memory -lf_path -lf_pipe -lf_print -lf_string -lf_type_array -lf_utf -- 1.8.3.1