From 615cb6aa240390f925d446f456dc726e21654e77 Mon Sep 17 00:00:00 2001 From: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> Date: Mon, 6 Jan 2020 10:44:07 -0800 Subject: [PATCH] [glibmm] Fix build error on Linux (#9562) --- ports/glibmm/CONTROL | 4 ++-- ports/glibmm/fix-thread.h.patch | 13 +++++++++++++ ports/glibmm/portfile.cmake | 11 ++++------- 3 files changed, 19 insertions(+), 9 deletions(-) create mode 100644 ports/glibmm/fix-thread.h.patch diff --git a/ports/glibmm/CONTROL b/ports/glibmm/CONTROL index 4baf236e8..941735feb 100644 --- a/ports/glibmm/CONTROL +++ b/ports/glibmm/CONTROL @@ -1,5 +1,5 @@ Source: glibmm -Version: 2.52.1-10 +Version: 2.52.1-11 Description: This is glibmm, a C++ API for parts of glib that are useful for C++. Homepage: https://www.gtkmm.org. -Build-Depends: zlib, pcre, libffi, gettext, libiconv, glib, libsigcpp +Build-Depends: zlib, pcre, libffi, gettext, libiconv, glib, libsigcpp \ No newline at end of file diff --git a/ports/glibmm/fix-thread.h.patch b/ports/glibmm/fix-thread.h.patch new file mode 100644 index 000000000..8e7c01b6b --- /dev/null +++ b/ports/glibmm/fix-thread.h.patch @@ -0,0 +1,13 @@ +diff --git a/glib/glibmm/threads.h b/glib/glibmm/threads.h +index 5350a99..cc48c01 100644 +--- a/glib/glibmm/threads.h ++++ b/glib/glibmm/threads.h +@@ -657,7 +657,7 @@ public: + */ + inline void replace(T* data); + +- GPrivate* gobj() { return gobject_; } ++ GPrivate* gobj() { return &gobject_; } + + private: + GPrivate gobject_; diff --git a/ports/glibmm/portfile.cmake b/ports/glibmm/portfile.cmake index 61e71a399..87551d23a 100644 --- a/ports/glibmm/portfile.cmake +++ b/ports/glibmm/portfile.cmake @@ -1,9 +1,5 @@ -include(vcpkg_common_functions) - # Glib uses winapi functions not available in WindowsStore -if (VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore) - message(FATAL_ERROR "Error: UWP builds are currently not supported.") -endif() +vcpkg_fail_port_install(ON_TARGET "UWP") vcpkg_download_distfile(ARCHIVE URLS "http://ftp.gnome.org/pub/GNOME/sources/glibmm/2.52/glibmm-2.52.1.tar.xz" @@ -17,6 +13,7 @@ vcpkg_extract_source_archive_ex( PATCHES glibmm-api-variant.patch fix-define-glibmmconfig.patch + fix-thread.h.patch ) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) @@ -35,5 +32,5 @@ vcpkg_install_cmake() vcpkg_copy_pdbs() # Handle copyright and readme -file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/glibmm RENAME copyright) -file(INSTALL ${SOURCE_PATH}/README DESTINATION ${CURRENT_PACKAGES_DIR}/share/glibmm RENAME readme.txt) +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL ${SOURCE_PATH}/README DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME readme.txt) \ No newline at end of file