mirror of
https://github.com/pocoproject/poco.git
synced 2025-10-27 19:10:20 +01:00
* Some cleanup in the root CMakeLists.txt
* Cleanup cmake targets
* Add find openssl modul for older cmake version
* Set proper scope
* Change crypto default to off
* Fix openssl default to on
* Remove global setting of C99 standard
* Set from C11 to C99
* Fix for NetSSL win build
* Set C99 compile features
* Fix Windows build
* Fix windows build
* Cleanup poco unbundle definition
* Fix PDF build
* Remove unused set affinity
* Add _CRT_SECURE_NO_WARNINGS as target compile definitions
* Add _AFXDLL as target compile definitions
* Remove commented out line
* Refactor add_definitions to target_compile_definitons in Util
* Refactor add_definitions to target_compile_definitons in XML
* Remove THREADSAFE in data sql cmake build
* Refactor add_definitions to target_compile_definition in cmake mysql
* Refactor add_definitions to target_compile_definition in cmake odbc
* Refactor add_definitions to target_compile_definition in cmake sqlite
* Refactor add_definitions to target_compile_definitions in platform specific cmake
* Add _DEBUG as compile definition
* Add build dependencies between Foundation-testrunner and TestApp, TestLibrary in cmake build
* Use cmake property to build shared libs
* Cleanup POCO_NO_AUTOMATIC_LIBS. Set only for Windows in cmake build system
* cleanup LIB_MODE_DEFINITIONS in cmake buld system
* Add POCO_STATIC for CppUnit
* Cleanup target link libraries and add option dependencies.
* Add dependencies management in cmake
* Update cmake documentation
* Squashed commit of the following:
commit 38c233f93fc8e9ad6e24d686c905eb18c86e19a7
Fix "invalid new-expression of abstract class type ApacheServerRequest" (#2231)
- abstract method "bool secure() const" defined in HTTPServerRequest was implemented in ApacheServerRequest, one of its derived classes
- a ap_log_error had one of its parameters changed for fixing a warning "passing NULL to non-pointer argument"
- minor indentation problems corrected
commit 4cbdfbe828943871618172f9e042176f115d61d8
Fix build dependencies
* Improve database cmake build dependencies
* Update doc
* Update doc
* Update cmake build commands
* Set public on target link libraries in cmake build system
* Fix PostgreSQL build
* Fix PostgreSQL build in cmake
* Fix PostgreSQL from SQL to Data
* Squashed commit of the following:
commit 1ba7d5dcbfb8d07860dd4efda33b31bedf6184c4
Add missing cmake file
* Set path to PostgresSQL in AppVoyer
* Try to fix AppVeyor build
* show dir in appvoyer
* Disable PostgreSQL build on Appvoyer
* Refactor add_definitions to target_compile_definitions
67 lines
1.7 KiB
CMake
67 lines
1.7 KiB
CMake
# Expat CPP sources to be excluded from globbed SRCS_G
|
|
# They are added back on the list if POCO_UNBUNDLED is not set
|
|
set(EXPAT_CPP "${CMAKE_CURRENT_SOURCE_DIR}/src/xmlparse.cpp")
|
|
|
|
# Sources
|
|
file(GLOB SRCS_G "src/*.cpp")
|
|
list(REMOVE_ITEM SRCS_G ${EXPAT_CPP})
|
|
POCO_SOURCES_AUTO( SRCS ${SRCS_G})
|
|
|
|
# Headers
|
|
file(GLOB_RECURSE HDRS_G "include/*.h" )
|
|
POCO_HEADERS_AUTO( SRCS ${HDRS_G})
|
|
|
|
# If POCO_UNBUNDLED is enabled we try to find the required packages
|
|
# The configuration will fail if the packages are not found
|
|
if (POCO_UNBUNDLED)
|
|
find_package(EXPAT REQUIRED)
|
|
else()
|
|
POCO_SOURCES( SRCS expat
|
|
src/xmlparse.cpp
|
|
src/xmlrole.c
|
|
src/xmltok.c
|
|
src/xmltok_impl.c
|
|
src/xmltok_ns.c
|
|
)
|
|
endif (POCO_UNBUNDLED)
|
|
|
|
add_library(XML ${SRCS} )
|
|
|
|
add_library(Poco::XML ALIAS XML)
|
|
set_target_properties( XML
|
|
PROPERTIES
|
|
VERSION ${SHARED_LIBRARY_VERSION} SOVERSION ${SHARED_LIBRARY_VERSION}
|
|
OUTPUT_NAME PocoXML
|
|
DEFINE_SYMBOL XML_EXPORTS
|
|
)
|
|
|
|
target_link_libraries(XML PUBLIC ${EXPAT_LIBRARIES} Poco::Foundation)
|
|
target_include_directories(XML
|
|
PUBLIC
|
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
|
|
$<INSTALL_INTERFACE:include>
|
|
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src
|
|
)
|
|
|
|
if (POCO_UNBUNDLED)
|
|
target_include_directories(XML PUBLIC "${EXPAT_INCLUDE_DIRS}")
|
|
target_compile_definitions(XML PUBLIC POCO_UNBUNDLED)
|
|
else()
|
|
if(WIN32)
|
|
#TODO: Is XML_STATIC only required with Windows? What does it do?
|
|
target_compile_definitions(XML PUBLIC XML_STATIC)
|
|
endif()
|
|
target_compile_definitions(XML
|
|
PUBLIC XML_DTD
|
|
PRIVATE XML_NS HAVE_EXPAT_CONFIG_H)
|
|
endif()
|
|
|
|
POCO_INSTALL(XML)
|
|
POCO_GENERATE_PACKAGE(XML)
|
|
|
|
if (ENABLE_TESTS)
|
|
add_subdirectory(samples)
|
|
add_subdirectory(testsuite)
|
|
endif ()
|
|
|