diff --git a/CMakeLists.txt b/CMakeLists.txt index f922d5ab..685964b3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -459,15 +459,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) @@ -477,7 +477,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( @@ -490,23 +490,9 @@ set_target_properties( 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) @@ -654,30 +640,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 2653a7c5..2eb2f362 100644 --- a/libxml-2.0.pc.in +++ b/libxml-2.0.pc.in @@ -8,6 +8,7 @@ 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.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@