]> Kevux Git Server - fll/commitdiff
Progress: Continue program related work, focusing on Featureless Make.
authorKevin Day <kevin@kevux.org>
Sun, 29 Jan 2023 22:47:45 +0000 (16:47 -0600)
committerKevin Day <kevin@kevux.org>
Sun, 29 Jan 2023 22:47:45 +0000 (16:47 -0600)
The Featureless Make program appears to function at this time.
There is still a lot more work to do.

16 files changed:
level_3/fake/c/main/common-string.c
level_3/fake/c/main/common-string.h
level_3/fake/c/main/common-type.h
level_3/fake/c/main/common.c
level_3/fake/c/main/print.c
level_3/fake/c/main/private-build-load.c
level_3/fake/c/main/private-build-skeleton.c
level_3/fake/c/main/private-build.c
level_3/fake/c/main/private-common.c
level_3/fake/c/main/private-common.h
level_3/fake/c/main/private-fake-path_generate.c
level_3/fake/c/main/private-fake.c
level_3/fake/c/main/private-make-load_parameters.c
level_3/fake/c/main/private-make-operate.c
level_3/fake/c/main/private-make-operate_process_type.c
level_3/fake/c/main/private-skeleton.c

index 86dca0679142b2ecafccc026ba06d028652f7882..958e664817dc7cb32de3ddefc7c5833756a494d3 100644 (file)
@@ -75,31 +75,29 @@ extern "C" {
 #endif // _di_fake_build_version_s_
 
 #ifndef _di_fake_parameter_s_
+  const f_string_static_t fake_short_build_s = macro_f_string_static_t_initialize(FAKE_short_build_s, 0, FAKE_short_build_s_length);
+  const f_string_static_t fake_short_data_s = macro_f_string_static_t_initialize(FAKE_short_data_s, 0, FAKE_short_data_s_length);
   const f_string_static_t fake_short_define_s = macro_f_string_static_t_initialize(FAKE_short_define_s, 0, FAKE_short_define_s_length);
+  const f_string_static_t fake_short_documents_s = macro_f_string_static_t_initialize(FAKE_short_documents_s, 0, FAKE_short_documents_s_length);
   const f_string_static_t fake_short_fakefile_s = macro_f_string_static_t_initialize(FAKE_short_fakefile_s, 0, FAKE_short_fakefile_s_length);
+  const f_string_static_t fake_short_licenses_s = macro_f_string_static_t_initialize(FAKE_short_licenses_s, 0, FAKE_short_licenses_s_length);
   const f_string_static_t fake_short_mode_s = macro_f_string_static_t_initialize(FAKE_short_mode_s, 0, FAKE_short_mode_s_length);
   const f_string_static_t fake_short_process_s = macro_f_string_static_t_initialize(FAKE_short_process_s, 0, FAKE_short_process_s_length);
   const f_string_static_t fake_short_settings_s = macro_f_string_static_t_initialize(FAKE_short_settings_s, 0, FAKE_short_settings_s_length);
+  const f_string_static_t fake_short_sources_s = macro_f_string_static_t_initialize(FAKE_short_sources_s, 0, FAKE_short_sources_s_length);
+  const f_string_static_t fake_short_work_s = macro_f_string_static_t_initialize(FAKE_short_work_s, 0, FAKE_short_work_s_length);
 
-  const f_string_static_t fake_short_path_build_s = macro_f_string_static_t_initialize(FAKE_short_path_build_s, 0, FAKE_short_path_build_s_length);
-  const f_string_static_t fake_short_path_data_s = macro_f_string_static_t_initialize(FAKE_short_path_data_s, 0, FAKE_short_path_data_s_length);
-  const f_string_static_t fake_short_path_documents_s = macro_f_string_static_t_initialize(FAKE_short_path_documents_s, 0, FAKE_short_path_documents_s_length);
-  const f_string_static_t fake_short_path_licenses_s = macro_f_string_static_t_initialize(FAKE_short_path_licenses_s, 0, FAKE_short_path_licenses_s_length);
-  const f_string_static_t fake_short_path_sources_s = macro_f_string_static_t_initialize(FAKE_short_path_sources_s, 0, FAKE_short_path_sources_s_length);
-  const f_string_static_t fake_short_path_work_s = macro_f_string_static_t_initialize(FAKE_short_path_work_s, 0, FAKE_short_path_work_s_length);
-
+  const f_string_static_t fake_long_build_s = macro_f_string_static_t_initialize(FAKE_long_build_s, 0, FAKE_long_build_s_length);
+  const f_string_static_t fake_long_data_s = macro_f_string_static_t_initialize(FAKE_long_data_s, 0, FAKE_long_data_s_length);
   const f_string_static_t fake_long_define_s = macro_f_string_static_t_initialize(FAKE_long_define_s, 0, FAKE_long_define_s_length);
+  const f_string_static_t fake_long_documents_s = macro_f_string_static_t_initialize(FAKE_long_documents_s, 0, FAKE_long_documents_s_length);
   const f_string_static_t fake_long_fakefile_s = macro_f_string_static_t_initialize(FAKE_long_fakefile_s, 0, FAKE_long_fakefile_s_length);
+  const f_string_static_t fake_long_licenses_s = macro_f_string_static_t_initialize(FAKE_long_licenses_s, 0, FAKE_long_licenses_s_length);
   const f_string_static_t fake_long_mode_s = macro_f_string_static_t_initialize(FAKE_long_mode_s, 0, FAKE_long_mode_s_length);
   const f_string_static_t fake_long_process_s = macro_f_string_static_t_initialize(FAKE_long_process_s, 0, FAKE_long_process_s_length);
   const f_string_static_t fake_long_settings_s = macro_f_string_static_t_initialize(FAKE_long_settings_s, 0, FAKE_long_settings_s_length);
-
-  const f_string_static_t fake_long_path_build_s = macro_f_string_static_t_initialize(FAKE_long_path_build_s, 0, FAKE_long_path_build_s_length);
-  const f_string_static_t fake_long_path_data_s = macro_f_string_static_t_initialize(FAKE_long_path_data_s, 0, FAKE_long_path_data_s_length);
-  const f_string_static_t fake_long_path_documents_s = macro_f_string_static_t_initialize(FAKE_long_path_documents_s, 0, FAKE_long_path_documents_s_length);
-  const f_string_static_t fake_long_path_licenses_s = macro_f_string_static_t_initialize(FAKE_long_path_licenses_s, 0, FAKE_long_path_licenses_s_length);
-  const f_string_static_t fake_long_path_sources_s = macro_f_string_static_t_initialize(FAKE_long_path_sources_s, 0, FAKE_long_path_sources_s_length);
-  const f_string_static_t fake_long_path_work_s = macro_f_string_static_t_initialize(FAKE_long_path_work_s, 0, FAKE_long_path_work_s_length);
+  const f_string_static_t fake_long_sources_s = macro_f_string_static_t_initialize(FAKE_long_sources_s, 0, FAKE_long_sources_s_length);
+  const f_string_static_t fake_long_work_s = macro_f_string_static_t_initialize(FAKE_long_work_s, 0, FAKE_long_work_s_length);
 
   const f_string_static_t fake_long_documents_disabled_s = macro_f_string_static_t_initialize(FAKE_long_documents_disabled_s, 0, FAKE_long_documents_disabled_s_length);
   const f_string_static_t fake_long_documents_enabled_s = macro_f_string_static_t_initialize(FAKE_long_documents_enabled_s, 0, FAKE_long_documents_enabled_s_length);
index 4ba7466a12bde632d2c8d63491d6eaaa5bffcf76..fcdc87700caabfd4ddc159c5805ae41af0fdd08c 100644 (file)
@@ -244,31 +244,29 @@ extern "C" {
  * The main program parameters.
  */
 #ifndef _di_fake_parameter_s_
-  #define FAKE_short_define_s   "d"
-  #define FAKE_short_fakefile_s "f"
-  #define FAKE_short_mode_s     "m"
-  #define FAKE_short_process_s  "p"
-  #define FAKE_short_settings_s "s"
-
-  #define FAKE_short_path_build_s     "b"
-  #define FAKE_short_path_data_s      "D"
-  #define FAKE_short_path_documents_s "O"
-  #define FAKE_short_path_licenses_s  "l"
-  #define FAKE_short_path_sources_s   "S"
-  #define FAKE_short_path_work_s      "w"
-
-  #define FAKE_long_define_s   "define"
-  #define FAKE_long_fakefile_s "fakefile"
-  #define FAKE_long_mode_s     "mode"
-  #define FAKE_long_process_s  "process"
-  #define FAKE_long_settings_s "settings"
-
-  #define FAKE_long_path_build_s     "build"
-  #define FAKE_long_path_data_s      "data"
-  #define FAKE_long_path_documents_s "documents"
-  #define FAKE_long_path_licenses_s  "licenses"
-  #define FAKE_long_path_sources_s   "sources"
-  #define FAKE_long_path_work_s      "work"
+  #define FAKE_short_build_s     "b"
+  #define FAKE_short_data_s      "D"
+  #define FAKE_short_define_s    "d"
+  #define FAKE_short_documents_s "O"
+  #define FAKE_short_fakefile_s  "f"
+  #define FAKE_short_licenses_s  "l"
+  #define FAKE_short_mode_s      "m"
+  #define FAKE_short_process_s   "p"
+  #define FAKE_short_settings_s  "s"
+  #define FAKE_short_sources_s   "S"
+  #define FAKE_short_work_s      "w"
+
+  #define FAKE_long_build_s     "build"
+  #define FAKE_long_data_s      "data"
+  #define FAKE_long_define_s    "define"
+  #define FAKE_long_documents_s "documents"
+  #define FAKE_long_fakefile_s  "fakefile"
+  #define FAKE_long_licenses_s  "licenses"
+  #define FAKE_long_mode_s      "mode"
+  #define FAKE_long_process_s   "process"
+  #define FAKE_long_settings_s  "settings"
+  #define FAKE_long_sources_s   "sources"
+  #define FAKE_long_work_s      "work"
 
   // These special parameters are provided in such a way that they mimic the traditional ./configure script.
   #define FAKE_long_documents_disabled_s "disable-doc"
@@ -283,31 +281,29 @@ extern "C" {
   #define FAKE_other_operation_make_s     "make"
   #define FAKE_other_operation_skeleton_s "skeleton"
 
-  #define FAKE_short_define_s_length   1
-  #define FAKE_short_fakefile_s_length 1
-  #define FAKE_short_mode_s_length     1
-  #define FAKE_short_process_s_length  1
-  #define FAKE_short_settings_s_length 1
-
-  #define FAKE_short_path_build_s_length     1
-  #define FAKE_short_path_data_s_length      1
-  #define FAKE_short_path_documents_s_length 1
-  #define FAKE_short_path_licenses_s_length  1
-  #define FAKE_short_path_sources_s_length   1
-  #define FAKE_short_path_work_s_length      1
-
-  #define FAKE_long_define_s_length   6
-  #define FAKE_long_fakefile_s_length 8
-  #define FAKE_long_mode_s_length     4
-  #define FAKE_long_process_s_length  7
-  #define FAKE_long_settings_s_length 8
-
-  #define FAKE_long_path_build_s_length     5
-  #define FAKE_long_path_data_s_length      4
-  #define FAKE_long_path_documents_s_length 9
-  #define FAKE_long_path_licenses_s_length  8
-  #define FAKE_long_path_sources_s_length   7
-  #define FAKE_long_path_work_s_length      4
+  #define FAKE_short_build_s_length     1
+  #define FAKE_short_data_s_length      1
+  #define FAKE_short_define_s_length    1
+  #define FAKE_short_documents_s_length 1
+  #define FAKE_short_fakefile_s_length  1
+  #define FAKE_short_licenses_s_length  1
+  #define FAKE_short_mode_s_length      1
+  #define FAKE_short_process_s_length   1
+  #define FAKE_short_settings_s_length  1
+  #define FAKE_short_sources_s_length   1
+  #define FAKE_short_work_s_length      1
+
+  #define FAKE_long_build_s_length     5
+  #define FAKE_long_data_s_length      4
+  #define FAKE_long_define_s_length    6
+  #define FAKE_long_documents_s_length 9
+  #define FAKE_long_fakefile_s_length  8
+  #define FAKE_long_licenses_s_length  8
+  #define FAKE_long_mode_s_length      4
+  #define FAKE_long_process_s_length   7
+  #define FAKE_long_settings_s_length  8
+  #define FAKE_long_sources_s_length   7
+  #define FAKE_long_work_s_length      4
 
   #define FAKE_long_documents_disabled_s_length 11
   #define FAKE_long_documents_enabled_s_length  10
@@ -321,31 +317,29 @@ extern "C" {
   #define FAKE_other_operation_make_s_length     4
   #define FAKE_other_operation_skeleton_s_length 8
 
+  extern const f_string_static_t fake_short_build_s;
+  extern const f_string_static_t fake_short_data_s;
   extern const f_string_static_t fake_short_define_s;
+  extern const f_string_static_t fake_short_documents_s;
   extern const f_string_static_t fake_short_fakefile_s;
+  extern const f_string_static_t fake_short_licenses_s;
   extern const f_string_static_t fake_short_mode_s;
   extern const f_string_static_t fake_short_process_s;
   extern const f_string_static_t fake_short_settings_s;
+  extern const f_string_static_t fake_short_sources_s;
+  extern const f_string_static_t fake_short_work_s;
 
-  extern const f_string_static_t fake_short_path_build_s;
-  extern const f_string_static_t fake_short_path_data_s;
-  extern const f_string_static_t fake_short_path_documents_s;
-  extern const f_string_static_t fake_short_path_licenses_s;
-  extern const f_string_static_t fake_short_path_sources_s;
-  extern const f_string_static_t fake_short_path_work_s;
-
+  extern const f_string_static_t fake_long_build_s;
+  extern const f_string_static_t fake_long_data_s;
   extern const f_string_static_t fake_long_define_s;
+  extern const f_string_static_t fake_long_documents_s;
   extern const f_string_static_t fake_long_fakefile_s;
+  extern const f_string_static_t fake_long_licenses_s;
   extern const f_string_static_t fake_long_mode_s;
   extern const f_string_static_t fake_long_process_s;
   extern const f_string_static_t fake_long_settings_s;
-
-  extern const f_string_static_t fake_long_path_build_s;
-  extern const f_string_static_t fake_long_path_data_s;
-  extern const f_string_static_t fake_long_path_documents_s;
-  extern const f_string_static_t fake_long_path_licenses_s;
-  extern const f_string_static_t fake_long_path_sources_s;
-  extern const f_string_static_t fake_long_path_work_s;
+  extern const f_string_static_t fake_long_sources_s;
+  extern const f_string_static_t fake_long_work_s;
 
   extern const f_string_static_t fake_long_documents_disabled_s;
   extern const f_string_static_t fake_long_documents_enabled_s;
index 424b1b641f7b41299da34579b44bef9167b33f91..d65fed86956096d645486a55a911a412382d372e 100644 (file)
@@ -36,9 +36,9 @@ extern "C" {
  * The program defines.
  *
  * fake_signal_*_d:
- *   - check:       The normal signal check (@fixme is needed anymore as-is?).
- *   - check_tiny:  The tiny check (@fixme is needed anymore as-is?).
- *   - check_short: The short signal check (@fixme this is used everywhere).
+ *   - check:       The normal signal check.
+ *   - check_tiny:  The tiny check.
+ *   - check_short: The short signal check.
  */
 #ifndef _di_fake_signal_d_
   #define fake_signal_check_d       500000
@@ -100,9 +100,9 @@ extern "C" {
  * fake_main_flag_*_e:
  *   - none:               No flags set.
  *   - copyright:          Print copyright.
- *   - enable_documents:   Enable documents, as-in --enable-doc (not specifying means --disable-doc).
- *   - enable_shared:      Enable shared, as-in --enable-shared (not specifying means --disable-shared).
- *   - enable_static:      Enable static, as-in --enable-static (not specifying means --disable-static).
+ *   - enable_documents:   Enable documents, as in --enable-doc (not specifying means --disable-doc).
+ *   - enable_shared:      Enable shared, as in --enable-shared (not specifying means --disable-shared).
+ *   - enable_static:      Enable static, as in --enable-static (not specifying means --disable-static).
  *   - file_from:          Using a specified source file.
  *   - file_to:            Using a specified destination file.
  *   - header:             Enable printing of headers.
@@ -159,18 +159,17 @@ extern "C" {
     fake_parameter_line_first_no_e,
     fake_parameter_line_last_no_e,
 
+    fake_parameter_build_e,
+    fake_parameter_data_e,
     fake_parameter_define_e,
+    fake_parameter_documents_e,
     fake_parameter_fakefile_e,
+    fake_parameter_licenses_e,
     fake_parameter_mode_e,
     fake_parameter_process_e,
     fake_parameter_settings_e,
-
-    fake_parameter_path_build_e,
-    fake_parameter_path_data_e,
-    fake_parameter_path_documents_e,
-    fake_parameter_path_licenses_e,
-    fake_parameter_path_sources_e,
-    fake_parameter_path_work_e,
+    fake_parameter_sources_e,
+    fake_parameter_work_e,
 
     fake_parameter_documents_disable_e,
     fake_parameter_documents_enable_e,
@@ -201,17 +200,17 @@ extern "C" {
       macro_f_console_parameter_t_initialize_3(f_console_standard_short_line_first_no_s, f_console_standard_long_line_first_no_s, 0, f_console_flag_inverse_e), \
       macro_f_console_parameter_t_initialize_3(f_console_standard_short_line_last_no_s,  f_console_standard_long_line_last_no_s,  0, f_console_flag_inverse_e), \
       \
-      macro_f_console_parameter_t_initialize_3(fake_short_define_s,         fake_long_define_s,             1, f_console_flag_normal_e), \
-      macro_f_console_parameter_t_initialize_3(fake_short_fakefile_s,       fake_long_fakefile_s,           1, f_console_flag_normal_e), \
-      macro_f_console_parameter_t_initialize_3(fake_short_mode_s,           fake_long_mode_s,               1, f_console_flag_normal_e), \
-      macro_f_console_parameter_t_initialize_3(fake_short_process_s,        fake_long_process_s,            1, f_console_flag_normal_e), \
-      macro_f_console_parameter_t_initialize_3(fake_short_settings_s,       fake_long_settings_s,           1, f_console_flag_normal_e), \
-      macro_f_console_parameter_t_initialize_3(fake_short_path_build_s,     fake_long_path_build_s,         1, f_console_flag_normal_e), \
-      macro_f_console_parameter_t_initialize_3(fake_short_path_data_s,      fake_long_path_data_s,          1, f_console_flag_normal_e), \
-      macro_f_console_parameter_t_initialize_3(fake_short_path_documents_s, fake_long_path_documents_s,     1, f_console_flag_normal_e), \
-      macro_f_console_parameter_t_initialize_3(fake_short_path_sources_s,   fake_long_path_sources_s,       1, f_console_flag_normal_e), \
-      macro_f_console_parameter_t_initialize_3(fake_short_path_licenses_s,  fake_long_path_licenses_s,      1, f_console_flag_normal_e), \
-      macro_f_console_parameter_t_initialize_3(fake_short_path_work_s,      fake_long_path_work_s,          1, f_console_flag_normal_e), \
+      macro_f_console_parameter_t_initialize_3(fake_short_build_s,     fake_long_build_s,         1, f_console_flag_normal_e), \
+      macro_f_console_parameter_t_initialize_3(fake_short_data_s,      fake_long_data_s,          1, f_console_flag_normal_e), \
+      macro_f_console_parameter_t_initialize_3(fake_short_define_s,    fake_long_define_s,        1, f_console_flag_normal_e), \
+      macro_f_console_parameter_t_initialize_3(fake_short_documents_s, fake_long_documents_s,     1, f_console_flag_normal_e), \
+      macro_f_console_parameter_t_initialize_3(fake_short_fakefile_s,  fake_long_fakefile_s,      1, f_console_flag_normal_e), \
+      macro_f_console_parameter_t_initialize_3(fake_short_licenses_s,  fake_long_licenses_s,      1, f_console_flag_normal_e), \
+      macro_f_console_parameter_t_initialize_3(fake_short_mode_s,      fake_long_mode_s,          1, f_console_flag_normal_e), \
+      macro_f_console_parameter_t_initialize_3(fake_short_process_s,   fake_long_process_s,       1, f_console_flag_normal_e), \
+      macro_f_console_parameter_t_initialize_3(fake_short_settings_s,  fake_long_settings_s,      1, f_console_flag_normal_e), \
+      macro_f_console_parameter_t_initialize_3(fake_short_sources_s,   fake_long_sources_s,       1, f_console_flag_normal_e), \
+      macro_f_console_parameter_t_initialize_3(fake_short_work_s,      fake_long_work_s,          1, f_console_flag_normal_e), \
       \
       macro_f_console_parameter_t_initialize_5(fake_long_documents_disabled_s, 0, f_console_flag_normal_e), \
       macro_f_console_parameter_t_initialize_5(fake_long_documents_enabled_s,  0, f_console_flag_normal_e), \
index dc05fa17bfb70e0124686537d6469324c025621d..6e1971f6cfc135e89cf0118b3316ab2e21a746d2 100644 (file)
@@ -172,64 +172,76 @@ extern "C" {
 
       {
         const f_array_length_t parameters[] = {
+          fake_parameter_build_e,
+          fake_parameter_data_e,
+          fake_parameter_documents_e,
           fake_parameter_fakefile_e,
-          fake_parameter_path_build_e,
-          fake_parameter_path_data_e,
-          fake_parameter_path_sources_e,
-          fake_parameter_path_work_e,
+          fake_parameter_licenses_e,
           fake_parameter_process_e,
           fake_parameter_settings_e,
+          fake_parameter_sources_e,
+          fake_parameter_work_e,
         };
 
         const f_string_static_t names[] = {
+          fake_long_build_s,
+          fake_long_data_s,
           fake_long_fakefile_s,
-          fake_long_path_build_s,
-          fake_long_path_data_s,
-          fake_long_path_sources_s,
-          fake_long_path_work_s,
+          fake_long_documents_s,
+          fake_long_licenses_s,
           fake_long_process_s,
           fake_long_settings_s,
+          fake_long_sources_s,
+          fake_long_work_s,
         };
 
         f_string_dynamic_t * const variable[] = {
-          &setting->fakefile,
           &setting->build,
           &setting->data,
-          &setting->sources,
-          &setting->work,
+          &setting->documents,
+          &setting->fakefile,
+          &setting->licenses,
           &setting->process,
           &setting->settings,
+          &setting->sources,
+          &setting->work,
         };
 
-        f_string_dynamic_resize(0, &setting->build);
-        f_string_dynamic_resize(0, &setting->data);
-        f_string_dynamic_resize(0, &setting->fakefile);
-        f_string_dynamic_resize(0, &setting->process);
-        f_string_dynamic_resize(0, &setting->settings);
-        f_string_dynamic_resize(0, &setting->sources);
-        f_string_dynamic_resize(0, &setting->work);
+        setting->build.used = 0;
+        setting->data.used = 0;
+        setting->documents.used = 0;
+        setting->fakefile.used = 0;
+        setting->licenses.used = 0;
+        setting->process.used = 0;
+        setting->settings.used = 0;
+        setting->sources.used = 0;
+        setting->work.used = 0;
 
         const f_string_static_t defaults[] = {
-          fake_default_fakefile_s,
           fake_default_build_s,
           fake_default_data_s,
-          fake_default_sources_s,
-          fake_default_work_s,
+          fake_default_documents_s,
+          fake_default_fakefile_s,
+          fake_default_licenses_s,
           fake_default_process_s,
           fake_default_settings_s,
+          fake_default_sources_s,
+          fake_default_work_s,
         };
 
         const bool cleanups[] = {
+          F_true,  // fake_parameter_build_e
+          F_true,  // fake_parameter_data_e
+          F_true,  // fake_parameter_documents_e
           F_false, // fake_parameter_fakefile_e
-          F_true,  // fake_parameter_path_build_e
-          F_true,  // fake_parameter_path_data_e
-          F_false, // fake_parameter_path_sources_e
-          F_true,  // fake_parameter_path_work_e
+          F_true,  // fake_parameter_licenses_e
           F_false, // fake_parameter_process_e
           F_false, // fake_parameter_settings_e
+          F_false, // fake_parameter_sources_e
+          F_true,  // fake_parameter_work_e
         };
 
-        for (i = 0; i < 7; ++i) {
+        for (i = 0; i < 9; ++i) {
 
           if (main->parameters.array[parameters[i]].result & f_console_result_found_e) {
             setting->status = F_status_set_error(F_parameter);
index 73f6f3a26b5e73709307bf9c21c6db8693af938c..cb2b6964a789febd19b0e90cd21c52b493fbf63e 100644 (file)
@@ -202,12 +202,12 @@ extern "C" {
 
     f_print_dynamic_raw(f_string_eol_s, print.to);
 
-    fll_program_print_help_option(print, fake_short_path_build_s, fake_long_path_build_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, "    Specify a custom build directory.");
-    fll_program_print_help_option(print, fake_short_path_data_s, fake_long_path_data_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, "     Specify a custom path to the data files.");
-    fll_program_print_help_option(print, fake_short_path_documents_s, fake_long_path_documents_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, "Specify a custom path to the documents files.");
-    fll_program_print_help_option(print, fake_short_path_licenses_s, fake_long_path_licenses_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Specify a custom path to the licenses files.");
-    fll_program_print_help_option(print, fake_short_path_sources_s, fake_long_path_sources_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, "  Specify a custom path to the source files.");
-    fll_program_print_help_option(print, fake_short_path_work_s, fake_long_path_work_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, "     Use includes/libraries/programs from this directory instead of system.");
+    fll_program_print_help_option(print, fake_short_build_s, fake_long_build_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, "    Specify a custom build directory.");
+    fll_program_print_help_option(print, fake_short_data_s, fake_long_data_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, "     Specify a custom path to the data files.");
+    fll_program_print_help_option(print, fake_short_documents_s, fake_long_documents_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, "Specify a custom path to the documents files.");
+    fll_program_print_help_option(print, fake_short_licenses_s, fake_long_licenses_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, " Specify a custom path to the licenses files.");
+    fll_program_print_help_option(print, fake_short_sources_s, fake_long_sources_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, "  Specify a custom path to the source files.");
+    fll_program_print_help_option(print, fake_short_work_s, fake_long_work_s, f_console_symbol_short_normal_s, f_console_symbol_long_normal_s, "     Use includes/libraries/programs from this directory instead of system.");
 
     fl_print_format("%r%r %[Special Options:%] ", print.to, f_string_eol_s, f_string_eol_s, print.set->important, print.set->important);
 
index bf38092abb553cb74ad8e2af517de7ea57596b57..8c388479b41bac62286f69b3046c92d302f0c851 100644 (file)
@@ -932,7 +932,7 @@ extern "C" {
         fake_path_part_script_s,                     // path_program_script
         fake_path_part_shared_s,                     // path_program_shared
         fake_path_part_static_s,                     // path_program_static
-        fake_default_sources_s,                      // path_sources
+        f_string_empty_s,                            // path_sources
         f_string_empty_s,                            // path_sources_object
         f_string_empty_s,                            // preserve_path_headers
         f_string_empty_s,                            // process_post
@@ -1371,7 +1371,7 @@ extern "C" {
 
     if (F_status_is_error(*status)) return;
 
-    if (data->main->parameters.array[fake_parameter_path_sources_e].result & f_console_result_value_e && data->setting->sources.used) {
+    if (data->main->parameters.array[fake_parameter_sources_e].result & f_console_result_value_e && data->setting->sources.used) {
       *status = f_string_dynamic_append_assure(f_path_separator_s, &data->setting->sources);
 
       if (F_status_is_error(*status)) {
index c49bafd26c762a20b2963eb61fdd796478f5b223..2dc84981a95b2ad3a3c33c806305c8add939f7eb 100644 (file)
@@ -30,7 +30,7 @@ extern "C" {
     path_headers_string[path_headers.used] = 0;
 
     const f_string_static_t directorys[] = {
-      data->setting->build,
+      data->path_build,
       data->path_build_documentation,
       data->path_build_documents,
       data->path_build_includes,
@@ -56,6 +56,7 @@ extern "C" {
     }
 
     bool created = F_false;
+    f_array_length_t j = 0;
 
     for (uint8_t i = 0; i < 19; ++i) {
 
@@ -63,11 +64,11 @@ extern "C" {
 
       created = F_false;
 
-      for (f_array_length_t j = 0; j < directorys[i].used; ++j) {
+      for (j = 0; j < directorys[i].used; ++j) {
 
-        if (directorys[i].string[j] != f_path_separator_s.string[0]) continue;
+        if (f_path_separator_s.used && directorys[i].string[j] != f_path_separator_s.string[0]) continue;
 
-        directorys[i].string[j] = 0;
+        directorys[i].string[j] = 0; // @fixme this is an error because static strings might be in use.
 
         *status = f_directory_exists(directorys[i]);
 
@@ -88,7 +89,7 @@ extern "C" {
         if (F_status_is_error(*status)) break;
       } // for
 
-      if (F_status_is_fine(*status) && directorys[i].string[directorys[i].used - 1] != f_path_separator_s.string[0]) {
+      if (F_status_is_fine(*status) && directorys[i].used && f_path_separator_s.used && directorys[i].string[directorys[i].used - 1] != f_path_separator_s.string[0]) {
         *status = f_directory_exists(directorys[i]);
 
         if (F_status_is_error_not(*status)) {
index 2542ecca24623a07dec945b2119b9fd73439939e..37de206d368a9e817a6a09d62b95ef620d698139 100644 (file)
@@ -634,36 +634,42 @@ const f_string_static_t fake_build_documentation_files_s = macro_f_string_static
       }
 
       const f_string_static_t prefixs[] = {
-        f_console_symbol_short_normal_s,
-        f_console_symbol_short_normal_s,
-        f_console_symbol_short_normal_s,
-        f_console_symbol_short_normal_s,
-        f_console_symbol_short_normal_s,
-        f_console_symbol_short_normal_s,
-        f_console_symbol_short_normal_s,
+        f_console_symbol_short_normal_s, // fake_short_build_s
+        f_console_symbol_short_normal_s, // fake_short_data_s
+        f_console_symbol_short_normal_s, // fake_short_define_s
+        f_console_symbol_short_normal_s, // fake_short_documents_s
+        f_console_symbol_short_normal_s, // fake_short_licenses_s
+        f_console_symbol_short_normal_s, // fake_short_process_s
+        f_console_symbol_short_normal_s, // fake_short_settings_s
+        f_console_symbol_short_normal_s, // fake_short_sources_s
+        f_console_symbol_short_normal_s, // fake_short_work_s
       };
 
       const f_string_static_t names[] = {
+        fake_short_build_s,
+        fake_short_data_s,
         fake_short_define_s,
+        fake_short_documents_s,
+        fake_short_licenses_s,
         fake_short_process_s,
         fake_short_settings_s,
-        fake_short_path_build_s,
-        fake_short_path_data_s,
-        fake_short_path_sources_s,
-        fake_short_path_work_s,
+        fake_short_sources_s,
+        fake_short_work_s,
       };
 
       const f_string_static_t values[] = {
+        data->setting->build,
+        data->setting->data,
         defines,
+        data->setting->documents,
+        data->setting->licenses,
         data->setting->process,
         data->setting->settings,
-        data->setting->build,
-        data->setting->data,
         data->setting->sources,
         data->setting->work,
       };
 
-      *status = fll_execute_arguments_add_parameter_set(prefixs, names, values, 7, &arguments);
+      *status = fll_execute_arguments_add_parameter_set(prefixs, names, values, 9, &arguments);
 
       f_string_dynamic_resize(0, &defines);
 
index 4cf7cff91e1b5194794363dee355292e45bd66f7..7b8b1c3df40c569191501fde72a472ef87c3c1d2 100644 (file)
@@ -258,7 +258,9 @@ extern "C" {
   const f_string_static_t fake_make_parameter_variable_current_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_current_s, 0, FAKE_make_parameter_variable_current_s_length);
   const f_string_static_t fake_make_parameter_variable_data_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_data_s, 0, FAKE_make_parameter_variable_data_s_length);
   const f_string_static_t fake_make_parameter_variable_define_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_define_s, 0, FAKE_make_parameter_variable_define_s_length);
+  const f_string_static_t fake_make_parameter_variable_documents_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_documents_s, 0, FAKE_make_parameter_variable_documents_s_length);
   const f_string_static_t fake_make_parameter_variable_fakefile_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_fakefile_s, 0, FAKE_make_parameter_variable_fakefile_s_length);
+  const f_string_static_t fake_make_parameter_variable_licenses_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_licenses_s, 0, FAKE_make_parameter_variable_licenses_s_length);
   const f_string_static_t fake_make_parameter_variable_mode_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_mode_s, 0, FAKE_make_parameter_variable_mode_s_length);
   const f_string_static_t fake_make_parameter_variable_process_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_process_s, 0, FAKE_make_parameter_variable_process_s_length);
   const f_string_static_t fake_make_parameter_variable_return_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_return_s, 0, FAKE_make_parameter_variable_return_s_length);
@@ -272,7 +274,9 @@ extern "C" {
   const f_string_static_t fake_make_parameter_variable_option_color_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_option_color_s, 0, FAKE_make_parameter_variable_option_color_s_length);
   const f_string_static_t fake_make_parameter_variable_option_data_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_option_data_s, 0, FAKE_make_parameter_variable_option_data_s_length);
   const f_string_static_t fake_make_parameter_variable_option_define_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_option_define_s, 0, FAKE_make_parameter_variable_option_define_s_length);
+  const f_string_static_t fake_make_parameter_variable_option_documents_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_option_documents_s, 0, FAKE_make_parameter_variable_option_documents_s_length);
   const f_string_static_t fake_make_parameter_variable_option_fakefile_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_option_fakefile_s, 0, FAKE_make_parameter_variable_option_fakefile_s_length);
+  const f_string_static_t fake_make_parameter_variable_option_licenses_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_option_licenses_s, 0, FAKE_make_parameter_variable_option_licenses_s_length);
   const f_string_static_t fake_make_parameter_variable_option_mode_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_option_mode_s, 0, FAKE_make_parameter_variable_option_mode_s_length);
   const f_string_static_t fake_make_parameter_variable_option_process_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_option_process_s, 0, FAKE_make_parameter_variable_option_process_s_length);
   const f_string_static_t fake_make_parameter_variable_option_settings_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_option_settings_s, 0, FAKE_make_parameter_variable_option_settings_s_length);
@@ -284,7 +288,9 @@ extern "C" {
   const f_string_static_t fake_make_parameter_variable_value_color_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_value_color_s, 0, FAKE_make_parameter_variable_value_color_s_length);
   const f_string_static_t fake_make_parameter_variable_value_data_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_value_data_s, 0, FAKE_make_parameter_variable_value_data_s_length);
   const f_string_static_t fake_make_parameter_variable_value_define_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_value_define_s, 0, FAKE_make_parameter_variable_value_define_s_length);
+  const f_string_static_t fake_make_parameter_variable_value_documents_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_value_documents_s, 0, FAKE_make_parameter_variable_value_documents_s_length);
   const f_string_static_t fake_make_parameter_variable_value_fakefile_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_value_fakefile_s, 0, FAKE_make_parameter_variable_value_fakefile_s_length);
+  const f_string_static_t fake_make_parameter_variable_value_licenses_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_value_licenses_s, 0, FAKE_make_parameter_variable_value_licenses_s_length);
   const f_string_static_t fake_make_parameter_variable_value_mode_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_value_mode_s, 0, FAKE_make_parameter_variable_value_mode_s_length);
   const f_string_static_t fake_make_parameter_variable_value_process_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_value_process_s, 0, FAKE_make_parameter_variable_value_process_s_length);
   const f_string_static_t fake_make_parameter_variable_value_settings_s = macro_f_string_static_t_initialize(FAKE_make_parameter_variable_value_settings_s, 0, FAKE_make_parameter_variable_value_settings_s_length);
@@ -322,6 +328,7 @@ extern "C" {
 #ifndef _di_fake_data_delete_
   f_status_t fake_data_delete(fake_data_t * const data) {
 
+    f_string_dynamic_resize(0, &data->path_build);
     f_string_dynamic_resize(0, &data->path_build_documentation);
     f_string_dynamic_resize(0, &data->path_build_documents);
     f_string_dynamic_resize(0, &data->path_build_includes);
index 1bf9e1f8ac3ac58fc57628125fa7a05133368af7..acacd4e761a762d1b70a4e8e41a5f5d3c28a3e8f 100644 (file)
@@ -39,7 +39,6 @@ extern "C" {
  * path_build_settings:         The build settings path.
  * path_build_stage:            The build stage path.
  *
- * path_data:               The data path.
  * path_data_build:         The build data path.
  * path_data_documentation: The documentation data path.
  * path_data_settings:      The settings data path.
@@ -48,7 +47,6 @@ extern "C" {
  * path_licenses:  The licenses path.
  * path_sources:   The sources path.
  *
- * path_work:                  The work path.
  * path_work_includes:         The includes work path.
  * path_work_libraries:        The libraries work path.
  * path_work_libraries_script: The libraries_script work path.
@@ -75,6 +73,7 @@ extern "C" {
     fll_program_data_t *main;
     fake_setting_t *setting;
 
+    f_string_dynamic_t path_build;
     f_string_dynamic_t path_build_documentation;
     f_string_dynamic_t path_build_documents;
     f_string_dynamic_t path_build_includes;
@@ -164,6 +163,7 @@ extern "C" {
       f_string_dynamic_t_initialize, \
       f_string_dynamic_t_initialize, \
       f_string_dynamic_t_initialize, \
+      f_string_dynamic_t_initialize, \
     }
 #endif // _di_fake_main_t_
 
@@ -1472,7 +1472,9 @@ extern "C" {
   #define FAKE_make_parameter_variable_current_s   "current"
   #define FAKE_make_parameter_variable_data_s      "data"
   #define FAKE_make_parameter_variable_define_s    "define"
+  #define FAKE_make_parameter_variable_documents_s "documents"
   #define FAKE_make_parameter_variable_fakefile_s  "fakefile"
+  #define FAKE_make_parameter_variable_licenses_s  "licenses"
   #define FAKE_make_parameter_variable_mode_s      "mode"
   #define FAKE_make_parameter_variable_process_s   "process"
   #define FAKE_make_parameter_variable_return_s    "return"
@@ -1486,7 +1488,9 @@ extern "C" {
   #define FAKE_make_parameter_variable_option_color_s     FAKE_make_parameter_variable_color_s FAKE_make_parameter_iki_option_s
   #define FAKE_make_parameter_variable_option_data_s      FAKE_make_parameter_variable_data_s FAKE_make_parameter_iki_option_s
   #define FAKE_make_parameter_variable_option_define_s    FAKE_make_parameter_variable_define_s FAKE_make_parameter_iki_option_s
+  #define FAKE_make_parameter_variable_option_documents_s FAKE_make_parameter_variable_documents_s FAKE_make_parameter_iki_option_s
   #define FAKE_make_parameter_variable_option_fakefile_s  FAKE_make_parameter_variable_fakefile_s FAKE_make_parameter_iki_option_s
+  #define FAKE_make_parameter_variable_option_licenses_s  FAKE_make_parameter_variable_licenses_s FAKE_make_parameter_iki_option_s
   #define FAKE_make_parameter_variable_option_mode_s      FAKE_make_parameter_variable_mode_s FAKE_make_parameter_iki_option_s
   #define FAKE_make_parameter_variable_option_process_s   FAKE_make_parameter_variable_process_s FAKE_make_parameter_iki_option_s
   #define FAKE_make_parameter_variable_option_settings_s  FAKE_make_parameter_variable_settings_s FAKE_make_parameter_iki_option_s
@@ -1498,7 +1502,9 @@ extern "C" {
   #define FAKE_make_parameter_variable_value_color_s     FAKE_make_parameter_variable_color_s FAKE_make_parameter_iki_value_s
   #define FAKE_make_parameter_variable_value_data_s      FAKE_make_parameter_variable_data_s FAKE_make_parameter_iki_value_s
   #define FAKE_make_parameter_variable_value_define_s    FAKE_make_parameter_variable_define_s FAKE_make_parameter_iki_value_s
+  #define FAKE_make_parameter_variable_value_documents_s FAKE_make_parameter_variable_documents_s FAKE_make_parameter_iki_value_s
   #define FAKE_make_parameter_variable_value_fakefile_s  FAKE_make_parameter_variable_fakefile_s FAKE_make_parameter_iki_value_s
+  #define FAKE_make_parameter_variable_value_licenses_s  FAKE_make_parameter_variable_licenses_s FAKE_make_parameter_iki_value_s
   #define FAKE_make_parameter_variable_value_mode_s      FAKE_make_parameter_variable_mode_s FAKE_make_parameter_iki_value_s
   #define FAKE_make_parameter_variable_value_process_s   FAKE_make_parameter_variable_process_s FAKE_make_parameter_iki_value_s
   #define FAKE_make_parameter_variable_value_settings_s  FAKE_make_parameter_variable_settings_s FAKE_make_parameter_iki_value_s
@@ -1514,7 +1520,10 @@ extern "C" {
   #define FAKE_make_parameter_variable_current_s_length   7
   #define FAKE_make_parameter_variable_data_s_length      4
   #define FAKE_make_parameter_variable_define_s_length    6
+  #define FAKE_make_parameter_variable_documents_s_length 9
   #define FAKE_make_parameter_variable_fakefile_s_length  8
+  #define FAKE_make_parameter_variable_licenses_s_length  8
+  #define FAKE_make_parameter_variable_data_s_length      4
   #define FAKE_make_parameter_variable_mode_s_length      4
   #define FAKE_make_parameter_variable_process_s_length   7
   #define FAKE_make_parameter_variable_return_s_length    6
@@ -1528,7 +1537,9 @@ extern "C" {
   #define FAKE_make_parameter_variable_option_color_s_length     FAKE_make_parameter_variable_color_s_length + FAKE_make_parameter_iki_option_s_length
   #define FAKE_make_parameter_variable_option_data_s_length      FAKE_make_parameter_variable_data_s_length + FAKE_make_parameter_iki_option_s_length
   #define FAKE_make_parameter_variable_option_define_s_length    FAKE_make_parameter_variable_define_s_length + FAKE_make_parameter_iki_option_s_length
+  #define FAKE_make_parameter_variable_option_documents_s_length FAKE_make_parameter_variable_documents_s_length + FAKE_make_parameter_iki_option_s_length
   #define FAKE_make_parameter_variable_option_fakefile_s_length  FAKE_make_parameter_variable_fakefile_s_length + FAKE_make_parameter_iki_option_s_length
+  #define FAKE_make_parameter_variable_option_licenses_s_length  FAKE_make_parameter_variable_licenses_s_length + FAKE_make_parameter_iki_option_s_length
   #define FAKE_make_parameter_variable_option_mode_s_length      FAKE_make_parameter_variable_mode_s_length + FAKE_make_parameter_iki_option_s_length
   #define FAKE_make_parameter_variable_option_process_s_length   FAKE_make_parameter_variable_process_s_length + FAKE_make_parameter_iki_option_s_length
   #define FAKE_make_parameter_variable_option_settings_s_length  FAKE_make_parameter_variable_settings_s_length + FAKE_make_parameter_iki_option_s_length
@@ -1539,8 +1550,10 @@ extern "C" {
   #define FAKE_make_parameter_variable_value_build_s_length     FAKE_make_parameter_variable_build_s_length + FAKE_make_parameter_iki_value_s_length
   #define FAKE_make_parameter_variable_value_color_s_length     FAKE_make_parameter_variable_color_s_length + FAKE_make_parameter_iki_value_s_length
   #define FAKE_make_parameter_variable_value_data_s_length      FAKE_make_parameter_variable_data_s_length + FAKE_make_parameter_iki_value_s_length
+  #define FAKE_make_parameter_variable_value_documents_s_length FAKE_make_parameter_variable_documents_s_length + FAKE_make_parameter_iki_value_s_length
   #define FAKE_make_parameter_variable_value_define_s_length    FAKE_make_parameter_variable_define_s_length + FAKE_make_parameter_iki_value_s_length
   #define FAKE_make_parameter_variable_value_fakefile_s_length  FAKE_make_parameter_variable_fakefile_s_length + FAKE_make_parameter_iki_value_s_length
+  #define FAKE_make_parameter_variable_value_licenses_s_length  FAKE_make_parameter_variable_licenses_s_length + FAKE_make_parameter_iki_value_s_length
   #define FAKE_make_parameter_variable_value_mode_s_length      FAKE_make_parameter_variable_mode_s_length + FAKE_make_parameter_iki_value_s_length
   #define FAKE_make_parameter_variable_value_process_s_length   FAKE_make_parameter_variable_process_s_length + FAKE_make_parameter_iki_value_s_length
   #define FAKE_make_parameter_variable_value_settings_s_length  FAKE_make_parameter_variable_settings_s_length + FAKE_make_parameter_iki_value_s_length
@@ -1556,7 +1569,9 @@ extern "C" {
   extern const f_string_static_t fake_make_parameter_variable_current_s;
   extern const f_string_static_t fake_make_parameter_variable_data_s;
   extern const f_string_static_t fake_make_parameter_variable_define_s;
+  extern const f_string_static_t fake_make_parameter_variable_documents_s;
   extern const f_string_static_t fake_make_parameter_variable_fakefile_s;
+  extern const f_string_static_t fake_make_parameter_variable_licenses_s;
   extern const f_string_static_t fake_make_parameter_variable_mode_s;
   extern const f_string_static_t fake_make_parameter_variable_process_s;
   extern const f_string_static_t fake_make_parameter_variable_return_s;
@@ -1570,7 +1585,9 @@ extern "C" {
   extern const f_string_static_t fake_make_parameter_variable_option_color_s;
   extern const f_string_static_t fake_make_parameter_variable_option_data_s;
   extern const f_string_static_t fake_make_parameter_variable_option_define_s;
+  extern const f_string_static_t fake_make_parameter_variable_option_documents_s;
   extern const f_string_static_t fake_make_parameter_variable_option_fakefile_s;
+  extern const f_string_static_t fake_make_parameter_variable_option_licenses_s;
   extern const f_string_static_t fake_make_parameter_variable_option_mode_s;
   extern const f_string_static_t fake_make_parameter_variable_option_process_s;
   extern const f_string_static_t fake_make_parameter_variable_option_settings_s;
@@ -1582,7 +1599,9 @@ extern "C" {
   extern const f_string_static_t fake_make_parameter_variable_value_color_s;
   extern const f_string_static_t fake_make_parameter_variable_value_data_s;
   extern const f_string_static_t fake_make_parameter_variable_value_define_s;
+  extern const f_string_static_t fake_make_parameter_variable_value_documents_s;
   extern const f_string_static_t fake_make_parameter_variable_value_fakefile_s;
+  extern const f_string_static_t fake_make_parameter_variable_value_licenses_s;
   extern const f_string_static_t fake_make_parameter_variable_value_mode_s;
   extern const f_string_static_t fake_make_parameter_variable_value_process_s;
   extern const f_string_static_t fake_make_parameter_variable_value_settings_s;
@@ -1595,7 +1614,9 @@ extern "C" {
     f_string_dynamics_t color;
     f_string_dynamics_t data;
     f_string_dynamics_t define;
+    f_string_dynamics_t documents;
     f_string_dynamics_t fakefile;
+    f_string_dynamics_t licenses;
     f_string_dynamics_t mode;
     f_string_dynamics_t process;
     f_string_dynamics_t settings;
@@ -1616,6 +1637,8 @@ extern "C" {
     f_string_dynamics_t_initialize, \
     f_string_dynamics_t_initialize, \
     f_string_dynamics_t_initialize, \
+    f_string_dynamics_t_initialize, \
+    f_string_dynamics_t_initialize, \
   }
 
   #define macro_fake_make_parameter_delete_simple(parameter) \
@@ -1623,7 +1646,9 @@ extern "C" {
     macro_f_string_dynamics_t_delete_simple(parameter.color) \
     macro_f_string_dynamics_t_delete_simple(parameter.data) \
     macro_f_string_dynamics_t_delete_simple(parameter.define) \
+    macro_f_string_dynamics_t_delete_simple(parameter.documents) \
     macro_f_string_dynamics_t_delete_simple(parameter.fakefile) \
+    macro_f_string_dynamics_t_delete_simple(parameter.licenses) \
     macro_f_string_dynamics_t_delete_simple(parameter.mode) \
     macro_f_string_dynamics_t_delete_simple(parameter.process) \
     macro_f_string_dynamics_t_delete_simple(parameter.settings) \
index 5677370ee935297625e956b8328ed02fd6adfe1b..fa90a594e50475fe220abb369cb495c19103fb9d 100644 (file)
@@ -21,11 +21,12 @@ extern "C" {
       };
 
       const uint8_t parameters_size[] = {
-        8,
+        9,
         3,
       };
 
       f_string_dynamic_t *values_0[] = {
+        &data->path_build,
         &data->path_build_documentation,
         &data->path_build_documents,
         &data->path_build_includes,
index 3d3410c285faaac6052ab9f3814cdb10b0cdd375..e9dc2bfcdf45fde788cd801cc15b260be2bc394a 100644 (file)
@@ -139,7 +139,7 @@ extern "C" {
         return status;
       }
 
-      status = f_file_read(file, buffer);
+      status = f_file_stream_read(file, buffer);
 
       f_file_stream_flush(file);
       f_file_stream_close(&file);
@@ -211,23 +211,34 @@ extern "C" {
     }
 
     const f_string_static_t names[] = {
-      fake_long_path_build_s,
-      fake_long_path_data_s,
-      fake_long_path_work_s,
+      fake_long_build_s,
+      fake_long_data_s,
+      fake_long_documents_s,
+      fake_long_licenses_s,
+      fake_long_sources_s,
+      fake_long_work_s,
     };
 
     const f_string_dynamic_t values[] = {
       data->setting->build,
       data->setting->data,
+      data->setting->documents,
+      data->setting->licenses,
+      data->setting->sources,
       data->setting->work,
     };
 
     uint8_t requireds[] = {
-      F_false,
-      (data->main->pipe & fll_program_data_pipe_input_e) ? F_false : F_true,
-      F_false,
+      F_false, // fake_long_build_s
+      (data->main->pipe & fll_program_data_pipe_input_e) ? F_false : F_true, // fake_long_data_s
+      F_false, // fake_long_documents_s
+      F_false, // fake_long_licenses_s
+      F_false, // fake_long_sources_s
+      F_false, // fake_long_work_s
     };
 
+    struct stat directory_stat;
+
     f_status_t status = F_none;
 
     // Check only expected operations (fake_operation_clean_e and fake_operation_skeleton_e should not call this function).
@@ -235,7 +246,7 @@ extern "C" {
       if (data->main->parameters.array[fake_parameter_fakefile_e].result == f_console_result_none_e) {
         if (data->setting->build.used && f_file_exists(data->setting->build, F_false) != F_true) {
           if (f_file_exists(fake_default_fakefile_s, F_false) == F_true) {
-            requireds[1] = F_false;
+            requireds[1] = F_false; // fake_long_data_s
           }
         }
       }
@@ -253,21 +264,19 @@ extern "C" {
         const f_array_length_t index = parameter->values.array[parameter->values.used - 1];
 
         if (f_path_is_absolute(data->main->parameters.arguments.array[index]) == F_true || f_path_is_relative_current(data->main->parameters.arguments.array[index]) == F_true) {
-          requireds[1] = F_none;
+          requireds[1] = F_none; // fake_long_data_s
         }
         else {
           status = f_file_exists(data->main->parameters.arguments.array[index], F_true);
 
           if (F_status_is_error_not(status) && status == F_true) {
-            requireds[1] = F_none;
+            requireds[1] = F_none; // fake_long_data_s
           }
         }
       }
     }
 
-    struct stat directory_stat;
-
-    for (uint8_t i = 0; i < 3; ++i) {
+    for (uint8_t i = 0; i < 6; ++i) {
 
       if (requireds[i] != F_none && values[i].used) {
         memset(&directory_stat, 0, sizeof(struct stat));
index 20213efff386d5770daf008b5f0165a9abdab5b9..c5328d6688d32a84494a5e4c676a641c0b2036cd 100644 (file)
@@ -265,68 +265,80 @@ extern "C" {
 
     {
       const f_string_static_t parameter[] = {
+        fake_short_build_s,
+        fake_short_data_s,
+        fake_short_documents_s,
         fake_short_fakefile_s,
-        fake_short_path_build_s,
-        fake_short_path_data_s,
-        fake_short_path_sources_s,
-        fake_short_path_work_s,
+        fake_short_licenses_s,
         fake_short_process_s,
         fake_short_settings_s,
+        fake_short_sources_s,
+        fake_short_work_s,
       };
 
-      const f_console_parameter_t *console[] = {
-        &data_make->main->parameters.array[fake_parameter_fakefile_e],
-        &data_make->main->parameters.array[fake_parameter_path_build_e],
-        &data_make->main->parameters.array[fake_parameter_path_data_e],
-        &data_make->main->parameters.array[fake_parameter_path_sources_e],
-        &data_make->main->parameters.array[fake_parameter_path_work_e],
-        &data_make->main->parameters.array[fake_parameter_process_e],
-        &data_make->main->parameters.array[fake_parameter_settings_e],
+      const f_console_parameter_t console[] = {
+        data_make->main->parameters.array[fake_parameter_build_e],
+        data_make->main->parameters.array[fake_parameter_data_e],
+        data_make->main->parameters.array[fake_parameter_documents_e],
+        data_make->main->parameters.array[fake_parameter_fakefile_e],
+        data_make->main->parameters.array[fake_parameter_licenses_e],
+        data_make->main->parameters.array[fake_parameter_process_e],
+        data_make->main->parameters.array[fake_parameter_settings_e],
+        data_make->main->parameters.array[fake_parameter_sources_e],
+        data_make->main->parameters.array[fake_parameter_work_e],
       };
 
-      const f_string_dynamic_t *source[] = {
-        &data_make->data->setting->fakefile,
-        &data_make->data->setting->build,
-        &data_make->data->setting->data,
-        &data_make->data->setting->sources,
-        &data_make->data->setting->work,
-        &data_make->data->setting->process,
-        &data_make->data->setting->settings,
+      const f_string_dynamic_t source[] = {
+        data_make->data->setting->build,
+        data_make->data->setting->data,
+        data_make->data->setting->documents,
+        data_make->data->setting->fakefile,
+        data_make->data->setting->licenses,
+        data_make->data->setting->process,
+        data_make->data->setting->settings,
+        data_make->data->setting->sources,
+        data_make->data->setting->work,
       };
 
       f_string_dynamics_t * const destination[] = {
-        &data_make->parameter.fakefile,
         &data_make->parameter.build,
         &data_make->parameter.data,
-        &data_make->parameter.sources,
-        &data_make->parameter.work,
+        &data_make->parameter.documents,
+        &data_make->parameter.fakefile,
+        &data_make->parameter.licenses,
         &data_make->parameter.process,
         &data_make->parameter.settings,
+        &data_make->parameter.sources,
+        &data_make->parameter.work,
       };
 
       f_string_dynamics_t * const destination_option[] = {
-        &data_make->parameter_option.fakefile,
         &data_make->parameter_option.build,
         &data_make->parameter_option.data,
-        &data_make->parameter_option.sources,
-        &data_make->parameter_option.work,
+        &data_make->parameter_option.documents,
+        &data_make->parameter_option.fakefile,
+        &data_make->parameter_option.licenses,
         &data_make->parameter_option.process,
         &data_make->parameter_option.settings,
+        &data_make->parameter_option.sources,
+        &data_make->parameter_option.work,
       };
 
       f_string_dynamics_t * const destination_value[] = {
-        &data_make->parameter_value.fakefile,
         &data_make->parameter_value.build,
         &data_make->parameter_value.data,
-        &data_make->parameter_value.sources,
-        &data_make->parameter_value.work,
+        &data_make->parameter_value.documents,
+        &data_make->parameter_value.fakefile,
+        &data_make->parameter_value.licenses,
         &data_make->parameter_value.process,
         &data_make->parameter_value.settings,
+        &data_make->parameter_value.sources,
+        &data_make->parameter_value.work,
       };
 
-      for (uint8_t i = 0; i < 7; ++i) {
+      for (uint8_t i = 0; i < 9; ++i) {
 
-        if (!(console[i]->result & f_console_result_found_e)) continue;
+        if (!(console[i].result & f_console_result_found_e)) continue;
 
         if (destination[i]->used + 2 > destination[i]->size) {
           *status = f_string_dynamics_increase_by(fake_default_allocation_small_d, destination[i]);
@@ -350,10 +362,10 @@ extern "C" {
           return;
         }
 
-        if (console[i]->flag & f_console_flag_normal_e) {
+        if (console[i].flag & f_console_flag_normal_e) {
           *status = f_string_dynamic_append_nulless(f_console_symbol_short_normal_s, &destination[i]->array[destination[i]->used]);
         }
-        else if (console[i]->flag & f_console_flag_inverse_e) {
+        else if (console[i].flag & f_console_flag_inverse_e) {
           *status = f_string_dynamic_append_nulless(f_console_symbol_short_inverse_s, &destination[i]->array[destination[i]->used]);
         }
 
@@ -382,10 +394,10 @@ extern "C" {
           return;
         }
 
-        *status = f_string_dynamic_append_nulless(*source[i], &destination[i]->array[destination[i]->used]);
+        *status = f_string_dynamic_append_nulless(source[i], &destination[i]->array[destination[i]->used]);
 
         if (F_status_is_error_not(*status)) {
-          *status = f_string_dynamic_append_nulless(*source[i], &destination_value[i]->array[destination_value[i]->used]);
+          *status = f_string_dynamic_append_nulless(source[i], &destination_value[i]->array[destination_value[i]->used]);
         }
 
         if (F_status_is_error(*status)) {
index 3e0827392886b1c9930a17f2c2770c82ad1e2c76..ff8dbf8e34cfa2b37e7ea58f08f46caaf8d35132 100644 (file)
@@ -304,7 +304,9 @@ extern "C" {
       fake_make_parameter_variable_color_s,
       fake_make_parameter_variable_data_s,
       fake_make_parameter_variable_define_s,
+      fake_make_parameter_variable_documents_s,
       fake_make_parameter_variable_fakefile_s,
+      fake_make_parameter_variable_licenses_s,
       fake_make_parameter_variable_mode_s,
       fake_make_parameter_variable_process_s,
       fake_make_parameter_variable_settings_s,
@@ -315,7 +317,9 @@ extern "C" {
       fake_make_parameter_variable_option_color_s,
       fake_make_parameter_variable_option_data_s,
       fake_make_parameter_variable_option_define_s,
+      fake_make_parameter_variable_option_documents_s,
       fake_make_parameter_variable_option_fakefile_s,
+      fake_make_parameter_variable_option_licenses_s,
       fake_make_parameter_variable_option_mode_s,
       fake_make_parameter_variable_option_process_s,
       fake_make_parameter_variable_option_settings_s,
@@ -326,7 +330,9 @@ extern "C" {
       fake_make_parameter_variable_value_color_s,
       fake_make_parameter_variable_value_data_s,
       fake_make_parameter_variable_value_define_s,
+      fake_make_parameter_variable_value_documents_s,
       fake_make_parameter_variable_value_fakefile_s,
+      fake_make_parameter_variable_value_licenses_s,
       fake_make_parameter_variable_value_mode_s,
       fake_make_parameter_variable_value_process_s,
       fake_make_parameter_variable_value_settings_s,
@@ -340,7 +346,9 @@ extern "C" {
       &data_make->parameter.color,
       &data_make->parameter.data,
       &data_make->parameter.define,
+      &data_make->parameter.documents,
       &data_make->parameter.fakefile,
+      &data_make->parameter.licenses,
       &data_make->parameter.mode,
       &data_make->parameter.process,
       &data_make->parameter.settings,
@@ -351,7 +359,9 @@ extern "C" {
       &data_make->parameter_option.color,
       &data_make->parameter_option.data,
       &data_make->parameter_option.define,
+      &data_make->parameter_option.documents,
       &data_make->parameter_option.fakefile,
+      &data_make->parameter_option.licenses,
       &data_make->parameter_option.mode,
       &data_make->parameter_option.process,
       &data_make->parameter_option.settings,
@@ -362,7 +372,9 @@ extern "C" {
       &data_make->parameter_value.color,
       &data_make->parameter_value.data,
       &data_make->parameter_value.define,
+      &data_make->parameter_value.documents,
       &data_make->parameter_value.fakefile,
+      &data_make->parameter_value.licenses,
       &data_make->parameter_value.mode,
       &data_make->parameter_value.process,
       &data_make->parameter_value.settings,
@@ -553,7 +565,7 @@ extern "C" {
               unmatched = F_false;
             }
             else {
-              for (k = 0; k < 33; ++k) {
+              for (k = 0; k < 39; ++k) {
 
                 if (fl_string_dynamic_partial_compare_string(reserved_name[k].string, data_make->buffer, reserved_name[k].used, iki_data->content.array[j]) != F_equal_to) {
                   continue;
index 962b340d6ea42515f78a714a985673fac9a169f6..f382a347fe93b361c1f5bc22b5aba373abcfe299 100644 (file)
@@ -1209,17 +1209,17 @@ extern "C" {
       data_make->data->setting->sources.used,
       F_true,
       data_make->data->setting->work.used,
-      data_make->main->parameters.array[fake_parameter_path_build_e].result & f_console_result_value_e,
+      data_make->main->parameters.array[fake_parameter_build_e].result & f_console_result_value_e,
       (data_make->main->parameters.array[fake_parameter_light_e].result & f_console_result_found_e) || (data_make->main->parameters.array[fake_parameter_dark_e].result & f_console_result_found_e) || (data_make->main->parameters.array[fake_parameter_no_color_e].result & f_console_result_found_e),
-      data_make->main->parameters.array[fake_parameter_path_data_e].result & f_console_result_value_e,
+      data_make->main->parameters.array[fake_parameter_data_e].result & f_console_result_value_e,
       data_make->main->parameters.array[fake_parameter_define_e].result & f_console_result_value_e,
       data_make->main->parameters.array[fake_parameter_fakefile_e].result & f_console_result_value_e,
       data_make->main->parameters.array[fake_parameter_mode_e].result & f_console_result_value_e,
       data_make->main->parameters.array[fake_parameter_process_e].result & f_console_result_value_e,
       data_make->main->parameters.array[fake_parameter_settings_e].result & f_console_result_value_e,
-      data_make->main->parameters.array[fake_parameter_path_sources_e].result & f_console_result_value_e,
+      data_make->main->parameters.array[fake_parameter_sources_e].result & f_console_result_value_e,
       (data_make->main->parameters.array[fake_parameter_verbosity_quiet_e].result & f_console_result_found_e) || (data_make->main->parameters.array[fake_parameter_verbosity_normal_e].result & f_console_result_found_e) || (data_make->main->parameters.array[fake_parameter_verbosity_verbose_e].result & f_console_result_found_e) || (data_make->main->parameters.array[fake_parameter_verbosity_debug_e].result & f_console_result_found_e),
-      data_make->main->parameters.array[fake_parameter_path_work_e].result & f_console_result_value_e,
+      data_make->main->parameters.array[fake_parameter_work_e].result & f_console_result_value_e,
       data_make->parameter_value.build.used,
       data_make->parameter_value.color.used,
       data_make->parameter_value.data.used,
index d6aa26a4fdda42d08285f30fde8478c3314081a3..6a4bc98bdab891d5d10fe5f6f5e4dc23e2443e25 100644 (file)
@@ -51,7 +51,7 @@ extern "C" {
       fake_skeleton_path_source_string(data, &fake_path_part_shell_s, &sources_bash);
 
       const f_string_static_t path[] = {
-        data->setting->build,
+        data->path_build,
         data->setting->data,
         data->path_data_build,
         data->path_data_documentation,