init
This commit is contained in:
+46
-3
@@ -12,14 +12,51 @@ set(CMAKE_CXX_EXTENSIONS OFF) # -std=c++20 statt -std=gnu++20
|
||||
# ---------------------------------------------------------------------------
|
||||
# Conan-generierte Pakete einbinden (CMakeDeps-Finder liegen im build-Ordner)
|
||||
# ---------------------------------------------------------------------------
|
||||
# find_package(fmt REQUIRED) # Beispiel - einkommentieren wenn dep da ist
|
||||
# find_package(spdlog REQUIRED) # Beispiel
|
||||
# find_package(fmt REQUIRED) # einkommentieren wenn dep da ist
|
||||
# find_package(spdlog REQUIRED)
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Schicht 1 - Storage Engine (C)
|
||||
# Hinweis: neue .c-Dateien hier manuell eintragen (kein GLOB)
|
||||
# ---------------------------------------------------------------------------
|
||||
set(STORAGE_SOURCES
|
||||
src/storage/page.c
|
||||
src/storage/heap.c
|
||||
src/storage/btree.c
|
||||
src/storage/buffer_pool.c
|
||||
src/storage/free_space_map.c
|
||||
src/storage/arena.c
|
||||
src/storage/wal.c
|
||||
)
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Schicht 2 - Engine Logic (C++)
|
||||
# ---------------------------------------------------------------------------
|
||||
set(ENGINE_SOURCES
|
||||
src/engine/query_router.cpp
|
||||
src/engine/delta_merge.cpp
|
||||
src/engine/mvcc.cpp
|
||||
src/engine/executor.cpp
|
||||
)
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Schicht 3 - SQL Frontend (C++)
|
||||
# ---------------------------------------------------------------------------
|
||||
set(SQL_SOURCES
|
||||
src/sql/tokenizer.cpp
|
||||
src/sql/parser.cpp
|
||||
src/sql/ast.cpp
|
||||
src/sql/planner.cpp
|
||||
)
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Hauptprogramm
|
||||
# ---------------------------------------------------------------------------
|
||||
add_executable(pauldb
|
||||
src/main.cpp
|
||||
${STORAGE_SOURCES}
|
||||
${ENGINE_SOURCES}
|
||||
${SQL_SOURCES}
|
||||
)
|
||||
|
||||
target_include_directories(pauldb
|
||||
@@ -31,6 +68,12 @@ target_include_directories(pauldb
|
||||
# target_link_libraries(pauldb PRIVATE fmt::fmt spdlog::spdlog)
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Installationsregeln (für package() in conanfile.py)
|
||||
# Tests (CTest)
|
||||
# ---------------------------------------------------------------------------
|
||||
enable_testing()
|
||||
# add_subdirectory(test) # einkommentieren sobald erste Tests da sind
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Installationsregeln (fur package() in conanfile.py)
|
||||
# ---------------------------------------------------------------------------
|
||||
install(TARGETS pauldb DESTINATION bin)
|
||||
|
||||
Reference in New Issue
Block a user