Skip to content
This repository was archived by the owner on Jul 4, 2025. It is now read-only.

Commit 60169d5

Browse files
committed
fix: windows
1 parent b967781 commit 60169d5

File tree

15 files changed

+91
-36
lines changed

15 files changed

+91
-36
lines changed

engine/CMakeLists.txt

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -44,21 +44,22 @@ if(NOT CORTEX_CQA)
4444
add_link_options($<$<CONFIG:Release>:-flto>)
4545
elseif(MSVC)
4646
# Add optimization flags for MSVC
47-
add_compile_options($<$<CONFIG:Release>:/O2>)
47+
# add_compile_options($<$<CONFIG:Release>:/O2>)
4848
# Optional: Link-time optimization
49-
add_compile_options($<$<CONFIG:Release>:/GL>)
50-
add_link_options($<$<CONFIG:Release>:/LTCG>)
49+
# add_compile_options($<$<CONFIG:Release>:/GL>)
50+
# add_link_options($<$<CONFIG:Release>:/LTCG>)
5151
endif()
5252
endif()
5353

5454
if(MSVC)
55-
add_compile_options(
56-
$<$<CONFIG:>:/MT> #---------|
57-
$<$<CONFIG:Debug>:/MTd> #---|-- Statically link the runtime libraries
58-
$<$<CONFIG:Release>:/MT> #--|
59-
$<$<CONFIG:Release>:/O2> #--|-- Optimize for speed in Release mode
60-
$<$<CONFIG:Release>:/Ob2> #-|-- Inline any suitable function
61-
)
55+
# set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
56+
# add_compile_options(
57+
# $<$<CONFIG:>:/MT> #---------|
58+
# $<$<CONFIG:Debug>:/MTd> #---|-- Statically link the runtime libraries
59+
# $<$<CONFIG:Release>:/MT> #--|
60+
# $<$<CONFIG:Release>:/O2> #--|-- Optimize for speed in Release mode
61+
# $<$<CONFIG:Release>:/Ob2> #-|-- Inline any suitable function
62+
# )
6263

6364
add_compile_options(/utf-8)
6465
add_definitions(-DUNICODE -D_UNICODE)
@@ -95,10 +96,10 @@ add_compile_definitions(CORTEX_CONFIG_FILE_PATH="${CORTEX_CONFIG_FILE_PATH}")
9596
option(CMAKE_BUILD_TEST "Enable testing" ON)
9697
option(CMAKE_BUILD_INJA_TEST "Enable inja example" OFF)
9798
# if(CMAKE_BUILD_TEST)
98-
add_subdirectory(test)
99+
# add_subdirectory(test)
99100
# endif()
100101

101-
add_subdirectory(cli)
102+
# add_subdirectory(cli)
102103

103104
if(CMAKE_BUILD_INJA_TEST)
104105
add_subdirectory(examples/inja)
@@ -183,6 +184,7 @@ file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/cortex_openapi.h"
183184
"}\n"
184185
)
185186
## End of generating openapi json
187+
MESSAGE("SOURCE_DIR"${CMAKE_CURRENT_SOURCE_DIR})
186188
add_executable(${TARGET_NAME} main.cc
187189
${CMAKE_CURRENT_SOURCE_DIR}/utils/cpuid/cpu_info.cc
188190
${CMAKE_CURRENT_SOURCE_DIR}/utils/file_logger.cc
@@ -205,6 +207,7 @@ target_include_directories(${TARGET_NAME} PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/.
205207

206208
target_link_libraries(${TARGET_NAME} PRIVATE minizip)
207209
target_link_libraries(${TARGET_NAME} PRIVATE archive)
210+
target_link_libraries(${TARGET_NAME} PRIVATE trantor)
208211
target_link_libraries(${TARGET_NAME} PRIVATE drogon)
209212
target_link_libraries(${TARGET_NAME} PRIVATE SQLiteCpp)
210213
target_link_libraries(${TARGET_NAME} PRIVATE ${JSONCPP})

engine/cli/main.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ int main(int argc, char* argv[]) {
9090
return 1;
9191
}
9292

93-
SSL_library_init();
93+
// SSL_library_init();
9494
curl_global_init(CURL_GLOBAL_DEFAULT);
9595

9696
bool should_install_server = false;

engine/cmake/drogon.cmake

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,17 +35,21 @@ set(USE_OSSP_UUID TRUE)
3535
# set(OPENSSL_CRYPTO_LIBRARY Crypto)
3636
set(OPENSSL_INSTALL_DIR ${CMAKE_CURRENT_BINARY_DIR}/../build_deps/openssl)
3737
set(OPENSSL_INCLUDE_DIR ${OPENSSL_INSTALL_DIR}/include)
38-
set(OPENSSL_ROOT_DIR ${OPENSSL_INSTALL_DIR}/lib64)
38+
set(OPENSSL_ROOT_DIR ${OPENSSL_INSTALL_DIR}/lib)
3939
# set(OPENSSL_INCLUDE_DIR "${openssl_BINARY_DIR}/include" "${openssl_BINARY_DIR}")
4040

41+
set(ZLIB_INSTALL_DIR ${CMAKE_CURRENT_BINARY_DIR}/../build_deps/zlib/install)
42+
set(ZLIB_INCLUDE_DIR ${ZLIB_INSTALL_DIR}/include)
43+
set(ZLIB_LIBRARY ${ZLIB_INSTALL_DIR}/lib/zlib.lib)
44+
4145

4246
set(JSONCPP_INSTALL_DIR ${CMAKE_CURRENT_BINARY_DIR}/../build_deps/jsoncpp-lib)
43-
set(JSONCPP_LIBRARIES ${JSONCPP_INSTALL_DIR}/lib/libjsoncpp.so)
47+
set(JSONCPP_LIBRARIES ${JSONCPP_INSTALL_DIR}/lib/jsoncpp.lib)
4448
set(JSONCPP_INCLUDE_DIRS ${JSONCPP_INSTALL_DIR}/include)
4549
message("JSONCPP_INCLUDE_DIRS="${JSONCPP_INCLUDE_DIRS})
4650

4751
set(C-ARES_INSTALL_DIR ${CMAKE_CURRENT_BINARY_DIR}/../build_deps/c-ares-lib)
48-
set(C-ARES_LIBRARIES ${C-ARES_INSTALL_DIR}/lib/libcares.so)
52+
set(C-ARES_LIBRARIES ${C-ARES_INSTALL_DIR}/lib/cares.lib)
4953
set(C-ARES_INCLUDE_DIRS ${C-ARES_INSTALL_DIR}/include)
5054
# message("C-ARES_INCLUDE_DIRS="${C-ARES_INCLUDE_DIRS})
5155
# FetchContent_GetProperties(openssl)

engine/cmake/jsoncpp.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ include(ExternalProject)
2323
set(jsoncpp_install_prefix ${CMAKE_CURRENT_BINARY_DIR}/jsoncpp-lib)
2424
ExternalProject_Add(jsoncpp-project
2525
GIT_REPOSITORY https://github.com/open-source-parsers/jsoncpp.git
26-
GIT_TAG 1.9.5
26+
GIT_TAG 1.9.6
2727
SOURCE_DIR ${CMAKE_CURRENT_BINARY_DIR}/jsoncpp-src
2828
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/jsoncpp-build
2929
INSTALL_DIR ${jsoncpp_install_prefix}

engine/cmake/minizip.cmake

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@ include(FetchContent)
22

33
include(cmake/utils.cmake)
44
# set(ENABLE_TEST OFF)
5-
5+
# set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
66
MESSAGE("Start minizip")
77
FetchContent_Declare(minizip
88
GIT_REPOSITORY https://github.com/zlib-ng/minizip-ng.git
99
GIT_TAG 4.0.8
1010
)
1111

12-
FetchContent_MakeAvailable(minizip)
12+
# FetchContent_MakeAvailable(minizip)
1313
MESSAGE("End minizip")
1414

15-
# FetchContent_MakeAvailableWithArgs(minizip MZ_BUILD_TESTS=OFF)
15+
FetchContent_MakeAvailableWithArgs(minizip MZ_BUILD_TESTS=OFF BUILD_SHARED_LIBS=OFF)

engine/cmake/openssl.cmake

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,26 @@
1414

1515
include(ExternalProject)
1616

17+
# Define directories for dependencies
18+
set(DEPS_DIR ${CMAKE_BINARY_DIR}/)
19+
MESSAGE("DEPS_DIR="${DEPS_DIR})
20+
set(ZLIB_INSTALL_DIR ${DEPS_DIR}/zlib/install)
21+
22+
# Add zlib as an external project
23+
# set(ZLIB_USE_STATIC_LIBS ON)
24+
ExternalProject_Add(
25+
zlib
26+
GIT_REPOSITORY https://github.com/madler/zlib.git
27+
GIT_TAG v1.2.11
28+
CMAKE_ARGS
29+
-DBUILD_SHARED_LIBS=ON
30+
-DCMAKE_INSTALL_PREFIX=${ZLIB_INSTALL_DIR}
31+
)
32+
33+
# Set variables for zlib include and library directories
34+
set(ZLIB_INCLUDE_DIR ${ZLIB_INSTALL_DIR}/include)
35+
set(ZLIB_LIBRARY_DIR ${ZLIB_INSTALL_DIR}/lib)
36+
1737
set(OPENSSL_SOURCE_DIR ${CMAKE_CURRENT_BINARY_DIR}/openssl-src) # default path by CMake
1838
set(OPENSSL_INSTALL_DIR ${CMAKE_CURRENT_BINARY_DIR}/openssl)
1939
set(OPENSSL_INCLUDE_DIR ${OPENSSL_INSTALL_DIR}/include)
@@ -25,13 +45,10 @@ ExternalProject_Add(
2545
GIT_REPOSITORY https://github.com/openssl/openssl.git
2646
GIT_TAG openssl-3.4.1
2747
USES_TERMINAL_DOWNLOAD TRUE
28-
CONFIGURE_COMMAND
29-
${OPENSSL_CONFIGURE_COMMAND}
30-
--prefix=${OPENSSL_INSTALL_DIR}
31-
--openssldir=${OPENSSL_INSTALL_DIR}
32-
BUILD_COMMAND make
33-
TEST_COMMAND ""
34-
INSTALL_COMMAND make install
48+
CONFIGURE_COMMAND perl Configure VC-WIN64A no-idea no-mdc2 no-rc5 --prefix=<INSTALL_DIR> --openssldir=<INSTALL_DIR>/ssl
49+
BUILD_IN_SOURCE 1
50+
BUILD_COMMAND nmake
51+
INSTALL_COMMAND nmake install
3552
INSTALL_DIR ${OPENSSL_INSTALL_DIR}
3653
)
3754

engine/cmake/yaml-cpp.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ include(FetchContent)
22

33
FetchContent_Declare(yaml-cpp
44
GIT_REPOSITORY https://github.com/jbeder/yaml-cpp.git
5-
GIT_TAG yaml-cpp-0.7.0
5+
GIT_TAG 0.8.0
66
)
77

88
FetchContent_MakeAvailable(yaml-cpp)

engine/cmake/zlib.cmake

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
cmake_minimum_required(VERSION 3.25...3.31)
2+
3+
project(zlib_build LANGUAGES C)
4+
5+
include(ExternalProject)
6+
7+
ExternalProject_Add(
8+
zlib1
9+
DOWNLOAD_EXTRACT_TIMESTAMP TRUE
10+
PREFIX ${CMAKE_CURRENT_BINARY_DIR}
11+
#--Download step--------------
12+
GIT_REPOSITORY https://github.com/ClausKlein/zlib.git
13+
GIT_TAG release/v1.2.5
14+
#--Update/Patch step----------
15+
#--Configure step-------------
16+
USES_TERMINAL_CONFIGURE TRUE
17+
CONFIGURE_COMMAND cmake -G "${CMAKE_GENERATOR}" -S ../zlib1 -B . -D CMAKE_BUILD_TYPE=$<CONFIG>
18+
#--Build step-----------------
19+
USES_TERMINAL_BUILD TRUE
20+
# BUILD_IN_SOURCE 1
21+
BUILD_COMMAND cmake --build . -j 8
22+
#--Install step---------------
23+
USES_TERMINAL_INSTALL TRUE
24+
INSTALL_COMMAND cmake --install <BINARY_DIR> --prefix=${CMAKE_INSTALL_PREFIX}
25+
#--Logging -------------------
26+
LOG_BUILD ON
27+
)

engine/config/gguf_parser.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
#pragma once
22
#include <string>
3+
#include <unordered_map>
34
#include "yaml_config.h"
45

56
namespace config {

engine/database/engines.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
#include <SQLiteCpp/Database.h>
44
#include <json/json.h>
5+
#include <json/value.h>
56
#include <trantor/utils/Logger.h>
67
#include <optional>
78
#include <string>
@@ -45,7 +46,7 @@ struct EngineEntry {
4546
if (success) {
4647
root["metadata"] = metadataJson;
4748
} else {
48-
root["metadata"] = Json::Value::null;
49+
root["metadata"] = Json::Value(Json::nullValue);
4950
}
5051
} else {
5152
root["metadata"] = Json::Value(Json::objectValue); // empty object

0 commit comments

Comments
 (0)