diff --git a/.gitmodules b/.gitmodules index d6e0625f..6cb52657 100644 --- a/.gitmodules +++ b/.gitmodules @@ -5,7 +5,7 @@ path = gpt4all-chat/deps/SingleApplication url = https://github.com/nomic-ai/SingleApplication.git [submodule "gpt4all-chat/deps/fmt"] - path = gpt4all-chat/deps/fmt + path = deps/fmt url = https://github.com/fmtlib/fmt.git [submodule "gpt4all-chat/deps/DuckX"] path = gpt4all-chat/deps/DuckX @@ -17,5 +17,8 @@ path = gpt4all-chat/deps/minja url = https://github.com/nomic-ai/minja.git [submodule "gpt4all-chat/deps/json"] - path = gpt4all-chat/deps/json + path = deps/json url = https://github.com/nlohmann/json.git +[submodule "gpt4all-backend/deps/ollama-hpp"] + path = gpt4all-backend/deps/ollama-hpp + url = github.com:nomic-ai/ollama-hpp.git diff --git a/deps/CMakeLists.txt b/deps/CMakeLists.txt new file mode 100644 index 00000000..3d30464c --- /dev/null +++ b/deps/CMakeLists.txt @@ -0,0 +1,6 @@ +set(BUILD_SHARED_LIBS OFF) + +set(FMT_INSTALL OFF) +add_subdirectory(fmt) + +add_subdirectory(json) diff --git a/gpt4all-chat/deps/fmt b/deps/fmt similarity index 100% rename from gpt4all-chat/deps/fmt rename to deps/fmt diff --git a/gpt4all-chat/deps/json b/deps/json similarity index 100% rename from gpt4all-chat/deps/json rename to deps/json diff --git a/gpt4all-backend/CMakeLists.txt b/gpt4all-backend/CMakeLists.txt index acca238c..546d4a60 100644 --- a/gpt4all-backend/CMakeLists.txt +++ b/gpt4all-backend/CMakeLists.txt @@ -4,4 +4,6 @@ project(gpt4all-backend VERSION 0.1 LANGUAGES CXX) find_package(Qt6 6.8 COMPONENTS Core REQUIRED) +add_subdirectory(../deps "${CMAKE_CURRENT_BINARY_DIR}/common_deps") +add_subdirectory(deps) add_subdirectory(src) diff --git a/gpt4all-backend/deps/CMakeLists.txt b/gpt4all-backend/deps/CMakeLists.txt new file mode 100644 index 00000000..ca433bc3 --- /dev/null +++ b/gpt4all-backend/deps/CMakeLists.txt @@ -0,0 +1,7 @@ +add_library(ollama-hpp INTERFACE) +target_include_directories(ollama-hpp INTERFACE + "${CMAKE_CURRENT_SOURCE_DIR}/ollama-hpp/include" +) +target_link_libraries(ollama-hpp INTERFACE + nlohmann_json::nlohmann_json +) diff --git a/gpt4all-backend/deps/ollama-hpp b/gpt4all-backend/deps/ollama-hpp new file mode 160000 index 00000000..9d697d1b --- /dev/null +++ b/gpt4all-backend/deps/ollama-hpp @@ -0,0 +1 @@ +Subproject commit 9d697d1b5828d8bf143f4ef4de6432c479298c65 diff --git a/gpt4all-backend/src/CMakeLists.txt b/gpt4all-backend/src/CMakeLists.txt index 9ce52152..bde94ce5 100644 --- a/gpt4all-backend/src/CMakeLists.txt +++ b/gpt4all-backend/src/CMakeLists.txt @@ -14,6 +14,9 @@ target_sources(${TARGET} PUBLIC main.cppm ) gpt4all_add_warning_options(${TARGET}) -target_link_libraries(${TARGET} PRIVATE +target_link_libraries(${TARGET} PUBLIC Qt6::Core ) +target_link_libraries(${TARGET} PRIVATE + fmt::fmt ollama-hpp +) diff --git a/gpt4all-backend/src/main.cpp b/gpt4all-backend/src/main.cpp index 93222896..8f44d857 100644 --- a/gpt4all-backend/src/main.cpp +++ b/gpt4all-backend/src/main.cpp @@ -4,6 +4,8 @@ module; #include +#include + module gpt4all.backend.main; diff --git a/gpt4all-chat/CMakeLists.txt b/gpt4all-chat/CMakeLists.txt index af958afd..11984992 100644 --- a/gpt4all-chat/CMakeLists.txt +++ b/gpt4all-chat/CMakeLists.txt @@ -144,6 +144,7 @@ configure_file( "${CMAKE_CURRENT_BINARY_DIR}/config.h" ) +add_subdirectory(../deps "${CMAKE_CURRENT_BINARY_DIR}/common_deps") add_subdirectory(deps) add_subdirectory(../gpt4all-backend llmodel) @@ -456,9 +457,7 @@ else() target_link_libraries(chat PRIVATE pdfium) endif() target_link_libraries(chat - PRIVATE llmodel SingleApplication fmt::fmt duckx::duckx QXlsx) -target_include_directories(chat PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/deps/json/include) -target_include_directories(chat PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/deps/json/include/nlohmann) + PRIVATE llmodel nlohmann_json::nlohmann_json SingleApplication fmt::fmt duckx::duckx QXlsx) target_include_directories(chat PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/deps/minja/include) if (APPLE) diff --git a/gpt4all-chat/deps/minja b/gpt4all-chat/deps/minja index e97bb244..ee903646 160000 --- a/gpt4all-chat/deps/minja +++ b/gpt4all-chat/deps/minja @@ -1 +1 @@ -Subproject commit e97bb2442cd6ab3d5bb5f5a3e8a1f7d6081d613b +Subproject commit ee903646db1e6cb63dc5f864bb9834eb41422e21