From da2a6259a82718027f76d61a85c75086e7ad92d3 Mon Sep 17 00:00:00 2001 From: andre ebersold Date: Tue, 11 Jun 2024 15:36:57 +0200 Subject: [PATCH] [Build] Changed build for expat, solved missing definition for location. --- CMakeLists.txt | 27 +++++++++++++++++++++++---- src/xml/reqif/reqif_element.h | 3 ++- 2 files changed, 25 insertions(+), 5 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 5b68e6f..60a62b3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -10,13 +10,31 @@ IF(NOT CMAKE_BUILD_TYPE) SET(CMAKE_BUILD_TYPE "Debug") ENDIF(NOT CMAKE_BUILD_TYPE) +# +# External dependencies +# +include(ExternalProject) +# +# IF(WIN32) # For win32 the build process is very different SET(ANTCC_GPL_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../gpl") - # expat - SET(EXPAT_INCLUDE_DIR "c:/Tools/Expat 2.2.10/Source/lib" CACHE STRING "Expat include dir") - SET(EXPAT_LIBRARY "c:/Tools/Expat 2.2.10/Source/B64r/libexpat.lib" CACHE STRING "Expat library") + # + # New way fro Expact + # + ExternalProject_Add(winexpat + PREFIX "${CMAKE_BINARY_DIR}/lib" + GIT_REPOSITORY https://github.com/libexpat/libexpat.git + GIT_TAG R_2_6_2 + CONFIGURE_COMMAND ${CMAKE_COMMAND} + -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/lib/installed + ${CMAKE_BINARY_DIR}/lib/src/winexpat/expat + ) + SET(EXPAT_INCLUDE_DIR "${CMAKE_BINARY_DIR}/lib/installed/include" CACHE STRING "Expat include dir") + SET(EXPAT_LIBRARY "${CMAKE_BINARY_DIR}/lib/installed/lib/libexpat.lib" CACHE STRING "Expat library") + INCLUDE_DIRECTORIES(${EXPAT_INCLUDE_DIR}) + ELSE(WIN32) FIND_PACKAGE(EXPAT REQUIRED) @@ -48,7 +66,7 @@ TARGET_LINK_LIBRARIES(antcc libantcc_parser libantcc_os libantcc propertylib ${E # ReqIf main entry # ADD_EXECUTABLE(reqif reqif.cpp) - +add_dependencies(reqif winexpat) TARGET_LINK_LIBRARIES(reqif reqif_parser libantcc_os libantcc propertylib ${EXPAT_LIBRARY} ltdl) # # @@ -137,6 +155,7 @@ MESSAGE(STATUS "Configuration") MESSAGE(STATUS " Prefix ................. ${CMAKE_INSTALL_PREFIX}") MESSAGE(STATUS " Bin ................. ${CMAKE_INSTALL_BINDIR}") MESSAGE(STATUS " Lib ................. ${CMAKE_INSTALL_LIBDIR}") +MESSAGE(STATUS " Expat ................. ${EXPAT_INCLUDE_DIR}") MESSAGE(STATUS " Build type ............. ${CMAKE_BUILD_TYPE}") MESSAGE(STATUS " Build Tests ............ ${ANTCC_BUILD_TESTS}") MESSAGE(STATUS " Build Docs ............. ${ANTCC_BUILD_DOCS}") diff --git a/src/xml/reqif/reqif_element.h b/src/xml/reqif/reqif_element.h index d70438f..afe289d 100644 --- a/src/xml/reqif/reqif_element.h +++ b/src/xml/reqif/reqif_element.h @@ -14,9 +14,10 @@ #endif #include +#include + namespace reqif { class project; - struct Location; // Ok, lets define ant_element struct Element -- 2.30.2