diff --git a/CMakeFiles/3.22.1/CMakeCCompiler.cmake b/CMakeFiles/3.22.1/CMakeCCompiler.cmake
new file mode 100644
index 0000000..488ad37
--- /dev/null
+++ b/CMakeFiles/3.22.1/CMakeCCompiler.cmake
@@ -0,0 +1,72 @@
+set(CMAKE_C_COMPILER "/usr/bin/cc")
+set(CMAKE_C_COMPILER_ARG1 "")
+set(CMAKE_C_COMPILER_ID "GNU")
+set(CMAKE_C_COMPILER_VERSION "11.4.0")
+set(CMAKE_C_COMPILER_VERSION_INTERNAL "")
+set(CMAKE_C_COMPILER_WRAPPER "")
+set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "17")
+set(CMAKE_C_EXTENSIONS_COMPUTED_DEFAULT "ON")
+set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert;c_std_17;c_std_23")
+set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes")
+set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros")
+set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert")
+set(CMAKE_C17_COMPILE_FEATURES "c_std_17")
+set(CMAKE_C23_COMPILE_FEATURES "c_std_23")
+
+set(CMAKE_C_PLATFORM_ID "Linux")
+set(CMAKE_C_SIMULATE_ID "")
+set(CMAKE_C_COMPILER_FRONTEND_VARIANT "")
+set(CMAKE_C_SIMULATE_VERSION "")
+
+
+
+
+set(CMAKE_AR "/usr/bin/ar")
+set(CMAKE_C_COMPILER_AR "/usr/bin/gcc-ar-11")
+set(CMAKE_RANLIB "/usr/bin/ranlib")
+set(CMAKE_C_COMPILER_RANLIB "/usr/bin/gcc-ranlib-11")
+set(CMAKE_LINKER "/usr/bin/ld")
+set(CMAKE_MT "")
+set(CMAKE_COMPILER_IS_GNUCC 1)
+set(CMAKE_C_COMPILER_LOADED 1)
+set(CMAKE_C_COMPILER_WORKS TRUE)
+set(CMAKE_C_ABI_COMPILED TRUE)
+
+set(CMAKE_C_COMPILER_ENV_VAR "CC")
+
+set(CMAKE_C_COMPILER_ID_RUN 1)
+set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m)
+set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC)
+set(CMAKE_C_LINKER_PREFERENCE 10)
+
+# Save compiler ABI information.
+set(CMAKE_C_SIZEOF_DATA_PTR "8")
+set(CMAKE_C_COMPILER_ABI "ELF")
+set(CMAKE_C_BYTE_ORDER "LITTLE_ENDIAN")
+set(CMAKE_C_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+
+if(CMAKE_C_SIZEOF_DATA_PTR)
+ set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_C_COMPILER_ABI)
+ set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}")
+endif()
+
+if(CMAKE_C_LIBRARY_ARCHITECTURE)
+ set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+endif()
+
+set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_C_CL_SHOWINCLUDES_PREFIX)
+ set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/11/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include")
+set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "gcc;gcc_s;c;gcc;gcc_s")
+set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/11;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
+set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake b/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake
new file mode 100644
index 0000000..345e930
--- /dev/null
+++ b/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake
@@ -0,0 +1,83 @@
+set(CMAKE_CXX_COMPILER "/usr/bin/c++")
+set(CMAKE_CXX_COMPILER_ARG1 "")
+set(CMAKE_CXX_COMPILER_ID "GNU")
+set(CMAKE_CXX_COMPILER_VERSION "11.4.0")
+set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "")
+set(CMAKE_CXX_COMPILER_WRAPPER "")
+set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "17")
+set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "ON")
+set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23")
+set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters")
+set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates")
+set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
+set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17")
+set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20")
+set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23")
+
+set(CMAKE_CXX_PLATFORM_ID "Linux")
+set(CMAKE_CXX_SIMULATE_ID "")
+set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "")
+set(CMAKE_CXX_SIMULATE_VERSION "")
+
+
+
+
+set(CMAKE_AR "/usr/bin/ar")
+set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar-11")
+set(CMAKE_RANLIB "/usr/bin/ranlib")
+set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-11")
+set(CMAKE_LINKER "/usr/bin/ld")
+set(CMAKE_MT "")
+set(CMAKE_COMPILER_IS_GNUCXX 1)
+set(CMAKE_CXX_COMPILER_LOADED 1)
+set(CMAKE_CXX_COMPILER_WORKS TRUE)
+set(CMAKE_CXX_ABI_COMPILED TRUE)
+
+set(CMAKE_CXX_COMPILER_ENV_VAR "CXX")
+
+set(CMAKE_CXX_COMPILER_ID_RUN 1)
+set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm)
+set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
+
+foreach (lang C OBJC OBJCXX)
+ if (CMAKE_${lang}_COMPILER_ID_RUN)
+ foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS)
+ list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension})
+ endforeach()
+ endif()
+endforeach()
+
+set(CMAKE_CXX_LINKER_PREFERENCE 30)
+set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1)
+
+# Save compiler ABI information.
+set(CMAKE_CXX_SIZEOF_DATA_PTR "8")
+set(CMAKE_CXX_COMPILER_ABI "ELF")
+set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN")
+set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+
+if(CMAKE_CXX_SIZEOF_DATA_PTR)
+ set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_CXX_COMPILER_ABI)
+ set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
+endif()
+
+if(CMAKE_CXX_LIBRARY_ARCHITECTURE)
+ set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+endif()
+
+set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX)
+ set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include/c++/11;/usr/include/x86_64-linux-gnu/c++/11;/usr/include/c++/11/backward;/usr/lib/gcc/x86_64-linux-gnu/11/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include")
+set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc")
+set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/11;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
+set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin b/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin
new file mode 100755
index 0000000..a469133
Binary files /dev/null and b/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin differ
diff --git a/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin b/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin
new file mode 100755
index 0000000..15e6e3f
Binary files /dev/null and b/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin differ
diff --git a/CMakeFiles/3.22.1/CMakeSystem.cmake b/CMakeFiles/3.22.1/CMakeSystem.cmake
new file mode 100644
index 0000000..529eded
--- /dev/null
+++ b/CMakeFiles/3.22.1/CMakeSystem.cmake
@@ -0,0 +1,15 @@
+set(CMAKE_HOST_SYSTEM "Linux-6.9.3-76060903-generic")
+set(CMAKE_HOST_SYSTEM_NAME "Linux")
+set(CMAKE_HOST_SYSTEM_VERSION "6.9.3-76060903-generic")
+set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64")
+
+
+
+set(CMAKE_SYSTEM "Linux-6.9.3-76060903-generic")
+set(CMAKE_SYSTEM_NAME "Linux")
+set(CMAKE_SYSTEM_VERSION "6.9.3-76060903-generic")
+set(CMAKE_SYSTEM_PROCESSOR "x86_64")
+
+set(CMAKE_CROSSCOMPILING "FALSE")
+
+set(CMAKE_SYSTEM_LOADED 1)
diff --git a/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c b/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c
new file mode 100644
index 0000000..41b99d7
--- /dev/null
+++ b/CMakeFiles/3.22.1/CompilerIdC/CMakeCCompilerId.c
@@ -0,0 +1,803 @@
+#ifdef __cplusplus
+# error "A C++ compiler has been selected for C."
+#endif
+
+#if defined(__18CXX)
+# define ID_VOID_MAIN
+#endif
+#if defined(__CLASSIC_C__)
+/* cv-qualifiers did not exist in K&R C */
+# define const
+# define volatile
+#endif
+
+#if !defined(__has_include)
+/* If the compiler does not have __has_include, pretend the answer is
+ always no. */
+# define __has_include(x) 0
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+ Version date components: YYYY=Year, MM=Month, DD=Day */
+
+#if defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# if defined(__GNUC__)
+# define SIMULATE_ID "GNU"
+# endif
+ /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later,
+ except that a few beta releases use the old format with V=2021. */
+# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+# if defined(__INTEL_COMPILER_UPDATE)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+# else
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10)
+# endif
+# else
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE)
+ /* The third version component from --version is an update index,
+ but no macro is provided for it. */
+# define COMPILER_VERSION_PATCH DEC(0)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+ /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# if defined(__GNUC__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+# elif defined(__GNUG__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
+# endif
+# if defined(__GNUC_MINOR__)
+# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER)
+# define COMPILER_ID "IntelLLVM"
+#if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+#endif
+#if defined(__GNUC__)
+# define SIMULATE_ID "GNU"
+#endif
+/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and
+ * later. Look for 6 digit vs. 8 digit version number to decide encoding.
+ * VVVV is no smaller than the current year when a version is released.
+ */
+#if __INTEL_LLVM_COMPILER < 1000000L
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10)
+#else
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100)
+#endif
+#if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+#endif
+#if defined(__GNUC__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+#elif defined(__GNUG__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
+#endif
+#if defined(__GNUC_MINOR__)
+# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+#endif
+#if defined(__GNUC_PATCHLEVEL__)
+# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+#endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+ /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+ /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+ /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_C)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_C >= 0x5100
+ /* __SUNPRO_C = 0xVRRP */
+# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12)
+# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF)
+# else
+ /* __SUNPRO_CC = 0xVRP */
+# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8)
+# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF)
+# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF)
+# endif
+
+#elif defined(__HP_cc)
+# define COMPILER_ID "HP"
+ /* __HP_cc = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100)
+
+#elif defined(__DECC)
+# define COMPILER_ID "Compaq"
+ /* __DECC_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000)
+
+#elif defined(__IBMC__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+ /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
+
+#elif defined(__ibmxl__) && defined(__clang__)
+# define COMPILER_ID "XLClang"
+# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
+# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
+# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
+
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800
+# define COMPILER_ID "XL"
+ /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800
+# define COMPILER_ID "VisualAge"
+ /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
+
+#elif defined(__NVCOMPILER)
+# define COMPILER_ID "NVHPC"
+# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__)
+# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__)
+# if defined(__NVCOMPILER_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__)
+# endif
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+ /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000)
+
+#elif defined(__CLANG_FUJITSU)
+# define COMPILER_ID "FujitsuClang"
+# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
+# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
+# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
+# define COMPILER_VERSION_INTERNAL_STR __clang_version__
+
+
+#elif defined(__FUJITSU)
+# define COMPILER_ID "Fujitsu"
+# if defined(__FCC_version__)
+# define COMPILER_VERSION __FCC_version__
+# elif defined(__FCC_major__)
+# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
+# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
+# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
+# endif
+# if defined(__fcc_version)
+# define COMPILER_VERSION_INTERNAL DEC(__fcc_version)
+# elif defined(__FCC_VERSION)
+# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION)
+# endif
+
+
+#elif defined(__ghs__)
+# define COMPILER_ID "GHS"
+/* __GHS_VERSION_NUMBER = VVVVRP */
+# ifdef __GHS_VERSION_NUMBER
+# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100)
+# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10)
+# endif
+
+#elif defined(__TINYC__)
+# define COMPILER_ID "TinyCC"
+
+#elif defined(__BCC__)
+# define COMPILER_ID "Bruce"
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__ARMCC_VERSION) && !defined(__clang__)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+ /* __ARMCC_VERSION = VRRPPPP */
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
+#else
+ /* __ARMCC_VERSION = VRPPPP */
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
+#endif
+
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
+# define COMPILER_ID "ARMClang"
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000)
+# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__GNUC__)
+# define COMPILER_ID "GNU"
+# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# if defined(__GNUC_MINOR__)
+# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+ /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+# if _MSC_VER >= 1400
+ /* _MSC_FULL_VER = VVRRPPPPP */
+# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+# else
+ /* _MSC_FULL_VER = VVRRPPPP */
+# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+# endif
+# endif
+# if defined(_MSC_BUILD)
+# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
+# define COMPILER_ID "ADSP"
+#if defined(__VISUALDSPVERSION__)
+ /* __VISUALDSPVERSION__ = 0xVVRRPP00 */
+# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
+# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+# if defined(__VER__) && defined(__ICCARM__)
+# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
+# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
+# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
+# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__))
+# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100)
+# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100))
+# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__)
+# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# endif
+
+#elif defined(__SDCC_VERSION_MAJOR) || defined(SDCC)
+# define COMPILER_ID "SDCC"
+# if defined(__SDCC_VERSION_MAJOR)
+# define COMPILER_VERSION_MAJOR DEC(__SDCC_VERSION_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(__SDCC_VERSION_MINOR)
+# define COMPILER_VERSION_PATCH DEC(__SDCC_VERSION_PATCH)
+# else
+ /* SDCC = VRP */
+# define COMPILER_VERSION_MAJOR DEC(SDCC/100)
+# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(SDCC % 10)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+ identification macro. Try to identify the platform and guess that
+ it is the native compiler. */
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+ getting matched. Store it in a pointer rather than an array
+ because some compilers will just produce instructions to fill the
+ array rather than assigning a pointer to a static array. */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name. */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__MSYS__)
+# define PLATFORM_ID "MSYS"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+# define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+# define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+# define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+# define PLATFORM_ID "Windows3x"
+
+# elif defined(__VXWORKS__)
+# define PLATFORM_ID "VxWorks"
+
+# else /* unknown platform */
+# define PLATFORM_ID
+# endif
+
+#elif defined(__INTEGRITY)
+# if defined(INT_178B)
+# define PLATFORM_ID "Integrity178"
+
+# else /* regular Integrity */
+# define PLATFORM_ID "Integrity"
+# endif
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+ the architecture of the compiler being used. This is because
+ the compilers do not have flags that can change the architecture,
+ but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+# define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_ARM64EC)
+# define ARCHITECTURE_ID "ARM64EC"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+# define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+# define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM64)
+# define ARCHITECTURE_ID "ARM64"
+
+# elif defined(_M_ARM)
+# if _M_ARM == 4
+# define ARCHITECTURE_ID "ARMV4I"
+# elif _M_ARM == 5
+# define ARCHITECTURE_ID "ARMV5I"
+# else
+# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+# endif
+
+# elif defined(_M_MIPS)
+# define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+# define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+# define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+# define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# if defined(__ICCARM__)
+# define ARCHITECTURE_ID "ARM"
+
+# elif defined(__ICCRX__)
+# define ARCHITECTURE_ID "RX"
+
+# elif defined(__ICCRH850__)
+# define ARCHITECTURE_ID "RH850"
+
+# elif defined(__ICCRL78__)
+# define ARCHITECTURE_ID "RL78"
+
+# elif defined(__ICCRISCV__)
+# define ARCHITECTURE_ID "RISCV"
+
+# elif defined(__ICCAVR__)
+# define ARCHITECTURE_ID "AVR"
+
+# elif defined(__ICC430__)
+# define ARCHITECTURE_ID "MSP430"
+
+# elif defined(__ICCV850__)
+# define ARCHITECTURE_ID "V850"
+
+# elif defined(__ICC8051__)
+# define ARCHITECTURE_ID "8051"
+
+# elif defined(__ICCSTM8__)
+# define ARCHITECTURE_ID "STM8"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__ghs__)
+# if defined(__PPC64__)
+# define ARCHITECTURE_ID "PPC64"
+
+# elif defined(__ppc__)
+# define ARCHITECTURE_ID "PPC"
+
+# elif defined(__ARM__)
+# define ARCHITECTURE_ID "ARM"
+
+# elif defined(__x86_64__)
+# define ARCHITECTURE_ID "x64"
+
+# elif defined(__i386__)
+# define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__TI_COMPILER_VERSION__)
+# if defined(__TI_ARM__)
+# define ARCHITECTURE_ID "ARM"
+
+# elif defined(__MSP430__)
+# define ARCHITECTURE_ID "MSP430"
+
+# elif defined(__TMS320C28XX__)
+# define ARCHITECTURE_ID "TMS320C28x"
+
+# elif defined(__TMS320C6X__) || defined(_TMS320C6X)
+# define ARCHITECTURE_ID "TMS320C6x"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#else
+# define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals. */
+#define DEC(n) \
+ ('0' + (((n) / 10000000)%10)), \
+ ('0' + (((n) / 1000000)%10)), \
+ ('0' + (((n) / 100000)%10)), \
+ ('0' + (((n) / 10000)%10)), \
+ ('0' + (((n) / 1000)%10)), \
+ ('0' + (((n) / 100)%10)), \
+ ('0' + (((n) / 10)%10)), \
+ ('0' + ((n) % 10))
+
+/* Convert integer to hex digit literals. */
+#define HEX(n) \
+ ('0' + ((n)>>28 & 0xF)), \
+ ('0' + ((n)>>24 & 0xF)), \
+ ('0' + ((n)>>20 & 0xF)), \
+ ('0' + ((n)>>16 & 0xF)), \
+ ('0' + ((n)>>12 & 0xF)), \
+ ('0' + ((n)>>8 & 0xF)), \
+ ('0' + ((n)>>4 & 0xF)), \
+ ('0' + ((n) & 0xF))
+
+/* Construct a string literal encoding the version number. */
+#ifdef COMPILER_VERSION
+char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]";
+
+/* Construct a string literal encoding the version number components. */
+#elif defined(COMPILER_VERSION_MAJOR)
+char const info_version[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+ COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+ '.', COMPILER_VERSION_MINOR,
+# ifdef COMPILER_VERSION_PATCH
+ '.', COMPILER_VERSION_PATCH,
+# ifdef COMPILER_VERSION_TWEAK
+ '.', COMPILER_VERSION_TWEAK,
+# endif
+# endif
+# endif
+ ']','\0'};
+#endif
+
+/* Construct a string literal encoding the internal version number. */
+#ifdef COMPILER_VERSION_INTERNAL
+char const info_version_internal[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
+ 'i','n','t','e','r','n','a','l','[',
+ COMPILER_VERSION_INTERNAL,']','\0'};
+#elif defined(COMPILER_VERSION_INTERNAL_STR)
+char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]";
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+ SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+ '.', SIMULATE_VERSION_MINOR,
+# ifdef SIMULATE_VERSION_PATCH
+ '.', SIMULATE_VERSION_PATCH,
+# ifdef SIMULATE_VERSION_TWEAK
+ '.', SIMULATE_VERSION_TWEAK,
+# endif
+# endif
+# endif
+ ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+ getting matched. Store it in a pointer rather than an array
+ because some compilers will just produce instructions to fill the
+ array rather than assigning a pointer to a static array. */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+#if !defined(__STDC__) && !defined(__clang__)
+# if defined(_MSC_VER) || defined(__ibmxl__) || defined(__IBMC__)
+# define C_VERSION "90"
+# else
+# define C_VERSION
+# endif
+#elif __STDC_VERSION__ > 201710L
+# define C_VERSION "23"
+#elif __STDC_VERSION__ >= 201710L
+# define C_VERSION "17"
+#elif __STDC_VERSION__ >= 201000L
+# define C_VERSION "11"
+#elif __STDC_VERSION__ >= 199901L
+# define C_VERSION "99"
+#else
+# define C_VERSION "90"
+#endif
+const char* info_language_standard_default =
+ "INFO" ":" "standard_default[" C_VERSION "]";
+
+const char* info_language_extensions_default = "INFO" ":" "extensions_default["
+/* !defined(_MSC_VER) to exclude Clang's MSVC compatibility mode. */
+#if (defined(__clang__) || defined(__GNUC__) || \
+ defined(__TI_COMPILER_VERSION__)) && \
+ !defined(__STRICT_ANSI__) && !defined(_MSC_VER)
+ "ON"
+#else
+ "OFF"
+#endif
+"]";
+
+/*--------------------------------------------------------------------------*/
+
+#ifdef ID_VOID_MAIN
+void main() {}
+#else
+# if defined(__CLASSIC_C__)
+int main(argc, argv) int argc; char *argv[];
+# else
+int main(int argc, char* argv[])
+# endif
+{
+ int require = 0;
+ require += info_compiler[argc];
+ require += info_platform[argc];
+ require += info_arch[argc];
+#ifdef COMPILER_VERSION_MAJOR
+ require += info_version[argc];
+#endif
+#ifdef COMPILER_VERSION_INTERNAL
+ require += info_version_internal[argc];
+#endif
+#ifdef SIMULATE_ID
+ require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+ require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
+ require += info_cray[argc];
+#endif
+ require += info_language_standard_default[argc];
+ require += info_language_extensions_default[argc];
+ (void)argv;
+ return require;
+}
+#endif
diff --git a/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp b/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp
new file mode 100644
index 0000000..25c62a8
--- /dev/null
+++ b/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp
@@ -0,0 +1,791 @@
+/* This source file must have a .cpp extension so that all C++ compilers
+ recognize the extension without flags. Borland does not know .cxx for
+ example. */
+#ifndef __cplusplus
+# error "A C compiler has been selected for C++."
+#endif
+
+#if !defined(__has_include)
+/* If the compiler does not have __has_include, pretend the answer is
+ always no. */
+# define __has_include(x) 0
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+ Version date components: YYYY=Year, MM=Month, DD=Day */
+
+#if defined(__COMO__)
+# define COMPILER_ID "Comeau"
+ /* __COMO_VERSION__ = VRR */
+# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100)
+# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100)
+
+#elif defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# if defined(__GNUC__)
+# define SIMULATE_ID "GNU"
+# endif
+ /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later,
+ except that a few beta releases use the old format with V=2021. */
+# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+# if defined(__INTEL_COMPILER_UPDATE)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+# else
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10)
+# endif
+# else
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE)
+ /* The third version component from --version is an update index,
+ but no macro is provided for it. */
+# define COMPILER_VERSION_PATCH DEC(0)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+ /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# if defined(__GNUC__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+# elif defined(__GNUG__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
+# endif
+# if defined(__GNUC_MINOR__)
+# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER)
+# define COMPILER_ID "IntelLLVM"
+#if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+#endif
+#if defined(__GNUC__)
+# define SIMULATE_ID "GNU"
+#endif
+/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and
+ * later. Look for 6 digit vs. 8 digit version number to decide encoding.
+ * VVVV is no smaller than the current year when a version is released.
+ */
+#if __INTEL_LLVM_COMPILER < 1000000L
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10)
+#else
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100)
+#endif
+#if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+#endif
+#if defined(__GNUC__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+#elif defined(__GNUG__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
+#endif
+#if defined(__GNUC_MINOR__)
+# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+#endif
+#if defined(__GNUC_PATCHLEVEL__)
+# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+#endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+ /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+ /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+ /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_CC)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_CC >= 0x5100
+ /* __SUNPRO_CC = 0xVRRP */
+# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12)
+# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF)
+# else
+ /* __SUNPRO_CC = 0xVRP */
+# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8)
+# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF)
+# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF)
+# endif
+
+#elif defined(__HP_aCC)
+# define COMPILER_ID "HP"
+ /* __HP_aCC = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100)
+
+#elif defined(__DECCXX)
+# define COMPILER_ID "Compaq"
+ /* __DECCXX_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000)
+
+#elif defined(__IBMCPP__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+ /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
+
+#elif defined(__ibmxl__) && defined(__clang__)
+# define COMPILER_ID "XLClang"
+# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
+# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
+# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
+
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800
+# define COMPILER_ID "XL"
+ /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800
+# define COMPILER_ID "VisualAge"
+ /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
+
+#elif defined(__NVCOMPILER)
+# define COMPILER_ID "NVHPC"
+# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__)
+# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__)
+# if defined(__NVCOMPILER_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__)
+# endif
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+ /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000)
+
+#elif defined(__CLANG_FUJITSU)
+# define COMPILER_ID "FujitsuClang"
+# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
+# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
+# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
+# define COMPILER_VERSION_INTERNAL_STR __clang_version__
+
+
+#elif defined(__FUJITSU)
+# define COMPILER_ID "Fujitsu"
+# if defined(__FCC_version__)
+# define COMPILER_VERSION __FCC_version__
+# elif defined(__FCC_major__)
+# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
+# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
+# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
+# endif
+# if defined(__fcc_version)
+# define COMPILER_VERSION_INTERNAL DEC(__fcc_version)
+# elif defined(__FCC_VERSION)
+# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION)
+# endif
+
+
+#elif defined(__ghs__)
+# define COMPILER_ID "GHS"
+/* __GHS_VERSION_NUMBER = VVVVRP */
+# ifdef __GHS_VERSION_NUMBER
+# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100)
+# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10)
+# endif
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__ARMCC_VERSION) && !defined(__clang__)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+ /* __ARMCC_VERSION = VRRPPPP */
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
+#else
+ /* __ARMCC_VERSION = VRPPPP */
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
+#endif
+
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
+# define COMPILER_ID "ARMClang"
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000)
+# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__GNUC__) || defined(__GNUG__)
+# define COMPILER_ID "GNU"
+# if defined(__GNUC__)
+# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# else
+# define COMPILER_VERSION_MAJOR DEC(__GNUG__)
+# endif
+# if defined(__GNUC_MINOR__)
+# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+ /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+# if _MSC_VER >= 1400
+ /* _MSC_FULL_VER = VVRRPPPPP */
+# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+# else
+ /* _MSC_FULL_VER = VVRRPPPP */
+# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+# endif
+# endif
+# if defined(_MSC_BUILD)
+# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
+# define COMPILER_ID "ADSP"
+#if defined(__VISUALDSPVERSION__)
+ /* __VISUALDSPVERSION__ = 0xVVRRPP00 */
+# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
+# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+# if defined(__VER__) && defined(__ICCARM__)
+# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
+# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
+# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
+# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__))
+# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100)
+# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100))
+# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__)
+# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+ identification macro. Try to identify the platform and guess that
+ it is the native compiler. */
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+ getting matched. Store it in a pointer rather than an array
+ because some compilers will just produce instructions to fill the
+ array rather than assigning a pointer to a static array. */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name. */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__MSYS__)
+# define PLATFORM_ID "MSYS"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+# define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+# define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+# define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+# define PLATFORM_ID "Windows3x"
+
+# elif defined(__VXWORKS__)
+# define PLATFORM_ID "VxWorks"
+
+# else /* unknown platform */
+# define PLATFORM_ID
+# endif
+
+#elif defined(__INTEGRITY)
+# if defined(INT_178B)
+# define PLATFORM_ID "Integrity178"
+
+# else /* regular Integrity */
+# define PLATFORM_ID "Integrity"
+# endif
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+ the architecture of the compiler being used. This is because
+ the compilers do not have flags that can change the architecture,
+ but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+# define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_ARM64EC)
+# define ARCHITECTURE_ID "ARM64EC"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+# define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+# define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM64)
+# define ARCHITECTURE_ID "ARM64"
+
+# elif defined(_M_ARM)
+# if _M_ARM == 4
+# define ARCHITECTURE_ID "ARMV4I"
+# elif _M_ARM == 5
+# define ARCHITECTURE_ID "ARMV5I"
+# else
+# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+# endif
+
+# elif defined(_M_MIPS)
+# define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+# define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+# define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+# define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# if defined(__ICCARM__)
+# define ARCHITECTURE_ID "ARM"
+
+# elif defined(__ICCRX__)
+# define ARCHITECTURE_ID "RX"
+
+# elif defined(__ICCRH850__)
+# define ARCHITECTURE_ID "RH850"
+
+# elif defined(__ICCRL78__)
+# define ARCHITECTURE_ID "RL78"
+
+# elif defined(__ICCRISCV__)
+# define ARCHITECTURE_ID "RISCV"
+
+# elif defined(__ICCAVR__)
+# define ARCHITECTURE_ID "AVR"
+
+# elif defined(__ICC430__)
+# define ARCHITECTURE_ID "MSP430"
+
+# elif defined(__ICCV850__)
+# define ARCHITECTURE_ID "V850"
+
+# elif defined(__ICC8051__)
+# define ARCHITECTURE_ID "8051"
+
+# elif defined(__ICCSTM8__)
+# define ARCHITECTURE_ID "STM8"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__ghs__)
+# if defined(__PPC64__)
+# define ARCHITECTURE_ID "PPC64"
+
+# elif defined(__ppc__)
+# define ARCHITECTURE_ID "PPC"
+
+# elif defined(__ARM__)
+# define ARCHITECTURE_ID "ARM"
+
+# elif defined(__x86_64__)
+# define ARCHITECTURE_ID "x64"
+
+# elif defined(__i386__)
+# define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__TI_COMPILER_VERSION__)
+# if defined(__TI_ARM__)
+# define ARCHITECTURE_ID "ARM"
+
+# elif defined(__MSP430__)
+# define ARCHITECTURE_ID "MSP430"
+
+# elif defined(__TMS320C28XX__)
+# define ARCHITECTURE_ID "TMS320C28x"
+
+# elif defined(__TMS320C6X__) || defined(_TMS320C6X)
+# define ARCHITECTURE_ID "TMS320C6x"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#else
+# define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals. */
+#define DEC(n) \
+ ('0' + (((n) / 10000000)%10)), \
+ ('0' + (((n) / 1000000)%10)), \
+ ('0' + (((n) / 100000)%10)), \
+ ('0' + (((n) / 10000)%10)), \
+ ('0' + (((n) / 1000)%10)), \
+ ('0' + (((n) / 100)%10)), \
+ ('0' + (((n) / 10)%10)), \
+ ('0' + ((n) % 10))
+
+/* Convert integer to hex digit literals. */
+#define HEX(n) \
+ ('0' + ((n)>>28 & 0xF)), \
+ ('0' + ((n)>>24 & 0xF)), \
+ ('0' + ((n)>>20 & 0xF)), \
+ ('0' + ((n)>>16 & 0xF)), \
+ ('0' + ((n)>>12 & 0xF)), \
+ ('0' + ((n)>>8 & 0xF)), \
+ ('0' + ((n)>>4 & 0xF)), \
+ ('0' + ((n) & 0xF))
+
+/* Construct a string literal encoding the version number. */
+#ifdef COMPILER_VERSION
+char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]";
+
+/* Construct a string literal encoding the version number components. */
+#elif defined(COMPILER_VERSION_MAJOR)
+char const info_version[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+ COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+ '.', COMPILER_VERSION_MINOR,
+# ifdef COMPILER_VERSION_PATCH
+ '.', COMPILER_VERSION_PATCH,
+# ifdef COMPILER_VERSION_TWEAK
+ '.', COMPILER_VERSION_TWEAK,
+# endif
+# endif
+# endif
+ ']','\0'};
+#endif
+
+/* Construct a string literal encoding the internal version number. */
+#ifdef COMPILER_VERSION_INTERNAL
+char const info_version_internal[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
+ 'i','n','t','e','r','n','a','l','[',
+ COMPILER_VERSION_INTERNAL,']','\0'};
+#elif defined(COMPILER_VERSION_INTERNAL_STR)
+char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]";
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+ SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+ '.', SIMULATE_VERSION_MINOR,
+# ifdef SIMULATE_VERSION_PATCH
+ '.', SIMULATE_VERSION_PATCH,
+# ifdef SIMULATE_VERSION_TWEAK
+ '.', SIMULATE_VERSION_TWEAK,
+# endif
+# endif
+# endif
+ ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+ getting matched. Store it in a pointer rather than an array
+ because some compilers will just produce instructions to fill the
+ array rather than assigning a pointer to a static array. */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L
+# if defined(__INTEL_CXX11_MODE__)
+# if defined(__cpp_aggregate_nsdmi)
+# define CXX_STD 201402L
+# else
+# define CXX_STD 201103L
+# endif
+# else
+# define CXX_STD 199711L
+# endif
+#elif defined(_MSC_VER) && defined(_MSVC_LANG)
+# define CXX_STD _MSVC_LANG
+#else
+# define CXX_STD __cplusplus
+#endif
+
+const char* info_language_standard_default = "INFO" ":" "standard_default["
+#if CXX_STD > 202002L
+ "23"
+#elif CXX_STD > 201703L
+ "20"
+#elif CXX_STD >= 201703L
+ "17"
+#elif CXX_STD >= 201402L
+ "14"
+#elif CXX_STD >= 201103L
+ "11"
+#else
+ "98"
+#endif
+"]";
+
+const char* info_language_extensions_default = "INFO" ":" "extensions_default["
+/* !defined(_MSC_VER) to exclude Clang's MSVC compatibility mode. */
+#if (defined(__clang__) || defined(__GNUC__) || \
+ defined(__TI_COMPILER_VERSION__)) && \
+ !defined(__STRICT_ANSI__) && !defined(_MSC_VER)
+ "ON"
+#else
+ "OFF"
+#endif
+"]";
+
+/*--------------------------------------------------------------------------*/
+
+int main(int argc, char* argv[])
+{
+ int require = 0;
+ require += info_compiler[argc];
+ require += info_platform[argc];
+#ifdef COMPILER_VERSION_MAJOR
+ require += info_version[argc];
+#endif
+#ifdef COMPILER_VERSION_INTERNAL
+ require += info_version_internal[argc];
+#endif
+#ifdef SIMULATE_ID
+ require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+ require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
+ require += info_cray[argc];
+#endif
+ require += info_language_standard_default[argc];
+ require += info_language_extensions_default[argc];
+ (void)argv;
+ return require;
+}
diff --git a/CMakeFiles/CMakeOutput.log b/CMakeFiles/CMakeOutput.log
new file mode 100644
index 0000000..a2b3f25
--- /dev/null
+++ b/CMakeFiles/CMakeOutput.log
@@ -0,0 +1,449 @@
+The system is: Linux - 6.9.3-76060903-generic - x86_64
+Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
+Compiler: /usr/bin/cc
+Build flags:
+Id flags:
+
+The output was:
+0
+
+
+Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out"
+
+The C compiler identification is GNU, found in "/home/rosia/Programming/Cpp/BlogParser/CMakeFiles/3.22.1/CompilerIdC/a.out"
+
+Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
+Compiler: /usr/bin/c++
+Build flags:
+Id flags:
+
+The output was:
+0
+
+
+Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out"
+
+The CXX compiler identification is GNU, found in "/home/rosia/Programming/Cpp/BlogParser/CMakeFiles/3.22.1/CompilerIdCXX/a.out"
+
+Detecting C compiler ABI info compiled with the following output:
+Change Dir: /home/rosia/Programming/Cpp/BlogParser/CMakeFiles/CMakeTmp
+
+Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_1b54d/fast && /usr/bin/gmake -f CMakeFiles/cmTC_1b54d.dir/build.make CMakeFiles/cmTC_1b54d.dir/build
+gmake[1]: Entering directory '/home/rosia/Programming/Cpp/BlogParser/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o
+/usr/bin/cc -v -o CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c
+Using built-in specs.
+COLLECT_GCC=/usr/bin/cc
+OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
+OFFLOAD_TARGET_DEFAULT=1
+Target: x86_64-linux-gnu
+Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-XeT9lY/gcc-11-11.4.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-11-XeT9lY/gcc-11-11.4.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
+Thread model: posix
+Supported LTO compression algorithms: zlib zstd
+gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04)
+COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_1b54d.dir/'
+ /usr/lib/gcc/x86_64-linux-gnu/11/cc1 -quiet -v -imultiarch x86_64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_1b54d.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccZ8Ag2I.s
+GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (x86_64-linux-gnu)
+ compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP
+
+GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
+ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
+ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/include-fixed"
+ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/../../../../x86_64-linux-gnu/include"
+#include "..." search starts here:
+#include <...> search starts here:
+ /usr/lib/gcc/x86_64-linux-gnu/11/include
+ /usr/local/include
+ /usr/include/x86_64-linux-gnu
+ /usr/include
+End of search list.
+GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (x86_64-linux-gnu)
+ compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP
+
+GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
+Compiler executable checksum: 50eaa2331df977b8016186198deb2d18
+COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_1b54d.dir/'
+ as -v --64 -o CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o /tmp/ccZ8Ag2I.s
+GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38
+COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/
+LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/
+COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.'
+Linking C executable cmTC_1b54d
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_1b54d.dir/link.txt --verbose=1
+/usr/bin/cc -v CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o -o cmTC_1b54d
+Using built-in specs.
+COLLECT_GCC=/usr/bin/cc
+COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper
+OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
+OFFLOAD_TARGET_DEFAULT=1
+Target: x86_64-linux-gnu
+Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-XeT9lY/gcc-11-11.4.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-11-XeT9lY/gcc-11-11.4.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
+Thread model: posix
+Supported LTO compression algorithms: zlib zstd
+gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04)
+COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/
+LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_1b54d' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_1b54d.'
+ /usr/lib/gcc/x86_64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/cc0Zelmc.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_1b54d /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/11 -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/11/../../.. CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_1b54d' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_1b54d.'
+gmake[1]: Leaving directory '/home/rosia/Programming/Cpp/BlogParser/CMakeFiles/CMakeTmp'
+
+
+
+Parsed C implicit include dir info from above output: rv=done
+ found start of include info
+ found start of implicit include info
+ add: [/usr/lib/gcc/x86_64-linux-gnu/11/include]
+ add: [/usr/local/include]
+ add: [/usr/include/x86_64-linux-gnu]
+ add: [/usr/include]
+ end of search list found
+ collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/11/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/11/include]
+ collapse include dir [/usr/local/include] ==> [/usr/local/include]
+ collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu]
+ collapse include dir [/usr/include] ==> [/usr/include]
+ implicit include dirs: [/usr/lib/gcc/x86_64-linux-gnu/11/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include]
+
+
+Parsed C implicit link information from above output:
+ link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
+ ignore line: [Change Dir: /home/rosia/Programming/Cpp/BlogParser/CMakeFiles/CMakeTmp]
+ ignore line: []
+ ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_1b54d/fast && /usr/bin/gmake -f CMakeFiles/cmTC_1b54d.dir/build.make CMakeFiles/cmTC_1b54d.dir/build]
+ ignore line: [gmake[1]: Entering directory '/home/rosia/Programming/Cpp/BlogParser/CMakeFiles/CMakeTmp']
+ ignore line: [Building C object CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o]
+ ignore line: [/usr/bin/cc -v -o CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c]
+ ignore line: [Using built-in specs.]
+ ignore line: [COLLECT_GCC=/usr/bin/cc]
+ ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
+ ignore line: [OFFLOAD_TARGET_DEFAULT=1]
+ ignore line: [Target: x86_64-linux-gnu]
+ ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-XeT9lY/gcc-11-11.4.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-11-XeT9lY/gcc-11-11.4.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2]
+ ignore line: [Thread model: posix]
+ ignore line: [Supported LTO compression algorithms: zlib zstd]
+ ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ]
+ ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_1b54d.dir/']
+ ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/11/cc1 -quiet -v -imultiarch x86_64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_1b54d.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccZ8Ag2I.s]
+ ignore line: [GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (x86_64-linux-gnu)]
+ ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP]
+ ignore line: []
+ ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
+ ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"]
+ ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/include-fixed"]
+ ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/../../../../x86_64-linux-gnu/include"]
+ ignore line: [#include "..." search starts here:]
+ ignore line: [#include <...> search starts here:]
+ ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/11/include]
+ ignore line: [ /usr/local/include]
+ ignore line: [ /usr/include/x86_64-linux-gnu]
+ ignore line: [ /usr/include]
+ ignore line: [End of search list.]
+ ignore line: [GNU C17 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (x86_64-linux-gnu)]
+ ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP]
+ ignore line: []
+ ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
+ ignore line: [Compiler executable checksum: 50eaa2331df977b8016186198deb2d18]
+ ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_1b54d.dir/']
+ ignore line: [ as -v --64 -o CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o /tmp/ccZ8Ag2I.s]
+ ignore line: [GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38]
+ ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/]
+ ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/]
+ ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.']
+ ignore line: [Linking C executable cmTC_1b54d]
+ ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_1b54d.dir/link.txt --verbose=1]
+ ignore line: [/usr/bin/cc -v CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o -o cmTC_1b54d ]
+ ignore line: [Using built-in specs.]
+ ignore line: [COLLECT_GCC=/usr/bin/cc]
+ ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper]
+ ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
+ ignore line: [OFFLOAD_TARGET_DEFAULT=1]
+ ignore line: [Target: x86_64-linux-gnu]
+ ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-XeT9lY/gcc-11-11.4.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-11-XeT9lY/gcc-11-11.4.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2]
+ ignore line: [Thread model: posix]
+ ignore line: [Supported LTO compression algorithms: zlib zstd]
+ ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ]
+ ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/]
+ ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/]
+ ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_1b54d' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_1b54d.']
+ link line: [ /usr/lib/gcc/x86_64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/cc0Zelmc.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_1b54d /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/11 -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/11/../../.. CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o]
+ arg [/usr/lib/gcc/x86_64-linux-gnu/11/collect2] ==> ignore
+ arg [-plugin] ==> ignore
+ arg [/usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so] ==> ignore
+ arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper] ==> ignore
+ arg [-plugin-opt=-fresolution=/tmp/cc0Zelmc.res] ==> ignore
+ arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+ arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+ arg [-plugin-opt=-pass-through=-lc] ==> ignore
+ arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+ arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+ arg [--build-id] ==> ignore
+ arg [--eh-frame-hdr] ==> ignore
+ arg [-m] ==> ignore
+ arg [elf_x86_64] ==> ignore
+ arg [--hash-style=gnu] ==> ignore
+ arg [--as-needed] ==> ignore
+ arg [-dynamic-linker] ==> ignore
+ arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
+ arg [-pie] ==> ignore
+ arg [-znow] ==> ignore
+ arg [-zrelro] ==> ignore
+ arg [-o] ==> ignore
+ arg [cmTC_1b54d] ==> ignore
+ arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o]
+ arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o]
+ arg [/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o]
+ arg [-L/usr/lib/gcc/x86_64-linux-gnu/11] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11]
+ arg [-L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu]
+ arg [-L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib]
+ arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu]
+ arg [-L/lib/../lib] ==> dir [/lib/../lib]
+ arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu]
+ arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
+ arg [-L/usr/lib/gcc/x86_64-linux-gnu/11/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../..]
+ arg [CMakeFiles/cmTC_1b54d.dir/CMakeCCompilerABI.c.o] ==> ignore
+ arg [-lgcc] ==> lib [gcc]
+ arg [--push-state] ==> ignore
+ arg [--as-needed] ==> ignore
+ arg [-lgcc_s] ==> lib [gcc_s]
+ arg [--pop-state] ==> ignore
+ arg [-lc] ==> lib [c]
+ arg [-lgcc] ==> lib [gcc]
+ arg [--push-state] ==> ignore
+ arg [--as-needed] ==> ignore
+ arg [-lgcc_s] ==> lib [gcc_s]
+ arg [--pop-state] ==> ignore
+ arg [/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o]
+ arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o]
+ collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o]
+ collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o]
+ collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o]
+ collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11] ==> [/usr/lib/gcc/x86_64-linux-gnu/11]
+ collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
+ collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib] ==> [/usr/lib]
+ collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu]
+ collapse library dir [/lib/../lib] ==> [/lib]
+ collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
+ collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
+ collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../..] ==> [/usr/lib]
+ implicit libs: [gcc;gcc_s;c;gcc;gcc_s]
+ implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o]
+ implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/11;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib]
+ implicit fwks: []
+
+
+Detecting CXX compiler ABI info compiled with the following output:
+Change Dir: /home/rosia/Programming/Cpp/BlogParser/CMakeFiles/CMakeTmp
+
+Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_78b26/fast && /usr/bin/gmake -f CMakeFiles/cmTC_78b26.dir/build.make CMakeFiles/cmTC_78b26.dir/build
+gmake[1]: Entering directory '/home/rosia/Programming/Cpp/BlogParser/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o
+/usr/bin/c++ -v -std=gnu++20 -o CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp
+Using built-in specs.
+COLLECT_GCC=/usr/bin/c++
+OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
+OFFLOAD_TARGET_DEFAULT=1
+Target: x86_64-linux-gnu
+Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-XeT9lY/gcc-11-11.4.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-11-XeT9lY/gcc-11-11.4.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
+Thread model: posix
+Supported LTO compression algorithms: zlib zstd
+gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04)
+COLLECT_GCC_OPTIONS='-v' '-std=gnu++20' '-o' 'CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_78b26.dir/'
+ /usr/lib/gcc/x86_64-linux-gnu/11/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_78b26.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -std=gnu++20 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/cc0jZvxb.s
+GNU C++20 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (x86_64-linux-gnu)
+ compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP
+
+GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
+ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/11"
+ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
+ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/include-fixed"
+ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/../../../../x86_64-linux-gnu/include"
+#include "..." search starts here:
+#include <...> search starts here:
+ /usr/include/c++/11
+ /usr/include/x86_64-linux-gnu/c++/11
+ /usr/include/c++/11/backward
+ /usr/lib/gcc/x86_64-linux-gnu/11/include
+ /usr/local/include
+ /usr/include/x86_64-linux-gnu
+ /usr/include
+End of search list.
+GNU C++20 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (x86_64-linux-gnu)
+ compiled by GNU C version 11.4.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP
+
+GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
+Compiler executable checksum: d591828bb4d392ae8b7b160e5bb0b95f
+COLLECT_GCC_OPTIONS='-v' '-std=gnu++20' '-o' 'CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_78b26.dir/'
+ as -v --64 -o CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o /tmp/cc0jZvxb.s
+GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38
+COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/
+LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/
+COLLECT_GCC_OPTIONS='-v' '-std=gnu++20' '-o' 'CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.'
+Linking CXX executable cmTC_78b26
+/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_78b26.dir/link.txt --verbose=1
+/usr/bin/c++ -v CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_78b26
+Using built-in specs.
+COLLECT_GCC=/usr/bin/c++
+COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper
+OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
+OFFLOAD_TARGET_DEFAULT=1
+Target: x86_64-linux-gnu
+Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-XeT9lY/gcc-11-11.4.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-11-XeT9lY/gcc-11-11.4.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
+Thread model: posix
+Supported LTO compression algorithms: zlib zstd
+gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04)
+COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/
+LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_78b26' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_78b26.'
+ /usr/lib/gcc/x86_64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccd8hdwU.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_78b26 /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/11 -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/11/../../.. CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o
+COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_78b26' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_78b26.'
+gmake[1]: Leaving directory '/home/rosia/Programming/Cpp/BlogParser/CMakeFiles/CMakeTmp'
+
+
+
+Parsed CXX implicit include dir info from above output: rv=done
+ found start of include info
+ found start of implicit include info
+ add: [/usr/include/c++/11]
+ add: [/usr/include/x86_64-linux-gnu/c++/11]
+ add: [/usr/include/c++/11/backward]
+ add: [/usr/lib/gcc/x86_64-linux-gnu/11/include]
+ add: [/usr/local/include]
+ add: [/usr/include/x86_64-linux-gnu]
+ add: [/usr/include]
+ end of search list found
+ collapse include dir [/usr/include/c++/11] ==> [/usr/include/c++/11]
+ collapse include dir [/usr/include/x86_64-linux-gnu/c++/11] ==> [/usr/include/x86_64-linux-gnu/c++/11]
+ collapse include dir [/usr/include/c++/11/backward] ==> [/usr/include/c++/11/backward]
+ collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/11/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/11/include]
+ collapse include dir [/usr/local/include] ==> [/usr/local/include]
+ collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu]
+ collapse include dir [/usr/include] ==> [/usr/include]
+ implicit include dirs: [/usr/include/c++/11;/usr/include/x86_64-linux-gnu/c++/11;/usr/include/c++/11/backward;/usr/lib/gcc/x86_64-linux-gnu/11/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include]
+
+
+Parsed CXX implicit link information from above output:
+ link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
+ ignore line: [Change Dir: /home/rosia/Programming/Cpp/BlogParser/CMakeFiles/CMakeTmp]
+ ignore line: []
+ ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_78b26/fast && /usr/bin/gmake -f CMakeFiles/cmTC_78b26.dir/build.make CMakeFiles/cmTC_78b26.dir/build]
+ ignore line: [gmake[1]: Entering directory '/home/rosia/Programming/Cpp/BlogParser/CMakeFiles/CMakeTmp']
+ ignore line: [Building CXX object CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o]
+ ignore line: [/usr/bin/c++ -v -std=gnu++20 -o CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp]
+ ignore line: [Using built-in specs.]
+ ignore line: [COLLECT_GCC=/usr/bin/c++]
+ ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
+ ignore line: [OFFLOAD_TARGET_DEFAULT=1]
+ ignore line: [Target: x86_64-linux-gnu]
+ ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-XeT9lY/gcc-11-11.4.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-11-XeT9lY/gcc-11-11.4.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2]
+ ignore line: [Thread model: posix]
+ ignore line: [Supported LTO compression algorithms: zlib zstd]
+ ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ]
+ ignore line: [COLLECT_GCC_OPTIONS='-v' '-std=gnu++20' '-o' 'CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_78b26.dir/']
+ ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/11/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_78b26.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -std=gnu++20 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/cc0jZvxb.s]
+ ignore line: [GNU C++20 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (x86_64-linux-gnu)]
+ ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP]
+ ignore line: []
+ ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
+ ignore line: [ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/11"]
+ ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"]
+ ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/include-fixed"]
+ ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/../../../../x86_64-linux-gnu/include"]
+ ignore line: [#include "..." search starts here:]
+ ignore line: [#include <...> search starts here:]
+ ignore line: [ /usr/include/c++/11]
+ ignore line: [ /usr/include/x86_64-linux-gnu/c++/11]
+ ignore line: [ /usr/include/c++/11/backward]
+ ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/11/include]
+ ignore line: [ /usr/local/include]
+ ignore line: [ /usr/include/x86_64-linux-gnu]
+ ignore line: [ /usr/include]
+ ignore line: [End of search list.]
+ ignore line: [GNU C++20 (Ubuntu 11.4.0-1ubuntu1~22.04) version 11.4.0 (x86_64-linux-gnu)]
+ ignore line: [ compiled by GNU C version 11.4.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP]
+ ignore line: []
+ ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
+ ignore line: [Compiler executable checksum: d591828bb4d392ae8b7b160e5bb0b95f]
+ ignore line: [COLLECT_GCC_OPTIONS='-v' '-std=gnu++20' '-o' 'CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_78b26.dir/']
+ ignore line: [ as -v --64 -o CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o /tmp/cc0jZvxb.s]
+ ignore line: [GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38]
+ ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/]
+ ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/]
+ ignore line: [COLLECT_GCC_OPTIONS='-v' '-std=gnu++20' '-o' 'CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.']
+ ignore line: [Linking CXX executable cmTC_78b26]
+ ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_78b26.dir/link.txt --verbose=1]
+ ignore line: [/usr/bin/c++ -v CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_78b26 ]
+ ignore line: [Using built-in specs.]
+ ignore line: [COLLECT_GCC=/usr/bin/c++]
+ ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper]
+ ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
+ ignore line: [OFFLOAD_TARGET_DEFAULT=1]
+ ignore line: [Target: x86_64-linux-gnu]
+ ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-XeT9lY/gcc-11-11.4.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-11-XeT9lY/gcc-11-11.4.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2]
+ ignore line: [Thread model: posix]
+ ignore line: [Supported LTO compression algorithms: zlib zstd]
+ ignore line: [gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) ]
+ ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/]
+ ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/]
+ ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_78b26' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_78b26.']
+ link line: [ /usr/lib/gcc/x86_64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccd8hdwU.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_78b26 /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/11 -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/11/../../.. CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o]
+ arg [/usr/lib/gcc/x86_64-linux-gnu/11/collect2] ==> ignore
+ arg [-plugin] ==> ignore
+ arg [/usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so] ==> ignore
+ arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper] ==> ignore
+ arg [-plugin-opt=-fresolution=/tmp/ccd8hdwU.res] ==> ignore
+ arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+ arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+ arg [-plugin-opt=-pass-through=-lc] ==> ignore
+ arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
+ arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
+ arg [--build-id] ==> ignore
+ arg [--eh-frame-hdr] ==> ignore
+ arg [-m] ==> ignore
+ arg [elf_x86_64] ==> ignore
+ arg [--hash-style=gnu] ==> ignore
+ arg [--as-needed] ==> ignore
+ arg [-dynamic-linker] ==> ignore
+ arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
+ arg [-pie] ==> ignore
+ arg [-znow] ==> ignore
+ arg [-zrelro] ==> ignore
+ arg [-o] ==> ignore
+ arg [cmTC_78b26] ==> ignore
+ arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o]
+ arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o]
+ arg [/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o]
+ arg [-L/usr/lib/gcc/x86_64-linux-gnu/11] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11]
+ arg [-L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu]
+ arg [-L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib]
+ arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu]
+ arg [-L/lib/../lib] ==> dir [/lib/../lib]
+ arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu]
+ arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
+ arg [-L/usr/lib/gcc/x86_64-linux-gnu/11/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../..]
+ arg [CMakeFiles/cmTC_78b26.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
+ arg [-lstdc++] ==> lib [stdc++]
+ arg [-lm] ==> lib [m]
+ arg [-lgcc_s] ==> lib [gcc_s]
+ arg [-lgcc] ==> lib [gcc]
+ arg [-lc] ==> lib [c]
+ arg [-lgcc_s] ==> lib [gcc_s]
+ arg [-lgcc] ==> lib [gcc]
+ arg [/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o]
+ arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o]
+ collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o]
+ collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o]
+ collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o]
+ collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11] ==> [/usr/lib/gcc/x86_64-linux-gnu/11]
+ collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
+ collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib] ==> [/usr/lib]
+ collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu]
+ collapse library dir [/lib/../lib] ==> [/lib]
+ collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
+ collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
+ collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../..] ==> [/usr/lib]
+ implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc]
+ implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o]
+ implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/11;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib]
+ implicit fwks: []
+
+
diff --git a/CMakeFiles/Makefile2 b/CMakeFiles/Makefile2
new file mode 100644
index 0000000..4b74b69
--- /dev/null
+++ b/CMakeFiles/Makefile2
@@ -0,0 +1,322 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+#=============================================================================
+# Directory level rules for the build root directory
+
+# The main recursive "all" target.
+all: Src/all
+.PHONY : all
+
+# The main recursive "preinstall" target.
+preinstall: Src/preinstall
+.PHONY : preinstall
+
+# The main recursive "clean" target.
+clean: Src/clean
+.PHONY : clean
+
+#=============================================================================
+# Directory level rules for directory Src
+
+# Recursive "all" directory target.
+Src/all: Src/CMakeFiles/blog.dir/all
+Src/all: Src/CMakeFiles/BlogParser.dir/all
+Src/all: Src/CMakeFiles/BlogPageBuilder.dir/all
+Src/all: Src/CMakeFiles/AtomBuilder.dir/all
+Src/all: Src/CMakeFiles/Program.dir/all
+Src/all: Src/Libs/all
+.PHONY : Src/all
+
+# Recursive "preinstall" directory target.
+Src/preinstall: Src/Libs/preinstall
+.PHONY : Src/preinstall
+
+# Recursive "clean" directory target.
+Src/clean: Src/CMakeFiles/blog.dir/clean
+Src/clean: Src/CMakeFiles/BlogParser.dir/clean
+Src/clean: Src/CMakeFiles/BlogPageBuilder.dir/clean
+Src/clean: Src/CMakeFiles/AtomBuilder.dir/clean
+Src/clean: Src/CMakeFiles/Program.dir/clean
+Src/clean: Src/Libs/clean
+.PHONY : Src/clean
+
+#=============================================================================
+# Directory level rules for directory Src/Libs
+
+# Recursive "all" directory target.
+Src/Libs/all: Src/Libs/CMakeFiles/md4c.dir/all
+Src/Libs/all: Src/Libs/CMakeFiles/md4c-html.dir/all
+.PHONY : Src/Libs/all
+
+# Recursive "preinstall" directory target.
+Src/Libs/preinstall:
+.PHONY : Src/Libs/preinstall
+
+# Recursive "clean" directory target.
+Src/Libs/clean: Src/Libs/CMakeFiles/md4c.dir/clean
+Src/Libs/clean: Src/Libs/CMakeFiles/md4c-html.dir/clean
+.PHONY : Src/Libs/clean
+
+#=============================================================================
+# Target rules for target Src/CMakeFiles/blog.dir
+
+# All Build rule for target.
+Src/CMakeFiles/blog.dir/all: Src/CMakeFiles/BlogParser.dir/all
+Src/CMakeFiles/blog.dir/all: Src/CMakeFiles/BlogPageBuilder.dir/all
+Src/CMakeFiles/blog.dir/all: Src/CMakeFiles/AtomBuilder.dir/all
+Src/CMakeFiles/blog.dir/all: Src/CMakeFiles/Program.dir/all
+Src/CMakeFiles/blog.dir/all: Src/Libs/CMakeFiles/md4c.dir/all
+Src/CMakeFiles/blog.dir/all: Src/Libs/CMakeFiles/md4c-html.dir/all
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/blog.dir/build.make Src/CMakeFiles/blog.dir/depend
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/blog.dir/build.make Src/CMakeFiles/blog.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=10,11 "Built target blog"
+.PHONY : Src/CMakeFiles/blog.dir/all
+
+# Build rule for subdir invocation for target.
+Src/CMakeFiles/blog.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 17
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/CMakeFiles/blog.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 0
+.PHONY : Src/CMakeFiles/blog.dir/rule
+
+# Convenience name for target.
+blog: Src/CMakeFiles/blog.dir/rule
+.PHONY : blog
+
+# clean rule for target.
+Src/CMakeFiles/blog.dir/clean:
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/blog.dir/build.make Src/CMakeFiles/blog.dir/clean
+.PHONY : Src/CMakeFiles/blog.dir/clean
+
+#=============================================================================
+# Target rules for target Src/CMakeFiles/BlogParser.dir
+
+# All Build rule for target.
+Src/CMakeFiles/BlogParser.dir/all: Src/Libs/CMakeFiles/md4c.dir/all
+Src/CMakeFiles/BlogParser.dir/all: Src/Libs/CMakeFiles/md4c-html.dir/all
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogParser.dir/build.make Src/CMakeFiles/BlogParser.dir/depend
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogParser.dir/build.make Src/CMakeFiles/BlogParser.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=6,7 "Built target BlogParser"
+.PHONY : Src/CMakeFiles/BlogParser.dir/all
+
+# Build rule for subdir invocation for target.
+Src/CMakeFiles/BlogParser.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 8
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/CMakeFiles/BlogParser.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 0
+.PHONY : Src/CMakeFiles/BlogParser.dir/rule
+
+# Convenience name for target.
+BlogParser: Src/CMakeFiles/BlogParser.dir/rule
+.PHONY : BlogParser
+
+# clean rule for target.
+Src/CMakeFiles/BlogParser.dir/clean:
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogParser.dir/build.make Src/CMakeFiles/BlogParser.dir/clean
+.PHONY : Src/CMakeFiles/BlogParser.dir/clean
+
+#=============================================================================
+# Target rules for target Src/CMakeFiles/BlogPageBuilder.dir
+
+# All Build rule for target.
+Src/CMakeFiles/BlogPageBuilder.dir/all: Src/CMakeFiles/BlogParser.dir/all
+Src/CMakeFiles/BlogPageBuilder.dir/all: Src/Libs/CMakeFiles/md4c.dir/all
+Src/CMakeFiles/BlogPageBuilder.dir/all: Src/Libs/CMakeFiles/md4c-html.dir/all
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogPageBuilder.dir/build.make Src/CMakeFiles/BlogPageBuilder.dir/depend
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogPageBuilder.dir/build.make Src/CMakeFiles/BlogPageBuilder.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=3,4,5 "Built target BlogPageBuilder"
+.PHONY : Src/CMakeFiles/BlogPageBuilder.dir/all
+
+# Build rule for subdir invocation for target.
+Src/CMakeFiles/BlogPageBuilder.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 11
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/CMakeFiles/BlogPageBuilder.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 0
+.PHONY : Src/CMakeFiles/BlogPageBuilder.dir/rule
+
+# Convenience name for target.
+BlogPageBuilder: Src/CMakeFiles/BlogPageBuilder.dir/rule
+.PHONY : BlogPageBuilder
+
+# clean rule for target.
+Src/CMakeFiles/BlogPageBuilder.dir/clean:
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogPageBuilder.dir/build.make Src/CMakeFiles/BlogPageBuilder.dir/clean
+.PHONY : Src/CMakeFiles/BlogPageBuilder.dir/clean
+
+#=============================================================================
+# Target rules for target Src/CMakeFiles/AtomBuilder.dir
+
+# All Build rule for target.
+Src/CMakeFiles/AtomBuilder.dir/all:
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/AtomBuilder.dir/build.make Src/CMakeFiles/AtomBuilder.dir/depend
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/AtomBuilder.dir/build.make Src/CMakeFiles/AtomBuilder.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=1,2 "Built target AtomBuilder"
+.PHONY : Src/CMakeFiles/AtomBuilder.dir/all
+
+# Build rule for subdir invocation for target.
+Src/CMakeFiles/AtomBuilder.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 2
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/CMakeFiles/AtomBuilder.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 0
+.PHONY : Src/CMakeFiles/AtomBuilder.dir/rule
+
+# Convenience name for target.
+AtomBuilder: Src/CMakeFiles/AtomBuilder.dir/rule
+.PHONY : AtomBuilder
+
+# clean rule for target.
+Src/CMakeFiles/AtomBuilder.dir/clean:
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/AtomBuilder.dir/build.make Src/CMakeFiles/AtomBuilder.dir/clean
+.PHONY : Src/CMakeFiles/AtomBuilder.dir/clean
+
+#=============================================================================
+# Target rules for target Src/CMakeFiles/Program.dir
+
+# All Build rule for target.
+Src/CMakeFiles/Program.dir/all: Src/CMakeFiles/BlogParser.dir/all
+Src/CMakeFiles/Program.dir/all: Src/CMakeFiles/BlogPageBuilder.dir/all
+Src/CMakeFiles/Program.dir/all: Src/CMakeFiles/AtomBuilder.dir/all
+Src/CMakeFiles/Program.dir/all: Src/Libs/CMakeFiles/md4c.dir/all
+Src/CMakeFiles/Program.dir/all: Src/Libs/CMakeFiles/md4c-html.dir/all
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/Program.dir/build.make Src/CMakeFiles/Program.dir/depend
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/Program.dir/build.make Src/CMakeFiles/Program.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=8,9 "Built target Program"
+.PHONY : Src/CMakeFiles/Program.dir/all
+
+# Build rule for subdir invocation for target.
+Src/CMakeFiles/Program.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 15
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/CMakeFiles/Program.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 0
+.PHONY : Src/CMakeFiles/Program.dir/rule
+
+# Convenience name for target.
+Program: Src/CMakeFiles/Program.dir/rule
+.PHONY : Program
+
+# clean rule for target.
+Src/CMakeFiles/Program.dir/clean:
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/Program.dir/build.make Src/CMakeFiles/Program.dir/clean
+.PHONY : Src/CMakeFiles/Program.dir/clean
+
+#=============================================================================
+# Target rules for target Src/Libs/CMakeFiles/md4c.dir
+
+# All Build rule for target.
+Src/Libs/CMakeFiles/md4c.dir/all:
+ $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c.dir/build.make Src/Libs/CMakeFiles/md4c.dir/depend
+ $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c.dir/build.make Src/Libs/CMakeFiles/md4c.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=12,13 "Built target md4c"
+.PHONY : Src/Libs/CMakeFiles/md4c.dir/all
+
+# Build rule for subdir invocation for target.
+Src/Libs/CMakeFiles/md4c.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 2
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/Libs/CMakeFiles/md4c.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 0
+.PHONY : Src/Libs/CMakeFiles/md4c.dir/rule
+
+# Convenience name for target.
+md4c: Src/Libs/CMakeFiles/md4c.dir/rule
+.PHONY : md4c
+
+# clean rule for target.
+Src/Libs/CMakeFiles/md4c.dir/clean:
+ $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c.dir/build.make Src/Libs/CMakeFiles/md4c.dir/clean
+.PHONY : Src/Libs/CMakeFiles/md4c.dir/clean
+
+#=============================================================================
+# Target rules for target Src/Libs/CMakeFiles/md4c-html.dir
+
+# All Build rule for target.
+Src/Libs/CMakeFiles/md4c-html.dir/all:
+ $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c-html.dir/build.make Src/Libs/CMakeFiles/md4c-html.dir/depend
+ $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c-html.dir/build.make Src/Libs/CMakeFiles/md4c-html.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=14,15,16,17 "Built target md4c-html"
+.PHONY : Src/Libs/CMakeFiles/md4c-html.dir/all
+
+# Build rule for subdir invocation for target.
+Src/Libs/CMakeFiles/md4c-html.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 4
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/Libs/CMakeFiles/md4c-html.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 0
+.PHONY : Src/Libs/CMakeFiles/md4c-html.dir/rule
+
+# Convenience name for target.
+md4c-html: Src/Libs/CMakeFiles/md4c-html.dir/rule
+.PHONY : md4c-html
+
+# clean rule for target.
+Src/Libs/CMakeFiles/md4c-html.dir/clean:
+ $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c-html.dir/build.make Src/Libs/CMakeFiles/md4c-html.dir/clean
+.PHONY : Src/Libs/CMakeFiles/md4c-html.dir/clean
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/CMakeFiles/TargetDirectories.txt b/CMakeFiles/TargetDirectories.txt
new file mode 100644
index 0000000..f73f28f
--- /dev/null
+++ b/CMakeFiles/TargetDirectories.txt
@@ -0,0 +1,13 @@
+/home/rosia/Programming/Cpp/BlogParser/CMakeFiles/edit_cache.dir
+/home/rosia/Programming/Cpp/BlogParser/CMakeFiles/rebuild_cache.dir
+/home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/blog.dir
+/home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/BlogParser.dir
+/home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/BlogPageBuilder.dir
+/home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/AtomBuilder.dir
+/home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/Program.dir
+/home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/edit_cache.dir
+/home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/rebuild_cache.dir
+/home/rosia/Programming/Cpp/BlogParser/Src/Libs/CMakeFiles/md4c.dir
+/home/rosia/Programming/Cpp/BlogParser/Src/Libs/CMakeFiles/md4c-html.dir
+/home/rosia/Programming/Cpp/BlogParser/Src/Libs/CMakeFiles/edit_cache.dir
+/home/rosia/Programming/Cpp/BlogParser/Src/Libs/CMakeFiles/rebuild_cache.dir
diff --git a/CMakeFiles/cmake.check_cache b/CMakeFiles/cmake.check_cache
new file mode 100644
index 0000000..3dccd73
--- /dev/null
+++ b/CMakeFiles/cmake.check_cache
@@ -0,0 +1 @@
+# This file is generated by cmake for dependency checking of the CMakeCache.txt file
diff --git a/CMakeFiles/progress.marks b/CMakeFiles/progress.marks
new file mode 100644
index 0000000..98d9bcb
--- /dev/null
+++ b/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+17
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6f0e7da..37827aa 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,6 +1,6 @@
cmake_minimum_required(VERSION 3.20)
set(CMAKE_BUILD_TYPE Debug) # Debug or Release
-set(CMAKE_CXX_STANDARD 17)
+set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED True)
set(CMAKE_EXPORT_COMPILE_COMMANDS 1) # export our compiler flags for clangd to read
diff --git a/MacroDefinitions.h b/MacroDefinitions.h
new file mode 100644
index 0000000..c8ab0e3
--- /dev/null
+++ b/MacroDefinitions.h
@@ -0,0 +1,12 @@
+#pragma once
+
+#define TEST_RESOURCE_FOLDER "/home/rosia/Programming/Cpp/BlogParser/Resources/Tests"
+#define RESOURCE_FOLDER "/home/rosia/Programming/Cpp/BlogParser/Resources"
+
+#define SOURCE_FILE_FOLDER "/home/rosia/Programming/Cpp/BlogParser/Resources/Input"
+#define OUTPUT_FILE_FOLDER "/home/rosia/Programming/Cpp/BlogParser/Resources/Output"
+
+#define STATIC_RESOURCES_FOLDER "/home/rosia/Programming/Cpp/BlogParser/Resources/Static"
+
+#define SITE_WEB_URL "https://rosia.me"
+
diff --git a/MacroDefinitions.h.in b/MacroDefinitions.h.in
index 9708bab..4c403ef 100644
--- a/MacroDefinitions.h.in
+++ b/MacroDefinitions.h.in
@@ -8,3 +8,5 @@
#define STATIC_RESOURCES_FOLDER "${CMAKE_SOURCE_DIR}/Resources/Static"
+#define SITE_WEB_URL "https://rosia.me"
+
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..c44fed5
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,238 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+# Allow only one "make -f Makefile2" at a time, but pass parallelism.
+.NOTPARALLEL:
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..."
+ /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+.PHONY : edit_cache/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+.PHONY : rebuild_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles /home/rosia/Programming/Cpp/BlogParser//CMakeFiles/progress.marks
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+#=============================================================================
+# Target rules for targets named blog
+
+# Build rule for target.
+blog: cmake_check_build_system
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 blog
+.PHONY : blog
+
+# fast build rule for target.
+blog/fast:
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/blog.dir/build.make Src/CMakeFiles/blog.dir/build
+.PHONY : blog/fast
+
+#=============================================================================
+# Target rules for targets named BlogParser
+
+# Build rule for target.
+BlogParser: cmake_check_build_system
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 BlogParser
+.PHONY : BlogParser
+
+# fast build rule for target.
+BlogParser/fast:
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogParser.dir/build.make Src/CMakeFiles/BlogParser.dir/build
+.PHONY : BlogParser/fast
+
+#=============================================================================
+# Target rules for targets named BlogPageBuilder
+
+# Build rule for target.
+BlogPageBuilder: cmake_check_build_system
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 BlogPageBuilder
+.PHONY : BlogPageBuilder
+
+# fast build rule for target.
+BlogPageBuilder/fast:
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogPageBuilder.dir/build.make Src/CMakeFiles/BlogPageBuilder.dir/build
+.PHONY : BlogPageBuilder/fast
+
+#=============================================================================
+# Target rules for targets named AtomBuilder
+
+# Build rule for target.
+AtomBuilder: cmake_check_build_system
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 AtomBuilder
+.PHONY : AtomBuilder
+
+# fast build rule for target.
+AtomBuilder/fast:
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/AtomBuilder.dir/build.make Src/CMakeFiles/AtomBuilder.dir/build
+.PHONY : AtomBuilder/fast
+
+#=============================================================================
+# Target rules for targets named Program
+
+# Build rule for target.
+Program: cmake_check_build_system
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Program
+.PHONY : Program
+
+# fast build rule for target.
+Program/fast:
+ $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/Program.dir/build.make Src/CMakeFiles/Program.dir/build
+.PHONY : Program/fast
+
+#=============================================================================
+# Target rules for targets named md4c
+
+# Build rule for target.
+md4c: cmake_check_build_system
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 md4c
+.PHONY : md4c
+
+# fast build rule for target.
+md4c/fast:
+ $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c.dir/build.make Src/Libs/CMakeFiles/md4c.dir/build
+.PHONY : md4c/fast
+
+#=============================================================================
+# Target rules for targets named md4c-html
+
+# Build rule for target.
+md4c-html: cmake_check_build_system
+ $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 md4c-html
+.PHONY : md4c-html
+
+# fast build rule for target.
+md4c-html/fast:
+ $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c-html.dir/build.make Src/Libs/CMakeFiles/md4c-html.dir/build
+.PHONY : md4c-html/fast
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... edit_cache"
+ @echo "... rebuild_cache"
+ @echo "... AtomBuilder"
+ @echo "... BlogPageBuilder"
+ @echo "... BlogParser"
+ @echo "... Program"
+ @echo "... blog"
+ @echo "... md4c"
+ @echo "... md4c-html"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/Resources/Output/Aardvark.html b/Resources/Output/Aardvark.html
index 38e4867..cd2014f 100644
--- a/Resources/Output/Aardvark.html
+++ b/Resources/Output/Aardvark.html
@@ -1,6 +1,6 @@
-
+
@@ -17,46 +17,35 @@
Navigation
+Example Post
Welcome!
-Major Work
-AardvarkXR
-This Site
-Plant System Work Gallery
-Self-built Laptop
-
-
-Minor Work
+Newer Work
CNSelfie
-SDL Uno
-Plant Watering System
-Sonic-Pi and Algorave
+This Site
Older Work
Mind Map Maker
+AardvarkXR
EPQ Project
+Tower defence game
-Thoughts and Essays
-Permacomputing
-Live-Coding
+Thoughts And Essays
University
-AberCompSoc
-AberRoboticsSoc
-AberSailBot
-
-
-Useful Notes
-Understanding Waveshare's E-Paper C Drivers
+aberCompSoc
+Aber Robotics Soc
+aberSailBot
Work Experience
-Skipton Building Society Internship
+SBS Internship
+
-
+
AardvarkXR
-Overview
-Aardvark was an open-source virtual reality project I joined and worked on for around 2 years between 2019 and 2021. I started out writing small add-ons for it and eventually ended up working with the main developer on creating core parts of the system.
-What is AardvarkXR?
-Aardvark is a framework that allows users to open small apps (known as gadgets) over the top of other virtual reality programs. Its program agnostic so runs in any other app. You could think of it as a mobile phone for use within other VR applications. Its main focus is providing small utilities such as calculators or note taking apps. Developers can create apps for Aardvark using web code (React and Typescript) which it then renders over the users view. These renders can be 3D which is a big positive as most core VR systems don't support 3D rendering on overlays so Aardvark does this itself.
-Due to all the code being web-based and run on servers, all gadgets are innately multi-user (with a small amount of work from the developer) and when in social VR apps, people can open gadgets that will be seen by all other users within that program using Aardvark.
+What it is
+Aardvark is a development framework, currently in alpha, designed to allow users to open small apps (known as gadgets) over the top of virtual reality programs or games. You could think of it as a mobile phone for use within
+any vr software, its main focus is providing small utilities such as calculators or note taking apps. Developers can create apps for Aardvark using web code which it then renders over the users view, these renders can be 2D
+or 3D which is a rather big positive as steamVR doesnt support 3D rendering on overlays so Aardvark has to do this itself. Due to all the code being webbased and run on servers, all gadgets are innately multi-user (with a small amount
+of work from the developer) and when in social vr apps, people can open gadgets that will be seen by all other users within that program.
+I was first introduced to Aardvark through a hackathon the developers ran on its inital release to the public in an attempt to gain developers to create basic apps for it, and since then I have periodically revisited it
+when ideas for gadgets come to mind. When taking part in the first hackathon I had little to no experience with javascript or html, let alone typescript (the main language used for Aardvark development), so I was required
+to teach myself over the course of the 3 days the hackathon ran for.
VIDEO
-My Work
-I was first introduced to Aardvark through a hackathon the developers ran on its initial release. When taking part in this I had no experience with typescript or web development in general, so I was required to teach myself over the course of the 3 days.
-I worked on an audio visualiser tool that ran in the background of users environments and also helped other developers, designing and creating 3D models for their work. One example of this was a set of icons I modelled for a playing card app (one of the first apps to be published on the platform).
-
-Around 4 months later I was working on some 3D art in VR and realised it would be really useful to be able to bring reference images into my VR space. I remembered Aardvark and revisited it to create a photo viewing app. This was originally a personal project but became a team effort with another member of the community who offered to join development.
-The app allowed users to upload images which were stored using ipfs and had multi-user functionality allowing different people to show each other photos.
+What I did
+During the first hackathon I proposed and worked on an audio visualiser tool that would run in the background of the users environment as they worked, reacting to their desktop audio. I also designed and created 3D models for other
+developers programs, such as icons for a playing card app; one of the first apps to be published on the platform.
+Around 4 months later I revisited Aardvark to create a photo viewing app which was originally a personal project but became a team effort with another member of the community who offered
+to join development, the app allowed users to upload images which were stored using ipfs (a decentralized storage system) and had multi-user functionality allowing different people to show each other photos. The main idea of the program was to allow vr artists to
+open reference images within their prospective drawing apps.
VIDEO
-After this I, found I was enjoying working with Aardvark and after talking to the main developer ended up working on the base code of the project itself.
-Originally Aardvark had the user open its UI through a button on their hand which took up valuable visual space used by a lot of other programs.
-I was tasked with creating a more intuitive solution which ended up being a gesture based system. With little to no guidance I had to read and gain a full understanding of the projects mid-level inner workings and
-rewrite large sections of it. After a week or so I produced a gesture system that allowed the user to bump the ends of their controllers together to open and close the menu. I also created a developer tool to allow developers to tweak the gesture to ensure it worked for their specific controllers.
-
+
As well as this I have also worked on the base code of the project itself. Originally Aardvark had the user open its Ui through a button on their hand which took up valuable visual space used by alot of other programs.
+I was tasked with creating a more intuitive solution which ended up being a gesture based system. With little to no guidance I had to read and gain a full understanding of the projects mid-level inner workings and
+rewrite large sections of it. After a week or so I produced a gesture system that allowed the user to bump the ends of their controllers together to open and close the menu. I also created a developer tool to allow
+developers to tweak the gesture to ensure it worked for their specific controllers.
VIDEO
VIDEO
-
-Looking Back
-Aardvark slowly fizzled out as it went on, never gaining much traction from developers sadly. Although it did become somewhat known in the VR space for a while. The main developer moved on to other projects and after that it fell quiet. Although I'm less invested in VR development nowadays looking back I still feel like it had a lot of potential and I'm somewhat sad it didn't take off. I still use it when working on 3D models in VR but past that it doesn't see regular use.
-Aardvark was my first open-source project and I feel that I learnt a lot from it. It helped me learn to prioritise what I did and didn't create pull requests for and ask for help around, showing me how valuable the main developers time was. In terms of project management it taught me a lot around prioritising my work and my communications when in busy, high stress teams.
diff --git a/Resources/Output/CatTowerDefence.html b/Resources/Output/CatTowerDefence.html
index 4f9ecae..64f5e5e 100644
--- a/Resources/Output/CatTowerDefence.html
+++ b/Resources/Output/CatTowerDefence.html
@@ -1,6 +1,6 @@
-
+
@@ -17,46 +17,35 @@
Navigation
+Example Post
Welcome!
-Major Work
-AardvarkXR
-This Site
-Plant System Work Gallery
-Self-built Laptop
-
-
-Minor Work
+Newer Work
CNSelfie
-SDL Uno
-Plant Watering System
-Sonic-Pi and Algorave
+This Site
Older Work
Mind Map Maker
+AardvarkXR
EPQ Project
+Tower defence game
-Thoughts and Essays
-Permacomputing
-Live-Coding
+Thoughts And Essays
University
-AberCompSoc
-AberRoboticsSoc
-AberSailBot
-
-
-Useful Notes
-Understanding Waveshare's E-Paper C Drivers
+aberCompSoc
+Aber Robotics Soc
+aberSailBot
Work Experience
-Skipton Building Society Internship
+SBS Internship
+
-
+
Tower defence game
-
-This is an older post from my first personal website I created in secondary school, its yet to be re-written for this new website so expect varying degrees of quality
-
What it is
A tower defence game, mostly created over the course of 1-2 months to allow myself and a friend to gain a better understanding of python. Players can place cats to attack balls of wool rolling along a path. Cats can
be upgraded with different upgrade paths and can be deleted to allow for a partial refund. The tower system was designed to be easily expanded and altered along with a rudimentary map file system that allowed users to
diff --git a/Resources/Output/EPQProject.html b/Resources/Output/EPQProject.html
index b7f49e9..10a4648 100644
--- a/Resources/Output/EPQProject.html
+++ b/Resources/Output/EPQProject.html
@@ -1,6 +1,6 @@
-
+
@@ -17,46 +17,35 @@
Navigation
+Example Post
Welcome!
-Major Work
-AardvarkXR
-This Site
-Plant System Work Gallery
-Self-built Laptop
-
-
-Minor Work
+Newer Work
CNSelfie
-SDL Uno
-Plant Watering System
-Sonic-Pi and Algorave
+This Site
Older Work
Mind Map Maker
+AardvarkXR
EPQ Project
+Tower defence game
-Thoughts and Essays
-Permacomputing
-Live-Coding
+Thoughts And Essays
University
-AberCompSoc
-AberRoboticsSoc
-AberSailBot
-
-
-Useful Notes
-Understanding Waveshare's E-Paper C Drivers
+aberCompSoc
+Aber Robotics Soc
+aberSailBot
Work Experience
-Skipton Building Society Internship
+SBS Internship
+
-
+
EPQ Project
-
-This is an older post from my first personal website I created in secondary school, its yet to be re-written for this new website so expect varying degrees of quality
-
What it is
This project was completed for my Extended Project Equalification (also known as EPQ). During the EPQ, a student will pick a subject of their choice, research it and then either write a paper or create a piece of media
(an "artefact") based on what they have learnt. For my subject I originally chose physics simulation as at the time I lacked confidence in maths and wanted to force myself to relearn and become more comfortable with it.
diff --git a/Resources/Output/MindMap.html b/Resources/Output/MindMap.html
index 11ecc54..76f6dbb 100644
--- a/Resources/Output/MindMap.html
+++ b/Resources/Output/MindMap.html
@@ -1,6 +1,6 @@
-
+
@@ -17,46 +17,35 @@
Navigation
+Example Post
Welcome!
-Major Work
-AardvarkXR
-This Site
-Plant System Work Gallery
-Self-built Laptop
-
-
-Minor Work
+Newer Work
CNSelfie
-SDL Uno
-Plant Watering System
-Sonic-Pi and Algorave
+This Site
Older Work
Mind Map Maker
+AardvarkXR
EPQ Project
+Tower defence game
-Thoughts and Essays
-Permacomputing
-Live-Coding
+Thoughts And Essays
University
-AberCompSoc
-AberRoboticsSoc
-AberSailBot
-
-
-Useful Notes
-Understanding Waveshare's E-Paper C Drivers
+aberCompSoc
+Aber Robotics Soc
+aberSailBot
Work Experience
-Skipton Building Society Internship
+SBS Internship
+
-
+
+
rss/atom feed
Light
Dark/Low Contrast
diff --git a/Resources/Output/SBSWork.html b/Resources/Output/SBSWork.html
index 2646920..43a7062 100644
--- a/Resources/Output/SBSWork.html
+++ b/Resources/Output/SBSWork.html
@@ -1,6 +1,6 @@
-
+
@@ -17,46 +17,35 @@
Navigation
+Example Post
Welcome!
-Major Work
-AardvarkXR
-This Site
-Plant System Work Gallery
-Self-built Laptop
-
-
-Minor Work
+Newer Work
CNSelfie
-SDL Uno
-Plant Watering System
-Sonic-Pi and Algorave
+This Site
Older Work
Mind Map Maker
+AardvarkXR
EPQ Project
+Tower defence game
-Thoughts and Essays
-Permacomputing
-Live-Coding
+Thoughts And Essays
University
-AberCompSoc
-AberRoboticsSoc
-AberSailBot
-
-
-Useful Notes
-Understanding Waveshare's E-Paper C Drivers
+aberCompSoc
+Aber Robotics Soc
+aberSailBot
Work Experience
-Skipton Building Society Internship
+SBS Internship
+
-
+
- Skipton Building Society Internship
-Overview
-During my gap-year I took an internship at Skipton Building Society as a software tester. Initially my job was to experiment with the use of automated testing however I eventually ended up presenting this software to groups of senior developers and working to integrate it into the society's general workflow, moving between teams helping them implement it.
-SBS requested that I stay after my internship and I still currently work remotely one day a week whilst at university, training testers in automation.
-The Start
-My initial internship was a paid 9 month role where I was given SmartBear's TestComplete system to learn. The society hadn't integrated automated testing beyond unit tests into their workflow so were hoping to learn whether it was worth using.
-I was paired with one other tester and we learnt the system and began using it to automate testing of the society's customer portal.
-I found TestComplete a really nice system with a very user-friendly design for non-programmers and felt it would be a really good fit for the society. Within a month or so I started taking initiative to bring it to the attention of others, mentioning it to senior developers. One ended up organising a call with a larger collection of 20-30 and asking me to talk them through it.
-I hosted and ran the call, showing the benefits and drawbacks of the system and getting the developers opinions and over-time we decided it was worth using. Licenses were bought and handed out and I began moving through scrum teams helping them integrate it into their work.
-Additional Actions
-On the side of this, I also did a number of other tasks:
-
-Researched Gherkin , a language designed to allow expected test outcomes to be written in a standardised manner. Which also presented to a number of developers and organised a number of meetings around, facilitating conversation around its uses.
-Co-Ran a coding club to up-skill testers and make them more familiar with coding principles.
-Produced a large quantity of documentation and educational resources learning and working with TestComplete and coding in a testing context in general.
-Pushed for the society to set-up standards for all their future automated testing.
-
+ SBS Internship
+What it is
+Inbetween my time at University and Post-16 I took a gap year where I interned at Skipton Building Society as a software tester. This was a paid 9 month internship where I waspushed for automated testing
+with SmartBears TestComplete system and worked with their API team to ensure their software remained stable whilst they slowly worked through all their API's transitioning them from TIBCO to Azure.
+I was also asked to research Gherkin and Behaviour Driven Development to see if it would be worth transitioning to, helped to run a coding club to educate other members of the Society and later set-up
+the Society's standards for all their future automated testing.
+What I did
+I was initially hired to experiment with the idea of automating the Society's testing using SmartBear's TestComplete system. I taught myself a large portion of the tools over the course of a week
+and then worked with one other collegue who came from a testing background to fully automate the UI testing of the Ds customer portal system.
+From this we decided the tool may be worth using across the wider Society and worked with individual agile scrum teams to help them automate their testing. During this time I produced a presentation
+on the inner workings of TestComplete and its benefits to the Society's senior developers convincing them of its worth. I also worked with my collegue to produce an educational talk, some tools and documentation
+in order to educate other testers on the system and encourage widespread use.
+After 3 months of working on TestComplete I was assigned to an Agile Hub in order to help them with their testing on the side whilst still working on TestComplete. This team was built to slowly
+transition all of the societies APIs from TIBCO to Azure and my job was to ensure any software interacting with the API currently being replaced would still work when the team had finished. This was
+done through large amounts of manual regression tests and a few automated tests where their work overlapped with my other TestComplete work. This was somewhat challenging for me to begin with as I had
+little understanding of alot of the software I was testing and I found myself somewhat anxious when communicating with the team, however I slowly improved at this over time and ended up working with relative
+efficiency. I did this through pushing myself to ask people questions and eventually reorganising my time by meeting with all the teams developers at the very start of an API development cycle to have a full
+conversation with all of them on what needed to be tested and how rather than individually asking developers and having to compile the individual comments of each developer.
+On the side of this I also ran a talk to teach testers the basics of javascript to increase the flexibility of their automated tests and later helped some lead developers to run a bi-weekly "Coding Club" to
+educate testers on programming with C#. One of these lead developers also tasked me with researching into the testing language "Gherkin" and the concept of Behaviour Driven Development, I spent 2 months
+experimenting with it on the side whilst doing my regular work and produced a presentation to them and a group of senior testers where I then facilitated more conversation on the viability of the system its
+usefulness to the Society. I then organised regular meetings to continue the discussion.
Skills Learnt
-Throughout this internship I found that my social skills developed greatly. I got a lot better at giving criticism, being willing to ask questions and admitting I didn't understand things (all things I somewhat originally struggled with).
-I also:
-
-Learnt a large amount around Microsoft's Azure Cloud Systems
-Learnt the ins and outs of Manual and automated testing
-Gained real world experience of an Agile working environment, which I greatly enjoyed.
-Developed a much stronger understanding of APIs and back-end programming which I had never previously looked into.
-
-Multiple times during my work there I was requested to stay as an apprentice rather than go to University, I did turn this offer down but I still currently work there one day a week remotely and full time over summers.
-I found SBS an incredibly friendly and safe feeling place with a really healthy culture. Their attitude towards change was very exciting to work in. Multiple times I found I would make a mistake and be worried my teams would be annoyed or upset only to find they wouldn't even consider it an issue and with zero negative responses they would just ask how they could help to fix it and work with me to plan a solution.
+Throughout this internship I feel that my social skills developed greatly, I got alot better at giving critisism, being willing to ask questions and admit I didnt understand things and developed my self-confidence.
+I also learnt a large amount about Microsoft's Azure Cloud Systems and manual and automated testing. I also gained real experience of an Agile working environment which I greatly enjoyed and I developed a much
+stronger understanding of APIs and back-end programming which I had never previously looked into.
+Multiple times during my work there I was requested to stay as an apprentice rather than go to University, I did turn this offer down but I intend to work for them over summers and during my industry year at
+University as I found it an incredibly friendly and safe feeling place with a really healthy culture. Their attitude towards change was very exciting to work in and multiple times I found I would make a mistake
+and be worried my teams would be annoyed or upset only to find they wouldnt even consider it an issue and with zero negative responses they would just ask how they could help to fix it and help me plan a solution.
diff --git a/Resources/Output/TestFullArticle.html b/Resources/Output/TestFullArticle.html
index b7dba3c..b9e0ddc 100644
--- a/Resources/Output/TestFullArticle.html
+++ b/Resources/Output/TestFullArticle.html
@@ -1,6 +1,6 @@
-
+
@@ -17,46 +17,35 @@
Navigation
+Example Post
Welcome!
-Major Work
-AardvarkXR
-This Site
-Plant System Work Gallery
-Self-built Laptop
-
-
-Minor Work
+Newer Work
CNSelfie
-SDL Uno
-Plant Watering System
-Sonic-Pi and Algorave
+This Site
Older Work
Mind Map Maker
+AardvarkXR
EPQ Project
+Tower defence game
-Thoughts and Essays
-Permacomputing
-Live-Coding
+Thoughts And Essays
University
-AberCompSoc
-AberRoboticsSoc
-AberSailBot
-
-
-Useful Notes
-Understanding Waveshare's E-Paper C Drivers
+aberCompSoc
+Aber Robotics Soc
+aberSailBot
Work Experience
-Skipton Building Society Internship
+SBS Internship
+
-
+
+
rss/atom feed
Light
Dark/Low Contrast
diff --git a/Resources/Output/Wireframe.css b/Resources/Output/Wireframe.css
index 49632ae..69cf30b 100644
--- a/Resources/Output/Wireframe.css
+++ b/Resources/Output/Wireframe.css
@@ -64,13 +64,13 @@ article li{
pre
{
- background-color: lightgray;
+ background-color: var(--accentBack);
padding: 3px;
overflow: auto;
}
blockquote{
- background-color: lightgray;
+ background-color: var(--accentBack);
padding: 3px;
margin: 0;
}
@@ -83,6 +83,11 @@ img{
margin-top: 10px;
}
+nav hr{
+ margin-top: 30px;
+ border-top: solid 4px;
+}
+
.contacts{
display: flex;
gap: 5px;
@@ -94,6 +99,18 @@ img{
margin-top: 30px;
}
+select {
+ border: none;
+ background: none;
+ color: var(--text);
+ transition: background-color 0.5s, color 0.5s;
+}
+
+select:hover {
+ background-color: var(--accent);
+ color: var(--back);
+}
+
.webring{
position: fixed;
@@ -104,15 +121,11 @@ img{
}
.webring h2{
- background-color: var(--back);
-
font-size: 1rem;
margin: 0;
}
.webringContent{
- background-color: var(--back);
-
display: flex;
gap: 5px;
justify-content: space-between;
diff --git a/Resources/Output/effects.css b/Resources/Output/effects.css
index e166eeb..f991052 100644
--- a/Resources/Output/effects.css
+++ b/Resources/Output/effects.css
@@ -1,6 +1,7 @@
a{
text-decoration: underline;
color: var(--text);
+ transition: background-color 0.5s, color 0.5s;
}
a:visted{
color: black
diff --git a/Resources/Output/index.html b/Resources/Output/index.html
index 8c823d5..8633b2f 100644
--- a/Resources/Output/index.html
+++ b/Resources/Output/index.html
@@ -1,6 +1,6 @@
-
+
@@ -17,46 +17,35 @@
Navigation
+Example Post
Welcome!
-Major Work
-AardvarkXR
-This Site
-Plant System Work Gallery
-Self-built Laptop
-
-
-Minor Work
+Newer Work
CNSelfie
-SDL Uno
-Plant Watering System
-Sonic-Pi and Algorave
+This Site
Older Work
Mind Map Maker
+AardvarkXR
EPQ Project
+Tower defence game
-Thoughts and Essays
-Permacomputing
-Live-Coding
+Thoughts And Essays
University
-AberCompSoc
-AberRoboticsSoc
-AberSailBot
-
-
-Useful Notes
-Understanding Waveshare's E-Paper C Drivers
+aberCompSoc
+Aber Robotics Soc
+aberSailBot
Work Experience
-Skipton Building Society Internship
+SBS Internship
+
-
+
Welcome!
-This is my site where I log my work for myself and for me to show to others.
-
-This site is generated procedurally from markdown though C++ code I've written. It's hosted using lighttpd on an old laptop through my router. You can find the code for it here and a more in-depth talk about why I did that here .
-
-Who I am
-I'm Rosia Evans, I'm a programmer currently studying at a small university in Wales whilst teaching myself to create robotics and exploring how we can use them in ways that help our environment.
-
-Most of my interests lie in using robotics and computers in farming, exploring how they could help produce more food in a sustainable manner. I feel that computers and automation really could help produce a green
-world where people can easily afford the bare minimum and find themselves comfortable and happy.
-My physical work involves:
+I'm Rosia Evans, this is my site where I log my work for myself and for me to show to others.
+This site is generated procedurally from markdown though C++ code I've written and hosted using lighttpd on an old laptop through my router. You can find the code for it here and a more indepth talk about it on this blog post .
+
+I'm currently studying at a small university in wales where I'm doing a BEng in software engineering whilst working on robotics and exploring my own interests on the side through various societies and personal projects.
+
+Nowadays my interests lie mostly in low-power computing and electronics, experimenting with how computers can work in a more environmentally friendly manner. I find the environment is something I think about a lot and finding overlaps between it and my interests in computing has lead me to some really intersting communities.
+On the side of this I also enjoy using code to create music through programming using Sonic-Pi and just creating programs in general with friends and colleagues. Most of my work can either be found in blog-posts here or on my github .
+I've previously had interests in VR and XR and UI design, spending a lot of my secondary school years experimenting with both concepts so both websites also have a few probjects relating to those concepts.
+
+If you want a basic outline of my work, here are a few interesting projects:
-I've been programming for most of my life. My main language is C++, but I also have multiple years of experience in C#, Python and Java and some loose experience in Typescript and C.
-If you want an outline of my work, these are some things I'm really proud of:
-
-To see all of my work, check the navbox
+To see all of my work, check the navbox to the side.
+<-
+DISCLAMER! SITE STILL IN PROGRESS
+This is all a bit everywhere rn, the css will be given some frills at somepoint soon
diff --git a/Resources/Templates/AtomFeedTemplate.xml b/Resources/Templates/AtomFeedTemplate.xml
new file mode 100644
index 0000000..d799ee2
--- /dev/null
+++ b/Resources/Templates/AtomFeedTemplate.xml
@@ -0,0 +1,16 @@
+
+
+
+ Rosia Evans Blog
+
+
+
+ Rosia Evans
+
+ https://rosia.me/
+
+
+
+
+
+
diff --git a/Resources/Templates/BlogPageTemplate.html b/Resources/Templates/BlogPageTemplate.html
index aeddace..85950ca 100644
--- a/Resources/Templates/BlogPageTemplate.html
+++ b/Resources/Templates/BlogPageTemplate.html
@@ -15,6 +15,7 @@
+
-
+
+
rss/atom feed
Light
Dark/Low Contrast
diff --git a/Src/AtomBuilder.cpp b/Src/AtomBuilder.cpp
new file mode 100644
index 0000000..3117ddc
--- /dev/null
+++ b/Src/AtomBuilder.cpp
@@ -0,0 +1,70 @@
+#include "AtomBuilder.h"
+
+AtomBuilder::AtomBuilder(std::string templateUrl)
+{
+ feed = readFile(templateUrl);
+ int updateTagLocation = calculateStartOfIdentifierLocation(feed, "");
+ if (updateTagLocation == -1)
+ printf("unable to find header update tag in AtomFeedTemplate");
+ feed.insert(updateTagLocation, getTimeString());
+}
+
+std::string AtomBuilder::getTimeString()
+{
+ // taken from https://en.cppreference.com/w/cpp/chrono/c/strftime
+ std::time_t time = std::time({});
+ char timeString[std::size("yyyy-mm-ddThh:mm:ssZ")];
+ std::strftime(std::data(timeString), std::size(timeString),
+ "%FT%TZ", std::gmtime(&time));
+ return timeString;
+}
+
+int AtomBuilder::calculateStartOfIdentifierLocation(std::string text, std::string id)
+{
+ int location = text.find(id);
+ if (location == std::string::npos)
+ printf("Warning: no article found in given template file");
+ return location;
+}
+
+std::string AtomBuilder::readFile(std::string fileUrl)
+{
+ std::ifstream file(fileUrl);
+ std::stringstream fileCache;
+ fileCache << file.rdbuf();
+
+ return fileCache.str();
+}
+
+std::string AtomBuilder::getFeedHeader(std::string title, std::string link, std::string timestamp)
+{
+ return "" + title + " \n"
+ + " \n"
+ + "" + link + " \n"
+ + "" + timestamp + " \n";
+}
+
+void AtomBuilder::addHTMLEntry(std::string article, std::string title, std::string link, std::string timestamp)
+{
+ int insertLocation = calculateStartOfIdentifierLocation(feed, "");
+
+ std::string buffer;
+ buffer += "\n";
+ buffer += getFeedHeader(title, link, timestamp);
+ buffer += "\n\n \n ";
+ feed.insert(insertLocation, buffer);
+
+}
+
+void AtomBuilder::writeToFile(std::string outFolderUrl)
+{
+ outFolderUrl += "/feed.xml";
+ std::ofstream file(outFolderUrl);
+ file << feed;
+ file.close();
+
+ if (file.fail())
+ printf("failed to write file to %s \n", outFolderUrl.c_str());
+}
diff --git a/Src/AtomBuilder.h b/Src/AtomBuilder.h
new file mode 100644
index 0000000..01f9edf
--- /dev/null
+++ b/Src/AtomBuilder.h
@@ -0,0 +1,25 @@
+#include
+#include
+#include
+#include
+#include
+#include
+
+class AtomBuilder
+{
+private:
+ std::string feed;
+
+
+ std::string readFile(std::string fileUrl);
+ int calculateStartOfIdentifierLocation(std::string id, std::string text);
+
+ std::string getFeedHeader(std::string title, std::string link, std::string timestamp);
+ std::string getTimeString();
+
+public:
+ void addHTMLEntry(std::string article, std::string title, std::string link, std::string timestamp);
+ void writeToFile(std::string outFolderUrl);
+
+ AtomBuilder(std::string templateUrl);
+};
diff --git a/Src/BlogPageBuilder.cpp b/Src/BlogPageBuilder.cpp
index f9a116f..6b2c905 100644
--- a/Src/BlogPageBuilder.cpp
+++ b/Src/BlogPageBuilder.cpp
@@ -1,32 +1,22 @@
#include "BlogPageBuilder.h"
-BlogPageBuilder::BlogPageBuilder(std::string templateFileUrl, std::string inFolder,
- std::string outFolder, int flags, std::string articleIdentifier)
+BlogPageBuilder::BlogPageBuilder(std::string templateFileUrl, std::vector pages, std::string inFolderUrl, int flags, std::string articleIdentifier)
{
options = flags;
- this->outFolder = outFolder;
- this->inFolder = inFolder;
pageTemplate = readFile(templateFileUrl);
this->articleIdentifier = articleIdentifier;
navIdentifier = "";
- parser = new BlogParser();
-
- collectPages();
NavBarGenerator* navGen = new NavBarGenerator();
- navSection = navGen->generateNavSection(pages, inFolder, options);
+ navSection = navGen->generateNavSection(pages, inFolderUrl, options);
delete navGen;
}
-BlogPageBuilder::~BlogPageBuilder()
-{
- for(Page* page : pages)
- delete page;
-}
-void BlogPageBuilder::createPage(Page* page)
+
+std::string BlogPageBuilder::createPage(std::string articleHTML)
{
std::string buffer = pageTemplate;
@@ -34,19 +24,9 @@ void BlogPageBuilder::createPage(Page* page)
buffer.insert(navLocation, navSection);
int articleLocation = calculateIdentifierLocation(articleIdentifier, buffer);
- std::string articleText = parser->parse(page->getSourceFileContents());
- buffer.insert(articleLocation, articleText);
+ buffer.insert(articleLocation, articleHTML);
- page->setOutFileContents(buffer);
-}
-
-void BlogPageBuilder::buildAllPages()
-{
- for(Page* page : pages)
- {
- createPage(page);
- page->writePageToFile();
- }
+ return buffer;
}
int BlogPageBuilder::calculateIdentifierLocation(std::string id, std::string text)
@@ -57,17 +37,27 @@ int BlogPageBuilder::calculateIdentifierLocation(std::string id, std::string tex
return location;
}
-void BlogPageBuilder::collectPages()
+std::string BlogPageBuilder::readFile(std::string fileUrl)
{
- auto directoryIterator = std::filesystem::recursive_directory_iterator(inFolder);
- for(auto file : directoryIterator)
- {
- if (file.is_directory())
- continue;
- pages.push_back(new Page(file.path(), outFolder));
- }
+ std::ifstream file(fileUrl);
+ std::stringstream fileCache;
+ fileCache << file.rdbuf();
+
+ return fileCache.str();
}
+bool BlogPageBuilder::isOptionEnabled(int flag)
+{
+ return (options & flag) == flag;
+}
+
+bool NavBarGenerator::isOptionEnabled(int flag)
+{
+ return (options & flag) == flag;
+}
+
+
+
std::string NavBarGenerator::generateCategories(std::string rootFolderUrl)
{
std::stringstream buffer;
@@ -138,22 +128,3 @@ std::string NavBarGenerator::generateNavSection(std::vector pages, std::s
buffer = insertPagesIntoCategories(buffer, pages);
return buffer;
}
-
-std::string BlogPageBuilder::readFile(std::string fileUrl)
-{
- std::ifstream file(fileUrl);
- std::stringstream fileCache;
- fileCache << file.rdbuf();
-
- return fileCache.str();
-}
-
-bool BlogPageBuilder::isOptionEnabled(int flag)
-{
- return (options & flag) == flag;
-}
-
-bool NavBarGenerator::isOptionEnabled(int flag)
-{
- return (options & flag) == flag;
-}
diff --git a/Src/BlogPageBuilder.h b/Src/BlogPageBuilder.h
index c04715f..d75386f 100644
--- a/Src/BlogPageBuilder.h
+++ b/Src/BlogPageBuilder.h
@@ -42,31 +42,24 @@ class BlogPageBuilder
private:
int options;
- std::string outFolder;
- std::string inFolder;
-
std::string pageTemplate;
std::string articleIdentifier;
std::string navIdentifier;
- std::vector pages;
- BlogParser* parser;
-
std::string navSection;
std::string readFile(std::string fileUrl);
int calculateIdentifierLocation(std::string id, std::string text);
void collectPages();
- void createPage(Page* page);
bool isOptionEnabled(int flag);
public:
- BlogPageBuilder(std::string templateFileUrl, std::string inFolder, std::string outFolder,
- int flags, std::string articleIdentifier = "");
+ BlogPageBuilder(std::string templateFileUrl, std::vector pages, std::string inFolderUrl, int flags, std::string articleIdentifier = "");
~BlogPageBuilder();
- void buildAllPages();
+ std::string createPage(std::string articleHTML);
+
};
diff --git a/Src/CMakeFiles/AtomBuilder.dir/DependInfo.cmake b/Src/CMakeFiles/AtomBuilder.dir/DependInfo.cmake
new file mode 100644
index 0000000..098d056
--- /dev/null
+++ b/Src/CMakeFiles/AtomBuilder.dir/DependInfo.cmake
@@ -0,0 +1,19 @@
+
+# Consider dependencies only in project.
+set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF)
+
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ )
+
+# The set of dependency files which are needed:
+set(CMAKE_DEPENDS_DEPENDENCY_FILES
+ "/home/rosia/Programming/Cpp/BlogParser/Src/AtomBuilder.cpp" "Src/CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.o" "gcc" "Src/CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.o.d"
+ )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/Src/CMakeFiles/AtomBuilder.dir/build.make b/Src/CMakeFiles/AtomBuilder.dir/build.make
new file mode 100644
index 0000000..f3c6364
--- /dev/null
+++ b/Src/CMakeFiles/AtomBuilder.dir/build.make
@@ -0,0 +1,111 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# Include any dependencies generated for this target.
+include Src/CMakeFiles/AtomBuilder.dir/depend.make
+# Include any dependencies generated by the compiler for this target.
+include Src/CMakeFiles/AtomBuilder.dir/compiler_depend.make
+
+# Include the progress variables for this target.
+include Src/CMakeFiles/AtomBuilder.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include Src/CMakeFiles/AtomBuilder.dir/flags.make
+
+Src/CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.o: Src/CMakeFiles/AtomBuilder.dir/flags.make
+Src/CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.o: Src/AtomBuilder.cpp
+Src/CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.o: Src/CMakeFiles/AtomBuilder.dir/compiler_depend.ts
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object Src/CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.o"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT Src/CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.o -MF CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.o.d -o CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.o -c /home/rosia/Programming/Cpp/BlogParser/Src/AtomBuilder.cpp
+
+Src/CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.i"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rosia/Programming/Cpp/BlogParser/Src/AtomBuilder.cpp > CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.i
+
+Src/CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.s"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rosia/Programming/Cpp/BlogParser/Src/AtomBuilder.cpp -o CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.s
+
+# Object files for target AtomBuilder
+AtomBuilder_OBJECTS = \
+"CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.o"
+
+# External object files for target AtomBuilder
+AtomBuilder_EXTERNAL_OBJECTS =
+
+Src/libAtomBuilder.a: Src/CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.o
+Src/libAtomBuilder.a: Src/CMakeFiles/AtomBuilder.dir/build.make
+Src/libAtomBuilder.a: Src/CMakeFiles/AtomBuilder.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX static library libAtomBuilder.a"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && $(CMAKE_COMMAND) -P CMakeFiles/AtomBuilder.dir/cmake_clean_target.cmake
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/AtomBuilder.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+Src/CMakeFiles/AtomBuilder.dir/build: Src/libAtomBuilder.a
+.PHONY : Src/CMakeFiles/AtomBuilder.dir/build
+
+Src/CMakeFiles/AtomBuilder.dir/clean:
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && $(CMAKE_COMMAND) -P CMakeFiles/AtomBuilder.dir/cmake_clean.cmake
+.PHONY : Src/CMakeFiles/AtomBuilder.dir/clean
+
+Src/CMakeFiles/AtomBuilder.dir/depend:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rosia/Programming/Cpp/BlogParser /home/rosia/Programming/Cpp/BlogParser/Src /home/rosia/Programming/Cpp/BlogParser /home/rosia/Programming/Cpp/BlogParser/Src /home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/AtomBuilder.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : Src/CMakeFiles/AtomBuilder.dir/depend
+
diff --git a/Src/CMakeFiles/AtomBuilder.dir/cmake_clean.cmake b/Src/CMakeFiles/AtomBuilder.dir/cmake_clean.cmake
new file mode 100644
index 0000000..4e87d66
--- /dev/null
+++ b/Src/CMakeFiles/AtomBuilder.dir/cmake_clean.cmake
@@ -0,0 +1,11 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.o"
+ "CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.o.d"
+ "libAtomBuilder.a"
+ "libAtomBuilder.pdb"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+ include(CMakeFiles/AtomBuilder.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/Src/CMakeFiles/AtomBuilder.dir/cmake_clean_target.cmake b/Src/CMakeFiles/AtomBuilder.dir/cmake_clean_target.cmake
new file mode 100644
index 0000000..fb73a8a
--- /dev/null
+++ b/Src/CMakeFiles/AtomBuilder.dir/cmake_clean_target.cmake
@@ -0,0 +1,3 @@
+file(REMOVE_RECURSE
+ "libAtomBuilder.a"
+)
diff --git a/Src/CMakeFiles/AtomBuilder.dir/compiler_depend.make b/Src/CMakeFiles/AtomBuilder.dir/compiler_depend.make
new file mode 100644
index 0000000..d6ba8dd
--- /dev/null
+++ b/Src/CMakeFiles/AtomBuilder.dir/compiler_depend.make
@@ -0,0 +1,2 @@
+# Empty compiler generated dependencies file for AtomBuilder.
+# This may be replaced when dependencies are built.
diff --git a/Src/CMakeFiles/AtomBuilder.dir/compiler_depend.ts b/Src/CMakeFiles/AtomBuilder.dir/compiler_depend.ts
new file mode 100644
index 0000000..165c8c4
--- /dev/null
+++ b/Src/CMakeFiles/AtomBuilder.dir/compiler_depend.ts
@@ -0,0 +1,2 @@
+# CMAKE generated file: DO NOT EDIT!
+# Timestamp file for compiler generated dependencies management for AtomBuilder.
diff --git a/Src/CMakeFiles/AtomBuilder.dir/depend.make b/Src/CMakeFiles/AtomBuilder.dir/depend.make
new file mode 100644
index 0000000..0ea630e
--- /dev/null
+++ b/Src/CMakeFiles/AtomBuilder.dir/depend.make
@@ -0,0 +1,2 @@
+# Empty dependencies file for AtomBuilder.
+# This may be replaced when dependencies are built.
diff --git a/Src/CMakeFiles/AtomBuilder.dir/flags.make b/Src/CMakeFiles/AtomBuilder.dir/flags.make
new file mode 100644
index 0000000..71b1a3d
--- /dev/null
+++ b/Src/CMakeFiles/AtomBuilder.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# compile CXX with /usr/bin/c++
+CXX_DEFINES =
+
+CXX_INCLUDES = -I/home/rosia/Programming/Cpp/BlogParser
+
+CXX_FLAGS = -g -std=gnu++20
+
diff --git a/Src/CMakeFiles/AtomBuilder.dir/link.txt b/Src/CMakeFiles/AtomBuilder.dir/link.txt
new file mode 100644
index 0000000..961aee5
--- /dev/null
+++ b/Src/CMakeFiles/AtomBuilder.dir/link.txt
@@ -0,0 +1,2 @@
+/usr/bin/ar qc libAtomBuilder.a CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.o
+/usr/bin/ranlib libAtomBuilder.a
diff --git a/Src/CMakeFiles/AtomBuilder.dir/progress.make b/Src/CMakeFiles/AtomBuilder.dir/progress.make
new file mode 100644
index 0000000..abadeb0
--- /dev/null
+++ b/Src/CMakeFiles/AtomBuilder.dir/progress.make
@@ -0,0 +1,3 @@
+CMAKE_PROGRESS_1 = 1
+CMAKE_PROGRESS_2 = 2
+
diff --git a/Src/CMakeFiles/BlogPageBuilder.dir/DependInfo.cmake b/Src/CMakeFiles/BlogPageBuilder.dir/DependInfo.cmake
new file mode 100644
index 0000000..28bd3fe
--- /dev/null
+++ b/Src/CMakeFiles/BlogPageBuilder.dir/DependInfo.cmake
@@ -0,0 +1,23 @@
+
+# Consider dependencies only in project.
+set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF)
+
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ )
+
+# The set of dependency files which are needed:
+set(CMAKE_DEPENDS_DEPENDENCY_FILES
+ "/home/rosia/Programming/Cpp/BlogParser/Src/BlogPageBuilder.cpp" "Src/CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.o" "gcc" "Src/CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.o.d"
+ "/home/rosia/Programming/Cpp/BlogParser/Src/Page.cpp" "Src/CMakeFiles/BlogPageBuilder.dir/Page.cpp.o" "gcc" "Src/CMakeFiles/BlogPageBuilder.dir/Page.cpp.o.d"
+ )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ "/home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/BlogParser.dir/DependInfo.cmake"
+ "/home/rosia/Programming/Cpp/BlogParser/Src/Libs/CMakeFiles/md4c.dir/DependInfo.cmake"
+ "/home/rosia/Programming/Cpp/BlogParser/Src/Libs/CMakeFiles/md4c-html.dir/DependInfo.cmake"
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/Src/CMakeFiles/BlogPageBuilder.dir/build.make b/Src/CMakeFiles/BlogPageBuilder.dir/build.make
new file mode 100644
index 0000000..a6df4c7
--- /dev/null
+++ b/Src/CMakeFiles/BlogPageBuilder.dir/build.make
@@ -0,0 +1,127 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# Include any dependencies generated for this target.
+include Src/CMakeFiles/BlogPageBuilder.dir/depend.make
+# Include any dependencies generated by the compiler for this target.
+include Src/CMakeFiles/BlogPageBuilder.dir/compiler_depend.make
+
+# Include the progress variables for this target.
+include Src/CMakeFiles/BlogPageBuilder.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include Src/CMakeFiles/BlogPageBuilder.dir/flags.make
+
+Src/CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.o: Src/CMakeFiles/BlogPageBuilder.dir/flags.make
+Src/CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.o: Src/BlogPageBuilder.cpp
+Src/CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.o: Src/CMakeFiles/BlogPageBuilder.dir/compiler_depend.ts
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object Src/CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.o"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT Src/CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.o -MF CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.o.d -o CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.o -c /home/rosia/Programming/Cpp/BlogParser/Src/BlogPageBuilder.cpp
+
+Src/CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.i"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rosia/Programming/Cpp/BlogParser/Src/BlogPageBuilder.cpp > CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.i
+
+Src/CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.s"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rosia/Programming/Cpp/BlogParser/Src/BlogPageBuilder.cpp -o CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.s
+
+Src/CMakeFiles/BlogPageBuilder.dir/Page.cpp.o: Src/CMakeFiles/BlogPageBuilder.dir/flags.make
+Src/CMakeFiles/BlogPageBuilder.dir/Page.cpp.o: Src/Page.cpp
+Src/CMakeFiles/BlogPageBuilder.dir/Page.cpp.o: Src/CMakeFiles/BlogPageBuilder.dir/compiler_depend.ts
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object Src/CMakeFiles/BlogPageBuilder.dir/Page.cpp.o"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT Src/CMakeFiles/BlogPageBuilder.dir/Page.cpp.o -MF CMakeFiles/BlogPageBuilder.dir/Page.cpp.o.d -o CMakeFiles/BlogPageBuilder.dir/Page.cpp.o -c /home/rosia/Programming/Cpp/BlogParser/Src/Page.cpp
+
+Src/CMakeFiles/BlogPageBuilder.dir/Page.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BlogPageBuilder.dir/Page.cpp.i"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rosia/Programming/Cpp/BlogParser/Src/Page.cpp > CMakeFiles/BlogPageBuilder.dir/Page.cpp.i
+
+Src/CMakeFiles/BlogPageBuilder.dir/Page.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BlogPageBuilder.dir/Page.cpp.s"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rosia/Programming/Cpp/BlogParser/Src/Page.cpp -o CMakeFiles/BlogPageBuilder.dir/Page.cpp.s
+
+# Object files for target BlogPageBuilder
+BlogPageBuilder_OBJECTS = \
+"CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.o" \
+"CMakeFiles/BlogPageBuilder.dir/Page.cpp.o"
+
+# External object files for target BlogPageBuilder
+BlogPageBuilder_EXTERNAL_OBJECTS =
+
+Src/libBlogPageBuilder.a: Src/CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.o
+Src/libBlogPageBuilder.a: Src/CMakeFiles/BlogPageBuilder.dir/Page.cpp.o
+Src/libBlogPageBuilder.a: Src/CMakeFiles/BlogPageBuilder.dir/build.make
+Src/libBlogPageBuilder.a: Src/CMakeFiles/BlogPageBuilder.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Linking CXX static library libBlogPageBuilder.a"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && $(CMAKE_COMMAND) -P CMakeFiles/BlogPageBuilder.dir/cmake_clean_target.cmake
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/BlogPageBuilder.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+Src/CMakeFiles/BlogPageBuilder.dir/build: Src/libBlogPageBuilder.a
+.PHONY : Src/CMakeFiles/BlogPageBuilder.dir/build
+
+Src/CMakeFiles/BlogPageBuilder.dir/clean:
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && $(CMAKE_COMMAND) -P CMakeFiles/BlogPageBuilder.dir/cmake_clean.cmake
+.PHONY : Src/CMakeFiles/BlogPageBuilder.dir/clean
+
+Src/CMakeFiles/BlogPageBuilder.dir/depend:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rosia/Programming/Cpp/BlogParser /home/rosia/Programming/Cpp/BlogParser/Src /home/rosia/Programming/Cpp/BlogParser /home/rosia/Programming/Cpp/BlogParser/Src /home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/BlogPageBuilder.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : Src/CMakeFiles/BlogPageBuilder.dir/depend
+
diff --git a/Src/CMakeFiles/BlogPageBuilder.dir/cmake_clean.cmake b/Src/CMakeFiles/BlogPageBuilder.dir/cmake_clean.cmake
new file mode 100644
index 0000000..b70ea2b
--- /dev/null
+++ b/Src/CMakeFiles/BlogPageBuilder.dir/cmake_clean.cmake
@@ -0,0 +1,13 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.o"
+ "CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.o.d"
+ "CMakeFiles/BlogPageBuilder.dir/Page.cpp.o"
+ "CMakeFiles/BlogPageBuilder.dir/Page.cpp.o.d"
+ "libBlogPageBuilder.a"
+ "libBlogPageBuilder.pdb"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+ include(CMakeFiles/BlogPageBuilder.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/Src/CMakeFiles/BlogPageBuilder.dir/cmake_clean_target.cmake b/Src/CMakeFiles/BlogPageBuilder.dir/cmake_clean_target.cmake
new file mode 100644
index 0000000..3f5dd40
--- /dev/null
+++ b/Src/CMakeFiles/BlogPageBuilder.dir/cmake_clean_target.cmake
@@ -0,0 +1,3 @@
+file(REMOVE_RECURSE
+ "libBlogPageBuilder.a"
+)
diff --git a/Src/CMakeFiles/BlogPageBuilder.dir/compiler_depend.make b/Src/CMakeFiles/BlogPageBuilder.dir/compiler_depend.make
new file mode 100644
index 0000000..386bf5f
--- /dev/null
+++ b/Src/CMakeFiles/BlogPageBuilder.dir/compiler_depend.make
@@ -0,0 +1,2 @@
+# Empty compiler generated dependencies file for BlogPageBuilder.
+# This may be replaced when dependencies are built.
diff --git a/Src/CMakeFiles/BlogPageBuilder.dir/compiler_depend.ts b/Src/CMakeFiles/BlogPageBuilder.dir/compiler_depend.ts
new file mode 100644
index 0000000..af84359
--- /dev/null
+++ b/Src/CMakeFiles/BlogPageBuilder.dir/compiler_depend.ts
@@ -0,0 +1,2 @@
+# CMAKE generated file: DO NOT EDIT!
+# Timestamp file for compiler generated dependencies management for BlogPageBuilder.
diff --git a/Src/CMakeFiles/BlogPageBuilder.dir/depend.make b/Src/CMakeFiles/BlogPageBuilder.dir/depend.make
new file mode 100644
index 0000000..5b5f00a
--- /dev/null
+++ b/Src/CMakeFiles/BlogPageBuilder.dir/depend.make
@@ -0,0 +1,2 @@
+# Empty dependencies file for BlogPageBuilder.
+# This may be replaced when dependencies are built.
diff --git a/Src/CMakeFiles/BlogPageBuilder.dir/flags.make b/Src/CMakeFiles/BlogPageBuilder.dir/flags.make
new file mode 100644
index 0000000..71b1a3d
--- /dev/null
+++ b/Src/CMakeFiles/BlogPageBuilder.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# compile CXX with /usr/bin/c++
+CXX_DEFINES =
+
+CXX_INCLUDES = -I/home/rosia/Programming/Cpp/BlogParser
+
+CXX_FLAGS = -g -std=gnu++20
+
diff --git a/Src/CMakeFiles/BlogPageBuilder.dir/link.txt b/Src/CMakeFiles/BlogPageBuilder.dir/link.txt
new file mode 100644
index 0000000..f460aef
--- /dev/null
+++ b/Src/CMakeFiles/BlogPageBuilder.dir/link.txt
@@ -0,0 +1,2 @@
+/usr/bin/ar qc libBlogPageBuilder.a CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.o CMakeFiles/BlogPageBuilder.dir/Page.cpp.o
+/usr/bin/ranlib libBlogPageBuilder.a
diff --git a/Src/CMakeFiles/BlogPageBuilder.dir/progress.make b/Src/CMakeFiles/BlogPageBuilder.dir/progress.make
new file mode 100644
index 0000000..f326497
--- /dev/null
+++ b/Src/CMakeFiles/BlogPageBuilder.dir/progress.make
@@ -0,0 +1,4 @@
+CMAKE_PROGRESS_1 = 3
+CMAKE_PROGRESS_2 = 4
+CMAKE_PROGRESS_3 = 5
+
diff --git a/Src/CMakeFiles/BlogParser.dir/DependInfo.cmake b/Src/CMakeFiles/BlogParser.dir/DependInfo.cmake
new file mode 100644
index 0000000..22dfe01
--- /dev/null
+++ b/Src/CMakeFiles/BlogParser.dir/DependInfo.cmake
@@ -0,0 +1,21 @@
+
+# Consider dependencies only in project.
+set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF)
+
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ )
+
+# The set of dependency files which are needed:
+set(CMAKE_DEPENDS_DEPENDENCY_FILES
+ "/home/rosia/Programming/Cpp/BlogParser/Src/BlogParser.cpp" "Src/CMakeFiles/BlogParser.dir/BlogParser.cpp.o" "gcc" "Src/CMakeFiles/BlogParser.dir/BlogParser.cpp.o.d"
+ )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ "/home/rosia/Programming/Cpp/BlogParser/Src/Libs/CMakeFiles/md4c.dir/DependInfo.cmake"
+ "/home/rosia/Programming/Cpp/BlogParser/Src/Libs/CMakeFiles/md4c-html.dir/DependInfo.cmake"
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/Src/CMakeFiles/BlogParser.dir/build.make b/Src/CMakeFiles/BlogParser.dir/build.make
new file mode 100644
index 0000000..b3a44d6
--- /dev/null
+++ b/Src/CMakeFiles/BlogParser.dir/build.make
@@ -0,0 +1,111 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# Include any dependencies generated for this target.
+include Src/CMakeFiles/BlogParser.dir/depend.make
+# Include any dependencies generated by the compiler for this target.
+include Src/CMakeFiles/BlogParser.dir/compiler_depend.make
+
+# Include the progress variables for this target.
+include Src/CMakeFiles/BlogParser.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include Src/CMakeFiles/BlogParser.dir/flags.make
+
+Src/CMakeFiles/BlogParser.dir/BlogParser.cpp.o: Src/CMakeFiles/BlogParser.dir/flags.make
+Src/CMakeFiles/BlogParser.dir/BlogParser.cpp.o: Src/BlogParser.cpp
+Src/CMakeFiles/BlogParser.dir/BlogParser.cpp.o: Src/CMakeFiles/BlogParser.dir/compiler_depend.ts
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object Src/CMakeFiles/BlogParser.dir/BlogParser.cpp.o"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT Src/CMakeFiles/BlogParser.dir/BlogParser.cpp.o -MF CMakeFiles/BlogParser.dir/BlogParser.cpp.o.d -o CMakeFiles/BlogParser.dir/BlogParser.cpp.o -c /home/rosia/Programming/Cpp/BlogParser/Src/BlogParser.cpp
+
+Src/CMakeFiles/BlogParser.dir/BlogParser.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/BlogParser.dir/BlogParser.cpp.i"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rosia/Programming/Cpp/BlogParser/Src/BlogParser.cpp > CMakeFiles/BlogParser.dir/BlogParser.cpp.i
+
+Src/CMakeFiles/BlogParser.dir/BlogParser.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/BlogParser.dir/BlogParser.cpp.s"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rosia/Programming/Cpp/BlogParser/Src/BlogParser.cpp -o CMakeFiles/BlogParser.dir/BlogParser.cpp.s
+
+# Object files for target BlogParser
+BlogParser_OBJECTS = \
+"CMakeFiles/BlogParser.dir/BlogParser.cpp.o"
+
+# External object files for target BlogParser
+BlogParser_EXTERNAL_OBJECTS =
+
+Src/libBlogParser.a: Src/CMakeFiles/BlogParser.dir/BlogParser.cpp.o
+Src/libBlogParser.a: Src/CMakeFiles/BlogParser.dir/build.make
+Src/libBlogParser.a: Src/CMakeFiles/BlogParser.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX static library libBlogParser.a"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && $(CMAKE_COMMAND) -P CMakeFiles/BlogParser.dir/cmake_clean_target.cmake
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/BlogParser.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+Src/CMakeFiles/BlogParser.dir/build: Src/libBlogParser.a
+.PHONY : Src/CMakeFiles/BlogParser.dir/build
+
+Src/CMakeFiles/BlogParser.dir/clean:
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && $(CMAKE_COMMAND) -P CMakeFiles/BlogParser.dir/cmake_clean.cmake
+.PHONY : Src/CMakeFiles/BlogParser.dir/clean
+
+Src/CMakeFiles/BlogParser.dir/depend:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rosia/Programming/Cpp/BlogParser /home/rosia/Programming/Cpp/BlogParser/Src /home/rosia/Programming/Cpp/BlogParser /home/rosia/Programming/Cpp/BlogParser/Src /home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/BlogParser.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : Src/CMakeFiles/BlogParser.dir/depend
+
diff --git a/Src/CMakeFiles/BlogParser.dir/cmake_clean.cmake b/Src/CMakeFiles/BlogParser.dir/cmake_clean.cmake
new file mode 100644
index 0000000..6c0e97e
--- /dev/null
+++ b/Src/CMakeFiles/BlogParser.dir/cmake_clean.cmake
@@ -0,0 +1,11 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/BlogParser.dir/BlogParser.cpp.o"
+ "CMakeFiles/BlogParser.dir/BlogParser.cpp.o.d"
+ "libBlogParser.a"
+ "libBlogParser.pdb"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+ include(CMakeFiles/BlogParser.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/Src/CMakeFiles/BlogParser.dir/cmake_clean_target.cmake b/Src/CMakeFiles/BlogParser.dir/cmake_clean_target.cmake
new file mode 100644
index 0000000..cd0e608
--- /dev/null
+++ b/Src/CMakeFiles/BlogParser.dir/cmake_clean_target.cmake
@@ -0,0 +1,3 @@
+file(REMOVE_RECURSE
+ "libBlogParser.a"
+)
diff --git a/Src/CMakeFiles/BlogParser.dir/compiler_depend.make b/Src/CMakeFiles/BlogParser.dir/compiler_depend.make
new file mode 100644
index 0000000..6b5dd69
--- /dev/null
+++ b/Src/CMakeFiles/BlogParser.dir/compiler_depend.make
@@ -0,0 +1,2 @@
+# Empty compiler generated dependencies file for BlogParser.
+# This may be replaced when dependencies are built.
diff --git a/Src/CMakeFiles/BlogParser.dir/compiler_depend.ts b/Src/CMakeFiles/BlogParser.dir/compiler_depend.ts
new file mode 100644
index 0000000..4fd72db
--- /dev/null
+++ b/Src/CMakeFiles/BlogParser.dir/compiler_depend.ts
@@ -0,0 +1,2 @@
+# CMAKE generated file: DO NOT EDIT!
+# Timestamp file for compiler generated dependencies management for BlogParser.
diff --git a/Src/CMakeFiles/BlogParser.dir/depend.make b/Src/CMakeFiles/BlogParser.dir/depend.make
new file mode 100644
index 0000000..8f60a04
--- /dev/null
+++ b/Src/CMakeFiles/BlogParser.dir/depend.make
@@ -0,0 +1,2 @@
+# Empty dependencies file for BlogParser.
+# This may be replaced when dependencies are built.
diff --git a/Src/CMakeFiles/BlogParser.dir/flags.make b/Src/CMakeFiles/BlogParser.dir/flags.make
new file mode 100644
index 0000000..71b1a3d
--- /dev/null
+++ b/Src/CMakeFiles/BlogParser.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# compile CXX with /usr/bin/c++
+CXX_DEFINES =
+
+CXX_INCLUDES = -I/home/rosia/Programming/Cpp/BlogParser
+
+CXX_FLAGS = -g -std=gnu++20
+
diff --git a/Src/CMakeFiles/BlogParser.dir/link.txt b/Src/CMakeFiles/BlogParser.dir/link.txt
new file mode 100644
index 0000000..fd75a40
--- /dev/null
+++ b/Src/CMakeFiles/BlogParser.dir/link.txt
@@ -0,0 +1,2 @@
+/usr/bin/ar qc libBlogParser.a CMakeFiles/BlogParser.dir/BlogParser.cpp.o
+/usr/bin/ranlib libBlogParser.a
diff --git a/Src/CMakeFiles/BlogParser.dir/progress.make b/Src/CMakeFiles/BlogParser.dir/progress.make
new file mode 100644
index 0000000..8808896
--- /dev/null
+++ b/Src/CMakeFiles/BlogParser.dir/progress.make
@@ -0,0 +1,3 @@
+CMAKE_PROGRESS_1 = 6
+CMAKE_PROGRESS_2 = 7
+
diff --git a/Src/CMakeFiles/CMakeDirectoryInformation.cmake b/Src/CMakeFiles/CMakeDirectoryInformation.cmake
new file mode 100644
index 0000000..3be947c
--- /dev/null
+++ b/Src/CMakeFiles/CMakeDirectoryInformation.cmake
@@ -0,0 +1,16 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/rosia/Programming/Cpp/BlogParser")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/rosia/Programming/Cpp/BlogParser")
+
+# Force unix paths in dependencies.
+set(CMAKE_FORCE_UNIX_PATHS 1)
+
+
+# The C and CXX include file regular expressions for this directory.
+set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/Src/CMakeFiles/Program.dir/DependInfo.cmake b/Src/CMakeFiles/Program.dir/DependInfo.cmake
new file mode 100644
index 0000000..e6bea12
--- /dev/null
+++ b/Src/CMakeFiles/Program.dir/DependInfo.cmake
@@ -0,0 +1,24 @@
+
+# Consider dependencies only in project.
+set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF)
+
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ )
+
+# The set of dependency files which are needed:
+set(CMAKE_DEPENDS_DEPENDENCY_FILES
+ "/home/rosia/Programming/Cpp/BlogParser/Src/Program.cpp" "Src/CMakeFiles/Program.dir/Program.cpp.o" "gcc" "Src/CMakeFiles/Program.dir/Program.cpp.o.d"
+ )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ "/home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/BlogParser.dir/DependInfo.cmake"
+ "/home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/BlogPageBuilder.dir/DependInfo.cmake"
+ "/home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/AtomBuilder.dir/DependInfo.cmake"
+ "/home/rosia/Programming/Cpp/BlogParser/Src/Libs/CMakeFiles/md4c.dir/DependInfo.cmake"
+ "/home/rosia/Programming/Cpp/BlogParser/Src/Libs/CMakeFiles/md4c-html.dir/DependInfo.cmake"
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/Src/CMakeFiles/Program.dir/build.make b/Src/CMakeFiles/Program.dir/build.make
new file mode 100644
index 0000000..e702106
--- /dev/null
+++ b/Src/CMakeFiles/Program.dir/build.make
@@ -0,0 +1,111 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# Include any dependencies generated for this target.
+include Src/CMakeFiles/Program.dir/depend.make
+# Include any dependencies generated by the compiler for this target.
+include Src/CMakeFiles/Program.dir/compiler_depend.make
+
+# Include the progress variables for this target.
+include Src/CMakeFiles/Program.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include Src/CMakeFiles/Program.dir/flags.make
+
+Src/CMakeFiles/Program.dir/Program.cpp.o: Src/CMakeFiles/Program.dir/flags.make
+Src/CMakeFiles/Program.dir/Program.cpp.o: Src/Program.cpp
+Src/CMakeFiles/Program.dir/Program.cpp.o: Src/CMakeFiles/Program.dir/compiler_depend.ts
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object Src/CMakeFiles/Program.dir/Program.cpp.o"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT Src/CMakeFiles/Program.dir/Program.cpp.o -MF CMakeFiles/Program.dir/Program.cpp.o.d -o CMakeFiles/Program.dir/Program.cpp.o -c /home/rosia/Programming/Cpp/BlogParser/Src/Program.cpp
+
+Src/CMakeFiles/Program.dir/Program.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Program.dir/Program.cpp.i"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rosia/Programming/Cpp/BlogParser/Src/Program.cpp > CMakeFiles/Program.dir/Program.cpp.i
+
+Src/CMakeFiles/Program.dir/Program.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Program.dir/Program.cpp.s"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rosia/Programming/Cpp/BlogParser/Src/Program.cpp -o CMakeFiles/Program.dir/Program.cpp.s
+
+# Object files for target Program
+Program_OBJECTS = \
+"CMakeFiles/Program.dir/Program.cpp.o"
+
+# External object files for target Program
+Program_EXTERNAL_OBJECTS =
+
+Src/libProgram.a: Src/CMakeFiles/Program.dir/Program.cpp.o
+Src/libProgram.a: Src/CMakeFiles/Program.dir/build.make
+Src/libProgram.a: Src/CMakeFiles/Program.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX static library libProgram.a"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && $(CMAKE_COMMAND) -P CMakeFiles/Program.dir/cmake_clean_target.cmake
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/Program.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+Src/CMakeFiles/Program.dir/build: Src/libProgram.a
+.PHONY : Src/CMakeFiles/Program.dir/build
+
+Src/CMakeFiles/Program.dir/clean:
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && $(CMAKE_COMMAND) -P CMakeFiles/Program.dir/cmake_clean.cmake
+.PHONY : Src/CMakeFiles/Program.dir/clean
+
+Src/CMakeFiles/Program.dir/depend:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rosia/Programming/Cpp/BlogParser /home/rosia/Programming/Cpp/BlogParser/Src /home/rosia/Programming/Cpp/BlogParser /home/rosia/Programming/Cpp/BlogParser/Src /home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/Program.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : Src/CMakeFiles/Program.dir/depend
+
diff --git a/Src/CMakeFiles/Program.dir/cmake_clean.cmake b/Src/CMakeFiles/Program.dir/cmake_clean.cmake
new file mode 100644
index 0000000..621e787
--- /dev/null
+++ b/Src/CMakeFiles/Program.dir/cmake_clean.cmake
@@ -0,0 +1,11 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/Program.dir/Program.cpp.o"
+ "CMakeFiles/Program.dir/Program.cpp.o.d"
+ "libProgram.a"
+ "libProgram.pdb"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+ include(CMakeFiles/Program.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/Src/CMakeFiles/Program.dir/cmake_clean_target.cmake b/Src/CMakeFiles/Program.dir/cmake_clean_target.cmake
new file mode 100644
index 0000000..c26e825
--- /dev/null
+++ b/Src/CMakeFiles/Program.dir/cmake_clean_target.cmake
@@ -0,0 +1,3 @@
+file(REMOVE_RECURSE
+ "libProgram.a"
+)
diff --git a/Src/CMakeFiles/Program.dir/compiler_depend.make b/Src/CMakeFiles/Program.dir/compiler_depend.make
new file mode 100644
index 0000000..c9168b0
--- /dev/null
+++ b/Src/CMakeFiles/Program.dir/compiler_depend.make
@@ -0,0 +1,2 @@
+# Empty compiler generated dependencies file for Program.
+# This may be replaced when dependencies are built.
diff --git a/Src/CMakeFiles/Program.dir/compiler_depend.ts b/Src/CMakeFiles/Program.dir/compiler_depend.ts
new file mode 100644
index 0000000..ff82477
--- /dev/null
+++ b/Src/CMakeFiles/Program.dir/compiler_depend.ts
@@ -0,0 +1,2 @@
+# CMAKE generated file: DO NOT EDIT!
+# Timestamp file for compiler generated dependencies management for Program.
diff --git a/Src/CMakeFiles/Program.dir/depend.make b/Src/CMakeFiles/Program.dir/depend.make
new file mode 100644
index 0000000..1896a95
--- /dev/null
+++ b/Src/CMakeFiles/Program.dir/depend.make
@@ -0,0 +1,2 @@
+# Empty dependencies file for Program.
+# This may be replaced when dependencies are built.
diff --git a/Src/CMakeFiles/Program.dir/flags.make b/Src/CMakeFiles/Program.dir/flags.make
new file mode 100644
index 0000000..71b1a3d
--- /dev/null
+++ b/Src/CMakeFiles/Program.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# compile CXX with /usr/bin/c++
+CXX_DEFINES =
+
+CXX_INCLUDES = -I/home/rosia/Programming/Cpp/BlogParser
+
+CXX_FLAGS = -g -std=gnu++20
+
diff --git a/Src/CMakeFiles/Program.dir/link.txt b/Src/CMakeFiles/Program.dir/link.txt
new file mode 100644
index 0000000..9131f06
--- /dev/null
+++ b/Src/CMakeFiles/Program.dir/link.txt
@@ -0,0 +1,2 @@
+/usr/bin/ar qc libProgram.a CMakeFiles/Program.dir/Program.cpp.o
+/usr/bin/ranlib libProgram.a
diff --git a/Src/CMakeFiles/Program.dir/progress.make b/Src/CMakeFiles/Program.dir/progress.make
new file mode 100644
index 0000000..895faac
--- /dev/null
+++ b/Src/CMakeFiles/Program.dir/progress.make
@@ -0,0 +1,3 @@
+CMAKE_PROGRESS_1 = 8
+CMAKE_PROGRESS_2 = 9
+
diff --git a/Src/CMakeFiles/blog.dir/DependInfo.cmake b/Src/CMakeFiles/blog.dir/DependInfo.cmake
new file mode 100644
index 0000000..2a1b063
--- /dev/null
+++ b/Src/CMakeFiles/blog.dir/DependInfo.cmake
@@ -0,0 +1,25 @@
+
+# Consider dependencies only in project.
+set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF)
+
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ )
+
+# The set of dependency files which are needed:
+set(CMAKE_DEPENDS_DEPENDENCY_FILES
+ "/home/rosia/Programming/Cpp/BlogParser/Src/blog.cpp" "Src/CMakeFiles/blog.dir/blog.cpp.o" "gcc" "Src/CMakeFiles/blog.dir/blog.cpp.o.d"
+ )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ "/home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/Program.dir/DependInfo.cmake"
+ "/home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/BlogPageBuilder.dir/DependInfo.cmake"
+ "/home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/BlogParser.dir/DependInfo.cmake"
+ "/home/rosia/Programming/Cpp/BlogParser/Src/Libs/CMakeFiles/md4c.dir/DependInfo.cmake"
+ "/home/rosia/Programming/Cpp/BlogParser/Src/Libs/CMakeFiles/md4c-html.dir/DependInfo.cmake"
+ "/home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/AtomBuilder.dir/DependInfo.cmake"
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/Src/CMakeFiles/blog.dir/build.make b/Src/CMakeFiles/blog.dir/build.make
new file mode 100644
index 0000000..e0fb2c4
--- /dev/null
+++ b/Src/CMakeFiles/blog.dir/build.make
@@ -0,0 +1,116 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# Include any dependencies generated for this target.
+include Src/CMakeFiles/blog.dir/depend.make
+# Include any dependencies generated by the compiler for this target.
+include Src/CMakeFiles/blog.dir/compiler_depend.make
+
+# Include the progress variables for this target.
+include Src/CMakeFiles/blog.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include Src/CMakeFiles/blog.dir/flags.make
+
+Src/CMakeFiles/blog.dir/blog.cpp.o: Src/CMakeFiles/blog.dir/flags.make
+Src/CMakeFiles/blog.dir/blog.cpp.o: Src/blog.cpp
+Src/CMakeFiles/blog.dir/blog.cpp.o: Src/CMakeFiles/blog.dir/compiler_depend.ts
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object Src/CMakeFiles/blog.dir/blog.cpp.o"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT Src/CMakeFiles/blog.dir/blog.cpp.o -MF CMakeFiles/blog.dir/blog.cpp.o.d -o CMakeFiles/blog.dir/blog.cpp.o -c /home/rosia/Programming/Cpp/BlogParser/Src/blog.cpp
+
+Src/CMakeFiles/blog.dir/blog.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/blog.dir/blog.cpp.i"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rosia/Programming/Cpp/BlogParser/Src/blog.cpp > CMakeFiles/blog.dir/blog.cpp.i
+
+Src/CMakeFiles/blog.dir/blog.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/blog.dir/blog.cpp.s"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rosia/Programming/Cpp/BlogParser/Src/blog.cpp -o CMakeFiles/blog.dir/blog.cpp.s
+
+# Object files for target blog
+blog_OBJECTS = \
+"CMakeFiles/blog.dir/blog.cpp.o"
+
+# External object files for target blog
+blog_EXTERNAL_OBJECTS =
+
+Src/blog: Src/CMakeFiles/blog.dir/blog.cpp.o
+Src/blog: Src/CMakeFiles/blog.dir/build.make
+Src/blog: Src/libProgram.a
+Src/blog: Src/libBlogPageBuilder.a
+Src/blog: Src/libBlogParser.a
+Src/blog: Src/Libs/libmd4c.a
+Src/blog: Src/Libs/libmd4c-html.a
+Src/blog: Src/libAtomBuilder.a
+Src/blog: Src/CMakeFiles/blog.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX executable blog"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/blog.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+Src/CMakeFiles/blog.dir/build: Src/blog
+.PHONY : Src/CMakeFiles/blog.dir/build
+
+Src/CMakeFiles/blog.dir/clean:
+ cd /home/rosia/Programming/Cpp/BlogParser/Src && $(CMAKE_COMMAND) -P CMakeFiles/blog.dir/cmake_clean.cmake
+.PHONY : Src/CMakeFiles/blog.dir/clean
+
+Src/CMakeFiles/blog.dir/depend:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rosia/Programming/Cpp/BlogParser /home/rosia/Programming/Cpp/BlogParser/Src /home/rosia/Programming/Cpp/BlogParser /home/rosia/Programming/Cpp/BlogParser/Src /home/rosia/Programming/Cpp/BlogParser/Src/CMakeFiles/blog.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : Src/CMakeFiles/blog.dir/depend
+
diff --git a/Src/CMakeFiles/blog.dir/cmake_clean.cmake b/Src/CMakeFiles/blog.dir/cmake_clean.cmake
new file mode 100644
index 0000000..e031c0a
--- /dev/null
+++ b/Src/CMakeFiles/blog.dir/cmake_clean.cmake
@@ -0,0 +1,11 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/blog.dir/blog.cpp.o"
+ "CMakeFiles/blog.dir/blog.cpp.o.d"
+ "blog"
+ "blog.pdb"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+ include(CMakeFiles/blog.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/Src/CMakeFiles/blog.dir/compiler_depend.make b/Src/CMakeFiles/blog.dir/compiler_depend.make
new file mode 100644
index 0000000..8cc80c8
--- /dev/null
+++ b/Src/CMakeFiles/blog.dir/compiler_depend.make
@@ -0,0 +1,2 @@
+# Empty compiler generated dependencies file for blog.
+# This may be replaced when dependencies are built.
diff --git a/Src/CMakeFiles/blog.dir/compiler_depend.ts b/Src/CMakeFiles/blog.dir/compiler_depend.ts
new file mode 100644
index 0000000..20280f4
--- /dev/null
+++ b/Src/CMakeFiles/blog.dir/compiler_depend.ts
@@ -0,0 +1,2 @@
+# CMAKE generated file: DO NOT EDIT!
+# Timestamp file for compiler generated dependencies management for blog.
diff --git a/Src/CMakeFiles/blog.dir/depend.make b/Src/CMakeFiles/blog.dir/depend.make
new file mode 100644
index 0000000..0e2a262
--- /dev/null
+++ b/Src/CMakeFiles/blog.dir/depend.make
@@ -0,0 +1,2 @@
+# Empty dependencies file for blog.
+# This may be replaced when dependencies are built.
diff --git a/Src/CMakeFiles/blog.dir/flags.make b/Src/CMakeFiles/blog.dir/flags.make
new file mode 100644
index 0000000..f184dda
--- /dev/null
+++ b/Src/CMakeFiles/blog.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# compile CXX with /usr/bin/c++
+CXX_DEFINES =
+
+CXX_INCLUDES = -I/home/rosia/Programming/Cpp/BlogParser/Src/Src -I/home/rosia/Programming/Cpp/BlogParser
+
+CXX_FLAGS = -g -std=gnu++20
+
diff --git a/Src/CMakeFiles/blog.dir/link.txt b/Src/CMakeFiles/blog.dir/link.txt
new file mode 100644
index 0000000..44ddc5d
--- /dev/null
+++ b/Src/CMakeFiles/blog.dir/link.txt
@@ -0,0 +1 @@
+/usr/bin/c++ -g CMakeFiles/blog.dir/blog.cpp.o -o blog libProgram.a libBlogPageBuilder.a libBlogParser.a Libs/libmd4c.a Libs/libmd4c-html.a libAtomBuilder.a
diff --git a/Src/CMakeFiles/blog.dir/progress.make b/Src/CMakeFiles/blog.dir/progress.make
new file mode 100644
index 0000000..17875e3
--- /dev/null
+++ b/Src/CMakeFiles/blog.dir/progress.make
@@ -0,0 +1,3 @@
+CMAKE_PROGRESS_1 = 10
+CMAKE_PROGRESS_2 = 11
+
diff --git a/Src/CMakeFiles/progress.marks b/Src/CMakeFiles/progress.marks
new file mode 100644
index 0000000..98d9bcb
--- /dev/null
+++ b/Src/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+17
diff --git a/Src/CMakeLists.txt b/Src/CMakeLists.txt
index 9dd6418..f78ea9b 100644
--- a/Src/CMakeLists.txt
+++ b/Src/CMakeLists.txt
@@ -1,8 +1,5 @@
add_executable(blog blog.cpp)
-target_include_directories(blog PRIVATE Src)
-add_subdirectory(Libs)
-
add_library(BlogParser BlogParser.cpp BlogParser.h)
target_link_libraries(BlogParser PRIVATE md4c)
target_link_libraries(BlogParser PRIVATE md4c-html)
@@ -10,12 +7,21 @@ target_link_libraries(BlogParser PRIVATE md4c-html)
add_library(BlogPageBuilder BlogPageBuilder.cpp BlogPageBuilder.h Page.cpp Page.h)
target_link_libraries(BlogPageBuilder PRIVATE BlogParser)
-target_link_libraries(blog PUBLIC md4c)
-target_link_libraries(blog PUBLIC md4c-html)
-target_link_libraries(blog PRIVATE BlogParser)
-target_link_libraries(blog PRIVATE BlogPageBuilder)
+add_library(AtomBuilder AtomBuilder.cpp AtomBuilder.h)
+
+add_library(Program Program.cpp Program.h)
+target_link_libraries(Program PRIVATE BlogParser)
+target_link_libraries(Program PRIVATE BlogPageBuilder)
+target_link_libraries(Program PRIVATE AtomBuilder)
+
+
+target_include_directories(blog PRIVATE Src)
+add_subdirectory(Libs)
+target_link_libraries(blog PRIVATE Program)
+
target_include_directories(blog PUBLIC "${PROJECT_BINARY_DIR}")
target_include_directories(BlogPageBuilder PUBLIC "${PROJECT_BINARY_DIR}")
target_include_directories(BlogParser PUBLIC "${PROJECT_BINARY_DIR}")
+target_include_directories(AtomBuilder PUBLIC "${PROJECT_BINARY_DIR}")
# This probably needs a severe clean up
diff --git a/Src/Libs/CMakeFiles/CMakeDirectoryInformation.cmake b/Src/Libs/CMakeFiles/CMakeDirectoryInformation.cmake
new file mode 100644
index 0000000..3be947c
--- /dev/null
+++ b/Src/Libs/CMakeFiles/CMakeDirectoryInformation.cmake
@@ -0,0 +1,16 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/rosia/Programming/Cpp/BlogParser")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/rosia/Programming/Cpp/BlogParser")
+
+# Force unix paths in dependencies.
+set(CMAKE_FORCE_UNIX_PATHS 1)
+
+
+# The C and CXX include file regular expressions for this directory.
+set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/Src/Libs/CMakeFiles/md4c-html.dir/DependInfo.cmake b/Src/Libs/CMakeFiles/md4c-html.dir/DependInfo.cmake
new file mode 100644
index 0000000..f0088d6
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c-html.dir/DependInfo.cmake
@@ -0,0 +1,21 @@
+
+# Consider dependencies only in project.
+set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF)
+
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ )
+
+# The set of dependency files which are needed:
+set(CMAKE_DEPENDS_DEPENDENCY_FILES
+ "/home/rosia/Programming/Cpp/BlogParser/Src/Libs/entity.c" "Src/Libs/CMakeFiles/md4c-html.dir/entity.c.o" "gcc" "Src/Libs/CMakeFiles/md4c-html.dir/entity.c.o.d"
+ "/home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c-html.c" "Src/Libs/CMakeFiles/md4c-html.dir/md4c-html.c.o" "gcc" "Src/Libs/CMakeFiles/md4c-html.dir/md4c-html.c.o.d"
+ "/home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c.c" "Src/Libs/CMakeFiles/md4c-html.dir/md4c.c.o" "gcc" "Src/Libs/CMakeFiles/md4c-html.dir/md4c.c.o.d"
+ )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/Src/Libs/CMakeFiles/md4c-html.dir/build.make b/Src/Libs/CMakeFiles/md4c-html.dir/build.make
new file mode 100644
index 0000000..5167887
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c-html.dir/build.make
@@ -0,0 +1,143 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# Include any dependencies generated for this target.
+include Src/Libs/CMakeFiles/md4c-html.dir/depend.make
+# Include any dependencies generated by the compiler for this target.
+include Src/Libs/CMakeFiles/md4c-html.dir/compiler_depend.make
+
+# Include the progress variables for this target.
+include Src/Libs/CMakeFiles/md4c-html.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include Src/Libs/CMakeFiles/md4c-html.dir/flags.make
+
+Src/Libs/CMakeFiles/md4c-html.dir/md4c-html.c.o: Src/Libs/CMakeFiles/md4c-html.dir/flags.make
+Src/Libs/CMakeFiles/md4c-html.dir/md4c-html.c.o: Src/Libs/md4c-html.c
+Src/Libs/CMakeFiles/md4c-html.dir/md4c-html.c.o: Src/Libs/CMakeFiles/md4c-html.dir/compiler_depend.ts
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object Src/Libs/CMakeFiles/md4c-html.dir/md4c-html.c.o"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT Src/Libs/CMakeFiles/md4c-html.dir/md4c-html.c.o -MF CMakeFiles/md4c-html.dir/md4c-html.c.o.d -o CMakeFiles/md4c-html.dir/md4c-html.c.o -c /home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c-html.c
+
+Src/Libs/CMakeFiles/md4c-html.dir/md4c-html.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/md4c-html.dir/md4c-html.c.i"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c-html.c > CMakeFiles/md4c-html.dir/md4c-html.c.i
+
+Src/Libs/CMakeFiles/md4c-html.dir/md4c-html.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/md4c-html.dir/md4c-html.c.s"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c-html.c -o CMakeFiles/md4c-html.dir/md4c-html.c.s
+
+Src/Libs/CMakeFiles/md4c-html.dir/entity.c.o: Src/Libs/CMakeFiles/md4c-html.dir/flags.make
+Src/Libs/CMakeFiles/md4c-html.dir/entity.c.o: Src/Libs/entity.c
+Src/Libs/CMakeFiles/md4c-html.dir/entity.c.o: Src/Libs/CMakeFiles/md4c-html.dir/compiler_depend.ts
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building C object Src/Libs/CMakeFiles/md4c-html.dir/entity.c.o"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT Src/Libs/CMakeFiles/md4c-html.dir/entity.c.o -MF CMakeFiles/md4c-html.dir/entity.c.o.d -o CMakeFiles/md4c-html.dir/entity.c.o -c /home/rosia/Programming/Cpp/BlogParser/Src/Libs/entity.c
+
+Src/Libs/CMakeFiles/md4c-html.dir/entity.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/md4c-html.dir/entity.c.i"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/rosia/Programming/Cpp/BlogParser/Src/Libs/entity.c > CMakeFiles/md4c-html.dir/entity.c.i
+
+Src/Libs/CMakeFiles/md4c-html.dir/entity.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/md4c-html.dir/entity.c.s"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/rosia/Programming/Cpp/BlogParser/Src/Libs/entity.c -o CMakeFiles/md4c-html.dir/entity.c.s
+
+Src/Libs/CMakeFiles/md4c-html.dir/md4c.c.o: Src/Libs/CMakeFiles/md4c-html.dir/flags.make
+Src/Libs/CMakeFiles/md4c-html.dir/md4c.c.o: Src/Libs/md4c.c
+Src/Libs/CMakeFiles/md4c-html.dir/md4c.c.o: Src/Libs/CMakeFiles/md4c-html.dir/compiler_depend.ts
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building C object Src/Libs/CMakeFiles/md4c-html.dir/md4c.c.o"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT Src/Libs/CMakeFiles/md4c-html.dir/md4c.c.o -MF CMakeFiles/md4c-html.dir/md4c.c.o.d -o CMakeFiles/md4c-html.dir/md4c.c.o -c /home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c.c
+
+Src/Libs/CMakeFiles/md4c-html.dir/md4c.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/md4c-html.dir/md4c.c.i"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c.c > CMakeFiles/md4c-html.dir/md4c.c.i
+
+Src/Libs/CMakeFiles/md4c-html.dir/md4c.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/md4c-html.dir/md4c.c.s"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c.c -o CMakeFiles/md4c-html.dir/md4c.c.s
+
+# Object files for target md4c-html
+md4c__html_OBJECTS = \
+"CMakeFiles/md4c-html.dir/md4c-html.c.o" \
+"CMakeFiles/md4c-html.dir/entity.c.o" \
+"CMakeFiles/md4c-html.dir/md4c.c.o"
+
+# External object files for target md4c-html
+md4c__html_EXTERNAL_OBJECTS =
+
+Src/Libs/libmd4c-html.a: Src/Libs/CMakeFiles/md4c-html.dir/md4c-html.c.o
+Src/Libs/libmd4c-html.a: Src/Libs/CMakeFiles/md4c-html.dir/entity.c.o
+Src/Libs/libmd4c-html.a: Src/Libs/CMakeFiles/md4c-html.dir/md4c.c.o
+Src/Libs/libmd4c-html.a: Src/Libs/CMakeFiles/md4c-html.dir/build.make
+Src/Libs/libmd4c-html.a: Src/Libs/CMakeFiles/md4c-html.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Linking C static library libmd4c-html.a"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && $(CMAKE_COMMAND) -P CMakeFiles/md4c-html.dir/cmake_clean_target.cmake
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/md4c-html.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+Src/Libs/CMakeFiles/md4c-html.dir/build: Src/Libs/libmd4c-html.a
+.PHONY : Src/Libs/CMakeFiles/md4c-html.dir/build
+
+Src/Libs/CMakeFiles/md4c-html.dir/clean:
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && $(CMAKE_COMMAND) -P CMakeFiles/md4c-html.dir/cmake_clean.cmake
+.PHONY : Src/Libs/CMakeFiles/md4c-html.dir/clean
+
+Src/Libs/CMakeFiles/md4c-html.dir/depend:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rosia/Programming/Cpp/BlogParser /home/rosia/Programming/Cpp/BlogParser/Src/Libs /home/rosia/Programming/Cpp/BlogParser /home/rosia/Programming/Cpp/BlogParser/Src/Libs /home/rosia/Programming/Cpp/BlogParser/Src/Libs/CMakeFiles/md4c-html.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : Src/Libs/CMakeFiles/md4c-html.dir/depend
+
diff --git a/Src/Libs/CMakeFiles/md4c-html.dir/cmake_clean.cmake b/Src/Libs/CMakeFiles/md4c-html.dir/cmake_clean.cmake
new file mode 100644
index 0000000..4d6f00c
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c-html.dir/cmake_clean.cmake
@@ -0,0 +1,15 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/md4c-html.dir/entity.c.o"
+ "CMakeFiles/md4c-html.dir/entity.c.o.d"
+ "CMakeFiles/md4c-html.dir/md4c-html.c.o"
+ "CMakeFiles/md4c-html.dir/md4c-html.c.o.d"
+ "CMakeFiles/md4c-html.dir/md4c.c.o"
+ "CMakeFiles/md4c-html.dir/md4c.c.o.d"
+ "libmd4c-html.a"
+ "libmd4c-html.pdb"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang C)
+ include(CMakeFiles/md4c-html.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/Src/Libs/CMakeFiles/md4c-html.dir/cmake_clean_target.cmake b/Src/Libs/CMakeFiles/md4c-html.dir/cmake_clean_target.cmake
new file mode 100644
index 0000000..a8c5641
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c-html.dir/cmake_clean_target.cmake
@@ -0,0 +1,3 @@
+file(REMOVE_RECURSE
+ "libmd4c-html.a"
+)
diff --git a/Src/Libs/CMakeFiles/md4c-html.dir/compiler_depend.make b/Src/Libs/CMakeFiles/md4c-html.dir/compiler_depend.make
new file mode 100644
index 0000000..4fca047
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c-html.dir/compiler_depend.make
@@ -0,0 +1,2 @@
+# Empty compiler generated dependencies file for md4c-html.
+# This may be replaced when dependencies are built.
diff --git a/Src/Libs/CMakeFiles/md4c-html.dir/compiler_depend.ts b/Src/Libs/CMakeFiles/md4c-html.dir/compiler_depend.ts
new file mode 100644
index 0000000..da4f9d8
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c-html.dir/compiler_depend.ts
@@ -0,0 +1,2 @@
+# CMAKE generated file: DO NOT EDIT!
+# Timestamp file for compiler generated dependencies management for md4c-html.
diff --git a/Src/Libs/CMakeFiles/md4c-html.dir/depend.make b/Src/Libs/CMakeFiles/md4c-html.dir/depend.make
new file mode 100644
index 0000000..c9558b4
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c-html.dir/depend.make
@@ -0,0 +1,2 @@
+# Empty dependencies file for md4c-html.
+# This may be replaced when dependencies are built.
diff --git a/Src/Libs/CMakeFiles/md4c-html.dir/flags.make b/Src/Libs/CMakeFiles/md4c-html.dir/flags.make
new file mode 100644
index 0000000..93a6545
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c-html.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# compile C with /usr/bin/cc
+C_DEFINES =
+
+C_INCLUDES =
+
+C_FLAGS = -g
+
diff --git a/Src/Libs/CMakeFiles/md4c-html.dir/link.txt b/Src/Libs/CMakeFiles/md4c-html.dir/link.txt
new file mode 100644
index 0000000..a59e6ce
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c-html.dir/link.txt
@@ -0,0 +1,2 @@
+/usr/bin/ar qc libmd4c-html.a CMakeFiles/md4c-html.dir/md4c-html.c.o CMakeFiles/md4c-html.dir/entity.c.o CMakeFiles/md4c-html.dir/md4c.c.o
+/usr/bin/ranlib libmd4c-html.a
diff --git a/Src/Libs/CMakeFiles/md4c-html.dir/progress.make b/Src/Libs/CMakeFiles/md4c-html.dir/progress.make
new file mode 100644
index 0000000..c41e1aa
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c-html.dir/progress.make
@@ -0,0 +1,5 @@
+CMAKE_PROGRESS_1 = 14
+CMAKE_PROGRESS_2 = 15
+CMAKE_PROGRESS_3 = 16
+CMAKE_PROGRESS_4 = 17
+
diff --git a/Src/Libs/CMakeFiles/md4c.dir/DependInfo.cmake b/Src/Libs/CMakeFiles/md4c.dir/DependInfo.cmake
new file mode 100644
index 0000000..9467d9f
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c.dir/DependInfo.cmake
@@ -0,0 +1,19 @@
+
+# Consider dependencies only in project.
+set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF)
+
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ )
+
+# The set of dependency files which are needed:
+set(CMAKE_DEPENDS_DEPENDENCY_FILES
+ "/home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c.c" "Src/Libs/CMakeFiles/md4c.dir/md4c.c.o" "gcc" "Src/Libs/CMakeFiles/md4c.dir/md4c.c.o.d"
+ )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/Src/Libs/CMakeFiles/md4c.dir/build.make b/Src/Libs/CMakeFiles/md4c.dir/build.make
new file mode 100644
index 0000000..9035a54
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c.dir/build.make
@@ -0,0 +1,111 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# Include any dependencies generated for this target.
+include Src/Libs/CMakeFiles/md4c.dir/depend.make
+# Include any dependencies generated by the compiler for this target.
+include Src/Libs/CMakeFiles/md4c.dir/compiler_depend.make
+
+# Include the progress variables for this target.
+include Src/Libs/CMakeFiles/md4c.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include Src/Libs/CMakeFiles/md4c.dir/flags.make
+
+Src/Libs/CMakeFiles/md4c.dir/md4c.c.o: Src/Libs/CMakeFiles/md4c.dir/flags.make
+Src/Libs/CMakeFiles/md4c.dir/md4c.c.o: Src/Libs/md4c.c
+Src/Libs/CMakeFiles/md4c.dir/md4c.c.o: Src/Libs/CMakeFiles/md4c.dir/compiler_depend.ts
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object Src/Libs/CMakeFiles/md4c.dir/md4c.c.o"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT Src/Libs/CMakeFiles/md4c.dir/md4c.c.o -MF CMakeFiles/md4c.dir/md4c.c.o.d -o CMakeFiles/md4c.dir/md4c.c.o -c /home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c.c
+
+Src/Libs/CMakeFiles/md4c.dir/md4c.c.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/md4c.dir/md4c.c.i"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c.c > CMakeFiles/md4c.dir/md4c.c.i
+
+Src/Libs/CMakeFiles/md4c.dir/md4c.c.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/md4c.dir/md4c.c.s"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c.c -o CMakeFiles/md4c.dir/md4c.c.s
+
+# Object files for target md4c
+md4c_OBJECTS = \
+"CMakeFiles/md4c.dir/md4c.c.o"
+
+# External object files for target md4c
+md4c_EXTERNAL_OBJECTS =
+
+Src/Libs/libmd4c.a: Src/Libs/CMakeFiles/md4c.dir/md4c.c.o
+Src/Libs/libmd4c.a: Src/Libs/CMakeFiles/md4c.dir/build.make
+Src/Libs/libmd4c.a: Src/Libs/CMakeFiles/md4c.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rosia/Programming/Cpp/BlogParser/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking C static library libmd4c.a"
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && $(CMAKE_COMMAND) -P CMakeFiles/md4c.dir/cmake_clean_target.cmake
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/md4c.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+Src/Libs/CMakeFiles/md4c.dir/build: Src/Libs/libmd4c.a
+.PHONY : Src/Libs/CMakeFiles/md4c.dir/build
+
+Src/Libs/CMakeFiles/md4c.dir/clean:
+ cd /home/rosia/Programming/Cpp/BlogParser/Src/Libs && $(CMAKE_COMMAND) -P CMakeFiles/md4c.dir/cmake_clean.cmake
+.PHONY : Src/Libs/CMakeFiles/md4c.dir/clean
+
+Src/Libs/CMakeFiles/md4c.dir/depend:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rosia/Programming/Cpp/BlogParser /home/rosia/Programming/Cpp/BlogParser/Src/Libs /home/rosia/Programming/Cpp/BlogParser /home/rosia/Programming/Cpp/BlogParser/Src/Libs /home/rosia/Programming/Cpp/BlogParser/Src/Libs/CMakeFiles/md4c.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : Src/Libs/CMakeFiles/md4c.dir/depend
+
diff --git a/Src/Libs/CMakeFiles/md4c.dir/cmake_clean.cmake b/Src/Libs/CMakeFiles/md4c.dir/cmake_clean.cmake
new file mode 100644
index 0000000..ef40819
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c.dir/cmake_clean.cmake
@@ -0,0 +1,11 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/md4c.dir/md4c.c.o"
+ "CMakeFiles/md4c.dir/md4c.c.o.d"
+ "libmd4c.a"
+ "libmd4c.pdb"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang C)
+ include(CMakeFiles/md4c.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/Src/Libs/CMakeFiles/md4c.dir/cmake_clean_target.cmake b/Src/Libs/CMakeFiles/md4c.dir/cmake_clean_target.cmake
new file mode 100644
index 0000000..81745a8
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c.dir/cmake_clean_target.cmake
@@ -0,0 +1,3 @@
+file(REMOVE_RECURSE
+ "libmd4c.a"
+)
diff --git a/Src/Libs/CMakeFiles/md4c.dir/compiler_depend.make b/Src/Libs/CMakeFiles/md4c.dir/compiler_depend.make
new file mode 100644
index 0000000..49fc2ed
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c.dir/compiler_depend.make
@@ -0,0 +1,2 @@
+# Empty compiler generated dependencies file for md4c.
+# This may be replaced when dependencies are built.
diff --git a/Src/Libs/CMakeFiles/md4c.dir/compiler_depend.ts b/Src/Libs/CMakeFiles/md4c.dir/compiler_depend.ts
new file mode 100644
index 0000000..9e63872
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c.dir/compiler_depend.ts
@@ -0,0 +1,2 @@
+# CMAKE generated file: DO NOT EDIT!
+# Timestamp file for compiler generated dependencies management for md4c.
diff --git a/Src/Libs/CMakeFiles/md4c.dir/depend.make b/Src/Libs/CMakeFiles/md4c.dir/depend.make
new file mode 100644
index 0000000..50ff2c6
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c.dir/depend.make
@@ -0,0 +1,2 @@
+# Empty dependencies file for md4c.
+# This may be replaced when dependencies are built.
diff --git a/Src/Libs/CMakeFiles/md4c.dir/flags.make b/Src/Libs/CMakeFiles/md4c.dir/flags.make
new file mode 100644
index 0000000..93a6545
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# compile C with /usr/bin/cc
+C_DEFINES =
+
+C_INCLUDES =
+
+C_FLAGS = -g
+
diff --git a/Src/Libs/CMakeFiles/md4c.dir/link.txt b/Src/Libs/CMakeFiles/md4c.dir/link.txt
new file mode 100644
index 0000000..04a034a
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c.dir/link.txt
@@ -0,0 +1,2 @@
+/usr/bin/ar qc libmd4c.a CMakeFiles/md4c.dir/md4c.c.o
+/usr/bin/ranlib libmd4c.a
diff --git a/Src/Libs/CMakeFiles/md4c.dir/progress.make b/Src/Libs/CMakeFiles/md4c.dir/progress.make
new file mode 100644
index 0000000..7df1340
--- /dev/null
+++ b/Src/Libs/CMakeFiles/md4c.dir/progress.make
@@ -0,0 +1,3 @@
+CMAKE_PROGRESS_1 = 12
+CMAKE_PROGRESS_2 = 13
+
diff --git a/Src/Libs/CMakeFiles/progress.marks b/Src/Libs/CMakeFiles/progress.marks
new file mode 100644
index 0000000..1e8b314
--- /dev/null
+++ b/Src/Libs/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+6
diff --git a/Src/Libs/Makefile b/Src/Libs/Makefile
new file mode 100644
index 0000000..c26ffb7
--- /dev/null
+++ b/Src/Libs/Makefile
@@ -0,0 +1,254 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+# Allow only one "make -f Makefile2" at a time, but pass parallelism.
+.NOTPARALLEL:
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..."
+ /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+.PHONY : edit_cache/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+.PHONY : rebuild_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ cd /home/rosia/Programming/Cpp/BlogParser && $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles /home/rosia/Programming/Cpp/BlogParser/Src/Libs//CMakeFiles/progress.marks
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/Libs/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/Libs/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/Libs/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/Libs/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Convenience name for target.
+Src/Libs/CMakeFiles/md4c.dir/rule:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/Libs/CMakeFiles/md4c.dir/rule
+.PHONY : Src/Libs/CMakeFiles/md4c.dir/rule
+
+# Convenience name for target.
+md4c: Src/Libs/CMakeFiles/md4c.dir/rule
+.PHONY : md4c
+
+# fast build rule for target.
+md4c/fast:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c.dir/build.make Src/Libs/CMakeFiles/md4c.dir/build
+.PHONY : md4c/fast
+
+# Convenience name for target.
+Src/Libs/CMakeFiles/md4c-html.dir/rule:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/Libs/CMakeFiles/md4c-html.dir/rule
+.PHONY : Src/Libs/CMakeFiles/md4c-html.dir/rule
+
+# Convenience name for target.
+md4c-html: Src/Libs/CMakeFiles/md4c-html.dir/rule
+.PHONY : md4c-html
+
+# fast build rule for target.
+md4c-html/fast:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c-html.dir/build.make Src/Libs/CMakeFiles/md4c-html.dir/build
+.PHONY : md4c-html/fast
+
+entity.o: entity.c.o
+.PHONY : entity.o
+
+# target to build an object file
+entity.c.o:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c-html.dir/build.make Src/Libs/CMakeFiles/md4c-html.dir/entity.c.o
+.PHONY : entity.c.o
+
+entity.i: entity.c.i
+.PHONY : entity.i
+
+# target to preprocess a source file
+entity.c.i:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c-html.dir/build.make Src/Libs/CMakeFiles/md4c-html.dir/entity.c.i
+.PHONY : entity.c.i
+
+entity.s: entity.c.s
+.PHONY : entity.s
+
+# target to generate assembly for a file
+entity.c.s:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c-html.dir/build.make Src/Libs/CMakeFiles/md4c-html.dir/entity.c.s
+.PHONY : entity.c.s
+
+md4c-html.o: md4c-html.c.o
+.PHONY : md4c-html.o
+
+# target to build an object file
+md4c-html.c.o:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c-html.dir/build.make Src/Libs/CMakeFiles/md4c-html.dir/md4c-html.c.o
+.PHONY : md4c-html.c.o
+
+md4c-html.i: md4c-html.c.i
+.PHONY : md4c-html.i
+
+# target to preprocess a source file
+md4c-html.c.i:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c-html.dir/build.make Src/Libs/CMakeFiles/md4c-html.dir/md4c-html.c.i
+.PHONY : md4c-html.c.i
+
+md4c-html.s: md4c-html.c.s
+.PHONY : md4c-html.s
+
+# target to generate assembly for a file
+md4c-html.c.s:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c-html.dir/build.make Src/Libs/CMakeFiles/md4c-html.dir/md4c-html.c.s
+.PHONY : md4c-html.c.s
+
+md4c.o: md4c.c.o
+.PHONY : md4c.o
+
+# target to build an object file
+md4c.c.o:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c.dir/build.make Src/Libs/CMakeFiles/md4c.dir/md4c.c.o
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c-html.dir/build.make Src/Libs/CMakeFiles/md4c-html.dir/md4c.c.o
+.PHONY : md4c.c.o
+
+md4c.i: md4c.c.i
+.PHONY : md4c.i
+
+# target to preprocess a source file
+md4c.c.i:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c.dir/build.make Src/Libs/CMakeFiles/md4c.dir/md4c.c.i
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c-html.dir/build.make Src/Libs/CMakeFiles/md4c-html.dir/md4c.c.i
+.PHONY : md4c.c.i
+
+md4c.s: md4c.c.s
+.PHONY : md4c.s
+
+# target to generate assembly for a file
+md4c.c.s:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c.dir/build.make Src/Libs/CMakeFiles/md4c.dir/md4c.c.s
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/Libs/CMakeFiles/md4c-html.dir/build.make Src/Libs/CMakeFiles/md4c-html.dir/md4c.c.s
+.PHONY : md4c.c.s
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... edit_cache"
+ @echo "... rebuild_cache"
+ @echo "... md4c"
+ @echo "... md4c-html"
+ @echo "... entity.o"
+ @echo "... entity.i"
+ @echo "... entity.s"
+ @echo "... md4c-html.o"
+ @echo "... md4c-html.i"
+ @echo "... md4c-html.s"
+ @echo "... md4c.o"
+ @echo "... md4c.i"
+ @echo "... md4c.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/Src/Libs/cmake_install.cmake b/Src/Libs/cmake_install.cmake
new file mode 100644
index 0000000..36cdebf
--- /dev/null
+++ b/Src/Libs/cmake_install.cmake
@@ -0,0 +1,44 @@
+# Install script for directory: /home/rosia/Programming/Cpp/BlogParser/Src/Libs
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ set(CMAKE_INSTALL_PREFIX "/usr/local")
+endif()
+string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+ if(BUILD_TYPE)
+ string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+ CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+ else()
+ set(CMAKE_INSTALL_CONFIG_NAME "Debug")
+ endif()
+ message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+endif()
+
+# Set the component getting installed.
+if(NOT CMAKE_INSTALL_COMPONENT)
+ if(COMPONENT)
+ message(STATUS "Install component: \"${COMPONENT}\"")
+ set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+ else()
+ set(CMAKE_INSTALL_COMPONENT)
+ endif()
+endif()
+
+# Install shared libraries without execute permission?
+if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
+ set(CMAKE_INSTALL_SO_NO_EXE "1")
+endif()
+
+# Is this installation the result of a crosscompile?
+if(NOT DEFINED CMAKE_CROSSCOMPILING)
+ set(CMAKE_CROSSCOMPILING "FALSE")
+endif()
+
+# Set default install directory permissions.
+if(NOT DEFINED CMAKE_OBJDUMP)
+ set(CMAKE_OBJDUMP "/usr/bin/objdump")
+endif()
+
diff --git a/Src/Makefile b/Src/Makefile
new file mode 100644
index 0000000..15120ef
--- /dev/null
+++ b/Src/Makefile
@@ -0,0 +1,377 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+# Allow only one "make -f Makefile2" at a time, but pass parallelism.
+.NOTPARALLEL:
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/rosia/Programming/Cpp/BlogParser
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..."
+ /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+.PHONY : edit_cache/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+.PHONY : rebuild_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ cd /home/rosia/Programming/Cpp/BlogParser && $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles /home/rosia/Programming/Cpp/BlogParser/Src//CMakeFiles/progress.marks
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/rosia/Programming/Cpp/BlogParser/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Convenience name for target.
+Src/CMakeFiles/blog.dir/rule:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/CMakeFiles/blog.dir/rule
+.PHONY : Src/CMakeFiles/blog.dir/rule
+
+# Convenience name for target.
+blog: Src/CMakeFiles/blog.dir/rule
+.PHONY : blog
+
+# fast build rule for target.
+blog/fast:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/blog.dir/build.make Src/CMakeFiles/blog.dir/build
+.PHONY : blog/fast
+
+# Convenience name for target.
+Src/CMakeFiles/BlogParser.dir/rule:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/CMakeFiles/BlogParser.dir/rule
+.PHONY : Src/CMakeFiles/BlogParser.dir/rule
+
+# Convenience name for target.
+BlogParser: Src/CMakeFiles/BlogParser.dir/rule
+.PHONY : BlogParser
+
+# fast build rule for target.
+BlogParser/fast:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogParser.dir/build.make Src/CMakeFiles/BlogParser.dir/build
+.PHONY : BlogParser/fast
+
+# Convenience name for target.
+Src/CMakeFiles/BlogPageBuilder.dir/rule:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/CMakeFiles/BlogPageBuilder.dir/rule
+.PHONY : Src/CMakeFiles/BlogPageBuilder.dir/rule
+
+# Convenience name for target.
+BlogPageBuilder: Src/CMakeFiles/BlogPageBuilder.dir/rule
+.PHONY : BlogPageBuilder
+
+# fast build rule for target.
+BlogPageBuilder/fast:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogPageBuilder.dir/build.make Src/CMakeFiles/BlogPageBuilder.dir/build
+.PHONY : BlogPageBuilder/fast
+
+# Convenience name for target.
+Src/CMakeFiles/AtomBuilder.dir/rule:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/CMakeFiles/AtomBuilder.dir/rule
+.PHONY : Src/CMakeFiles/AtomBuilder.dir/rule
+
+# Convenience name for target.
+AtomBuilder: Src/CMakeFiles/AtomBuilder.dir/rule
+.PHONY : AtomBuilder
+
+# fast build rule for target.
+AtomBuilder/fast:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/AtomBuilder.dir/build.make Src/CMakeFiles/AtomBuilder.dir/build
+.PHONY : AtomBuilder/fast
+
+# Convenience name for target.
+Src/CMakeFiles/Program.dir/rule:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 Src/CMakeFiles/Program.dir/rule
+.PHONY : Src/CMakeFiles/Program.dir/rule
+
+# Convenience name for target.
+Program: Src/CMakeFiles/Program.dir/rule
+.PHONY : Program
+
+# fast build rule for target.
+Program/fast:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/Program.dir/build.make Src/CMakeFiles/Program.dir/build
+.PHONY : Program/fast
+
+AtomBuilder.o: AtomBuilder.cpp.o
+.PHONY : AtomBuilder.o
+
+# target to build an object file
+AtomBuilder.cpp.o:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/AtomBuilder.dir/build.make Src/CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.o
+.PHONY : AtomBuilder.cpp.o
+
+AtomBuilder.i: AtomBuilder.cpp.i
+.PHONY : AtomBuilder.i
+
+# target to preprocess a source file
+AtomBuilder.cpp.i:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/AtomBuilder.dir/build.make Src/CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.i
+.PHONY : AtomBuilder.cpp.i
+
+AtomBuilder.s: AtomBuilder.cpp.s
+.PHONY : AtomBuilder.s
+
+# target to generate assembly for a file
+AtomBuilder.cpp.s:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/AtomBuilder.dir/build.make Src/CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.s
+.PHONY : AtomBuilder.cpp.s
+
+BlogPageBuilder.o: BlogPageBuilder.cpp.o
+.PHONY : BlogPageBuilder.o
+
+# target to build an object file
+BlogPageBuilder.cpp.o:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogPageBuilder.dir/build.make Src/CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.o
+.PHONY : BlogPageBuilder.cpp.o
+
+BlogPageBuilder.i: BlogPageBuilder.cpp.i
+.PHONY : BlogPageBuilder.i
+
+# target to preprocess a source file
+BlogPageBuilder.cpp.i:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogPageBuilder.dir/build.make Src/CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.i
+.PHONY : BlogPageBuilder.cpp.i
+
+BlogPageBuilder.s: BlogPageBuilder.cpp.s
+.PHONY : BlogPageBuilder.s
+
+# target to generate assembly for a file
+BlogPageBuilder.cpp.s:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogPageBuilder.dir/build.make Src/CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.s
+.PHONY : BlogPageBuilder.cpp.s
+
+BlogParser.o: BlogParser.cpp.o
+.PHONY : BlogParser.o
+
+# target to build an object file
+BlogParser.cpp.o:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogParser.dir/build.make Src/CMakeFiles/BlogParser.dir/BlogParser.cpp.o
+.PHONY : BlogParser.cpp.o
+
+BlogParser.i: BlogParser.cpp.i
+.PHONY : BlogParser.i
+
+# target to preprocess a source file
+BlogParser.cpp.i:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogParser.dir/build.make Src/CMakeFiles/BlogParser.dir/BlogParser.cpp.i
+.PHONY : BlogParser.cpp.i
+
+BlogParser.s: BlogParser.cpp.s
+.PHONY : BlogParser.s
+
+# target to generate assembly for a file
+BlogParser.cpp.s:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogParser.dir/build.make Src/CMakeFiles/BlogParser.dir/BlogParser.cpp.s
+.PHONY : BlogParser.cpp.s
+
+Page.o: Page.cpp.o
+.PHONY : Page.o
+
+# target to build an object file
+Page.cpp.o:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogPageBuilder.dir/build.make Src/CMakeFiles/BlogPageBuilder.dir/Page.cpp.o
+.PHONY : Page.cpp.o
+
+Page.i: Page.cpp.i
+.PHONY : Page.i
+
+# target to preprocess a source file
+Page.cpp.i:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogPageBuilder.dir/build.make Src/CMakeFiles/BlogPageBuilder.dir/Page.cpp.i
+.PHONY : Page.cpp.i
+
+Page.s: Page.cpp.s
+.PHONY : Page.s
+
+# target to generate assembly for a file
+Page.cpp.s:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/BlogPageBuilder.dir/build.make Src/CMakeFiles/BlogPageBuilder.dir/Page.cpp.s
+.PHONY : Page.cpp.s
+
+Program.o: Program.cpp.o
+.PHONY : Program.o
+
+# target to build an object file
+Program.cpp.o:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/Program.dir/build.make Src/CMakeFiles/Program.dir/Program.cpp.o
+.PHONY : Program.cpp.o
+
+Program.i: Program.cpp.i
+.PHONY : Program.i
+
+# target to preprocess a source file
+Program.cpp.i:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/Program.dir/build.make Src/CMakeFiles/Program.dir/Program.cpp.i
+.PHONY : Program.cpp.i
+
+Program.s: Program.cpp.s
+.PHONY : Program.s
+
+# target to generate assembly for a file
+Program.cpp.s:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/Program.dir/build.make Src/CMakeFiles/Program.dir/Program.cpp.s
+.PHONY : Program.cpp.s
+
+blog.o: blog.cpp.o
+.PHONY : blog.o
+
+# target to build an object file
+blog.cpp.o:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/blog.dir/build.make Src/CMakeFiles/blog.dir/blog.cpp.o
+.PHONY : blog.cpp.o
+
+blog.i: blog.cpp.i
+.PHONY : blog.i
+
+# target to preprocess a source file
+blog.cpp.i:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/blog.dir/build.make Src/CMakeFiles/blog.dir/blog.cpp.i
+.PHONY : blog.cpp.i
+
+blog.s: blog.cpp.s
+.PHONY : blog.s
+
+# target to generate assembly for a file
+blog.cpp.s:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(MAKE) $(MAKESILENT) -f Src/CMakeFiles/blog.dir/build.make Src/CMakeFiles/blog.dir/blog.cpp.s
+.PHONY : blog.cpp.s
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... edit_cache"
+ @echo "... rebuild_cache"
+ @echo "... AtomBuilder"
+ @echo "... BlogPageBuilder"
+ @echo "... BlogParser"
+ @echo "... Program"
+ @echo "... blog"
+ @echo "... AtomBuilder.o"
+ @echo "... AtomBuilder.i"
+ @echo "... AtomBuilder.s"
+ @echo "... BlogPageBuilder.o"
+ @echo "... BlogPageBuilder.i"
+ @echo "... BlogPageBuilder.s"
+ @echo "... BlogParser.o"
+ @echo "... BlogParser.i"
+ @echo "... BlogParser.s"
+ @echo "... Page.o"
+ @echo "... Page.i"
+ @echo "... Page.s"
+ @echo "... Program.o"
+ @echo "... Program.i"
+ @echo "... Program.s"
+ @echo "... blog.o"
+ @echo "... blog.i"
+ @echo "... blog.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ cd /home/rosia/Programming/Cpp/BlogParser && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/Src/Page.cpp b/Src/Page.cpp
index 2d640f5..dc6811f 100644
--- a/Src/Page.cpp
+++ b/Src/Page.cpp
@@ -35,6 +35,16 @@ Page::Page(std::string sourceFileUrl, std::string outFolderUrl)
this->outFileUrl = outFolderUrl + getRelativeOutUrl();
}
+std::string Page::getLastTimeEdited()
+{
+ struct stat attr;
+ stat(sourceFileUrl.c_str(), &attr);
+ char timeString[std::size("yyyy-mm-ddThh:mm:ssZ")];
+ std::strftime(std::data(timeString), std::size(timeString),
+ "%FT%TZ", std::gmtime(&attr.st_mtime));
+ return timeString;
+}
+
std::string Page::getSourceFileContents()
{
return sourceFileContents;
diff --git a/Src/Page.h b/Src/Page.h
index 0cf62d9..6b582df 100644
--- a/Src/Page.h
+++ b/Src/Page.h
@@ -5,6 +5,8 @@
#include
#include
#include
+#include
+#include
#include "MacroDefinitions.h"
@@ -48,9 +50,9 @@ public:
Page(std::string sourceFileUrl, std::string outFolderUrl);
std::string getSourceFileContents();
+ std::string getLastTimeEdited();
std::string getInUrl();
-
std::string getOutUrl();
std::string getRelativeOutUrl();
diff --git a/Src/Program.cpp b/Src/Program.cpp
new file mode 100644
index 0000000..fbadf51
--- /dev/null
+++ b/Src/Program.cpp
@@ -0,0 +1,50 @@
+#include "Program.h"
+
+void Program::collectPages()
+{
+ auto directoryIterator = std::filesystem::recursive_directory_iterator(inFolderUrl);
+ for(auto file : directoryIterator)
+ {
+ if (file.is_directory())
+ continue;
+ pages.push_back(new Page(file.path(), outFolderUrl));
+ }
+}
+
+Program::Program(std::string inFolderUrl, std::string outFolderUrl, std::string pageTemplate, std::string atomTemplate, std::string siteWebUrl, int flags)
+{
+ this->inFolderUrl = inFolderUrl;
+ this->outFolderUrl = outFolderUrl;
+ this->siteWebUrl = siteWebUrl;
+
+ collectPages();
+
+ blogPageBuilder = new BlogPageBuilder(pageTemplate, pages, inFolderUrl, flags);
+ blogParser = new BlogParser();
+ atomBuilder = new AtomBuilder(atomTemplate);
+}
+
+Program::~Program()
+{
+for(Page* page : pages)
+ delete page;
+
+}
+
+void Program::buildAll()
+{
+ for(Page* page : pages)
+ {
+ std::string articleHTML = blogParser->parse(page->getSourceFileContents());
+
+ page->setOutFileContents(blogPageBuilder->createPage(articleHTML));
+ page->writePageToFile();
+
+ atomBuilder->addHTMLEntry(articleHTML,
+ page->getPageTitle(),
+ siteWebUrl + page->getRelativeOutUrl(),
+ page->getLastTimeEdited());
+ }
+
+ atomBuilder->writeToFile(outFolderUrl);
+}
diff --git a/Src/Program.h b/Src/Program.h
new file mode 100644
index 0000000..0be6e3f
--- /dev/null
+++ b/Src/Program.h
@@ -0,0 +1,28 @@
+#include
+
+#include "BlogPageBuilder.h"
+#include "AtomBuilder.h"
+#include "Page.h"
+#include "BlogParser.h"
+
+class Program
+{
+private:
+ BlogPageBuilder* blogPageBuilder;
+ BlogParser* blogParser;
+ AtomBuilder* atomBuilder;
+
+ std::string inFolderUrl;
+ std::string outFolderUrl;
+ std::string siteWebUrl;
+
+ std::vector pages;
+
+ void collectPages();
+
+public:
+ Program(std::string inFolderUrl, std::string outFolderUrl, std::string pageTemplate, std::string atomTemplate, std::string siteWebUrl, int flags);
+ ~Program();
+ void buildAll();
+
+};
diff --git a/Src/blog b/Src/blog
new file mode 100755
index 0000000..6e407df
Binary files /dev/null and b/Src/blog differ
diff --git a/Src/blog.cpp b/Src/blog.cpp
index 45e1bc8..bd260b9 100644
--- a/Src/blog.cpp
+++ b/Src/blog.cpp
@@ -5,7 +5,7 @@
#include
#include
-#include "BlogPageBuilder.h"
+#include "Program.h"
std::string findAndReplace(std::string text, std::string find, std::string replace)
@@ -69,14 +69,16 @@ int main(int argc, char* argv[])
std::string stat = getArgValue(argc, argv, "-static=");
if (stat == "")
stat = STATIC_RESOURCES_FOLDER;
+ std::string siteWebUrl = getArgValue(argc, argv, "-url=");
+ if (siteWebUrl == "")
+ siteWebUrl = SITE_WEB_URL;
int flags = OptionFlags::NONE;
if (doesArgExist(argc, argv, "-hide"))
flags |= OptionFlags::HIDE_PRIVATE;
- // generated pages
- BlogPageBuilder* builder = new BlogPageBuilder(RESOURCE_FOLDER "/Templates/BlogPageTemplate.html", source, output, flags);
- builder->buildAllPages();
+ Program* program = new Program(source, output, RESOURCE_FOLDER "/Templates/BlogPageTemplate.html", RESOURCE_FOLDER "/Templates/AtomFeedTemplate.xml", siteWebUrl, flags);
+ program->buildAll();
// pre-written pages and resources i.e. images
copyFolderAndContents(stat, output);
diff --git a/Src/cmake_install.cmake b/Src/cmake_install.cmake
new file mode 100644
index 0000000..b503e75
--- /dev/null
+++ b/Src/cmake_install.cmake
@@ -0,0 +1,49 @@
+# Install script for directory: /home/rosia/Programming/Cpp/BlogParser/Src
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ set(CMAKE_INSTALL_PREFIX "/usr/local")
+endif()
+string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+ if(BUILD_TYPE)
+ string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+ CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+ else()
+ set(CMAKE_INSTALL_CONFIG_NAME "Debug")
+ endif()
+ message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+endif()
+
+# Set the component getting installed.
+if(NOT CMAKE_INSTALL_COMPONENT)
+ if(COMPONENT)
+ message(STATUS "Install component: \"${COMPONENT}\"")
+ set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+ else()
+ set(CMAKE_INSTALL_COMPONENT)
+ endif()
+endif()
+
+# Install shared libraries without execute permission?
+if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
+ set(CMAKE_INSTALL_SO_NO_EXE "1")
+endif()
+
+# Is this installation the result of a crosscompile?
+if(NOT DEFINED CMAKE_CROSSCOMPILING)
+ set(CMAKE_CROSSCOMPILING "FALSE")
+endif()
+
+# Set default install directory permissions.
+if(NOT DEFINED CMAKE_OBJDUMP)
+ set(CMAKE_OBJDUMP "/usr/bin/objdump")
+endif()
+
+if(NOT CMAKE_INSTALL_LOCAL_ONLY)
+ # Include the install script for the subdirectory.
+ include("/home/rosia/Programming/Cpp/BlogParser/Src/Libs/cmake_install.cmake")
+endif()
+
diff --git a/cmake_install.cmake b/cmake_install.cmake
new file mode 100644
index 0000000..74acbb2
--- /dev/null
+++ b/cmake_install.cmake
@@ -0,0 +1,59 @@
+# Install script for directory: /home/rosia/Programming/Cpp/BlogParser
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ set(CMAKE_INSTALL_PREFIX "/usr/local")
+endif()
+string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+ if(BUILD_TYPE)
+ string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+ CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+ else()
+ set(CMAKE_INSTALL_CONFIG_NAME "Debug")
+ endif()
+ message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+endif()
+
+# Set the component getting installed.
+if(NOT CMAKE_INSTALL_COMPONENT)
+ if(COMPONENT)
+ message(STATUS "Install component: \"${COMPONENT}\"")
+ set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+ else()
+ set(CMAKE_INSTALL_COMPONENT)
+ endif()
+endif()
+
+# Install shared libraries without execute permission?
+if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
+ set(CMAKE_INSTALL_SO_NO_EXE "1")
+endif()
+
+# Is this installation the result of a crosscompile?
+if(NOT DEFINED CMAKE_CROSSCOMPILING)
+ set(CMAKE_CROSSCOMPILING "FALSE")
+endif()
+
+# Set default install directory permissions.
+if(NOT DEFINED CMAKE_OBJDUMP)
+ set(CMAKE_OBJDUMP "/usr/bin/objdump")
+endif()
+
+if(NOT CMAKE_INSTALL_LOCAL_ONLY)
+ # Include the install script for the subdirectory.
+ include("/home/rosia/Programming/Cpp/BlogParser/Src/cmake_install.cmake")
+endif()
+
+if(CMAKE_INSTALL_COMPONENT)
+ set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
+else()
+ set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
+endif()
+
+string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
+ "${CMAKE_INSTALL_MANIFEST_FILES}")
+file(WRITE "/home/rosia/Programming/Cpp/BlogParser/${CMAKE_INSTALL_MANIFEST}"
+ "${CMAKE_INSTALL_MANIFEST_CONTENT}")
diff --git a/compile_commands.json b/compile_commands.json
new file mode 100644
index 0000000..0cf11b6
--- /dev/null
+++ b/compile_commands.json
@@ -0,0 +1,52 @@
+[
+{
+ "directory": "/home/rosia/Programming/Cpp/BlogParser/Src",
+ "command": "/usr/bin/c++ -I/home/rosia/Programming/Cpp/BlogParser -g -std=gnu++20 -o CMakeFiles/BlogParser.dir/BlogParser.cpp.o -c /home/rosia/Programming/Cpp/BlogParser/Src/BlogParser.cpp",
+ "file": "/home/rosia/Programming/Cpp/BlogParser/Src/BlogParser.cpp"
+},
+{
+ "directory": "/home/rosia/Programming/Cpp/BlogParser/Src",
+ "command": "/usr/bin/c++ -I/home/rosia/Programming/Cpp/BlogParser -g -std=gnu++20 -o CMakeFiles/BlogPageBuilder.dir/BlogPageBuilder.cpp.o -c /home/rosia/Programming/Cpp/BlogParser/Src/BlogPageBuilder.cpp",
+ "file": "/home/rosia/Programming/Cpp/BlogParser/Src/BlogPageBuilder.cpp"
+},
+{
+ "directory": "/home/rosia/Programming/Cpp/BlogParser/Src",
+ "command": "/usr/bin/c++ -I/home/rosia/Programming/Cpp/BlogParser -g -std=gnu++20 -o CMakeFiles/BlogPageBuilder.dir/Page.cpp.o -c /home/rosia/Programming/Cpp/BlogParser/Src/Page.cpp",
+ "file": "/home/rosia/Programming/Cpp/BlogParser/Src/Page.cpp"
+},
+{
+ "directory": "/home/rosia/Programming/Cpp/BlogParser/Src",
+ "command": "/usr/bin/c++ -I/home/rosia/Programming/Cpp/BlogParser -g -std=gnu++20 -o CMakeFiles/AtomBuilder.dir/AtomBuilder.cpp.o -c /home/rosia/Programming/Cpp/BlogParser/Src/AtomBuilder.cpp",
+ "file": "/home/rosia/Programming/Cpp/BlogParser/Src/AtomBuilder.cpp"
+},
+{
+ "directory": "/home/rosia/Programming/Cpp/BlogParser/Src",
+ "command": "/usr/bin/c++ -I/home/rosia/Programming/Cpp/BlogParser -g -std=gnu++20 -o CMakeFiles/Program.dir/Program.cpp.o -c /home/rosia/Programming/Cpp/BlogParser/Src/Program.cpp",
+ "file": "/home/rosia/Programming/Cpp/BlogParser/Src/Program.cpp"
+},
+{
+ "directory": "/home/rosia/Programming/Cpp/BlogParser/Src",
+ "command": "/usr/bin/c++ -I/home/rosia/Programming/Cpp/BlogParser/Src/Src -I/home/rosia/Programming/Cpp/BlogParser -g -std=gnu++20 -o CMakeFiles/blog.dir/blog.cpp.o -c /home/rosia/Programming/Cpp/BlogParser/Src/blog.cpp",
+ "file": "/home/rosia/Programming/Cpp/BlogParser/Src/blog.cpp"
+},
+{
+ "directory": "/home/rosia/Programming/Cpp/BlogParser/Src/Libs",
+ "command": "/usr/bin/cc -g -o CMakeFiles/md4c.dir/md4c.c.o -c /home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c.c",
+ "file": "/home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c.c"
+},
+{
+ "directory": "/home/rosia/Programming/Cpp/BlogParser/Src/Libs",
+ "command": "/usr/bin/cc -g -o CMakeFiles/md4c-html.dir/md4c-html.c.o -c /home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c-html.c",
+ "file": "/home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c-html.c"
+},
+{
+ "directory": "/home/rosia/Programming/Cpp/BlogParser/Src/Libs",
+ "command": "/usr/bin/cc -g -o CMakeFiles/md4c-html.dir/entity.c.o -c /home/rosia/Programming/Cpp/BlogParser/Src/Libs/entity.c",
+ "file": "/home/rosia/Programming/Cpp/BlogParser/Src/Libs/entity.c"
+},
+{
+ "directory": "/home/rosia/Programming/Cpp/BlogParser/Src/Libs",
+ "command": "/usr/bin/cc -g -o CMakeFiles/md4c-html.dir/md4c.c.o -c /home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c.c",
+ "file": "/home/rosia/Programming/Cpp/BlogParser/Src/Libs/md4c.c"
+}
+]
\ No newline at end of file