# Project project( fetchtest VERSION 1.0.0 DESCRIPTION "fetchtest" HOMEPAGE_URL "https://cmake.org/" LANGUAGES CXX C ) set(TARGET fetchtest) # Source files set(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/src") add_executable(${TARGET} ${SOURCES}/libxml.cpp ${SOURCES}/poco.cpp ${SOURCES}/main.cpp ) # Include folders target_include_directories(${TARGET} PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/include") target_include_directories(${TARGET} PRIVATE "${LIBXML2_INCLUDE_DIR}") target_include_directories(${TARGET} PRIVATE "${Poco_INCLUDE_DIRS}") # Libraries target_link_libraries( ${TARGET} PRIVATE ${LIBXML2_LIBRARY} PocoFoundation PocoUtil PocoNet PocoXML PocoJSON ) # Compilation depending on the platform if(MSVC) # Build the program as a window-only (no cmd) if(CMAKE_BUILD_TYPE STREQUAL "Release") target_link_options(${TARGET} PRIVATE "/SUBSYSTEM:WINDOWS") target_compile_options(${TARGET} PRIVATE /W3 /WX ) else() target_compile_options(${TARGET} PRIVATE /W3 /WX /DEBUG ) endif() else() target_compile_options(${TARGET} PRIVATE -Wall -Wextra -Wpedantic -Werror) endif() # Output folder set_target_properties(${TARGET} PROPERTIES ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin" )