# SQLite3: use system library on Linux, vendored amalgamation on Windows cross-compile find_package(SQLite3 QUIET) if(NOT SQLite3_FOUND) # Build from amalgamation set(SQLITE3_AMALG_DIR ${CMAKE_SOURCE_DIR}/vendor/sqlite3) add_library(sqlite3_vendored STATIC ${SQLITE3_AMALG_DIR}/sqlite3.c) target_include_directories(sqlite3_vendored PUBLIC ${SQLITE3_AMALG_DIR}) target_compile_definitions(sqlite3_vendored PRIVATE SQLITE_THREADSAFE=1 SQLITE_ENABLE_FTS5 SQLITE_ENABLE_JSON1 ) # Alias so we can use the same target name add_library(SQLite::SQLite3 ALIAS sqlite3_vendored) endif() add_imgui_app(registry_dashboard main.cpp data.cpp views.cpp ${CMAKE_SOURCE_DIR}/functions/viz/kpi_card.cpp ${CMAKE_SOURCE_DIR}/functions/viz/bar_chart.cpp ${CMAKE_SOURCE_DIR}/functions/viz/pie_chart.cpp ${CMAKE_SOURCE_DIR}/functions/viz/table_view.cpp ${CMAKE_SOURCE_DIR}/functions/viz/sparkline.cpp ${CMAKE_SOURCE_DIR}/functions/core/dashboard_panel.cpp ${CMAKE_SOURCE_DIR}/functions/core/dashboard_grid.cpp ${CMAKE_SOURCE_DIR}/functions/core/fps_overlay.cpp ${CMAKE_SOURCE_DIR}/functions/core/fullscreen_window.cpp ) target_include_directories(registry_dashboard PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ) target_link_libraries(registry_dashboard PRIVATE SQLite::SQLite3)