fix(build): resolve compilation issues with third-party libraries
- Fixed the import order of third-party libraries to prevent dependency resolution errors during compilation. - Added return code checks for third-party library download and compilation processes to detect failures early and improve build robustness.
This commit is contained in:
parent
fbc9f526b0
commit
06f65ef626
|
@ -2,7 +2,7 @@
|
||||||
# addr2line
|
# addr2line
|
||||||
ExternalProject_Add(addr2line
|
ExternalProject_Add(addr2line
|
||||||
GIT_REPOSITORY https://github.com/davea42/libdwarf-addr2line.git
|
GIT_REPOSITORY https://github.com/davea42/libdwarf-addr2line.git
|
||||||
GIT_TAG master
|
GIT_TAG main
|
||||||
SOURCE_DIR "${TD_CONTRIB_DIR}/addr2line"
|
SOURCE_DIR "${TD_CONTRIB_DIR}/addr2line"
|
||||||
BINARY_DIR "${TD_CONTRIB_DIR}/addr2line"
|
BINARY_DIR "${TD_CONTRIB_DIR}/addr2line"
|
||||||
CONFIGURE_COMMAND ""
|
CONFIGURE_COMMAND ""
|
||||||
|
|
|
@ -140,6 +140,13 @@ if(${BUILD_WITH_SQLITE})
|
||||||
cat("${TD_SUPPORT_DIR}/sqlite_CMakeLists.txt.in" ${CONTRIB_TMP_FILE})
|
cat("${TD_SUPPORT_DIR}/sqlite_CMakeLists.txt.in" ${CONTRIB_TMP_FILE})
|
||||||
endif(${BUILD_WITH_SQLITE})
|
endif(${BUILD_WITH_SQLITE})
|
||||||
|
|
||||||
|
# libcurl
|
||||||
|
if(NOT ${TD_WINDOWS})
|
||||||
|
file(MAKE_DIRECTORY $ENV{HOME}/.cos-local.2/)
|
||||||
|
cat("${TD_SUPPORT_DIR}/ssl_CMakeLists.txt.in" ${CONTRIB_TMP_FILE})
|
||||||
|
cat("${TD_SUPPORT_DIR}/curl_CMakeLists.txt.in" ${CONTRIB_TMP_FILE})
|
||||||
|
endif(NOT ${TD_WINDOWS})
|
||||||
|
|
||||||
# s3
|
# s3
|
||||||
if(${BUILD_WITH_S3})
|
if(${BUILD_WITH_S3})
|
||||||
cat("${TD_SUPPORT_DIR}/xml2_CMakeLists.txt.in" ${CONTRIB_TMP_FILE})
|
cat("${TD_SUPPORT_DIR}/xml2_CMakeLists.txt.in" ${CONTRIB_TMP_FILE})
|
||||||
|
@ -175,13 +182,6 @@ if(${BUILD_GEOS})
|
||||||
cat("${TD_SUPPORT_DIR}/geos_CMakeLists.txt.in" ${CONTRIB_TMP_FILE})
|
cat("${TD_SUPPORT_DIR}/geos_CMakeLists.txt.in" ${CONTRIB_TMP_FILE})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# libcurl
|
|
||||||
if(NOT ${TD_WINDOWS})
|
|
||||||
file(MAKE_DIRECTORY $ENV{HOME}/.cos-local.2/)
|
|
||||||
cat("${TD_SUPPORT_DIR}/ssl_CMakeLists.txt.in" ${CONTRIB_TMP_FILE})
|
|
||||||
cat("${TD_SUPPORT_DIR}/curl_CMakeLists.txt.in" ${CONTRIB_TMP_FILE})
|
|
||||||
endif(NOT ${TD_WINDOWS})
|
|
||||||
|
|
||||||
#
|
#
|
||||||
if(${BUILD_PCRE2})
|
if(${BUILD_PCRE2})
|
||||||
cat("${TD_SUPPORT_DIR}/pcre2_CMakeLists.txt.in" ${CONTRIB_TMP_FILE})
|
cat("${TD_SUPPORT_DIR}/pcre2_CMakeLists.txt.in" ${CONTRIB_TMP_FILE})
|
||||||
|
@ -206,9 +206,18 @@ ENDIF()
|
||||||
# download dependencies
|
# download dependencies
|
||||||
configure_file(${CONTRIB_TMP_FILE} "${TD_CONTRIB_DIR}/deps-download/CMakeLists.txt")
|
configure_file(${CONTRIB_TMP_FILE} "${TD_CONTRIB_DIR}/deps-download/CMakeLists.txt")
|
||||||
execute_process(COMMAND "${CMAKE_COMMAND}" -G "${CMAKE_GENERATOR}" .
|
execute_process(COMMAND "${CMAKE_COMMAND}" -G "${CMAKE_GENERATOR}" .
|
||||||
WORKING_DIRECTORY "${TD_CONTRIB_DIR}/deps-download")
|
WORKING_DIRECTORY "${TD_CONTRIB_DIR}/deps-download"
|
||||||
|
RESULT_VARIABLE result)
|
||||||
|
IF(NOT result EQUAL "0")
|
||||||
|
message(FATAL_ERROR "CMake step for dowloading dependencies failed: ${result}")
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
execute_process(COMMAND "${CMAKE_COMMAND}" --build .
|
execute_process(COMMAND "${CMAKE_COMMAND}" --build .
|
||||||
WORKING_DIRECTORY "${TD_CONTRIB_DIR}/deps-download")
|
WORKING_DIRECTORY "${TD_CONTRIB_DIR}/deps-download"
|
||||||
|
RESULT_VARIABLE result)
|
||||||
|
IF(NOT result EQUAL "0")
|
||||||
|
message(FATAL_ERROR "CMake step for building dependencies failed: ${result}")
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
# ================================================================================================
|
# ================================================================================================
|
||||||
# Build
|
# Build
|
||||||
|
|
Loading…
Reference in New Issue