Add a new parameter to make it easier to switch between individual compilation, level compilation, and monolithic compilation.
This parameter will only be used for fll-specific libraries.
For programs (aka: "level 3") commented out examples for linking against level-based and monolithic are provided.
The configurations can then be easily swapped out by a couple of simple sed statements, such as:
- sed -i -e 's|^build_libraries_fll\>|#&|g' data/build/settings
- sed -i -e 's|^#build_libraries_fll-level\>|build_libraries_fll|g' data/build/settings
The above example will switch to the level based compiling, while disabling the individual compiling.
The level based compiling compiles each of the levels 0, 1, and 2 as a single library for each level, resulting in libraries such as:
- libfll_0-0.5.0.so
- libfll_1-0.5.0.so
- libfll_2-0.5.0.so
The monolithic based compiling compiles all of the levels 0, 1, and 2 as a single library, resulting in libraries such as:
- libfll-0.5.0.so
The standard names of individual, level, and monolithic do not overlap by default and can therefoe be installed side-by-side.
"build_compiler") echo -n 5;;
"build_linker") echo -n 6;;
"build_libraries") echo -n 7;;
- "build_sources_library") echo -n 8;;
- "build_sources_program") echo -n 9;;
- "build_sources_headers") echo -n 10;;
- "build_sources_settings") echo -n 11;;
- "build_shared") echo -n 12;;
- "build_static") echo -n 13;;
- "flags_all") echo -n 14;;
- "flags_shared") echo -n 15;;
- "flags_static") echo -n 16;;
- "flags_library") echo -n 17;;
- "flags_program") echo -n 18;;
+ "build_libraries_fll") echo -n 8;;
+ "build_sources_library") echo -n 9;;
+ "build_sources_program") echo -n 10;;
+ "build_sources_headers") echo -n 11;;
+ "build_sources_settings") echo -n 12;;
+ "build_shared") echo -n 13;;
+ "build_static") echo -n 14;;
+ "flags_all") echo -n 15;;
+ "flags_shared") echo -n 16;;
+ "flags_static") echo -n 17;;
+ "flags_library") echo -n 18;;
+ "flags_program") echo -n 19;;
esac
}
exit $failure
fi
- for i in project_name project_level version_major version_minor version_micro build_compiler build_linker build_libraries build_sources_library build_sources_program build_sources_headers build_sources_settings build_shared build_static flags_all flags_shared flags_static flags_library flags_program ; do
+ for i in project_name project_level version_major version_minor version_micro build_compiler build_linker build_libraries build_libraries_fll build_sources_library build_sources_program build_sources_headers build_sources_settings build_shared build_static flags_all flags_shared flags_static flags_library flags_program ; do
variables[$(generate_id $i)]=$(grep -s -o "^[[:space:]]*$i\>.*$" $settings_file | sed -e "s|^[[:space:]]*$i\>||" -e 's|^[[:space:]]*||')
done
local micro=${variables[$(generate_id version_micro)]}
local compiler=${variables[$(generate_id build_compiler)]}
local linker=${variables[$(generate_id build_linker)]}
- local arguments="${variables[$(generate_id build_libraries)]}"
+ local arguments="${variables[$(generate_id build_libraries_fll)]} ${variables[$(generate_id build_libraries)]}"
local arguments_include="-I${path_build}includes"
local arguments_shared="-L${path_build}libraries/shared"
local arguments_static="-L${path_build}libraries/static"
build_compiler gcc
build_linker ar
build_libraries -lc
+build_libraries_fll
build_sources_library
build_sources_program
build_sources_headers colors.h
build_compiler gcc
build_linker ar
build_libraries -lc
+build_libraries_fll
build_sources_library console.c
build_sources_program
build_sources_headers console.h
build_compiler gcc
build_linker ar
build_libraries -lc
+build_libraries_fll
build_sources_library conversion.c
build_sources_program
build_sources_headers conversion.h
build_compiler gcc
build_linker ar
build_libraries -lc
+build_libraries_fll
build_sources_library
build_sources_program
build_sources_headers errors.h
build_compiler gcc
build_linker ar
build_libraries -lc
+build_libraries_fll
build_sources_library file.c
build_sources_program
build_sources_headers file.h
build_compiler gcc
build_linker ar
build_libraries -lc
+build_libraries_fll
build_sources_library
build_sources_program
build_sources_headers fss.h
build_compiler gcc
build_linker ar
build_libraries -lc
+build_libraries_fll
build_sources_library memory.c
build_sources_program
build_sources_headers memory.h
build_compiler gcc
build_linker ar
build_libraries
+build_libraries_fll
build_sources_library
build_sources_program
build_sources_headers fll_paths.h filesystem_paths.h
build_compiler gcc
build_linker ar
build_libraries -lc
+build_libraries_fll
build_sources_library pipe.c
build_sources_program
build_sources_headers pipe.h
build_compiler gcc
build_linker ar
build_libraries -lc
+build_libraries_fll
build_sources_library print.c
build_sources_program
build_sources_headers print.h
build_compiler gcc
build_linker ar
build_libraries -lc
+build_libraries_fll
build_sources_library
build_sources_program
build_sources_headers serialized.h
build_compiler gcc
build_linker ar
build_libraries -lc
+build_libraries_fll
build_sources_library
build_sources_program
build_sources_headers strings.h
build_compiler gcc
build_linker ar
build_libraries -lc
+build_libraries_fll
build_sources_library
build_sources_program
build_sources_headers types.h types_array.h
build_compiler gcc
build_linker ar
-build_libraries -lf_memory -lf_file -lc
+build_libraries -lc
+build_libraries_fll -lf_memory -lf_file
build_sources_library colors.c
build_sources_program
build_sources_headers colors.h
build_compiler gcc
build_linker ar
-build_libraries -lf_memory -lf_console -lc
+build_libraries -lc
+build_libraries_fll -lf_memory -lf_console
build_sources_library console.c
build_sources_program
build_sources_headers console.h
build_compiler gcc
build_linker ar
-build_libraries -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lf_memory
build_sources_library directory.c
build_sources_program
build_sources_headers directory.h
build_compiler gcc
build_linker ar
build_libraries -lc
+build_libraries_fll
build_sources_library errors.c
build_sources_program
build_sources_headers errors.h
build_compiler gcc
build_linker ar
-build_libraries -lf_memory -lf_file -lc
+build_libraries -lc
+build_libraries_fll -lf_memory -lf_file
build_sources_library file.c
build_sources_program
build_sources_headers file.h
build_compiler gcc
build_linker ar
-build_libraries -lf_conversion -lf_file -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lf_conversion -lf_file -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_errors.h fss_extended.h fss_macro.h
build_compiler gcc
build_linker ar
-build_libraries -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lf_memory
build_sources_library serialized.c
build_sources_program
build_sources_headers serialized.h
build_compiler gcc
build_linker ar
-build_libraries -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lf_memory
build_sources_library strings.c
build_sources_program
build_sources_headers strings.h
build_compiler gcc
build_linker ar
-build_libraries -lfl_colors -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lfl_colors -lf_memory
build_sources_library colors.c
build_sources_program
build_sources_headers colors.h
build_compiler gcc
build_linker ar
-build_libraries -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lf_memory
build_sources_library execute.c
build_sources_program
build_sources_headers execute.h
build_compiler gcc
build_linker ar
-build_libraries -lfl_errors -lfl_fss -lf_conversion -lf_file -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lfl_errors -lfl_fss -lf_conversion -lf_file -lf_memory
build_sources_library fss_basic.c fss_basic_list.c fss_extended.c fss_errors.c
build_sources_program
build_sources_headers fss_basic.h fss_basic_list.h fss_extended.h fss_errors.h
build_compiler gcc
build_linker ar
-build_libraries -lfll_colors -lfll_fss -lfll_execute -lfl_directory -lfl_colors -lfl_strings -lfl_file -lfl_console -lfl_fss -lf_pipe -lf_file -lf_print -lf_conversion -lf_console -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lfll_colors -lfll_fss -lfll_execute -lfl_directory -lfl_colors -lfl_strings -lfl_file -lfl_console -lfl_fss -lf_pipe -lf_file -lf_print -lf_conversion -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
build_sources_program main.c
build_sources_headers firewall.h
build_compiler gcc
build_linker ar
-build_libraries -lfll_colors -lfll_fss -lfll_execute -lfl_directory -lfl_colors -lfl_strings -lfl_file -lfl_console -lfl_fss -lf_pipe -lf_file -lf_print -lf_conversion -lf_console -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lfll_colors -lfll_fss -lfll_execute -lfl_directory -lfl_colors -lfl_strings -lfl_file -lfl_console -lfl_fss -lf_pipe -lf_file -lf_print -lf_conversion -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
build_sources_program main.c
build_sources_headers fss_basic_list_read.h
build_compiler gcc
build_linker ar
-build_libraries -lfll_colors -lfll_fss -lfl_fss -lfl_file -lfl_errors -lfl_colors -lfl_console -lf_file -lf_print -lf_pipe -lf_conversion -lf_console -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lfll_colors -lfll_fss -lfl_fss -lfl_file -lfl_errors -lfl_colors -lfl_console -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 fss_basic_list_write.c
build_sources_program main.c
build_sources_headers fss_basic_list_write.h
build_compiler gcc
build_linker ar
-build_libraries -lfll_colors -lfll_fss -lfll_execute -lfl_directory -lfl_colors -lfl_strings -lfl_file -lfl_console -lfl_fss -lf_print -lf_file -lf_pipe -lf_conversion -lf_console -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lfll_colors -lfll_fss -lfll_execute -lfl_directory -lfl_colors -lfl_strings -lfl_file -lfl_console -lfl_fss -lf_print -lf_file -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 fss_basic_read.c
build_sources_program main.c
build_sources_headers fss_basic_read.h
build_compiler gcc
build_linker ar
-build_libraries -lfll_colors -lfll_fss -lfl_fss -lfl_file -lfl_errors -lfl_colors -lfl_console -lf_file -lf_print -lf_pipe -lf_conversion -lf_console -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lfll_colors -lfll_fss -lfl_fss -lfl_file -lfl_errors -lfl_colors -lfl_console -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 fss_basic_write.c
build_sources_program main.c
build_sources_headers fss_basic_write.h
build_compiler gcc
build_linker ar
-build_libraries -lfll_colors -lfll_fss -lfll_execute -lfl_directory -lfl_colors -lfl_strings -lfl_file -lfl_console -lfl_fss -lf_pipe -lf_file -lf_print -lf_conversion -lf_console -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lfll_colors -lfll_fss -lfll_execute -lfl_directory -lfl_colors -lfl_strings -lfl_file -lfl_console -lfl_fss -lf_pipe -lf_file -lf_print -lf_conversion -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
build_sources_program main.c
build_sources_headers fss_extended_read.h
build_compiler gcc
build_linker ar
-build_libraries -lfll_colors -lfll_fss -lfl_fss -lfl_file -lfl_errors -lfl_colors -lfl_console -lf_file -lf_print -lf_pipe -lf_conversion -lf_console -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lfll_colors -lfll_fss -lfl_fss -lfl_file -lfl_errors -lfl_colors -lfl_console -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 fss_extended_write.c
build_sources_program main.c
build_sources_headers fss_extended_write.h
build_compiler gcc
build_linker ar
-build_libraries -lfll_colors -lfll_fss -lfl_fss -lfl_errors -lfl_colors -lfl_console -lf_print -lf_pipe -lf_conversion -lf_console -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lfll_colors -lfll_fss -lfl_fss -lfl_errors -lfl_colors -lfl_console -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 fss_return_code.c
build_sources_program main.c
build_sources_headers fss_return_code.h
build_compiler gcc
build_linker ar
-build_libraries -lfll_colors -lfll_fss -lfll_execute -lfl_directory -lfl_colors -lfl_strings -lfl_file -lfl_console -lfl_fss -lf_pipe -lf_file -lf_print -lf_conversion -lf_console -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lfll_colors -lfll_fss -lfll_execute -lfl_directory -lfl_colors -lfl_strings -lfl_file -lfl_console -lfl_fss -lf_pipe -lf_file -lf_print -lf_conversion -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
build_sources_program main.c
build_sources_headers init.h
build_compiler gcc
build_linker ar
-build_libraries -lfll_colors -lfl_errors -lfl_colors -lfl_console -lf_print -lf_pipe -lf_conversion -lf_console -lf_memory -lc
+build_libraries -lc
+build_libraries_fll -lfll_colors -lfl_errors -lfl_colors -lfl_console -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 return_code.c
build_sources_program main.c
build_sources_headers return_code.h