// ~Musa - This is a unity build, where all source files in the project is combined into a single // translation unit. // lib_main.cpp can be treated as a single-header library and added to a project like that. // #TODO: #Library This is quite disorganized. There must be a better way to do this by moving the // typedefs and procedures that require forward declaration to the top with a metaprogram. // [ ] Linux / MacOS Ports // Not implemented as distinct types: singly-linked list, doubly-linked list // I'll see where it's used most often and see if I can make macros or templates to make // them easier to use. #include "lib/meta_generated.h" #include "lib/Base/Base.h" #include "lib/Base/Allocator.h" #include "lib/Base/Array.h" #include "lib/Base/General_Purpose_Allocator.h" #include "lib/Base/Arena.h" #include "lib/Base/Arena_Array.h" #include "lib/Base/String.h" #include "lib/Base/Hash_Functions.h" #include "lib/Base/Hash_Table.h" #include "lib/Base/Arena_Hash_Table.h" #if OS_WINDOWS # include "lib/OS/OS_Win32.h" #endif #include "lib/UI/Layout.h" #include "lib/Base/Logger.h" #include "lib/Base/Serializer.h" #include "lib/Base/Base_Thread_Context.h" #include "lib/Base/Expandable_Arena.h" #include "lib/Base/Timing.h" #include "lib/Base/Arena_Free_List.cpp" #include "lib/Base/Arena.cpp" #include "lib/Base/String.cpp" #include "lib/Base/Unicode.cpp" #include "lib/Base/RadixSort.cpp" #include "lib/Base/Base_Thread_Context.cpp" #include "lib/Base/ErrorType.cpp" #include "lib/Base/Logger.cpp" #include "lib/Base/Expandable_Arena.cpp" #include "lib/Base/Allocator.cpp" #include "lib/Base/General_Purpose_Allocator.cpp" // OS-Abstraction Layer #include "lib/Base/Threads.cpp" #include "lib/OS/OS_Filesystem.cpp" #include "lib/Base/Thread_Group.cpp" #if OS_WINDOWS # include "lib/OS/OS_Win32.cpp" // # include "lib/OS/OS_Win32_NTFS.cpp" #endif #include "lib/Graphics.cpp" // #if OS_LINUX.. // #include "src/OS_Linux.cpp" // #if OS_MACOS.. // #include "src/OS_MacOS.cpp"