diff --git a/ports/atk/CMakeLists.txt.in b/ports/atk/CMakeLists.txt.in index d8b84882369d99..6d254897a14fae 100644 --- a/ports/atk/CMakeLists.txt.in +++ b/ports/atk/CMakeLists.txt.in @@ -42,14 +42,7 @@ find_library(GLIB_GOBJECT_LIBRARY gobject-${GLIB_LIB_VERSION}) find_library(GLIB_GMODULE_LIBRARY gmodule-${GLIB_LIB_VERSION}) set(GLIB_LIBRARIES ${GLIB_GLIB_LIBRARY} ${GLIB_GOBJECT_LIBRARY} ${GLIB_GMODULE_LIBRARY}) -if (WIN32 OR APPLE) - find_path(LIBINTL_INCLUDE_DIR libintl.h) - find_library(LIBINTL_LIBRARY NAMES libintl intl) -else() - find_package(Intl REQUIRED) - set(LIBINTL_INCLUDE_DIR ${Intl_INCLUDE_DIRS}) - set(LIBINTL_LIBRARY ${Intl_LIBRARIES}) -endif() +find_package(Intl REQUIRED) set(ATK_SOURCES atk/atkaction.c @@ -88,8 +81,8 @@ set(ATK_SOURCES add_library(atk ${ATK_SOURCES}) target_compile_definitions(atk PRIVATE ATK_COMPILATION ${ATK_EXPORT_MACRO} G_DISABLE_SINGLE_INCLUDES ATK_LOCALEDIR="/dummy/share/locale") -target_link_libraries(atk ${LIBINTL_LIBRARY} ${GLIB_LIBRARIES}) -target_include_directories(atk PRIVATE ${GLIB_INCLUDE_DIR} ${LIBINTL_INCLUDE_DIR}) +target_link_libraries(atk ${GLIB_LIBRARIES} ${Intl_LIBRARIES}) +target_include_directories(atk PRIVATE ${GLIB_INCLUDE_DIR} ${Intl_INCLUDE_DIRS}) set_target_properties(atk PROPERTIES OUTPUT_NAME atk-${ATK_DLL_SUFFIX} diff --git a/ports/atk/CONTROL b/ports/atk/CONTROL index 686e7fe6e5afcd..ce646ae6670e60 100644 --- a/ports/atk/CONTROL +++ b/ports/atk/CONTROL @@ -1,6 +1,6 @@ Source: atk -Version: 2.24.0-5 -Port-Version: 1 +Version: 2.24.0 +Port-Version: 6 Homepage: https://developer.gnome.org/atk/ Description: GNOME Accessibility Toolkit Build-Depends: glib, gettext diff --git a/ports/exiv2/CONTROL b/ports/exiv2/CONTROL index c9f5ecca4b36e8..17141299b0a151 100644 --- a/ports/exiv2/CONTROL +++ b/ports/exiv2/CONTROL @@ -1,6 +1,6 @@ Source: exiv2 Version: 0.27.3 -Port-Version: 3 +Port-Version: 4 Build-Depends: zlib, libiconv, gettext Description: Image metadata library and tools Homepage: https://www.exiv2.org diff --git a/ports/exiv2/vcpkg-cmake-wrapper.cmake b/ports/exiv2/vcpkg-cmake-wrapper.cmake index ab71ccdb702a5f..8e57dd5e29337c 100644 --- a/ports/exiv2/vcpkg-cmake-wrapper.cmake +++ b/ports/exiv2/vcpkg-cmake-wrapper.cmake @@ -4,9 +4,7 @@ if("@VCPKG_LIBRARY_LINKAGE@" STREQUAL "static") find_package(Iconv REQUIRED) find_package(Intl REQUIRED) if(TARGET exiv2lib) - set_property(TARGET exiv2lib APPEND PROPERTY INTERFACE_LINK_LIBRARIES - Iconv::Iconv - ) - target_link_libraries(exiv2lib INTERFACE ${Intl_LIBRARIES}) + set_property(TARGET exiv2lib APPEND PROPERTY INTERFACE_LINK_LIBRARIES ${Intl_LIBRARIES}) + set_property(TARGET exiv2lib APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${Intl_INCLUDE_DIRS}) endif() endif() diff --git a/ports/gdk-pixbuf/CMakeLists.txt b/ports/gdk-pixbuf/CMakeLists.txt index 0ff2a85e2c54ae..a07f6d69f7baac 100644 --- a/ports/gdk-pixbuf/CMakeLists.txt +++ b/ports/gdk-pixbuf/CMakeLists.txt @@ -13,8 +13,7 @@ find_package(unofficial-glib CONFIG REQUIRED) find_path(GLIB_INCLUDE_DIR glib.h) find_package(Intl REQUIRED) -find_path(LIBINTL_INCLUDE_DIR libintl.h) - + if(WIN32) configure_file(${CMAKE_SOURCE_DIR}/config.h.win32 ${CMAKE_SOURCE_DIR}/config.h COPYONLY) else() @@ -62,16 +61,18 @@ if(WIN32) endif() add_library(gdk-pixbuf ${SOURCES}) -target_include_directories(gdk-pixbuf PRIVATE - ${GLIB_INCLUDE_DIR} +target_include_directories(gdk-pixbuf PRIVATE + ${GLIB_INCLUDE_DIR} + ${Intl_INCLUDE_DIRS} ${PNG_INCLUDE_DIRS} ${ZLIB_INCLUDE_DIRS} - ${Intl_INCLUDE_DIR}) +) set(LIBS - unofficial::glib::gio unofficial::glib::glib unofficial::glib::gmodule unofficial::glib::gobject ${Intl_LIBRARIES} - ${ZLIB_LIBRARIES} - ${PNG_LIBRARIES} + unofficial::glib::gio unofficial::glib::glib unofficial::glib::gmodule unofficial::glib::gobject + ${Intl_LIBRARIES} + ${ZLIB_LIBRARIES} + ${PNG_LIBRARIES} ) if(WIN32) list(APPEND LIBS Gdiplus ole32) diff --git a/ports/gdk-pixbuf/CONTROL b/ports/gdk-pixbuf/CONTROL index c283d8e6e83942..1ddcfb6ce538a2 100644 --- a/ports/gdk-pixbuf/CONTROL +++ b/ports/gdk-pixbuf/CONTROL @@ -1,5 +1,5 @@ Source: gdk-pixbuf -Version: 2.36.9-5 +Version: 2.36.9 Port-Version: 6 Homepage: https://developer.gnome.org/gdk-pixbuf/ Description: Image loading library. diff --git a/ports/gettext/CONTROL b/ports/gettext/CONTROL index d5fd705c3d73b9..4700a3e453889f 100644 --- a/ports/gettext/CONTROL +++ b/ports/gettext/CONTROL @@ -1,5 +1,6 @@ Source: gettext Version: 0.21 +Port-Version: 1 Homepage: https://www.gnu.org/software/gettext/ Description: The GNU gettext utilities are a set of tools that provides a framework to help other GNU packages produce multi-lingual messages. Provides libintl. Build-Depends: libiconv diff --git a/ports/gettext/Intl-config.cmake b/ports/gettext/Intl-config.cmake new file mode 100644 index 00000000000000..c5fc9bf38958ec --- /dev/null +++ b/ports/gettext/Intl-config.cmake @@ -0,0 +1,8 @@ +include(CmakeFindDependencyMacro) +find_dependency(Iconv) + +set(Intl_FOUND TRUE) +set(Intl_INCLUDE_DIR "${CMAKE_CURRENT_LIST_DIR}/../../include") +set(Intl_INCLUDE_DIRS ${Intl_INCLUDE_DIR} ${Iconv_INCLUDE_DIRS}) +set(Intl_LIBRARY @Intl_LIBRARY@) +set(Intl_LIBRARIES ${Intl_LIBRARY} ${Iconv_LIBRARIES}) diff --git a/ports/gettext/portfile.cmake b/ports/gettext/portfile.cmake index 449029e7c9531e..a0bed043188313 100644 --- a/ports/gettext/portfile.cmake +++ b/ports/gettext/portfile.cmake @@ -59,24 +59,21 @@ else() vcpkg_install_make(SUBPATH "/intl") endif() - -# Handle copyright -file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/gettext) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/gettext/COPYING ${CURRENT_PACKAGES_DIR}/share/gettext/copyright) - -vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/${PORT}/bin) -vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/${PORT}/debug/bin) - -file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") - -set(GNU_DLL_PATHS lib/ debug/lib/) -set(GNU_DLL_NAME GNU.Gettext.dll) #C# dll? -foreach(DLL_PATH IN LISTS GNU_DLL_PATHS) - if(EXISTS "${CURRENT_PACKAGES_DIR}/${DLL_PATH}${GNU_DLL_NAME}") - file(REMOVE "${CURRENT_PACKAGES_DIR}/${DLL_PATH}${GNU_DLL_NAME}") - endif() +# These targets are provided for backwards compatibility with previous vcpkg versions +vcpkg_fixup_cmake_targets(CONFIG_PATH share/unofficial-gettext TARGET_PATH share/unofficial-gettext) +file(GLOB DEBUG_LIBS LIST_DIRECTORIES false RELATIVE "${CURRENT_PACKAGES_DIR}" ${CURRENT_PACKAGES_DIR}/debug/lib/*) +file(GLOB RELEASE_LIBS LIST_DIRECTORIES false RELATIVE "${CURRENT_PACKAGES_DIR}" ${CURRENT_PACKAGES_DIR}/lib/*) +set(Intl_LIBRARY) +foreach(RELEASE_LIB IN LISTS RELEASE_LIBS) + list(APPEND Intl_LIBRARY optimized "\${CMAKE_CURRENT_LIST_DIR}/../../${RELEASE_LIB}") +endforeach() +foreach(DEBUG_LIB IN LISTS DEBUG_LIBS) + list(APPEND Intl_LIBRARY debug "\${CMAKE_CURRENT_LIST_DIR}/../../${DEBUG_LIB}") endforeach() +configure_file(${CMAKE_CURRENT_LIST_DIR}/usage ${CURRENT_PACKAGES_DIR}/share/gettext/usage @ONLY) +configure_file(${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake ${CURRENT_PACKAGES_DIR}/share/intl/vcpkg-cmake-wrapper.cmake COPYONLY) +configure_file(${CMAKE_CURRENT_LIST_DIR}/Intl-config.cmake ${CURRENT_PACKAGES_DIR}/share/intl/Intl-config.cmake @ONLY) vcpkg_copy_pdbs() -file(COPY ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/intl) +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) diff --git a/ports/gettext/usage b/ports/gettext/usage new file mode 100644 index 00000000000000..217323834506ea --- /dev/null +++ b/ports/gettext/usage @@ -0,0 +1,5 @@ +The package gettext:@TARGET_TRIPLET@ is compatible with built-in CMake targets: + + find_package(Intl REQUIRED) + target_link_libraries(main PRIVATE ${Intl_LIBRARIES}) + target_include_directories(main PRIVATE ${Intl_INCLUDE_DIRS}) diff --git a/ports/gettext/vcpkg-cmake-wrapper.cmake b/ports/gettext/vcpkg-cmake-wrapper.cmake index c231bfee692a73..42a9857d2bea62 100644 --- a/ports/gettext/vcpkg-cmake-wrapper.cmake +++ b/ports/gettext/vcpkg-cmake-wrapper.cmake @@ -1,10 +1,4 @@ -_find_package(${ARGS}) - -if(Intl_FOUND AND Intl_LIBRARIES) - include(SelectLibraryConfigurations) - find_library(Intl_LIBRARY_DEBUG NAMES intl libintl intl-8 NAMES_PER_DIR PATH_SUFFIXES lib PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug" NO_DEFAULT_PATH) - find_library(Intl_LIBRARY_RELEASE NAMES intl libintl intl-8 NAMES_PER_DIR PATH_SUFFIXES lib PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}" NO_DEFAULT_PATH) - unset(Intl_LIBRARIES) - unset(Intl_LIBRARIES CACHE) - select_library_configurations(Intl) -endif() \ No newline at end of file +list(REMOVE_ITEM ARGS "NO_MODULE") +list(REMOVE_ITEM ARGS "CONFIG") +list(REMOVE_ITEM ARGS "MODULE") +_find_package(${ARGS} CONFIG) diff --git a/ports/glib/CMakeLists.txt b/ports/glib/CMakeLists.txt index cc24a2f63ae00b..df84d83fe4ce14 100644 --- a/ports/glib/CMakeLists.txt +++ b/ports/glib/CMakeLists.txt @@ -30,8 +30,7 @@ if(CMAKE_BUILD_TYPE STREQUAL Debug) set(PCRE_SUFFIX d) endif() find_library(PCRE_LIBRARY NAMES pcre${PCRE_SUFFIX} pcre) -# libiconv -find_package(Iconv REQUIRED) + # libffi find_path(FFI_INCLUDE_DIR ffi.h) find_library(FFI_LIBRARY NAMES ffi libffi) @@ -43,10 +42,7 @@ if(APPLE) link_libraries(${CORESERVICES_LIBRARY} ${COREFOUNDATION_LIBRARY} ${FOUNDATION_LIBRARY}) endif() -if(WIN32 OR APPLE) - # libintl(gettext) - find_package(Intl REQUIRED) -endif() +find_package(Intl REQUIRED) if(WIN32) set(LIBRESOLV_LIBRARY) @@ -135,7 +131,8 @@ if(NOT WIN32) endif() add_library(glib ${GLIB_SOURCES}) target_compile_definitions(glib PRIVATE GLIB_COMPILATION G_LOG_DOMAIN="GLib" LIBDIR="") -target_link_libraries(glib PRIVATE ${PCRE_LIBRARY} Iconv::Iconv ${Intl_LIBRARIES}) +target_link_libraries(glib PRIVATE ${PCRE_LIBRARY} ${Intl_LIBRARIES}) + if(WIN32) target_compile_definitions(glib PRIVATE USE_SYSTEM_PCRE) target_link_libraries(glib PRIVATE ws2_32 winmm advapi32 ole32 shell32) diff --git a/ports/glib/CONTROL b/ports/glib/CONTROL index 8d74d5613b3244..b1141af9a5f748 100644 --- a/ports/glib/CONTROL +++ b/ports/glib/CONTROL @@ -1,9 +1,9 @@ Source: glib Version: 2.52.3 -Port-Version: 23 +Port-Version: 24 Homepage: https://developer.gnome.org/glib/ Description: Portable, general-purpose utility library. -Build-Depends: zlib, pcre, libffi, gettext, libiconv +Build-Depends: zlib, pcre, libffi, gettext Supports: !uwp Feature: selinux diff --git a/ports/libcroco/CMakeLists.txt b/ports/libcroco/CMakeLists.txt index f8e8a71058eb68..053d04880c2261 100644 --- a/ports/libcroco/CMakeLists.txt +++ b/ports/libcroco/CMakeLists.txt @@ -1,8 +1,8 @@ cmake_minimum_required(VERSION 3.11) project(libcroco C) -find_package(Iconv REQUIRED) find_package(Intl REQUIRED) + find_package(unofficial-glib CONFIG REQUIRED) find_package(LibXml2 REQUIRED) if(NOT WIN32) @@ -76,7 +76,7 @@ target_link_libraries(croco-0.6 PRIVATE unofficial::glib::glib unofficial::glib::gmodule unofficial::glib::gobject - ${LIBXML2_LIBRARIES} ${Intl_LIBRARIES} Iconv::Iconv + ${LIBXML2_LIBRARIES} ${Intl_LIBRARIES} ) install(TARGETS croco-0.6 @@ -128,7 +128,6 @@ install( file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/unofficial-libcroco-config.cmake " include(CMakeFindDependencyMacro) find_dependency(Intl) -find_dependency(Iconv) find_dependency(unofficial-glib CONFIG) find_dependency(LibXml2) if(NOT WIN32) diff --git a/ports/libcroco/CONTROL b/ports/libcroco/CONTROL index bb1ea8fd29376b..cf566c7001ad96 100644 --- a/ports/libcroco/CONTROL +++ b/ports/libcroco/CONTROL @@ -1,5 +1,5 @@ Source: libcroco Version: 0.6.13 -Port-Version: 2 +Port-Version: 3 Description: A standalone css2 parsing and manipulation library Build-Depends: glib, libxml2