From 27570265c82e927891c122f8408830c9fddee385 Mon Sep 17 00:00:00 2001
From: Kevin Mihelich <kevin@archlinuxarm.org>
Date: Tue, 4 Oct 2016 23:50:25 +0000
Subject: [PATCH] added extra/qca

---
 extra/qca/PKGBUILD      | 70 +++++++++++++++++++++++++++++++++++++++++
 extra/qca/no-ssl3.patch | 29 +++++++++++++++++
 2 files changed, 99 insertions(+)
 create mode 100644 extra/qca/PKGBUILD
 create mode 100644 extra/qca/no-ssl3.patch

diff --git a/extra/qca/PKGBUILD b/extra/qca/PKGBUILD
new file mode 100644
index 000000000..631262e91
--- /dev/null
+++ b/extra/qca/PKGBUILD
@@ -0,0 +1,70 @@
+# $Id$
+# Maintainer: Antonio Rojas <arojas@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: Pierre Schmitz <pierre@archlinux.de>
+
+# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
+#  - add -fsigned-char to CXXFLAGS
+
+pkgbase=qca
+pkgname=(qca-qt4 qca-qt5)
+pkgver=2.1.1
+pkgrel=6
+pkgdesc="Qt Cryptographic Architecture"
+arch=(i686 x86_64)
+url="http://delta.affinix.com/qca/"
+license=(LGPL)
+makedepends=(qt4 qt5-base cmake doxygen nss pkcs11-helper)
+source=("http://download.kde.org/stable/$pkgbase/$pkgver/src/$pkgbase-$pkgver.tar.xz"
+        no-ssl3.patch)
+md5sums=('657cc701316600199199a6b6cb2c73c9'
+         '209f9187209d255fc3468ffeb26302e0')
+
+prepare() {
+  mkdir -p build{4,5}
+  cd $pkgbase-$pkgver
+  patch -Np1 < "${srcdir}/no-ssl3.patch"
+  CXXFLAGS+=" -fsigned-char"
+}
+
+build() {
+  cd build4
+  cmake ../$pkgbase-$pkgver \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_BUILD_TYPE=Release \
+    -DBUILD_TESTS=OFF \
+    -DQCA_LIBRARY_INSTALL_DIR=/usr/lib \
+    -DQCA_FEATURE_INSTALL_DIR=/usr/share/qt4/mkspecs/features/ \
+    -DQT4_BUILD=ON
+  make
+
+  cd ../build5
+  cmake ../$pkgbase-$pkgver \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DCMAKE_BUILD_TYPE=Release \
+    -DBUILD_TESTS=OFF \
+    -DQCA_INSTALL_IN_QT_PREFIX=ON \
+    -DQCA_MAN_INSTALL_DIR=/usr/share/man
+  make
+}
+
+package_qca-qt4() {
+  depends=(qt4 nss)
+  optdepends=('pkcs11-helper: PKCS-11 plugin')
+  conflicts=(qca qca-gnupg qca-ossl)
+  provides=(qca qca-gnupg qca-ossl)
+  replaces=(qca qca-gnupg qca-ossl)
+
+  cd build4
+  make DESTDIR="$pkgdir" install
+}
+
+package_qca-qt5() {
+  depends=(qt5-base nss ca-certificates)
+  optdepends=('pkcs11-helper: PKCS-11 plugin')
+
+  cd build5
+  make DESTDIR="$pkgdir" install
+}
+
+
diff --git a/extra/qca/no-ssl3.patch b/extra/qca/no-ssl3.patch
new file mode 100644
index 000000000..1a8149066
--- /dev/null
+++ b/extra/qca/no-ssl3.patch
@@ -0,0 +1,29 @@
+From: Heiko Becker <heirecka@exherbo.org>
+Date: Thu, 24 Sep 2015 20:54:41 +0000
+Subject: qca-ossl: Fix build without SSLv3
+X-Git-Url: http://quickgit.kde.org/?p=qca.git&a=commitdiff&h=20a587d77636186edb044cd2b71d6d90fe98d232
+---
+qca-ossl: Fix build without SSLv3
+
+This fixes building with LibreSSL >= 2.3.0 which has removed support
+for SSLv3 completely. As far as I know OpenSSL can be configured to
+build without it, so it might be helpful there as well.
+
+REVIEW: 125386
+---
+
+
+--- a/plugins/qca-ossl/qca-ossl.cpp
++++ b/plugins/qca-ossl/qca-ossl.cpp
+@@ -5403,9 +5403,11 @@
+ 			ctx = SSL_CTX_new(SSLv2_client_method());
+ 			break;
+ #endif
++#ifndef OPENSSL_NO_SSL3_METHOD
+ 		case TLS::SSL_v3:
+ 			ctx = SSL_CTX_new(SSLv3_client_method());
+ 			break;
++#endif
+ 		case TLS::TLS_v1:
+ 			ctx = SSL_CTX_new(TLSv1_client_method());
+ 			break;