From 26a0bb5046ddb734805c55e6bbdbabb2274118ee Mon Sep 17 00:00:00 2001 From: Kevin Day Date: Sun, 1 Sep 2019 19:21:40 -0500 Subject: [PATCH] Feature: add 'dependency' generation to package.sh and update all dependencies This will help ensure that dependencies will be accurate and less error prone (so long as the script is run after making changes to any projects). Dependencies are processed from the projects individual data/build/dependencies file. The order of the dependencies does matter and is processed from top to bottom. The 4 core dependencies must be first if they are depended on (and in this order: f_type, f_status, f_memory, and f_string). The dependency generation for individual projects will generate the libraries to link against if a given project has any library source files. Linking is done in highest level to lowest level to help ensure no linking errors happen. The dependency generation for level projects and monolithic project are done based on the library and header sources. All files specified in the build_sources_library and build_sources_headers are generated. This script has been run and the dependency updates generated by this script are included in this commit. --- build/level_0/settings | 4 +- build/level_1/settings | 4 +- build/level_2/settings | 4 +- build/monolithic/settings | 4 +- build/scripts/package.sh | 457 +++++++++++++++++++-- level_0/f_colors/data/build/settings | 2 +- level_0/f_console/data/build/settings | 2 +- level_0/f_conversion/data/build/settings | 2 +- level_0/f_fss/data/build/settings | 2 +- level_0/f_print/data/build/settings | 2 +- level_0/f_serialized/data/build/settings | 2 +- level_0/f_string/data/build/settings | 2 +- level_0/f_utf/data/build/settings | 2 +- level_1/fl_colors/data/build/dependencies | 2 +- level_1/fl_colors/data/build/settings | 2 +- level_1/fl_console/data/build/dependencies | 2 +- level_1/fl_console/data/build/settings | 2 +- level_1/fl_directory/data/build/dependencies | 2 +- level_1/fl_file/data/build/dependencies | 2 +- level_1/fl_file/data/build/settings | 2 +- level_1/fl_fss/data/build/dependencies | 4 +- level_1/fl_fss/data/build/settings | 2 +- level_1/fl_program/data/build/settings | 2 +- level_1/fl_serialized/data/build/dependencies | 2 +- level_1/fl_serialized/data/build/settings | 2 +- level_1/fl_status/data/build/settings | 2 +- level_1/fl_string/data/build/settings | 2 +- level_1/fl_utf/data/build/settings | 2 +- level_2/fll_colors/data/build/dependencies | 2 +- level_2/fll_colors/data/build/settings | 2 +- level_2/fll_execute/data/build/dependencies | 2 +- level_2/fll_fss/data/build/dependencies | 4 +- level_2/fll_fss/data/build/settings | 2 +- level_2/fll_status/data/build/dependencies | 4 +- level_2/fll_status/data/build/settings | 2 +- level_3/firewall/data/build/dependencies | 10 +- level_3/firewall/data/build/settings | 2 +- .../fss_basic_list_read/data/build/dependencies | 8 +- level_3/fss_basic_list_read/data/build/settings | 2 +- .../fss_basic_list_write/data/build/dependencies | 8 +- level_3/fss_basic_list_write/data/build/settings | 2 +- level_3/fss_basic_read/data/build/dependencies | 8 +- level_3/fss_basic_read/data/build/settings | 2 +- level_3/fss_basic_write/data/build/dependencies | 8 +- level_3/fss_basic_write/data/build/settings | 2 +- level_3/fss_extended_read/data/build/settings | 2 +- level_3/fss_extended_write/data/build/settings | 2 +- level_3/fss_status_code/data/build/settings | 2 +- level_3/init/data/build/settings | 2 +- level_3/status_code/data/build/settings | 2 +- 50 files changed, 493 insertions(+), 108 deletions(-) diff --git a/build/level_0/settings b/build/level_0/settings index f538502..7846191 100644 --- a/build/level_0/settings +++ b/build/level_0/settings @@ -11,9 +11,9 @@ build_compiler gcc build_linker ar build_libraries -lc build_libraries_fll -build_sources_library level_0/console.c level_0/conversion.c level_0/file.c level_0/memory.c level_0/pipe.c level_0/print.c level_0/utf.c +build_sources_library console.c conversion.c file.c memory.c pipe.c print.c utf.c build_sources_program -build_sources_headers level_0/colors.h level_0/console.h level_0/conversion.h level_0/status.h level_0/file.h level_0/fss.h level_0/memory.h level_0/path_fll.h level_0/path_filesystem.h level_0/pipe.h level_0/print.h level_0/serialized.h level_0/string.h level_0/type.h level_0/type_array.h level_0/utf.h +build_sources_headers colors.h console.h conversion.h file.h fss.h memory.h path_fll.h path_filesystem.h pipe.h print.h serialized.h socket.h status.h string.h type.h type_array.h utf.h build_shared yes build_static yes diff --git a/build/level_1/settings b/build/level_1/settings index d08c3d5..1cc2a70 100644 --- a/build/level_1/settings +++ b/build/level_1/settings @@ -11,9 +11,9 @@ build_compiler gcc build_linker ar build_libraries -lc build_libraries_fll -lfll_0 -build_sources_library level_1/colors.c level_1/console.c level_1/directory.c level_1/status.c level_1/file.c level_1/fss.c level_1/fss_basic.c level_1/fss_basic_list.c level_1/fss_extended.c level_1/program.c level_1/serialized.c level_1/string.c level_1/utf.c +build_sources_library colors.c console.c directory.c file.c fss.c fss_basic.c fss_basic_list.c fss_extended.c program.c serialized.c socket.c status.c string.c utf.c build_sources_program -build_sources_headers level_1/colors.h level_1/console.h level_1/directory.h level_1/status.h level_1/file.h level_1/fss.h level_1/fss_basic.h level_1/fss_basic_list.h level_1/fss_status.h level_1/fss_extended.h level_1/fss_macro.h level_1/program.h level_1/serialized.h level_1/string.h level_1/utf.h +build_sources_headers colors.h console.h directory.h file.h fss.h fss_basic.h fss_basic_list.h fss_status.h fss_extended.h fss_macro.h program.h serialized.h socket.h status.h string.h utf.h build_shared yes build_static yes diff --git a/build/level_2/settings b/build/level_2/settings index d66e112..32bcc8a 100644 --- a/build/level_2/settings +++ b/build/level_2/settings @@ -11,9 +11,9 @@ build_compiler gcc build_linker ar build_libraries -lc build_libraries_fll -lfll_0 -lfll_1 -build_sources_library level_2/colors.c level_2/execute.c level_2/status.c level_2/fss_basic.c level_2/fss_basic_list.c level_2/fss_extended.c level_2/fss_status.c +build_sources_library colors.c execute.c fss_basic.c fss_basic_list.c fss_extended.c fss_status.c status.c build_sources_program -build_sources_headers level_2/colors.h level_2/execute.h level_2/status.h level_2/fss_basic.h level_2/fss_basic_list.h level_2/fss_extended.h level_2/fss_status.h +build_sources_headers colors.h execute.h fss_basic.h fss_basic_list.h fss_extended.h fss_status.h status.h build_shared yes build_static yes diff --git a/build/monolithic/settings b/build/monolithic/settings index 3fb3d70..a4749a7 100644 --- a/build/monolithic/settings +++ b/build/monolithic/settings @@ -11,9 +11,9 @@ build_compiler gcc build_linker ar build_libraries -lc build_libraries_fll -build_sources_library level_0/console.c level_0/conversion.c level_0/file.c level_0/memory.c level_0/pipe.c level_0/print.c level_0/utf.c level_1/colors.c level_1/console.c level_1/directory.c level_1/status.c level_1/file.c level_1/fss.c level_1/fss_basic.c level_1/fss_basic_list.c level_1/fss_extended.c level_1/program.c level_1/serialized.c level_1/string.c level_1/utf.c level_2/colors.c level_2/execute.c level_2/status.c +build_sources_library level_0/console.c level_0/conversion.c level_0/file.c level_0/memory.c level_0/pipe.c level_0/print.c level_0/utf.c level_1/colors.c level_1/console.c level_1/directory.c level_1/file.c level_1/fss.c level_1/fss_basic.c level_1/fss_basic_list.c level_1/fss_extended.c level_1/program.c level_1/serialized.c level_1/socket.c level_1/status.c level_1/string.c level_1/utf.c level_2/colors.c level_2/execute.c level_2/fss_basic.c level_2/fss_basic_list.c level_2/fss_extended.c level_2/fss_status.c level_2/status.c build_sources_program -build_sources_headers level_0/colors.h level_0/console.h level_0/conversion.h level_0/status.h level_0/file.h level_0/fss.h level_0/memory.h level_0/path_fll.h level_0/path_filesystem.h level_0/pipe.h level_0/print.h level_0/serialized.h level_0/string.h level_0/type.h level_0/type_array.h level_0/utf.h level_1/colors.h level_1/console.h level_1/directory.h level_1/status.h level_1/file.h level_1/fss.h level_1/fss_basic.h level_1/fss_basic_list.h level_1/fss_status.h level_1/fss_extended.h level_1/fss_macro.h level_1/program.h level_1/serialized.h level_1/string.h level_1/utf.h level_2/colors.h level_2/execute.h level_2/status.h level_2/fss_basic.h level_2/fss_basic_list.h level_2/fss_extended.h level_2/fss_status.h +build_sources_headers level_0/colors.h level_0/console.h level_0/conversion.h level_0/file.h level_0/fss.h level_0/memory.h level_0/path_fll.h level_0/path_filesystem.h level_0/pipe.h level_0/print.h level_0/serialized.h level_0/socket.h level_0/status.h level_0/string.h level_0/type.h level_0/type_array.h level_0/utf.h level_1/colors.h level_1/console.h level_1/directory.h level_1/file.h level_1/fss.h level_1/fss_basic.h level_1/fss_basic_list.h level_1/fss_status.h level_1/fss_extended.h level_1/fss_macro.h level_1/program.h level_1/serialized.h level_1/socket.h level_1/status.h level_1/string.h level_1/utf.h level_2/colors.h level_2/execute.h level_2/fss_basic.h level_2/fss_basic_list.h level_2/fss_extended.h level_2/fss_status.h level_2/status.h build_sources_bash build_sources_settings build_shared yes diff --git a/build/scripts/package.sh b/build/scripts/package.sh index 755358c..9d1db98 100644 --- a/build/scripts/package.sh +++ b/build/scripts/package.sh @@ -2,7 +2,7 @@ # license: lgpl-2.1 # programmer: Kevin Day # -# The purpose of this script is to create release directories from the project source. +# The purpose of this script is to create releases from the project source. # These release directories can then be used to compile the project or to package the project. # The dependencies of this script are: basename, bash, chmod, grep, and sed. @@ -101,48 +101,48 @@ package_main(){ exit 0 fi - if [[ ! -d $path_build ]] ; then - echo -e "${c_error}ERROR: build directory '$path_build' is invalid or missing.$c_reset" + if [[ $operation_failure == "fail-multiple" ]] ; then + echo -e "${c_error}ERROR: only one operation may be specified at a time.$c_reset" exit 1 - fi - - if [[ ! -d $path_destination ]] ; then - mkdir -vp $path_destination - if [[ $? -ne 0 ]] ; then - echo -e "${c_error}ERROR: package directory '$path_destination' is invalid or could not be created.$c_reset" + elif [[ $operation == "build" ]] ; then + if [[ ! -d $path_build ]] ; then + echo -e "${c_error}ERROR: build directory '$path_build' is invalid or missing.$c_reset" exit 1 fi - fi - if [[ ! -d $path_sources ]] ; then - echo -e "${c_error}ERROR: sources directory '$path_sources' is invalid or missing.$c_reset" - exit 1 - fi + if [[ ! -d $path_destination ]] ; then + mkdir -vp $path_destination + if [[ $? -ne 0 ]] ; then + echo -e "${c_error}ERROR: package directory '$path_destination' is invalid or could not be created.$c_reset" + exit 1 + fi + fi - if [[ ! -d ${path_sources}level_0/ ]] ; then - echo -e "${c_error}ERROR: build sources directory '${path_sources}level_0/' is invalid or missing.$c_reset" - exit 1 - fi + if [[ ! -d $path_sources ]] ; then + echo -e "${c_error}ERROR: sources directory '$path_sources' is invalid or missing.$c_reset" + exit 1 + fi - if [[ ! -d ${path_sources}level_1/ ]] ; then - echo -e "${c_error}ERROR: build sources directory '${path_sources}level_1/' is invalid or missing.$c_reset" - exit 1 - fi + if [[ ! -d ${path_sources}level_0/ ]] ; then + echo -e "${c_error}ERROR: build sources directory '${path_sources}level_0/' is invalid or missing.$c_reset" + exit 1 + fi - if [[ ! -d ${path_sources}level_2/ ]] ; then - echo -e "${c_error}ERROR: build sources directory '${path_sources}level_2/' is invalid or missing.$c_reset" - exit 1 - fi + if [[ ! -d ${path_sources}level_1/ ]] ; then + echo -e "${c_error}ERROR: build sources directory '${path_sources}level_1/' is invalid or missing.$c_reset" + exit 1 + fi - if [[ ! -d ${path_sources}level_3/ ]] ; then - echo -e "${c_error}ERROR: build sources directory '${path_sources}level_3/' is invalid or missing.$c_reset" - exit 1 - fi + if [[ ! -d ${path_sources}level_2/ ]] ; then + echo -e "${c_error}ERROR: build sources directory '${path_sources}level_2/' is invalid or missing.$c_reset" + exit 1 + fi + + if [[ ! -d ${path_sources}level_3/ ]] ; then + echo -e "${c_error}ERROR: build sources directory '${path_sources}level_3/' is invalid or missing.$c_reset" + exit 1 + fi - if [[ $operation_failure == "fail-multiple" ]] ; then - echo -e "${c_error}ERROR: only one operation may be specified at a time.$c_reset" - exit 1 - elif [[ $operation == "build" ]] ; then if [[ $mode_individual == "" && $mode_level == "" && $mode_monolithic == "" && $mode_program == "" ]] ; then mode_individual="yes" fi @@ -162,7 +162,19 @@ package_main(){ if [[ $mode_program == "yes" ]] ; then package_operation_program fi + elif [[ $operation == "dependencies" ]] ; then + if [[ ! -d $path_sources ]] ; then + echo -e "${c_error}ERROR: sources directory '$path_sources' is invalid or missing.$c_reset" + exit 1 + fi + + package_operation_dependencies elif [[ $operation == "clean" ]] ; then + if [[ ! -d $path_destination ]] ; then + echo -e "${c_warning}WARNING: package directory '$path_destination' does not exist, there is nothing to clean.$c_reset" + exit 0 + fi + package_operation_clean elif [[ $operation == "" ]] ; then echo -e "${c_error}ERROR: no operation was given.$c_reset" @@ -200,8 +212,9 @@ package_help(){ echo -e " ${c_notice}Version $version$c_reset" echo echo -e "$c_highlight$system_name$c_reset $c_notice<${c_reset}operation$c_notice>$c_reset" - echo -e " ${c_important}build${c_reset} Build the package" - echo -e " ${c_important}clean${c_reset} Delete all built packages" + echo -e " ${c_important}build${c_reset} Build the package" + echo -e " ${c_important}dependencies${c_reset} Rebuild all dependencies" + echo -e " ${c_important}clean${c_reset} Delete all built packages" echo echo -e "${c_highlight}Options:$c_reset" echo -e " -${c_important}h$c_reset, --${c_important}help$c_reset Print this help screen" @@ -381,6 +394,7 @@ package_operation_level(){ local name= local level= local directory= + local package= for level in level_0 level_1 level_2 ; do name="fll-$level" @@ -479,6 +493,7 @@ package_operation_monolithic(){ local name= local level= local directory= + local package= local subdirectory= local pathname= @@ -618,6 +633,7 @@ package_operation_program(){ local failure= local name= local directory= + local package= if [[ ! -d ${path_destination}program ]] ; then mkdir -vp ${path_destination}program @@ -663,6 +679,369 @@ package_operation_program(){ fi } +package_operation_dependencies() { + local failure= + local level_0_libraries= + local level_1_libraries= + local level_2_libraries= + local level_0_headers= + local level_1_headers= + local level_2_headers= + + package_dependencies_individual + + if [[ $failure != "" ]] ; then + return; + fi + + package_dependencies_level + + if [[ $failure != "" ]] ; then + return; + fi + + package_dependencies_monolithic +} + +package_dependencies_individual() { + local level= + local directory= + local settings= + local name= + local dependencies= + local dependency= + local sub_level= + local sub_dependencies= + local sub_dependency= + local sub_sub_level= + local sub_sub_dependencies= + local sub_sub_dependency= + local individual_dependencies= + + for directory in ${path_sources}level_0/* ${path_sources}level_1/* ${path_sources}level_2/* ${path_sources}level_3/* ; do + name="$(echo $directory | sed -e "s|${path_sources}level_0/||" -e "s|${path_sources}level_1/||" -e "s|${path_sources}level_2/||" -e "s|${path_sources}level_3/||")" + + echo + echo -e "${c_highlight}Building Dependencies For $c_reset$c_notice${name}$c_reset${c_highlight}.$c_reset" + + if [[ ! -f ${directory}/data/build/dependencies ]] ; then + echo -e "${c_error}ERROR: cannot build dependencies, failed to find $c_notice${directory}/data/build/dependencies$c_error.$c_reset" + failure=1 + return + fi + if [[ ! -f ${directory}/data/build/settings ]] ; then + echo -e "${c_error}ERROR: cannot build dependencies for $c_reset$c_notice${name}$c_reset${c_error}, failed to find $c_notice${directory}/data/build/settings$c_error.$c_reset" + failure=1 + return + fi + + dependencies= + if [[ -f ${directory}/data/build/dependencies ]] ; then + dependencies=$(cat ${directory}/data/build/dependencies) + fi + + individual_dependencies= + for dependency in $dependencies ; do + if [[ $(echo "$dependency" | grep -o "^f_") != "" ]] ; then + level=level_0 + elif [[ $(echo "$dependency" | grep -o "^fl_") != "" ]] ; then + level=level_1 + elif [[ $(echo "$dependency" | grep -o "^fll_") != "" ]] ; then + level=level_2 + else + echo -e "${c_warning}WARNING: failed to detect level for dependency $c_notice$dependency$c_warning.$c_reset" + continue + fi + + if [[ ! -d ${path_sources}${level}/${dependency}/data/build/ ]] ; then + echo -e "${c_error}ERROR: failed to find dependency data directory $c_notice${path_sources}${level}/${dependency}/data/build/$c_error.$c_reset" + failure=1 + return + fi + + sub_dependencies= + if [[ -f ${path_sources}${level}/${dependency}/data/build/dependencies ]] ; then + sub_dependencies=$(cat ${path_sources}${level}/${dependency}/data/build/dependencies) + fi + + for sub_dependency in $sub_dependencies ; do + if [[ $(echo "$sub_dependency" | grep -o "^f_") != "" ]] ; then + sub_level=level_0 + elif [[ $(echo "$sub_dependency" | grep -o "^fl_") != "" ]] ; then + sub_level=level_1 + else + echo -e "${c_warning}WARNING: failed to detect level for sub-dependency $c_notice$sub_dependency$c_warning.$c_reset" + continue + fi + + if [[ ! -d ${path_sources}${sub_level}/${sub_dependency}/data/build/ ]] ; then + echo -e "${c_error}ERROR: failed to find dependency data directory $c_notice${path_sources}${sub_level}/${sub_dependency}/data/build/$c_error.$c_reset" + failure=1 + return + fi + + sub_sub_dependencies= + if [[ -f ${path_sources}${sub_level}/${sub_dependency}/data/build/dependencies ]] ; then + sub_sub_dependencies=$(cat ${path_sources}${sub_level}/${sub_dependency}/data/build/dependencies) + fi + + for sub_sub_dependency in $sub_sub_dependencies ; do + if [[ $(echo "$sub_sub_dependency" | grep -o "^f_") != "" ]] ; then + sub_sub_level=level_0 + else + echo -e "${c_warning}WARNING: failed to detect level for sub-sub-dependency $c_notice$sub_sub_dependency$c_warning.$c_reset" + continue + fi + + package_dependencies_append "$sub_sub_level" "$sub_sub_dependency" + done + + if [[ $failure != "" ]] ; then + break; + fi + + package_dependencies_append "$sub_level" "$sub_dependency" + + if [[ $failure != "" ]] ; then + break; + fi + done + + if [[ $failure != "" ]] ; then + break; + fi + + package_dependencies_append "$level" "$dependency" + + if [[ $failure != "" ]] ; then + break; + fi + done + + if [[ $failure != "" ]] ; then + break; + fi + + individual_dependencies=$(echo "$individual_dependencies" | sed -e 's|^[[:space:]]*||' -e 's|[[:space:]]*$||') + if [[ $individual_dependencies != "" ]] ; then + echo -e " $individual_dependencies" + individual_dependencies=" $individual_dependencies" + fi + + settings=${directory}/data/build/settings + sed -i -e "s|^build_libraries_fll\>.*\$|build_libraries_fll$individual_dependencies|" $settings + + if [[ $? -ne 0 ]] ; then + echo -e "${c_error}ERROR: failed to update settings file $c_notice${settings}$c_error.$c_reset" + failure=1 + return + fi + done +} + +package_dependencies_level() { + local directory= + local name= + local settings= + local library= + local libraries= + local header= + local headers= + + package_dependencies_level_update "level_0" + + if [[ $failure != "" ]] ; then + return; + fi + + package_dependencies_level_update "level_1" + + if [[ $failure != "" ]] ; then + return; + fi + + package_dependencies_level_update "level_2" +} + +package_dependencies_level_update() { + local level="$1" + local level_libraries= + local level_headers= + local monolithic_libraries= + local monolithic_headers= + + echo + echo -e "${c_highlight}Building Dependencies: $c_notice$level${c_highlight}.$c_reset" + + for directory in $path_sources${level}/* ; do + name="$(echo $directory | sed -e "s|$path_sources${level}/||")" + + settings=${directory}/data/build/settings + if [[ ! -f $settings ]] ; then + echo -e "${c_error}ERROR: failed to find settings file $c_notice$settings$c_error.$c_reset" + failure=1 + return + fi + + libraries=$(grep -o '^build_sources_library\>.*$' $settings | sed -e 's|^build_sources_library\>||' -e 's|^[[:space:]]*||' -e 's|[[:space:]]*$||') + for library in $libraries ; do + level_libraries="$level_libraries $library" + monolithic_libraries="$monolithic_libraries $level/$library" + done + + headers=$(grep -o '^build_sources_headers\>.*$' $settings | sed -e 's|^build_sources_headers\>||' -e 's|^[[:space:]]*||' -e 's|[[:space:]]*$||') + for header in $headers ; do + level_headers="$level_headers $header" + monolithic_headers="$monolithic_headers $level/$header" + done + done + + settings=${path_sources}/build/${level}/settings + + if [[ ! -f $settings ]] ; then + echo -e "${c_error}ERROR: failed to find settings file $c_notice$settings$c_error.$c_reset" + failure=1 + return + fi + + level_libraries=$(echo "$level_libraries" | sed -e 's|^[[:space:]]*||' -e 's|[[:space:]]*$||') + if [[ $level_libraries != "" ]] ; then + echo " $level_libraries" + level_libraries=" $level_libraries" + fi + + sed -i -e "s|^build_sources_library\>.*\$|build_sources_library$level_libraries|" $settings + + if [[ $? -ne 0 ]] ; then + echo -e "${c_error}ERROR: failed to update libraries for settings file $c_notice$settings$c_error.$c_reset" + failure=1 + return + fi + + level_headers=$(echo "$level_headers" | sed -e 's|^[[:space:]]*||' -e 's|[[:space:]]*$||') + if [[ $level_headers != "" ]] ; then + echo " $level_headers" + level_headers=" $level_headers" + fi + + sed -i -e "s|^build_sources_headers\>.*\$|build_sources_headers$level_headers|" $settings + + if [[ $? -ne 0 ]] ; then + echo -e "${c_error}ERROR: failed to update headers for settings file $c_notice$settings$c_error.$c_reset" + failure=1 + return + fi + + if [[ $level == "level_0" ]] ; then + level_0_libraries=$(echo "$monolithic_libraries" | sed -e 's|^[[:space:]]*||' -e 's|[[:space:]]*$||') + level_0_headers=$(echo "$monolithic_headers" | sed -e 's|^[[:space:]]*||' -e 's|[[:space:]]*$||') + elif [[ $level == "level_1" ]] ; then + level_1_libraries=$(echo "$monolithic_libraries" | sed -e 's|^[[:space:]]*||' -e 's|[[:space:]]*$||') + level_1_headers=$(echo "$monolithic_headers" | sed -e 's|^[[:space:]]*||' -e 's|[[:space:]]*$||') + elif [[ $level == "level_2" ]] ; then + level_2_libraries=$(echo "$monolithic_libraries" | sed -e 's|^[[:space:]]*||' -e 's|[[:space:]]*$||') + level_2_headers=$(echo "$monolithic_headers" | sed -e 's|^[[:space:]]*||' -e 's|[[:space:]]*$||') + fi +} + +package_dependencies_monolithic() { + local monolithic_libraries="" + local monolithic_headers="" + + echo + echo -e "${c_highlight}Building Dependencies: ${c_notice}monolithic${c_highlight}.$c_reset" + + if [[ $level_0_libraries != "" ]] ; then + monolithic_libraries="$level_0_libraries" + fi + + if [[ $level_0_headers != "" ]] ; then + monolithic_headers="$level_0_headers" + fi + + if [[ $level_1_libraries != "" ]] ; then + if [[ $monolithic_libraries == "" ]] ; then + monolithic_libraries="$level_1_libraries" + else + monolithic_libraries="$monolithic_libraries $level_1_libraries" + fi + fi + + if [[ $level_1_headers != "" ]] ; then + if [[ $monolithic_libraries == "" ]] ; then + monolithic_headers="$level_1_headers" + else + monolithic_headers="$monolithic_headers $level_1_headers" + fi + fi + + if [[ $level_2_libraries != "" ]] ; then + if [[ $monolithic_libraries == "" ]] ; then + monolithic_libraries="$level_2_libraries" + else + monolithic_libraries="$monolithic_libraries $level_2_libraries" + fi + fi + + if [[ $level_2_headers != "" ]] ; then + if [[ $monolithic_libraries == "" ]] ; then + monolithic_headers="$level_2_headers" + else + monolithic_headers="$monolithic_headers $level_2_headers" + fi + fi + + settings=${path_sources}/build/monolithic/settings + + if [[ $monolithic_libraries != "" ]] ; then + echo " $monolithic_libraries" + monolithic_libraries=" $monolithic_libraries" + fi + + sed -i -e "s|^build_sources_library\>.*\$|build_sources_library$monolithic_libraries|" $settings + + if [[ $? -ne 0 ]] ; then + echo -e "${c_error}ERROR: failed to update libraries for settings file $c_notice$settings$c_error.$c_reset" + failure=1 + return + fi + + + if [[ $monolithic_headers != "" ]] ; then + echo " $monolithic_headers" + monolithic_headers=" $monolithic_headers" + fi + + sed -i -e "s|^build_sources_headers\>.*\$|build_sources_headers$monolithic_headers|" $settings + + if [[ $? -ne 0 ]] ; then + echo -e "${c_error}ERROR: failed to update headers for settings file $c_notice$settings$c_error.$c_reset" + failure=1 + return + fi +} + +package_dependencies_append() { + local level="$1" + local dependency="$2" + local settings= + local libraries= + + settings=${path_sources}${level}/${dependency}/data/build/settings + if [[ ! -f $settings ]] ; then + echo -e "${c_error}ERROR: failed to find dependency settings file $c_notice$settings$c_error.$c_reset" + failure=1 + return + fi + + libraries=$(grep -o '^build_sources_library\>.*$' $settings | sed -e 's|^build_sources_library\>||' -e 's|^[[:space:]]*||' -e 's|[[:space:]]*$||') + if [[ $libraries != "" ]] ; then + if [[ $(echo $individual_dependencies | grep -o "\-l$dependency\>") == "" ]] ; then + individual_dependencies="-l$dependency $individual_dependencies" + fi + fi +} + package_operation_clean(){ local i= @@ -684,6 +1063,12 @@ package_cleanup(){ unset package_operation_level unset package_operation_monolithic unset package_operation_program + unset package_operation_dependencies + unset package_dependencies_individual + unset package_dependencies_level + unset package_dependencies_level_update + unset package_dependencies_monolithic + unset package_dependencies_append unset package_cleanup } diff --git a/level_0/f_colors/data/build/settings b/level_0/f_colors/data/build/settings index f908df4..cb8f6c1 100644 --- a/level_0/f_colors/data/build/settings +++ b/level_0/f_colors/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll +build_libraries_fll -lf_memory build_sources_library build_sources_program build_sources_headers colors.h diff --git a/level_0/f_console/data/build/settings b/level_0/f_console/data/build/settings index d39a6f1..bded1b9 100644 --- a/level_0/f_console/data/build/settings +++ b/level_0/f_console/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll +build_libraries_fll -lf_memory build_sources_library console.c build_sources_program build_sources_headers console.h diff --git a/level_0/f_conversion/data/build/settings b/level_0/f_conversion/data/build/settings index c480d36..1bc814a 100644 --- a/level_0/f_conversion/data/build/settings +++ b/level_0/f_conversion/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll +build_libraries_fll -lf_memory build_sources_library conversion.c build_sources_program build_sources_headers conversion.h diff --git a/level_0/f_fss/data/build/settings b/level_0/f_fss/data/build/settings index 15f07fd..2cf6fe2 100644 --- a/level_0/f_fss/data/build/settings +++ b/level_0/f_fss/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll +build_libraries_fll -lf_memory build_sources_library build_sources_program build_sources_headers fss.h diff --git a/level_0/f_print/data/build/settings b/level_0/f_print/data/build/settings index 739a02e..89d9113 100644 --- a/level_0/f_print/data/build/settings +++ b/level_0/f_print/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll +build_libraries_fll -lf_memory build_sources_library print.c build_sources_program build_sources_headers print.h diff --git a/level_0/f_serialized/data/build/settings b/level_0/f_serialized/data/build/settings index 46cd4a3..1bbd560 100644 --- a/level_0/f_serialized/data/build/settings +++ b/level_0/f_serialized/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll +build_libraries_fll -lf_memory build_sources_library build_sources_program build_sources_headers serialized.h diff --git a/level_0/f_string/data/build/settings b/level_0/f_string/data/build/settings index 1895ecf..7709246 100644 --- a/level_0/f_string/data/build/settings +++ b/level_0/f_string/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll +build_libraries_fll -lf_memory build_sources_library build_sources_program build_sources_headers string.h diff --git a/level_0/f_utf/data/build/settings b/level_0/f_utf/data/build/settings index 5e0a396..0fc14b9 100644 --- a/level_0/f_utf/data/build/settings +++ b/level_0/f_utf/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll +build_libraries_fll -lf_memory build_sources_library utf.c build_sources_program build_sources_headers utf.h diff --git a/level_1/fl_colors/data/build/dependencies b/level_1/fl_colors/data/build/dependencies index 9dbca83..424bcf3 100644 --- a/level_1/fl_colors/data/build/dependencies +++ b/level_1/fl_colors/data/build/dependencies @@ -1,7 +1,7 @@ f_type f_status +f_memory f_string f_colors f_file -f_memory f_print diff --git a/level_1/fl_colors/data/build/settings b/level_1/fl_colors/data/build/settings index 1823c52..ae05a15 100644 --- a/level_1/fl_colors/data/build/settings +++ b/level_1/fl_colors/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lf_memory -lf_file -lf_print +build_libraries_fll -lf_print -lf_file -lf_memory build_sources_library colors.c build_sources_program build_sources_headers colors.h diff --git a/level_1/fl_console/data/build/dependencies b/level_1/fl_console/data/build/dependencies index 24cd18c..1ee73f6 100644 --- a/level_1/fl_console/data/build/dependencies +++ b/level_1/fl_console/data/build/dependencies @@ -1,6 +1,6 @@ f_type f_status +f_memory f_string f_console -f_memory f_utf diff --git a/level_1/fl_console/data/build/settings b/level_1/fl_console/data/build/settings index 600b1af..09aa483 100644 --- a/level_1/fl_console/data/build/settings +++ b/level_1/fl_console/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lf_memory -lf_console -lf_utf +build_libraries_fll -lf_utf -lf_console -lf_memory build_sources_library console.c build_sources_program build_sources_headers console.h diff --git a/level_1/fl_directory/data/build/dependencies b/level_1/fl_directory/data/build/dependencies index 50ca900..d8175f5 100644 --- a/level_1/fl_directory/data/build/dependencies +++ b/level_1/fl_directory/data/build/dependencies @@ -1,4 +1,4 @@ f_type f_status -f_string f_memory +f_string diff --git a/level_1/fl_file/data/build/dependencies b/level_1/fl_file/data/build/dependencies index ee806ff..0d4b555 100644 --- a/level_1/fl_file/data/build/dependencies +++ b/level_1/fl_file/data/build/dependencies @@ -1,5 +1,5 @@ f_type f_status +f_memory f_string f_file -f_memory diff --git a/level_1/fl_file/data/build/settings b/level_1/fl_file/data/build/settings index 5400c3e..4259a42 100644 --- a/level_1/fl_file/data/build/settings +++ b/level_1/fl_file/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lf_memory -lf_file +build_libraries_fll -lf_file -lf_memory build_sources_library file.c build_sources_program build_sources_headers file.h diff --git a/level_1/fl_fss/data/build/dependencies b/level_1/fl_fss/data/build/dependencies index b7254be..65666d6 100644 --- a/level_1/fl_fss/data/build/dependencies +++ b/level_1/fl_fss/data/build/dependencies @@ -1,8 +1,8 @@ f_type f_status -f_string f_memory -f_file +f_string f_conversion +f_file f_fss f_utf diff --git a/level_1/fl_fss/data/build/settings b/level_1/fl_fss/data/build/settings index 5abd997..1885271 100644 --- a/level_1/fl_fss/data/build/settings +++ b/level_1/fl_fss/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lf_conversion -lf_file -lf_memory -lf_utf +build_libraries_fll -lf_utf -lf_file -lf_conversion -lf_memory build_sources_library fss.c fss_basic.c fss_basic_list.c fss_extended.c build_sources_program build_sources_headers fss.h fss_basic.h fss_basic_list.h fss_status.h fss_extended.h fss_macro.h diff --git a/level_1/fl_program/data/build/settings b/level_1/fl_program/data/build/settings index abe5d93..63225f6 100644 --- a/level_1/fl_program/data/build/settings +++ b/level_1/fl_program/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll +build_libraries_fll -lf_memory build_sources_library program.c build_sources_program build_sources_headers program.h diff --git a/level_1/fl_serialized/data/build/dependencies b/level_1/fl_serialized/data/build/dependencies index 281b1ea..4b5018d 100644 --- a/level_1/fl_serialized/data/build/dependencies +++ b/level_1/fl_serialized/data/build/dependencies @@ -1,6 +1,6 @@ f_type f_status +f_memory f_string f_serialized -f_memory f_utf diff --git a/level_1/fl_serialized/data/build/settings b/level_1/fl_serialized/data/build/settings index ddc683d..d4d2ca1 100644 --- a/level_1/fl_serialized/data/build/settings +++ b/level_1/fl_serialized/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lf_memory -lf_utf +build_libraries_fll -lf_utf -lf_memory build_sources_library serialized.c build_sources_program build_sources_headers serialized.h diff --git a/level_1/fl_status/data/build/settings b/level_1/fl_status/data/build/settings index 22c22b6..6aff67a 100644 --- a/level_1/fl_status/data/build/settings +++ b/level_1/fl_status/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll +build_libraries_fll -lf_utf -lf_memory build_sources_library status.c build_sources_program build_sources_headers status.h diff --git a/level_1/fl_string/data/build/settings b/level_1/fl_string/data/build/settings index d5e3093..052762e 100644 --- a/level_1/fl_string/data/build/settings +++ b/level_1/fl_string/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lf_memory -lf_utf +build_libraries_fll -lf_utf -lf_memory build_sources_library string.c build_sources_program build_sources_headers string.h diff --git a/level_1/fl_utf/data/build/settings b/level_1/fl_utf/data/build/settings index b3c4e38..0d696e6 100644 --- a/level_1/fl_utf/data/build/settings +++ b/level_1/fl_utf/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lf_memory -lf_utf +build_libraries_fll -lf_utf -lf_memory build_sources_library utf.c build_sources_program build_sources_headers utf.h diff --git a/level_2/fll_colors/data/build/dependencies b/level_2/fll_colors/data/build/dependencies index 8edee6b..c45b97c 100644 --- a/level_2/fll_colors/data/build/dependencies +++ b/level_2/fll_colors/data/build/dependencies @@ -1,6 +1,6 @@ f_type f_status +f_memory f_string f_colors -f_memory fl_colors diff --git a/level_2/fll_colors/data/build/settings b/level_2/fll_colors/data/build/settings index a97355a..eca2a89 100644 --- a/level_2/fll_colors/data/build/settings +++ b/level_2/fll_colors/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lfl_colors -lf_memory +build_libraries_fll -lfl_colors -lf_print -lf_file -lf_memory build_sources_library colors.c build_sources_program build_sources_headers colors.h diff --git a/level_2/fll_execute/data/build/dependencies b/level_2/fll_execute/data/build/dependencies index 50ca900..d8175f5 100644 --- a/level_2/fll_execute/data/build/dependencies +++ b/level_2/fll_execute/data/build/dependencies @@ -1,4 +1,4 @@ f_type f_status -f_string f_memory +f_string diff --git a/level_2/fll_fss/data/build/dependencies b/level_2/fll_fss/data/build/dependencies index c5362ab..f8f5567 100644 --- a/level_2/fll_fss/data/build/dependencies +++ b/level_2/fll_fss/data/build/dependencies @@ -1,10 +1,10 @@ f_type f_status -f_string f_memory +f_string f_conversion -f_utf f_fss +f_utf fl_fss fl_status fl_string diff --git a/level_2/fll_fss/data/build/settings b/level_2/fll_fss/data/build/settings index 8df8755..e0483f2 100644 --- a/level_2/fll_fss/data/build/settings +++ b/level_2/fll_fss/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lfl_status -lfl_string -lfl_fss -lf_conversion -lf_file -lf_memory -lf_conversion -lf_utf +build_libraries_fll -lfl_string -lfl_status -lfl_fss -lf_file -lf_utf -lf_conversion -lf_memory build_sources_library fss_basic.c fss_basic_list.c fss_extended.c fss_status.c build_sources_program build_sources_headers fss_basic.h fss_basic_list.h fss_extended.h fss_status.h diff --git a/level_2/fll_status/data/build/dependencies b/level_2/fll_status/data/build/dependencies index fd37ba8..1e5b4b2 100644 --- a/level_2/fll_status/data/build/dependencies +++ b/level_2/fll_status/data/build/dependencies @@ -1,8 +1,8 @@ f_type f_status f_memory -f_conversion f_string +f_conversion f_utf -fl_string fl_status +fl_string diff --git a/level_2/fll_status/data/build/settings b/level_2/fll_status/data/build/settings index 5264754..9c1ab59 100644 --- a/level_2/fll_status/data/build/settings +++ b/level_2/fll_status/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lfl_status -lfl_string -lf_memory -lf_conversion -lf_utf +build_libraries_fll -lfl_string -lfl_status -lf_utf -lf_conversion -lf_memory build_sources_library status.c build_sources_program build_sources_headers status.h diff --git a/level_3/firewall/data/build/dependencies b/level_3/firewall/data/build/dependencies index 393eb9f..9e5b969 100644 --- a/level_3/firewall/data/build/dependencies +++ b/level_3/firewall/data/build/dependencies @@ -1,11 +1,11 @@ -f_console +f_type f_status -f_fss f_memory +f_string +f_console +f_fss f_pipe f_print -f_string -f_type f_utf fl_colors fl_console @@ -13,8 +13,8 @@ fl_directory fl_file fl_fss fl_program -fl_string fl_status +fl_string fll_colors fll_execute fll_fss diff --git a/level_3/firewall/data/build/settings b/level_3/firewall/data/build/settings index 7a4a57c..045e51c 100644 --- a/level_3/firewall/data/build/settings +++ b/level_3/firewall/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lfll_colors -lfll_fss -lfll_execute -lfl_directory -lfl_colors -lfl_status -lfl_string -lfl_file -lfl_console -lfl_fss -lfl_program -lf_pipe -lf_file -lf_print -lf_conversion -lf_console -lf_memory -lf_utf +build_libraries_fll -lfll_fss -lfll_execute -lfll_colors -lfl_string -lfl_status -lfl_program -lfl_fss -lf_conversion -lfl_file -lfl_directory -lfl_console -lfl_colors -lf_file -lf_utf -lf_print -lf_pipe -lf_console -lf_memory #build_libraries_fll-level -lfll_2 -lfll_1 -lfll_0 #build_libraries_fll-monolithic -lfll build_sources_library firewall.c private-firewall.c diff --git a/level_3/fss_basic_list_read/data/build/dependencies b/level_3/fss_basic_list_read/data/build/dependencies index 5fc6035..4823a86 100644 --- a/level_3/fss_basic_list_read/data/build/dependencies +++ b/level_3/fss_basic_list_read/data/build/dependencies @@ -1,11 +1,11 @@ -f_console +f_type f_status -f_fss f_memory +f_string +f_console +f_fss f_pipe f_print -f_string -f_type fl_colors fl_console fl_directory diff --git a/level_3/fss_basic_list_read/data/build/settings b/level_3/fss_basic_list_read/data/build/settings index 98f7958..7c3106e 100644 --- a/level_3/fss_basic_list_read/data/build/settings +++ b/level_3/fss_basic_list_read/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lfll_colors -lfll_fss -lfll_execute -lfl_directory -lfl_colors -lfl_status -lfl_string -lfl_file -lfl_console -lfl_program -lfl_fss -lf_pipe -lf_file -lf_print -lf_conversion -lf_console -lf_memory -lf_utf +build_libraries_fll -lfll_fss -lfll_execute -lfll_colors -lfl_string -lfl_status -lfl_program -lfl_fss -lf_conversion -lfl_file -lfl_directory -lfl_console -lf_utf -lfl_colors -lf_file -lf_print -lf_pipe -lf_console -lf_memory #build_libraries_fll-level -lfll_2 -lfll_1 -lfll_0 #build_libraries_fll-monolithic -lfll build_sources_library fss_basic_list_read.c diff --git a/level_3/fss_basic_list_write/data/build/dependencies b/level_3/fss_basic_list_write/data/build/dependencies index 5fc6035..4823a86 100644 --- a/level_3/fss_basic_list_write/data/build/dependencies +++ b/level_3/fss_basic_list_write/data/build/dependencies @@ -1,11 +1,11 @@ -f_console +f_type f_status -f_fss f_memory +f_string +f_console +f_fss f_pipe f_print -f_string -f_type fl_colors fl_console fl_directory diff --git a/level_3/fss_basic_list_write/data/build/settings b/level_3/fss_basic_list_write/data/build/settings index de7a17e..b9f531c 100644 --- a/level_3/fss_basic_list_write/data/build/settings +++ b/level_3/fss_basic_list_write/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lfll_colors -lfll_fss -lfl_fss -lfl_file -lfl_status -lfl_string -lfl_colors -lfl_console -lfl_program -lf_file -lf_print -lf_pipe -lf_conversion -lf_console -lf_memory -lf_utf +build_libraries_fll -lfll_fss -lfll_execute -lfll_colors -lfl_string -lfl_status -lfl_program -lfl_fss -lf_conversion -lfl_file -lfl_directory -lfl_console -lf_utf -lfl_colors -lf_file -lf_print -lf_pipe -lf_console -lf_memory #build_libraries_fll-level -lfll_2 -lfll_1 -lfll_0 #build_libraries_fll-monolithic -lfll build_sources_library fss_basic_list_write.c diff --git a/level_3/fss_basic_read/data/build/dependencies b/level_3/fss_basic_read/data/build/dependencies index 5fc6035..4823a86 100644 --- a/level_3/fss_basic_read/data/build/dependencies +++ b/level_3/fss_basic_read/data/build/dependencies @@ -1,11 +1,11 @@ -f_console +f_type f_status -f_fss f_memory +f_string +f_console +f_fss f_pipe f_print -f_string -f_type fl_colors fl_console fl_directory diff --git a/level_3/fss_basic_read/data/build/settings b/level_3/fss_basic_read/data/build/settings index 7505e3f..c5e7a1e 100644 --- a/level_3/fss_basic_read/data/build/settings +++ b/level_3/fss_basic_read/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lfll_colors -lfll_fss -lfll_execute -lfl_directory -lfl_colors -lfl_status -lfl_string -lfl_file -lfl_console -lfl_program -lfl_fss -lf_print -lf_file -lf_pipe -lf_conversion -lf_console -lf_memory -lf_utf +build_libraries_fll -lfll_fss -lfll_execute -lfll_colors -lfl_string -lfl_status -lfl_program -lfl_fss -lf_conversion -lfl_file -lfl_directory -lfl_console -lf_utf -lfl_colors -lf_file -lf_print -lf_pipe -lf_console -lf_memory #build_libraries_fll-level -lfll_2 -lfll_1 -lfll_0 #build_libraries_fll-monolithic -lfll build_sources_library fss_basic_read.c diff --git a/level_3/fss_basic_write/data/build/dependencies b/level_3/fss_basic_write/data/build/dependencies index 5fc6035..4823a86 100644 --- a/level_3/fss_basic_write/data/build/dependencies +++ b/level_3/fss_basic_write/data/build/dependencies @@ -1,11 +1,11 @@ -f_console +f_type f_status -f_fss f_memory +f_string +f_console +f_fss f_pipe f_print -f_string -f_type fl_colors fl_console fl_directory diff --git a/level_3/fss_basic_write/data/build/settings b/level_3/fss_basic_write/data/build/settings index b39c90e..3c39905 100644 --- a/level_3/fss_basic_write/data/build/settings +++ b/level_3/fss_basic_write/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lfll_colors -lfll_fss -lfl_fss -lfl_file -lfl_colors -lfl_status -lfl_string -lfl_console -lfl_program -lf_file -lf_print -lf_pipe -lf_conversion -lf_console -lf_memory -lf_utf +build_libraries_fll -lfll_fss -lfll_execute -lfll_colors -lfl_string -lfl_status -lfl_program -lfl_fss -lf_conversion -lfl_file -lfl_directory -lfl_console -lf_utf -lfl_colors -lf_file -lf_print -lf_pipe -lf_console -lf_memory #build_libraries_fll-level -lfll_2 -lfll_1 -lfll_0 #build_libraries_fll-monolithic -lfll build_sources_library fss_basic_write.c diff --git a/level_3/fss_extended_read/data/build/settings b/level_3/fss_extended_read/data/build/settings index 3da6a02..4e83b53 100644 --- a/level_3/fss_extended_read/data/build/settings +++ b/level_3/fss_extended_read/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lfll_colors -lfll_fss -lfll_execute -lfl_directory -lfl_colors -lfl_status -lfl_string -lfl_file -lfl_console -lfl_program -lfl_fss -lf_pipe -lf_file -lf_print -lf_conversion -lf_console -lf_memory -lf_utf +build_libraries_fll -lfll_fss -lfll_execute -lfll_colors -lfl_string -lfl_status -lfl_program -lfl_fss -lf_conversion -lfl_file -lfl_directory -lfl_console -lf_utf -lfl_colors -lf_file -lf_print -lf_pipe -lf_console -lf_memory #build_libraries_fll-level -lfll_2 -lfll_1 -lfll_0 #build_libraries_fll-monolithic -lfll build_sources_library fss_extended_read.c diff --git a/level_3/fss_extended_write/data/build/settings b/level_3/fss_extended_write/data/build/settings index 1910f66..dadf705 100644 --- a/level_3/fss_extended_write/data/build/settings +++ b/level_3/fss_extended_write/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lfll_colors -lfll_fss -lfl_fss -lfl_file -lfl_colors -lfl_status -lfl_string -lfl_console -lfl_program -lf_file -lf_print -lf_pipe -lf_conversion -lf_console -lf_memory -lf_utf +build_libraries_fll -lfll_fss -lfll_execute -lfll_colors -lfl_string -lfl_status -lfl_program -lfl_fss -lf_conversion -lfl_file -lfl_directory -lfl_console -lf_utf -lfl_colors -lf_file -lf_print -lf_pipe -lf_console -lf_memory #build_libraries_fll-level -lfll_2 -lfll_1 -lfll_0 #build_libraries_fll-monolithic -lfll build_sources_library fss_extended_write.c diff --git a/level_3/fss_status_code/data/build/settings b/level_3/fss_status_code/data/build/settings index 91bf2ab..7339ba2 100644 --- a/level_3/fss_status_code/data/build/settings +++ b/level_3/fss_status_code/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lfll_colors -lfll_status -lfll_fss -lfl_fss -lfl_colors -lfl_status -lfl_string -lfl_console -lfl_program -lfl_string -lf_print -lf_pipe -lf_conversion -lf_console -lf_memory -lf_utf +build_libraries_fll -lfll_fss -lfll_execute -lfll_status -lfll_colors -lfl_string -lfl_status -lfl_program -lfl_fss -lf_conversion -lfl_file -lfl_directory -lfl_console -lf_utf -lfl_colors -lf_file -lf_print -lf_pipe -lf_console -lf_memory #build_libraries_fll-level -lfll_2 -lfll_1 -lfll_0 #build_libraries_fll-monolithic -lfll build_sources_library fss_status_code.c diff --git a/level_3/init/data/build/settings b/level_3/init/data/build/settings index 9cbed99..bf9b716 100644 --- a/level_3/init/data/build/settings +++ b/level_3/init/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lfll_colors -lfll_fss -lfll_execute -lfl_directory -lfl_colors -lfl_status -lfl_string -lfl_file -lfl_console -lfl_program -lfl_fss -lf_pipe -lf_file -lf_print -lf_conversion -lf_console -lf_memory -lf_utf +build_libraries_fll -lfll_fss -lfll_execute -lfll_colors -lfl_string -lfl_status -lfl_program -lfl_fss -lf_conversion -lfl_file -lfl_directory -lfl_console -lfl_colors -lf_file -lf_utf -lf_print -lf_pipe -lf_console -lf_memory #build_libraries_fll-level -lfll_2 -lfll_1 -lfll_0 #build_libraries_fll-monolithic -lfll build_sources_library init.c private-init.c diff --git a/level_3/status_code/data/build/settings b/level_3/status_code/data/build/settings index 7a48e39..542fce8 100644 --- a/level_3/status_code/data/build/settings +++ b/level_3/status_code/data/build/settings @@ -10,7 +10,7 @@ version_micro 0 build_compiler gcc build_linker ar build_libraries -lc -build_libraries_fll -lfll_colors -lfll_status -lfl_colors -lfl_status -lfl_console -lfl_program -lfl_string -lf_print -lf_pipe -lf_conversion -lf_console -lf_memory -lf_utf +build_libraries_fll -lfll_status -lfll_colors -lfl_status -lfl_string -lfl_program -lfl_file -lfl_console -lf_utf -lfl_colors -lf_file -lf_print -lf_pipe -lf_conversion -lf_console -lf_memory #build_libraries_fll-level -lfll_2 -lfll_1 -lfll_0 #build_libraries_fll-monolithic -lfll build_sources_library status_code.c -- 1.8.3.1