Skip to content

Commit a30fd57

Browse files
committed
chore: patch and build freexl locally
1 parent 61fa732 commit a30fd57

File tree

2 files changed

+35
-7
lines changed

2 files changed

+35
-7
lines changed

Tools/CMake/Conan.cmake

Lines changed: 35 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,14 +28,42 @@ if(USE_CONAN)
2828
if(WIN32)
2929

3030
message(STATUS " ${CONAN_COMPILER_RUNTIME}")
31-
31+
3232
execute_process(
3333
COMMAND_ECHO STDOUT
3434
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
3535
COMMAND
36-
conan install ${CONAN_FILE_PATH} --output-folder=${CMAKE_BINARY_DIR}/conan_build
36+
conan install ${CONAN_FILE_PATH} --output-folder=${CMAKE_BINARY_DIR}/_conan_build
3737
-s build_type=${CMAKE_BUILD_TYPE}
3838
-s compiler.runtime=${CONAN_COMPILER_RUNTIME} --build=missing)
39+
40+
message(STATUS "Cloning private freexl dependency")
41+
set(FREEXL_VERSION "2.1.0-dev")
42+
FetchContent_Declare(
43+
freexl
44+
GIT_REPOSITORY https://github.com/shun2wang/conan-recipes.git
45+
GIT_TAG f014849188bddd01b9ca3ddf63dde8d2e3a45314
46+
)
47+
FetchContent_MakeAvailable(freexl)
48+
49+
if(NOT freexl_FOUND)
50+
if(freexl_POPULATED)
51+
52+
message(STATUS "Compiling freexl dependency")
53+
execute_process(
54+
COMMAND_ECHO STDOUT
55+
WORKING_DIRECTORY ${freexl_SOURCE_DIR}/freexl
56+
COMMAND
57+
conan create . --version=${FREEXL_VERSION}
58+
-s build_type=${CMAKE_BUILD_TYPE}
59+
-c tools.cmake.cmaketoolchain:generator=${CMAKE_GENERATOR}
60+
-s compiler.runtime=${CONAN_COMPILER_RUNTIME} --build=missing
61+
#--test-missing
62+
)
63+
else()
64+
message(CHECK_FAIL "build freexl failed")
65+
endif()
66+
endif()
3967

4068
elseif(APPLE)
4169

@@ -49,7 +77,7 @@ if(USE_CONAN)
4977
COMMAND
5078
conan install ${CONAN_FILE_PATH} -s build_type=${CMAKE_BUILD_TYPE} -s
5179
os.version=${CMAKE_OSX_DEPLOYMENT_TARGET} -s
52-
arch=${CONAN_ARCH} -s arch_build=${CONAN_ARCH} --build=missing -of ${CMAKE_BINARY_DIR}/conan_build)
80+
arch=${CONAN_ARCH} -s arch_build=${CONAN_ARCH} --build=missing -of ${CMAKE_BINARY_DIR}/_conan_build)
5381

5482
else()
5583

@@ -59,13 +87,13 @@ if(USE_CONAN)
5987
COMMAND
6088
conan install ${CONAN_FILE_PATH} -s build_type=${CMAKE_BUILD_TYPE} -s
6189
os.version=${CMAKE_OSX_DEPLOYMENT_TARGET}
62-
--build=missing -of ${CMAKE_BINARY_DIR}/conan_build)
90+
--build=missing -of ${CMAKE_BINARY_DIR}/_conan_build)
6391

6492
endif()
6593

6694
endif()
6795

68-
if(EXISTS ${CMAKE_BINARY_DIR}/conan_build/${CONAN_RESULT_FILE})
96+
if(EXISTS ${CMAKE_BINARY_DIR}/_conan_build/${CONAN_RESULT_FILE})
6997
message(CHECK_PASS "successful")
7098
else()
7199
message(CHECK_FAIL "unsuccessful")
@@ -75,7 +103,8 @@ if(USE_CONAN)
75103
)
76104
endif()
77105

78-
include(${CMAKE_BINARY_DIR}/conan_build/conan_toolchain.cmake)
106+
include(${CMAKE_BINARY_DIR}/_conan_build/conan_toolchain.cmake)
107+
include(${freexl_SOURCE_DIR}/freexl/test_package/build/msvc-194-x86_64-17-${CMAKE_BUILD_TYPE}/generators/conan_toolchain.cmake)
79108

80109
endif()
81110

conanfile.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ brotli/1.0.9
1818
sqlite3/3.46.0
1919
gmp/6.3.0
2020
mpfr/4.2.1
21-
freexl/2.0.0
2221

2322
[generators]
2423
CMakeDeps

0 commit comments

Comments
 (0)