Page MenuHomeSolus

D184.diff
No OneTemporary

D184.diff

diff --git a/abi_used_libs b/abi_used_libs
--- a/abi_used_libs
+++ b/abi_used_libs
@@ -8,7 +8,7 @@
libglib-2.0.so.0
libgobject-2.0.so.0
libgtk-3.so.0
-libidn.so.11
+libidn2.so.0
libm.so.6
libnotify.so.4
libpango-1.0.so.0
diff --git a/files/switch-to-gnu-libidn2.patch b/files/switch-to-gnu-libidn2.patch
new file mode 100644
--- /dev/null
+++ b/files/switch-to-gnu-libidn2.patch
@@ -0,0 +1,209 @@
+From 816c8a96e4270836d70e6636f211c14661dda88c Mon Sep 17 00:00:00 2001
+From: Pierre-Yves <pyu@riseup.net>
+Date: Tue, 23 May 2017 21:25:37 +0200
+Subject: [PATCH] switch to gnu libidn2
+
+Signed-off-by: Pierre-Yves <pyu@riseup.net>
+---
+ CMakeLists.txt | 10 +++++-----
+ cmake/FindIDN2.cmake | 40 ++++++++++++++++++++++++++++++++++++++++
+ cmake/FindIDNA.cmake | 40 ----------------------------------------
+ dcpp/CMakeLists.txt | 10 +++++-----
+ dcpp/Util.cpp | 8 ++++----
+ 5 files changed, 54 insertions(+), 54 deletions(-)
+ create mode 100644 cmake/FindIDN2.cmake
+ delete mode 100644 cmake/FindIDNA.cmake
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 609b074..664423f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -85,7 +85,7 @@ option (USE_JS "QtScript support in Qt interface")
+ option (XMLRPC_DAEMON "Make daemon as xmlrpc server" OFF)
+ option (PERL_REGEX "Use pcre lib for regex in perl style" OFF)
+ option (ENABLE_STACKTRACE "Show stacktrace when program receive SIGSEGV" OFF)
+-option (USE_IDNA "Use libidn for punycode generation" ON)
++option (USE_IDN2 "Use libidn2 for punycode generation" ON)
+ option (JSONRPC_DAEMON "Make daemon as jsonrpc server" OFF)
+ option (USE_CLI_XMLRPC "Command line interface to control daemon via XMLRPC" OFF)
+ option (USE_CLI_JSONRPC "Command line interface to control daemon via JSONRPC" OFF)
+@@ -111,9 +111,9 @@ if (PERL_REGEX)
+ find_package(Pcre REQUIRED)
+ endif (PERL_REGEX)
+
+-if (USE_IDNA)
+- find_package(IDNA REQUIRED)
+-endif(USE_IDNA)
++if (USE_IDN2)
++ find_package(IDN2 REQUIRED)
++endif(USE_IDN2)
+
+ if (XATTR_FOUND)
+ message (STATUS "Building with libattr support")
+@@ -393,7 +393,7 @@ message(STATUS "CMAKE will use this libs (and headers) during build:
+ aspell (headers): ${ASPELL_LIBRARIES} (${ASPELL_INCLUDE_DIR})
+ gettext (headers): ${GETTEXT_LIBRARIES} (${GETTEXT_INCLUDE_DIR})
+ pcre(cpp) (headers): ${PCRE_LIBRARIES} (${PCRE_INCLUDE_DIR})
+- idna (headers): ${IDNA_LIBRARIES} (${IDNA_INCLUDE_DIR})
++ idn2 (headers): ${IDN2_LIBRARIES} (${IDN2_INCLUDE_DIR})
+ ")
+
+ CONFIGURE_FILE(
+diff --git a/cmake/FindIDN2.cmake b/cmake/FindIDN2.cmake
+new file mode 100644
+index 0000000..a46067b
+--- /dev/null
++++ b/cmake/FindIDN2.cmake
+@@ -0,0 +1,40 @@
++# - Try to find GNU IDN2 library and headers
++# Once done, this will define
++#
++# IDN2_FOUND - system has IDN2
++# IDN2_INCLUDE_DIR - the IDN2 include directories (<idn2.h>)
++# IDN2_LIBRARIES - link these to use IDN2 (idn2_to_ascii_8z)
++
++if (IDN2_INCLUDE_DIR AND IDN2_LIBRARIES)
++ set(IDN2_FIND_QUIETLY TRUE)
++endif (IDN2_INCLUDE_DIR AND IDN2_LIBRARIES)
++
++# Include dir
++find_path(IDN2_INCLUDE_DIR
++ NAMES idn2.h
++)
++
++# Library
++find_library(IDN2_LIBRARY
++ NAMES idn2
++)
++
++
++# handle the QUIETLY and REQUIRED arguments and set IDN2_FOUND to TRUE if
++# all listed variables are TRUE
++INCLUDE(FindPackageHandleStandardArgs)
++FIND_PACKAGE_HANDLE_STANDARD_ARGS(IDN2 DEFAULT_MSG IDN2_LIBRARY IDN2_INCLUDE_DIR)
++
++# If we successfully found the idn2 library then add the library to the
++# IDN2_LIBRARIES cmake variable otherwise set IDN2_LIBRARIES to nothing.
++IF(IDN2_FOUND)
++ SET( IDN2_LIBRARIES ${IDN2_LIBRARY} )
++ELSE(IDN2_FOUND)
++ SET( IDN2_LIBRARIES )
++ENDIF(IDN2_FOUND)
++
++
++# Lastly make it so that the IDN2_LIBRARIES and IDN2_INCLUDE_DIR variables
++# only show up under the advanced options in the gui cmake applications.
++MARK_AS_ADVANCED( IDN2_LIBRARIES IDN2_INCLUDE_DIR IDN2_LIBRARY)
++
+diff --git a/cmake/FindIDNA.cmake b/cmake/FindIDNA.cmake
+deleted file mode 100644
+index 01efc56..0000000
+--- a/cmake/FindIDNA.cmake
++++ /dev/null
+@@ -1,40 +0,0 @@
+-# - Try to find GNU IDN library and headers
+-# Once done, this will define
+-#
+-# IDNA_FOUND - system has IDNA
+-# IDNA_INCLUDE_DIR - the IDNA include directories (<idna.h>)
+-# IDNA_LIBRARIES - link these to use IDNA (idna_to_ascii_8z)
+-
+-if (IDNA_INCLUDE_DIR AND IDNA_LIBRARIES)
+- set(IDNA_FIND_QUIETLY TRUE)
+-endif (IDNA_INCLUDE_DIR AND IDNA_LIBRARIES)
+-
+-# Include dir
+-find_path(IDNA_INCLUDE_DIR
+- NAMES idna.h
+-)
+-
+-# Library
+-find_library(IDNA_LIBRARY
+- NAMES idn
+-)
+-
+-
+-# handle the QUIETLY and REQUIRED arguments and set IDNA_FOUND to TRUE if
+-# all listed variables are TRUE
+-INCLUDE(FindPackageHandleStandardArgs)
+-FIND_PACKAGE_HANDLE_STANDARD_ARGS(IDNA DEFAULT_MSG IDNA_LIBRARY IDNA_INCLUDE_DIR)
+-
+-# If we successfully found the idn library then add the library to the
+-# IDNA_LIBRARIES cmake variable otherwise set IDNA_LIBRARIES to nothing.
+-IF(IDNA_FOUND)
+- SET( IDNA_LIBRARIES ${IDNA_LIBRARY} )
+-ELSE(IDNA_FOUND)
+- SET( IDNA_LIBRARIES )
+-ENDIF(IDNA_FOUND)
+-
+-
+-# Lastly make it so that the IDNA_LIBRARIES and IDNA_INCLUDE_DIR variables
+-# only show up under the advanced options in the gui cmake applications.
+-MARK_AS_ADVANCED( IDNA_LIBRARIES IDNA_INCLUDE_DIR IDNA_LIBRARY)
+-
+diff --git a/dcpp/CMakeLists.txt b/dcpp/CMakeLists.txt
+index 4083f42..a012869 100644
+--- a/dcpp/CMakeLists.txt
++++ b/dcpp/CMakeLists.txt
+@@ -15,7 +15,7 @@ if (NOT LUA_SCRIPT)
+ list (REMOVE_ITEM dcpp_srcs ${PROJECT_SOURCE_DIR}/ScriptManager.cpp)
+ endif ()
+
+-include_directories (${Boost_INCLUDE_DIR} ${BZIP2_INCLUDE_DIR} ${ZLIB_INCLUDE_DIR} ${OPENSSL_INCLUDE_DIR} ${GETTEXT_INCLUDE_DIR} ${LUA_INCLUDE_DIR} ${IDNA_INCLUDE_DIR})
++include_directories (${Boost_INCLUDE_DIR} ${BZIP2_INCLUDE_DIR} ${ZLIB_INCLUDE_DIR} ${OPENSSL_INCLUDE_DIR} ${GETTEXT_INCLUDE_DIR} ${LUA_INCLUDE_DIR} ${IDN2_INCLUDE_DIR})
+
+ if (WIN32)
+ set (LINK STATIC)
+@@ -52,9 +52,9 @@ if (PERL_REGEX)
+ set(PCRE ${PCRE_LIBRARIES})
+ endif (PERL_REGEX)
+
+-if (USE_IDNA)
+- set_property(SOURCE ${PROJECT_SOURCE_DIR}/Util.cpp PROPERTY COMPILE_DEFINITIONS USE_IDNA APPEND)
+-endif(USE_IDNA)
++if (USE_IDN2)
++ set_property(SOURCE ${PROJECT_SOURCE_DIR}/Util.cpp PROPERTY COMPILE_DEFINITIONS USE_IDN2 APPEND)
++endif(USE_IDN2)
+
+ if (XATTR_FOUND)
+ set_property(SOURCE ${PROJECT_SOURCE_DIR}/HashManager.h PROPERTY COMPILE_DEFINITIONS USE_XATTR APPEND)
+@@ -84,7 +84,7 @@ else(WIN32)
+ endif (WIN32)
+
+ target_link_libraries (dcpp ${DHT_LIB} ${PTHREADS} ${BZIP2_LIBRARIES} ${ZLIB_LIBRARIES}
+-${OPENSSL_LIBRARIES} ${GETTEXT_LIBRARIES} ${ICONV_LIBRARIES} ${APPLE_LIBS} ${LUA_LIBRARIES} ${UPNP} ${PCRE} ${IDNA_LIBRARIES} ${XATTR_LIBRARIES} ${HAIKU_LIB} ${Boost_LIBRARIES})
++${OPENSSL_LIBRARIES} ${GETTEXT_LIBRARIES} ${ICONV_LIBRARIES} ${APPLE_LIBS} ${LUA_LIBRARIES} ${UPNP} ${PCRE} ${IDN2_LIBRARIES} ${XATTR_LIBRARIES} ${HAIKU_LIB} ${Boost_LIBRARIES})
+ set_target_properties(dcpp PROPERTIES VERSION ${SOVERSION} OUTPUT_NAME "eiskaltdcpp")
+
+ if (APPLE)
+diff --git a/dcpp/Util.cpp b/dcpp/Util.cpp
+index dc7e08e..6b02fc6 100644
+--- a/dcpp/Util.cpp
++++ b/dcpp/Util.cpp
+@@ -51,8 +51,8 @@
+
+ #include "FastAlloc.h"
+
+-#ifdef USE_IDNA
+-#include <idna.h>
++#ifdef USE_IDN2
++#include <idn2.h>
+ #endif
+
+ namespace dcpp {
+@@ -592,10 +592,10 @@ void Util::decodeUrl(const string& url, string& protocol, string& host, uint16_t
+ query = url.substr(queryStart, queryEnd - queryStart);
+ fragment = url.substr(fragmentStart, fragmentEnd - fragmentStart);
+
+-#ifdef USE_IDNA
++#ifdef USE_IDN2
+ //printf("%s\n",host.c_str());
+ char *p;
+- if (idna_to_ascii_8z(host.c_str(), &p, 0) == IDNA_SUCCESS) {
++ if (idn2_to_ascii_8z(host.c_str(), &p, IDN2_NONTRANSITIONAL) == IDN2_OK) {
+ host = string(p);
+ }
+ free(p);
+--
+2.13.0
+
diff --git a/package.yml b/package.yml
--- a/package.yml
+++ b/package.yml
@@ -1,6 +1,6 @@
name : eiskaltdcpp
version : 2.2.10
-release : 1
+release : 2
source :
- https://github.com/eiskaltdcpp/eiskaltdcpp/archive/v2.2.10.tar.gz : e461c8c499e459651d6382a6ded6788e5ac9a9c4ff26386c3cf073d94d606127
license : GPL-3.0
@@ -10,10 +10,11 @@
EiskaltDC++ is a cross-platform program that uses the Direct Connect and ADC protocols.
builddeps :
- pkgconfig(gtk+-3.0)
- - pkgconfig(libidn)
+ - pkgconfig(libidn2)
- pkgconfig(libnotify)
- libboost-devel
setup : |
+ %patch -p1 < $pkgfiles/switch-to-gnu-libidn2.patch
%cmake -DUSE_QT=0 -DUSE_GTK3=1 \
-DLIBDIR=lib64 \
-DPERL_REGEX=1 \
diff --git a/pspec_x86_64.xml b/pspec_x86_64.xml
--- a/pspec_x86_64.xml
+++ b/pspec_x86_64.xml
@@ -2,8 +2,8 @@
<Source>
<Name>eiskaltdcpp</Name>
<Packager>
- <Name>Bryan T. Meyers</Name>
- <Email>bmeyers@datadrake.com</Email>
+ <Name>Pierre-Yves</Name>
+ <Email>pyu@riseup.net</Email>
</Packager>
<License>GPL-3.0</License>
<PartOf>network.clients</PartOf>
@@ -36,12 +36,12 @@
</Files>
</Package>
<History>
- <Update release="1">
- <Date>2016-11-28</Date>
+ <Update release="2">
+ <Date>2017-05-27</Date>
<Version>2.2.10</Version>
<Comment>Packaging update</Comment>
- <Name>Bryan T. Meyers</Name>
- <Email>bmeyers@datadrake.com</Email>
+ <Name>Pierre-Yves</Name>
+ <Email>pyu@riseup.net</Email>
</Update>
</History>
</PISI>
\ No newline at end of file

File Metadata

Mime Type
text/plain
Expires
Tue, Jul 18, 12:24 AM (3 w, 3 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
5787971
Default Alt Text
D184.diff (9 KB)

Event Timeline