aboutsummaryrefslogtreecommitdiff
path: root/ports/libxmlpp
diff options
context:
space:
mode:
authorAlexander Neumann <30894796+Neumann-A@users.noreply.github.com>2021-04-26 19:28:21 +0200
committerGitHub <noreply@github.com>2021-04-26 10:28:21 -0700
commit546813ae7b9e2873dd3d38e78b27ac5582feae10 (patch)
tree6acb3bf022bf9060c70c0665d3586bb33a60f4d9 /ports/libxmlpp
parenta9b27ed5dffbf70b135eddb0c4729f3ca87f106c (diff)
downloadvcpkg-546813ae7b9e2873dd3d38e78b27ac5582feae10.tar.gz
vcpkg-546813ae7b9e2873dd3d38e78b27ac5582feae10.zip
[glib up to gtk] update and make it work with meson (#13100)
* update glib to meson * update ci baseline * update glib to 2.66.3 remove cmakelists * fix some minor meson issue but meson is still a mess * add_bin_to_path to vcpkg_install_meson * regen docs * try fixing/touching all glib dependent ports * fix libsigcpp-3 version * fix glibmm * fix gmime * fix libcroco * update libnice * fix atk build * update harfbuzz * fix few builds * update libxmlpp * fix gdk-pixbuf * fix gts * gts add patch * remove old libsigcpp * add missing comma * fix supports logic * fix name mismatch * restore original ci baseline. * fix a lot of small details. increment controls. * fix harfbuzz & glib * bump port version * update port_versions * fix version field * update versions * fix glib in harfbuzz * update port versions * silly uppercase type * update port-versions * fix cairo build * update version * fix atk * update atk port-verisons * fix gts public includes * update versions * fix cairomm * fix pango * fix ignition * update versions. * fix gtk * fix librsvg * update versions * fix atk linux * fix libgpod * update versions * fix lcm * fix librsvg * update pango and pangomm * update pango to meson * more updates * update pixman * fix cairo * fix cairo * some fixes * reorder meson a bit * add none.txt for meson * fix x86_x64 to x86 "cross" builds * add tiff pkgconfig * update gdk-pixbuf * fix tiff and jpeg * add graphene * fix gdk-pixbuf * add sassc * update gtk * fix cairo complete build * add harfbuzz inlcude in pango since meson does not add it into pkgconfig. * fix gtk build. Remaining issue fix install script. * fix gtk build * fix io2d * add supports field * fix cartographer? * fix librsvg build * fix gtk build * fix cartographer * fix sassc on linux * fix tiff and libjpeg pc files * fix pixman x86 * _isnanf is undefined on arm- * merge fix for make on arm64 * fix gdk-pixbuf on arm64-windows * pixman remove test/demos. should fix it on osx. * [vcpkg_install_meson] add bin to path to run code generators * [vcpkg_configure_meson] deactivate native compiler in cross builds make x86 on x86_x64 a native instead of a cross build (as long as we are not building for UWP) * pixman reenable UWP support. * pixman reenable arm support * add pixman:arm-uwp=fail to baseline * update gtkmm * remove double whitespaces * gtk baseline gtk dependency on cairo x11 remove double spaces in flags * fix linux build * native none again * cairo fix cairo-script.pc * comment out patch since the cairo changes should have fixed it. * disable wayland backend in GTK since CI is missing system packages * silly typo in cairo pc file correction install lzo pc on windows * remove double spaces in _FLAGS remove unnecessary comments * actually disabling wayland backend * fix glib codegen issue having the wrong path * try to fix paths in glib codegen * integrate changes form #12860 * add the uwp patch back in * deactivate extra harfbuzz shapers. * vcpkg x-add-version --all --overwrite-version * remove patches in tesseract. * fix version * rerun add-version * add libgpod:x64-linux=fail to baseline due to missing system tools/libraries * change regex to take double - into account. * run x-add-version * run format-manifest * add missing removal of multiple spaces back into the regex * remove ws diff change * fix gtkmm the upstream way * remove ws to reduce diff * make glib build on osx * format manifest * run x-add-version * add pthread dependency * update baseline due to glib compiling on osx now. * add meson as a dep to glib * - add glib host dependencies - switch to manifest of touched ports * switch to manifest. * [libxml2] add gnuinstalldirs * [libxml2] add missing include of GNUInstallDirs * add version info * add include dir to pc files .... * update version * add UWP as crosscompiling target * Apply suggestions from code review * trying to fix cairo pthread detection on osx. * fix libmicrohttpd by adding the required system frameworks on osx * fix poppler by not removing the CXX standard * fix missing coretext header from harfbuzz in pano * fix formating issues * fix librsvg on osx * revert version changes * bump version * version stuff. * fix graphene version stuff * fix version stuff * removing ports from ci baseline to cause me pain * move cairomm:x64-linux=fail to gtkmm:x64-linx=fail remove pangomm:x64-osx=fail * fix typo * revert ws changes to vcpkg_install_meson * update port version after merge * version stuff * fix fluidsynth by adding vcpkg_check_features * move cairo to ci baseline on osx * version stuff * fluidsynth corrections * more version stuff * apply code review changes * clean version stuff. * update version stuff * code review cleanup * version stuff * formating * update version stuff again * remove gdi again * version stuff * version stuff * version baseline * Apply strega-nil suggestions from code review * run x-add-version * reset versions to upstream/master * v8 CONTROL -> json * reset fluidsynth to upstream/master * first batch of version-string -> version conversion * second and last batch of version-string -> version conversions * update version stuff * disable gdi feature in harfbuzz (missing user32 linkage in qt5-base) * version stuff * Apply suggestions from code review Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> * more CR stuff * update versions * back out provision changes so that pr can be merged. Co-authored-by: nicole mazzuca <mazzucan@outlook.com> Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
Diffstat (limited to 'ports/libxmlpp')
-rw-r--r--ports/libxmlpp/CMakeLists.txt95
-rw-r--r--ports/libxmlpp/CONTROL5
-rw-r--r--ports/libxmlpp/fixAutoPtrExpired.patch114
-rw-r--r--ports/libxmlpp/portfile.cmake34
-rw-r--r--ports/libxmlpp/vcpkg.json10
5 files changed, 26 insertions, 232 deletions
diff --git a/ports/libxmlpp/CMakeLists.txt b/ports/libxmlpp/CMakeLists.txt
deleted file mode 100644
index 2a36ed7ba..000000000
--- a/ports/libxmlpp/CMakeLists.txt
+++ /dev/null
@@ -1,95 +0,0 @@
-cmake_minimum_required(VERSION 3.9)
-project(libxmlpp)
-
-set(CMAKE_CXX_STANDARD 17)
-
-find_path(GLIBMM_INCLUDE_DIR NAMES glibmm.h)
-find_library(GLIBMM_LIBRARY NAMES glibmm glibmm-2.0)
-find_library(GIOMM_LIBRARY NAMES giomm)
-find_library(GLIB_LIBRARY NAMES glib glib-2.0)
-find_library(GIO_LIBRARY NAMES gio gio-2.0)
-find_library(GMODULE_LIBRARY NAMES gmodule gmodule-2.0)
-find_library(GOBJECT_LIBRARY NAMES gobject gobject-2.0)
-find_library(SIGCPP_LIBRARY NAMES sigc sigc-2.0)
-find_library(FFI_LIBRARY NAMES ffi libffi)
-find_library(PCRE_LIBRARY NAMES pcre libpcre)
-find_package(LibXml2 REQUIRED)
-find_package(LibLZMA REQUIRED)
-find_package(ZLIB REQUIRED)
-
-if(APPLE)
- find_library(LIBINTL_LIBRARY NAMES intl)
-endif()
-
-find_package(Iconv REQUIRED)
-link_libraries(${LIBINTL_LIBRARY} Iconv::Iconv)
-
-if(APPLE)
- find_library(COREFOUNDATION_LIBRARY CoreFoundation)
- find_library(CORESERVICES_LIBRARY CoreServices)
- find_library(FOUNDATION_LIBRARY Foundation)
- link_libraries(${COREFOUNDATION_LIBRARY} ${CORESERVICES_LIBRARY} ${FOUNDATION_LIBRARY})
-endif()
-
-link_libraries(
- ${GIOMM_LIBRARY}
- ${GLIBMM_LIBRARY}
- ${GMODULE_LIBRARY}
- ${GOBJECT_LIBRARY}
- ${GIO_LIBRARY}
- ${GLIB_LIBRARY}
- ${SIGCPP_LIBRARY}
- ${FFI_LIBRARY}
- ${LIBXML2_LIBRARIES}
- ${PCRE_LIBRARY}
- ${LIBLZMA_LIBRARIES}
- ZLIB::ZLIB
-)
-include_directories(${GLIBMM_INCLUDE_DIR} ${LIBXML2_INCLUDE_DIRS} ${LIBLZMA_INCLUDE_DIRS})
-include_directories(. ${CMAKE_BINARY_DIR}/config)
-if(NOT WIN32)
- set(THREADS_PREFER_PTHREAD_FLAG ON)
- find_package(Threads REQUIRED)
- link_libraries(Threads::Threads ${CMAKE_DL_LIBS})
-endif()
-
-# config file
-if(WIN32)
- configure_file(MSVC_Net2010/libxml++/libxml++config.h ${CMAKE_BINARY_DIR}/config/libxml++config.h COPYONLY)
-else()
- set(ENV{GLIBMM_CFLAGS} -I${GLIBMM_INCLUDE_DIR})
- set(ENV{GLIBMM_LIBS} "${GLIBMM_LIBRARY}")
- set(ENV{GIOMM_CFLAGS} -I${GLIBMM_INCLUDE_DIR})
- set(ENV{GIOMM_LIBS} "${GIOMM_LIBRARY}")
- set(ENV{PKG_CONFIG} "echo")
-
- file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/config)
- execute_process(
- COMMAND "${CMAKE_SOURCE_DIR}/configure"
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/config
- RESULT_VARIABLE res
- )
- if(NOT res EQUAL 0)
- message(FATAL_ERROR "Configure failed.")
- endif()
-endif()
-
-file(GLOB_RECURSE SOURCES libxml++/*.cc)
-add_library(xml++ ${SOURCES})
-target_compile_definitions(xml++ PRIVATE -DLIBXMLPP_BUILD)
-
-if(NOT DISABLE_INSTALL_HEADERS)
- install(FILES ${CMAKE_BINARY_DIR}/config/libxml++config.h DESTINATION include)
- install(DIRECTORY libxml++ DESTINATION include FILES_MATCHING PATTERN *.h)
-endif()
-install(
- TARGETS xml++
- RUNTIME DESTINATION bin
- ARCHIVE DESTINATION lib
- LIBRARY DESTINATION lib
-)
-
-if(NOT DISABLE_EXAMPLES)
- add_executable(dom_build examples/dom_build/main.cc)
- target_link_libraries(dom_build xml++)
-endif()
diff --git a/ports/libxmlpp/CONTROL b/ports/libxmlpp/CONTROL
deleted file mode 100644
index 65ac0b963..000000000
--- a/ports/libxmlpp/CONTROL
+++ /dev/null
@@ -1,5 +0,0 @@
-Source: libxmlpp
-Version: 2.40.1
-Port-Version: 8
-Description: a C++ wrapper for the libxml XML parser library.
-Build-Depends: libxml2, glibmm
diff --git a/ports/libxmlpp/fixAutoPtrExpired.patch b/ports/libxmlpp/fixAutoPtrExpired.patch
deleted file mode 100644
index 98d4df6bc..000000000
--- a/ports/libxmlpp/fixAutoPtrExpired.patch
+++ /dev/null
@@ -1,114 +0,0 @@
-diff --git a/libxml++/parsers/saxparser.h b/libxml++/parsers/saxparser.h
-index 1362ca3..0bd36d2 100644
---- a/libxml++/parsers/saxparser.h
-+++ b/libxml++/parsers/saxparser.h
-@@ -221,7 +221,7 @@ private:
- //TODO: Remove the virtual when we can break ABI?
- virtual void parse();
-
-- std::auto_ptr<_xmlSAXHandler> sax_handler_;
-+ std::unique_ptr<_xmlSAXHandler> sax_handler_;
-
- // A separate xmlpp::Document that is just used for entity resolution,
- // and never seen in the API:
-diff --git a/libxml++/parsers/textreader.h b/libxml++/parsers/textreader.h
-index 48901b2..17f0737 100644
---- a/libxml++/parsers/textreader.h
-+++ b/libxml++/parsers/textreader.h
-@@ -257,7 +257,7 @@ class TextReader: NonCopyable
- void * locator);
- void check_for_exceptions() const;
-
-- std::auto_ptr<PropertyReader> propertyreader;
-+ std::unique_ptr<PropertyReader> propertyreader;
- _xmlTextReader* impl_;
- int severity_;
- Glib::ustring error_;
-diff --git a/libxml++/relaxngschema.h b/libxml++/relaxngschema.h
-index 8df7089..ffe2eaa 100644
---- a/libxml++/relaxngschema.h
-+++ b/libxml++/relaxngschema.h
-@@ -23,7 +23,7 @@
-
- #include <libxml++/schemabase.h>
- #include <libxml++/document.h>
--#include <memory> // std::auto_ptr
-+#include <memory> // std::unique_ptr
-
- #ifndef DOXYGEN_SHOULD_SKIP_THIS
- extern "C" {
-@@ -105,7 +105,7 @@ protected:
-
- private:
- struct Impl;
-- std::auto_ptr<Impl> pimpl_;
-+ std::unique_ptr<Impl> pimpl_;
- };
-
- } // namespace xmlpp
-diff --git a/libxml++/validators/relaxngvalidator.h b/libxml++/validators/relaxngvalidator.h
-index 5cd5ad7..cd29393 100644
---- a/libxml++/validators/relaxngvalidator.h
-+++ b/libxml++/validators/relaxngvalidator.h
-@@ -22,7 +22,7 @@
- #define __LIBXMLPP_VALIDATOR_RELAXNGVALIDATOR_H
-
- #include <libxml++/validators/schemavalidatorbase.h>
--#include <memory> // std::auto_ptr
-+#include <memory> // std::unique_ptr
-
- namespace Glib
- {
-@@ -156,7 +156,7 @@ protected:
-
- private:
- struct Impl;
-- std::auto_ptr<Impl> pimpl_;
-+ std::unique_ptr<Impl> pimpl_;
- };
-
- } // namespace xmlpp
-diff --git a/libxml++/validators/xsdvalidator.h b/libxml++/validators/xsdvalidator.h
-index 941d7f1..d64b971 100644
---- a/libxml++/validators/xsdvalidator.h
-+++ b/libxml++/validators/xsdvalidator.h
-@@ -20,7 +20,7 @@
- #define __LIBXMLPP_VALIDATOR_XSDVALIDATOR_H
-
- #include <libxml++/validators/schemavalidatorbase.h>
--#include <memory> // std::auto_ptr
-+#include <memory> // std::unique_ptr
-
- namespace Glib
- {
-@@ -146,7 +146,7 @@ protected:
-
- private:
- struct Impl;
-- std::auto_ptr<Impl> pimpl_;
-+ std::unique_ptr<Impl> pimpl_;
- };
-
- } // namespace xmlpp
-diff --git a/libxml++/xsdschema.h b/libxml++/xsdschema.h
-index 1333025..8220e4e 100644
---- a/libxml++/xsdschema.h
-+++ b/libxml++/xsdschema.h
-@@ -21,7 +21,7 @@
-
- #include <libxml++/schemabase.h>
- #include <libxml++/document.h>
--#include <memory> // std::auto_ptr
-+#include <memory> // std::unique_ptr
-
- #ifndef DOXYGEN_SHOULD_SKIP_THIS
- extern "C" {
-@@ -96,7 +96,7 @@ protected:
-
- private:
- struct Impl;
-- std::auto_ptr<Impl> pimpl_;
-+ std::unique_ptr<Impl> pimpl_;
- };
-
- } // namespace xmlpp
diff --git a/ports/libxmlpp/portfile.cmake b/ports/libxmlpp/portfile.cmake
index ae6589200..1620e79b3 100644
--- a/ports/libxmlpp/portfile.cmake
+++ b/ports/libxmlpp/portfile.cmake
@@ -1,31 +1,29 @@
-vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
-
-set(LIBXMLPP_VERSION 2.40.1)
+#..\src\libxml++-5-7c4d4a4cea.clean\meson.build:278:4: ERROR: Problem encountered: Static builds are not supported by MSVC-style builds
+set(LIBXMLPP_VERSION 5.0.0)
vcpkg_download_distfile(ARCHIVE
- URLS "https://ftp.gnome.org/pub/GNOME/sources/libxml++/2.40/libxml++-${LIBXMLPP_VERSION}.tar.xz"
+ URLS "https://ftp.gnome.org/pub/GNOME/sources/libxml++/5.0/libxml++-${LIBXMLPP_VERSION}.tar.xz"
FILENAME "libxml++-${LIBXMLPP_VERSION}.tar.xz"
- SHA512 a4ec2e8182d981c57bdcb8f0a203a3161f8c735ceb59fd212408b7a539d1dc826adf6717bed8f4d544ab08afd9c2fc861efe518e24bbd3a1c4b158e2ca48183a
+ SHA512 ae8d7a178e7a3b48a9f0e1ea303e8a4e4d879d0d9367124ede3783d0c31e31c862b98e5d28d72edc4c0b19c6b457ead2d25664efd33d65e44fd52c5783ec3091
)
vcpkg_extract_source_archive_ex(
OUT_SOURCE_PATH SOURCE_PATH
- ARCHIVE ${ARCHIVE}
- PATCHES
- fixAutoPtrExpired.patch
+ ARCHIVE "${ARCHIVE}"
)
-file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
-
-vcpkg_configure_cmake(
- SOURCE_PATH ${SOURCE_PATH}
- PREFER_NINJA
- OPTIONS_DEBUG
- -DDISABLE_INSTALL_HEADERS=ON
+vcpkg_configure_meson(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ -Dbuild-documentation=false
+ -Dvalidation=false # Validate the tutorial XML file
+ -Dbuild-examples=false
+ -Dbuild-tests=false
+ -Dmsvc14x-parallel-installable=false # Use separate DLL and LIB filenames for Visual Studio 2017 and 2019
+ -Dbuild-deprecated-api=true # Build deprecated API and include it in the library
)
-
-vcpkg_install_cmake()
-
+vcpkg_install_meson()
+vcpkg_fixup_pkgconfig()
vcpkg_copy_pdbs()
# Handle copyright and readme
diff --git a/ports/libxmlpp/vcpkg.json b/ports/libxmlpp/vcpkg.json
new file mode 100644
index 000000000..ca45f1bc5
--- /dev/null
+++ b/ports/libxmlpp/vcpkg.json
@@ -0,0 +1,10 @@
+{
+ "name": "libxmlpp",
+ "version": "5.0.0",
+ "description": "a C++ wrapper for the libxml XML parser library.",
+ "supports": "!(windows & static)",
+ "dependencies": [
+ "glibmm",
+ "libxml2"
+ ]
+}