~ruther/guix-local

36378bd57ec31ba2bbedbdbdbd77b5b0f82f3b8a — Ryan Moe 8 years ago e745221
gnu: quassel: Enable TLS.

* gnu/packages/patches/quassel-fix-tls-check.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/irc.scm (quassel)[source]: Use it.

Signed-off-by: Leo Famulari <leo@famulari.name>
3 files changed, 27 insertions(+), 0 deletions(-)

M gnu/local.mk
M gnu/packages/irc.scm
A gnu/packages/patches/quassel-fix-tls-check.patch
M gnu/local.mk => gnu/local.mk +1 -0
@@ 984,6 984,7 @@ dist_patch_DATA =						\
  %D%/packages/patches/qt4-ldflags.patch			\
  %D%/packages/patches/qtscript-disable-tests.patch		\
  %D%/packages/patches/quagga-reproducible-build.patch          \
  %D%/packages/patches/quassel-fix-tls-check.patch              \
  %D%/packages/patches/quickswitch-fix-dmenu-check.patch	\
  %D%/packages/patches/rapicorn-isnan.patch			\
  %D%/packages/patches/raptor2-heap-overflow.patch		\

M gnu/packages/irc.scm => gnu/packages/irc.scm +1 -0
@@ 66,6 66,7 @@
        (method url-fetch)
        (uri (string-append "http://quassel-irc.org/pub/quassel-"
                            version ".tar.bz2"))
        (patches (search-patches "quassel-fix-tls-check.patch"))
        (sha256
         (base32
          "0ka456fb8ha3w7g74xlzfg6w4azxjjxgrhl4aqpbwg3lnd6fbr4k"))))

A gnu/packages/patches/quassel-fix-tls-check.patch => gnu/packages/patches/quassel-fix-tls-check.patch +25 -0
@@ 0,0 1,25 @@
This allows quasselclient to connect to SSL-enabled quasselcore instances.

The check in qglobal.h requires -fPIC (not -fPIE as it is now). When this check
fails SSL / TLS is disabled.

This patch comes from the upstream source repository [0] and can be
removed when the next version is packaged.

[0] https://github.com/quassel/quassel/commit/4768c9e99f99b581d4e32e797db91d0182391696

--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -428,6 +428,11 @@ endif()
 cmake_push_check_state(RESET)
 set(CMAKE_REQUIRED_INCLUDES ${QT_INCLUDES} ${Qt5Core_INCLUDE_DIRS})
 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${Qt5Core_EXECUTABLE_COMPILE_FLAGS}")
+
+if (USE_QT5 AND Qt5_POSITION_INDEPENDENT_CODE)
+    set(CMAKE_REQUIRED_FLAGS "-fPIC -DQT_NO_VERSION_TAGGING")
+endif()
+
 check_cxx_source_compiles("
     #include \"qglobal.h\"
     #if defined QT_NO_SSL