diff --git a/CMakeLists.txt b/CMakeLists.txt index a437717ba..0a11039d1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,6 @@ cmake_minimum_required(VERSION 3.15) -project(libxml2 VERSION 2.9.10 LANGUAGES C) +project(libxml2 VERSION 2.9.12 LANGUAGES C) include(CheckCSourceCompiles) include(CheckFunctionExists) @@ -465,15 +465,15 @@ endif() if(LIBXML2_WITH_ICU) target_link_libraries(LibXml2 PRIVATE ICU::data ICU::i18n ICU::uc) if(WIN32) - set(ICU_LIBS "-licudt -licuin -licuuc") + set(ICU_LIBS "icu-i18n") else() - set(ICU_LIBS "-licudata -licui18n -licuuc") + set(ICU_LIBS "icu-i18n") endif() endif() if(LIBXML2_WITH_LZMA) target_link_libraries(LibXml2 PRIVATE LibLZMA::LibLZMA) - set(LZMA_LIBS "-llzma") + set(LZMA_LIBS "liblzma") endif() if(LIBXML2_WITH_THREADS) @@ -483,7 +483,7 @@ endif() if(LIBXML2_WITH_ZLIB) target_link_libraries(LibXml2 PRIVATE ZLIB::ZLIB) - set(Z_LIBS "-lz") + set(Z_LIBS "zlib") endif() set_target_properties( @@ -495,24 +495,9 @@ set_target_properties( PREFIX lib VERSION ${PROJECT_VERSION} ) - +set(XML_LIB_NAME xml2) if(MSVC) - if(BUILD_SHARED_LIBS) - set_target_properties( - LibXml2 - PROPERTIES - DEBUG_POSTFIX d - ) - else() - set_target_properties( - LibXml2 - PROPERTIES - DEBUG_POSTFIX sd - MINSIZEREL_POSTFIX s - RELEASE_POSTFIX s - RELWITHDEBINFO_POSTFIX s - ) - endif() + set(XML_LIB_NAME libxml2) endif() install(FILES ${LIBXML2_HDRS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libxml2/libxml COMPONENT development) @@ -659,30 +644,30 @@ install(DIRECTORY doc/ DESTINATION ${CMAKE_INSTALL_DATADIR}/doc/libxml2 COMPONEN configure_package_config_file( libxml2-config.cmake.cmake.in libxml2-config.cmake - INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/libxml2-${PROJECT_VERSION} + INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/libxml2 ) install( FILES ${CMAKE_CURRENT_BINARY_DIR}/libxml2-config.cmake - DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/libxml2-${PROJECT_VERSION} + DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/libxml2 COMPONENT development ) write_basic_package_version_file( ${CMAKE_CURRENT_BINARY_DIR}/libxml2-config-version.cmake VERSION ${PROJECT_VERSION} - COMPATIBILITY ExactVersion + COMPATIBILITY SameMinorVersion ) install( FILES ${CMAKE_CURRENT_BINARY_DIR}/libxml2-config-version.cmake - DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/libxml2-${PROJECT_VERSION} + DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/libxml2 COMPONENT development ) install( EXPORT LibXml2 - DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/libxml2-${PROJECT_VERSION} + DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/libxml2 NAMESPACE LibXml2:: FILE libxml2-export.cmake COMPONENT development diff --git a/libxml-2.0.pc.in b/libxml-2.0.pc.in index 2653a7c56..d1bff5bcc 100644 --- a/libxml-2.0.pc.in +++ b/libxml-2.0.pc.in @@ -7,7 +7,8 @@ modules=@WITH_MODULES@ Name: libXML Version: @VERSION@ Description: libXML library version2. -Requires: -Libs: -L${libdir} -lxml2 -Libs.private: @ICU_LIBS@ @THREAD_LIBS@ @Z_LIBS@ @LZMA_LIBS@ @ICONV_LIBS@ @M_LIBS@ @WIN32_EXTRA_LIBADD@ @LIBS@ +Requires: +Requires.private: @ICU_LIBS@ @Z_LIBS@ @LZMA_LIBS@ +Libs: -L${libdir} -l@XML_LIB_NAME@ +Libs.private: @THREAD_LIBS@ @ICONV_LIBS@ @M_LIBS@ @WIN32_EXTRA_LIBADD@ @LIBS@ Cflags: @XML_INCLUDEDIR@ @XML_CFLAGS@