commit:     b415791afae7da1913f38efcfa400d4a4a3fe266
Author:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
AuthorDate: Sun Aug  9 19:59:26 2020 +0000
Commit:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
CommitDate: Sun Aug  9 20:00:23 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b415791a

net-im/spectrum2: fix compilation with libpqxx-7

Package-Manager: Portage-3.0.1, Repoman-2.3.23
Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>

 .../spectrum2-2.0.13-libpqxx-7-compatibility.patch | 79 ++++++++++++++++++++++
 net-im/spectrum2/spectrum2-2.0.12-r4.ebuild        |  7 +-
 net-im/spectrum2/spectrum2-2.0.13-r2.ebuild        |  4 +-
 3 files changed, 86 insertions(+), 4 deletions(-)

diff --git 
a/net-im/spectrum2/files/spectrum2-2.0.13-libpqxx-7-compatibility.patch 
b/net-im/spectrum2/files/spectrum2-2.0.13-libpqxx-7-compatibility.patch
new file mode 100644
index 00000000000..48a1f0a333a
--- /dev/null
+++ b/net-im/spectrum2/files/spectrum2-2.0.13-libpqxx-7-compatibility.patch
@@ -0,0 +1,79 @@
+diff --git a/cmake_modules/Findpqxx.cmake b/cmake_modules/Findpqxx.cmake
+index 9c53550..691ec0e 100644
+--- a/cmake_modules/Findpqxx.cmake
++++ b/cmake_modules/Findpqxx.cmake
+@@ -1,16 +1,33 @@
+-FIND_PATH(PQXX_INCLUDE_DIR pqxx/pqxx PATHS)
+-MARK_AS_ADVANCED(PQXX_INCLUDE_DIR)
++if (NOT WIN32)
++      find_package(PkgConfig)
++      if (PKG_CONFIG_FOUND)
++              pkg_check_modules(PQXX libpqxx)
++              if (PQXX_FOUND)
++                      if (PQXX_VERSION STRGREATER "7")
++                              message(STATUS "libpqxx version 
${PQXX_VERSION}, requesting c++17")
++                              set (CMAKE_CXX_STANDARD 17)
++                      endif()
++              endif()
++      endif()
++else()
+ 
+-FIND_LIBRARY(PQXX_LIBRARY pqxx )
+-MARK_AS_ADVANCED(PQXX_LIBRARY)
++      FIND_PATH(PQXX_INCLUDE_DIR pqxx/pqxx PATHS)
++      MARK_AS_ADVANCED(PQXX_INCLUDE_DIR)
+ 
+-FIND_LIBRARY(PQ_LIBRARY pq )
+-MARK_AS_ADVANCED(PQ_LIBRARY)
++      FIND_LIBRARY(PQXX_LIBRARIES pqxx )
++      MARK_AS_ADVANCED(PQXX_LIBRARIES)
+ 
+-if(PQXX_LIBRARY AND PQ_LIBRARY AND PQXX_INCLUDE_DIR)
+-      set( PQXX_FOUND 1 )
+-      message( STATUS "Found pqxx: ${PQXX_LIBRARY}, ${PQ_LIBRARY}, 
${PQXX_INCLUDE_DIR}")
+-else()
+-      message(STATUS "Could NOT find pqxx and pq library")
+-endif()
++      FIND_LIBRARY(PQ_LIBRARY pq )
++      MARK_AS_ADVANCED(PQ_LIBRARY)
+ 
++      if(PQXX_LIBRARY AND PQ_LIBRARY AND PQXX_INCLUDE_DIR)
++              set( PQXX_FOUND 1 )
++              message( STATUS "Found pqxx: ${PQXX_LIBRARIES}, ${PQ_LIBRARY}, 
${PQXX_INCLUDE_DIR}")
++              if (PQXX_VERSION STRGREATER "7")
++                      message(STATUS "libpqxx version ${PQXX_VERSION}, 
requesting c++17")
++                      set (CMAKE_CXX_STANDARD 17)
++              endif()
++      else()
++              message(STATUS "Could NOT find pqxx and pq library")
++      endif()
++endif()
+diff --git a/libtransport/CMakeLists.txt b/libtransport/CMakeLists.txt
+index 8892241..2b5a0f9 100644
+--- a/libtransport/CMakeLists.txt
++++ b/libtransport/CMakeLists.txt
+@@ -48,9 +48,9 @@ find_package(CURL)
+ 
+ if(WIN32)
+       include_directories("${CMAKE_SOURCE_DIR}/msvc-deps/sqlite3")
+-      target_link_libraries(transport transport-plugin ${PQXX_LIBRARY} 
${CURL_LIBRARIES} ${PQ_LIBRARY} ${MYSQL_LIBRARIES} ${SWIFTEN_LIBRARY} 
${LOG4CXX_LIBRARIES} ${PROTOBUF_LIBRARY} ${JSONCPP_LIBRARY} psapi.lib 
bcrypt.lib)
++      target_link_libraries(transport transport-plugin ${PQXX_LIBRARIES} 
${CURL_LIBRARIES} ${PQ_LIBRARY} ${MYSQL_LIBRARIES} ${SWIFTEN_LIBRARY} 
${LOG4CXX_LIBRARIES} ${PROTOBUF_LIBRARY} ${JSONCPP_LIBRARY} psapi.lib 
bcrypt.lib)
+ else()
+-      target_link_libraries(transport transport-plugin ${PQXX_LIBRARY} 
${CURL_LIBRARIES} ${PQ_LIBRARY} ${SQLITE3_LIBRARIES} ${MYSQL_LIBRARIES} 
${SWIFTEN_LIBRARY} ${LOG4CXX_LIBRARIES} ${POPT_LIBRARY} ${PROTOBUF_LIBRARY} 
${JSONCPP_LIBRARY})
++      target_link_libraries(transport transport-plugin ${PQXX_LIBRARIES} 
${CURL_LIBRARIES} ${PQ_LIBRARY} ${SQLITE3_LIBRARIES} ${MYSQL_LIBRARIES} 
${SWIFTEN_LIBRARY} ${LOG4CXX_LIBRARIES} ${POPT_LIBRARY} ${PROTOBUF_LIBRARY} 
${JSONCPP_LIBRARY})
+ endif()
+ 
+ set_target_properties(transport PROPERTIES
+diff --git a/libtransport/NetworkPluginServer.cpp 
b/libtransport/NetworkPluginServer.cpp
+index 31cce95..f5305aa 100644
+--- a/libtransport/NetworkPluginServer.cpp
++++ b/libtransport/NetworkPluginServer.cpp
+@@ -1904,7 +1904,7 @@ 
NetworkPluginServer::wrapIncomingMedia(SWIFTEN_SHRPTR_NAMESPACE::shared_ptr<Swif
+     //Doesn't handle: unquoted src, escaped "'>s, quotes in quotes ("quote: 
'text' end quote")
+     static boost::regex 
image_expr("<img\\s+[^>]*src\\s*=\\s*[\"']([^\"']+)[\"'][^>]*>");
+ 
+-    bool matchCount = 0;
++    int matchCount = 0;
+     std::string firstUrl;
+ 
+     std::string::const_iterator xhtml_pos = xhtml.begin();

diff --git a/net-im/spectrum2/spectrum2-2.0.12-r4.ebuild 
b/net-im/spectrum2/spectrum2-2.0.12-r4.ebuild
index 334f15bf538..4f12c3c285e 100644
--- a/net-im/spectrum2/spectrum2-2.0.12-r4.ebuild
+++ b/net-im/spectrum2/spectrum2-2.0.12-r4.ebuild
@@ -42,7 +42,7 @@ RDEPEND="
                        dev-db/mysql-connector-c
                )
        )
-       postgres? ( <=dev-libs/libpqxx-7.0.0:= )
+       postgres? ( dev-libs/libpqxx:= )
        purple? (
                dev-libs/glib
                net-im/pidgin:=
@@ -58,10 +58,11 @@ DEPEND="
        test? ( dev-util/cppunit )
 "
 
-PATCHES="
+PATCHES=(
        "${FILESDIR}/${P}-boost-173-compatibility.patch"
        "${FILESDIR}/${P}-gcc-10-compatibility.patch"
-"
+       "${FILESDIR}/${PN}-2.0.13-libpqxx-7-compatibility.patch"
+)
 
 src_prepare() {
        # Respect users LDFLAGS

diff --git a/net-im/spectrum2/spectrum2-2.0.13-r2.ebuild 
b/net-im/spectrum2/spectrum2-2.0.13-r2.ebuild
index edbad4cad3e..1c7985cbc6c 100644
--- a/net-im/spectrum2/spectrum2-2.0.13-r2.ebuild
+++ b/net-im/spectrum2/spectrum2-2.0.13-r2.ebuild
@@ -42,7 +42,7 @@ RDEPEND="
                        dev-db/mysql-connector-c
                )
        )
-       postgres? ( <=dev-libs/libpqxx-7.0.0:= )
+       postgres? ( dev-libs/libpqxx:= )
        purple? (
                dev-libs/glib
                net-im/pidgin:=
@@ -58,6 +58,8 @@ DEPEND="
        test? ( dev-util/cppunit )
 "
 
+PATCHES=( "${FILESDIR}/${P}-libpqxx-7-compatibility.patch" )
+
 src_prepare() {
        # Respect users LDFLAGS
        sed -i -e "s/-Wl,-export-dynamic/& ${LDFLAGS}/" 
spectrum/src/CMakeLists.txt || die

Reply via email to