diff --git a/.gitignore b/.gitignore index c8952fd..487a984 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ qca-1.0.tar.bz2 /qca-2.1.0.tar.gz +/qca-2.1.1.tar.xz diff --git a/0001-dropped-unused-include.patch b/0001-dropped-unused-include.patch deleted file mode 100644 index 95682d5..0000000 --- a/0001-dropped-unused-include.patch +++ /dev/null @@ -1,37 +0,0 @@ -From ca1667c1186eb247affcdcd5cb75713dd29a8b5d Mon Sep 17 00:00:00 2001 -From: Ivan Romanov -Date: Sat, 8 Nov 2014 00:15:20 +0500 -Subject: [PATCH 01/20] dropped unused #include - ---- - include/QtCrypto/qca_cert.h | 1 - - src/qca_default.cpp | 1 - - 2 files changed, 2 deletions(-) - -diff --git a/include/QtCrypto/qca_cert.h b/include/QtCrypto/qca_cert.h -index f61c019..7ae07b1 100644 ---- a/include/QtCrypto/qca_cert.h -+++ b/include/QtCrypto/qca_cert.h -@@ -33,7 +33,6 @@ - #ifndef QCA_CERT_H - #define QCA_CERT_H - --#include - #include - #include "qca_core.h" - #include "qca_publickey.h" -diff --git a/src/qca_default.cpp b/src/qca_default.cpp -index 955f439..d91fdf5 100644 ---- a/src/qca_default.cpp -+++ b/src/qca_default.cpp -@@ -22,7 +22,6 @@ - #include "qca_core.h" - - #include --#include - #include "qca_textfilter.h" - #include "qca_cert.h" - #include "qcaprovider.h" --- -2.1.0 - diff --git a/0002-cmake-pkg-config-is-not-REQUIRED.patch b/0002-cmake-pkg-config-is-not-REQUIRED.patch deleted file mode 100644 index 3f98465..0000000 --- a/0002-cmake-pkg-config-is-not-REQUIRED.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 8ffb52b4397fbb5658db17074da188468035f1fc Mon Sep 17 00:00:00 2001 -From: Ivan Romanov -Date: Sat, 8 Nov 2014 18:42:10 +0500 -Subject: [PATCH 02/20] cmake: pkg-config is not REQUIRED - ---- - cmake/modules/FindNss.cmake | 2 +- - cmake/modules/FindPkcs11Helper.cmake | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/cmake/modules/FindNss.cmake b/cmake/modules/FindNss.cmake -index 92e8bca..5846bf7 100644 ---- a/cmake/modules/FindNss.cmake -+++ b/cmake/modules/FindNss.cmake -@@ -18,7 +18,7 @@ if(NSS_INCLUDE_DIRS AND NSS_LDFLAGS) - - else() - if(NOT WIN32) -- find_package(PkgConfig REQUIRED) -+ find_package(PkgConfig) - pkg_search_module(NSS nss) - endif(NOT WIN32) - -diff --git a/cmake/modules/FindPkcs11Helper.cmake b/cmake/modules/FindPkcs11Helper.cmake -index 9b534a6..5500a26 100644 ---- a/cmake/modules/FindPkcs11Helper.cmake -+++ b/cmake/modules/FindPkcs11Helper.cmake -@@ -21,7 +21,7 @@ if(PKCS11H_INCLUDE_DIRS AND PKCS11H_LDFLAGS) - - else() - if(NOT WIN32) -- find_package(PkgConfig REQUIRED) -+ find_package(PkgConfig) - pkg_search_module(PKCS11H libpkcs11-helper-1) - endif(NOT WIN32) - --- -2.1.0 - diff --git a/0003-qca-ossl-fixed-compilation-warnings.patch b/0003-qca-ossl-fixed-compilation-warnings.patch deleted file mode 100644 index d6a4314..0000000 --- a/0003-qca-ossl-fixed-compilation-warnings.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 72457bee3adc228121d0be57398d6dd5497bca4c Mon Sep 17 00:00:00 2001 -From: Ivan Romanov -Date: Sat, 8 Nov 2014 19:14:00 +0500 -Subject: [PATCH 03/20] qca-ossl: fixed compilation warnings - ---- - plugins/qca-ossl/qca-ossl.cpp | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/plugins/qca-ossl/qca-ossl.cpp b/plugins/qca-ossl/qca-ossl.cpp -index 783a20d..95b2bc4 100644 ---- a/plugins/qca-ossl/qca-ossl.cpp -+++ b/plugins/qca-ossl/qca-ossl.cpp -@@ -1539,10 +1539,12 @@ static BigInteger decode(const QString &prime) - return BigInteger(SecureArray(a)); - } - -+#ifndef OPENSSL_FIPS - static QByteArray decode_seed(const QString &hex_seed) - { - return dehex(hex_seed); - } -+#endif - - class DLParams - { -@@ -1550,6 +1552,7 @@ public: - BigInteger p, q, g; - }; - -+#ifndef OPENSSL_FIPS - static bool make_dlgroup(const QByteArray &seed, int bits, int counter, DLParams *params) - { - int ret_counter; -@@ -1564,6 +1567,7 @@ static bool make_dlgroup(const QByteArray &seed, int bits, int counter, DLParams - DSA_free(dsa); - return true; - } -+#endif - - static bool get_dlgroup(const BigInteger &p, const BigInteger &g, DLParams *params) - { --- -2.1.0 - diff --git a/0004-cmake-dropped-dead-variable.patch b/0004-cmake-dropped-dead-variable.patch deleted file mode 100644 index 2d183d0..0000000 --- a/0004-cmake-dropped-dead-variable.patch +++ /dev/null @@ -1,38 +0,0 @@ -From f8fe237c3c117c01e35a767e93d5e355a07d9a5c Mon Sep 17 00:00:00 2001 -From: Ivan Romanov -Date: Wed, 12 Nov 2014 15:37:09 +0500 -Subject: [PATCH 04/20] cmake: dropped dead variable - ---- - CMakeLists.txt | 1 + - src/CMakeLists.txt | 2 +- - 2 files changed, 2 insertions(+), 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index d15a3a7..0f5a42c 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -22,6 +22,7 @@ cmake_policy(SET CMP0020 OLD) - option(BUILD_TESTS "Create test" ON) - option(BUILD_TOOLS "Compile mozcerts and qcatool" ON) - set(BUILD_PLUGINS "auto" CACHE STRING "Plugins for building (also possible values: none, all and auto)") -+# BUILD_SHARED_LIBS is cmake variable. Need to change default value. - option(BUILD_SHARED_LIBS "Build shared library" ON) - option(DEVELOPER_MODE "Special developer mode" OFF) - -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index f2a2fbf..290f403 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -140,7 +140,7 @@ qt4_wrap_cpp( SOURCES "${qca_INCLUDEDIR}/QtCrypto/qpipe.h") - qt4_wrap_cpp( SOURCES "qca_safeobj.h") - qt4_wrap_cpp( SOURCES "${qca_INCLUDEDIR}/QtCrypto/qca_safetimer.h") - --ADD_LIBRARY(${QCA_LIB_NAME} ${LIBRARY_TYPE} ${SOURCES} ${public_HEADERS}) -+add_library(${QCA_LIB_NAME} ${SOURCES} ${public_HEADERS}) - TARGET_LINK_LIBRARIES(${QCA_LIB_NAME} ${QT_QTCORE_LIBRARY}) - - if(WIN32) --- -2.1.0 - diff --git a/0005-Fix-build-with-libressl.patch b/0005-Fix-build-with-libressl.patch deleted file mode 100644 index be83d20..0000000 --- a/0005-Fix-build-with-libressl.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 593de6855a4f4dc26cface3e96de8889f90cb4bb Mon Sep 17 00:00:00 2001 -From: Heiko Becker -Date: Mon, 20 Oct 2014 14:46:34 +0200 -Subject: [PATCH 05/20] Fix build with libressl - -libressl removed the SSL Compression functionality (which might -be considered insecure) and thus also compress_meth. -SSL_SESSION_get_compress_id is just a stub in libressl which always -returns 0 and in openssl it returns compress_meth. - -REVIEW: 121107 ---- - plugins/qca-ossl/qca-ossl.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/plugins/qca-ossl/qca-ossl.cpp b/plugins/qca-ossl/qca-ossl.cpp -index 95b2bc4..cfb1e9f 100644 ---- a/plugins/qca-ossl/qca-ossl.cpp -+++ b/plugins/qca-ossl/qca-ossl.cpp -@@ -5805,7 +5805,7 @@ public: - { - SessionInfo sessInfo; - -- sessInfo.isCompressed = (0 != ssl->session->compress_meth); -+ sessInfo.isCompressed = (0 != SSL_SESSION_get_compress_id(ssl->session)); - - if (ssl->version == TLS1_VERSION) - sessInfo.version = TLS::TLS_v1; --- -2.1.0 - diff --git a/0006-increased-minimum-cmake-version.patch b/0006-increased-minimum-cmake-version.patch deleted file mode 100644 index 6bb17a5..0000000 --- a/0006-increased-minimum-cmake-version.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 25860ff244205b7cc61fc5c8ed06bcbe9f12957f Mon Sep 17 00:00:00 2001 -From: Ivan Romanov -Date: Fri, 14 Nov 2014 14:32:16 +0500 -Subject: [PATCH 06/20] increased minimum cmake version - -INCLUDE DESTINATION in install command was introduced only in CMake 2.8.12 ---- - CMakeLists.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 0f5a42c..7adacf1 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -8,7 +8,7 @@ endif(NOT CMAKE_INSTALL_PREFIX) - - project(qca) - --cmake_minimum_required(VERSION 2.6.0) -+cmake_minimum_required(VERSION 2.8.12) - - set(QCA_LIB_MAJOR_VERSION "2") - set(QCA_LIB_MINOR_VERSION "1") --- -2.1.0 - diff --git a/0007-cmake-warn-user-when-QCA_SUFFIX-is-not-set.patch b/0007-cmake-warn-user-when-QCA_SUFFIX-is-not-set.patch deleted file mode 100644 index 7a0df48..0000000 --- a/0007-cmake-warn-user-when-QCA_SUFFIX-is-not-set.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 2c58be171e8478f03d8a724640f40e36826c6893 Mon Sep 17 00:00:00 2001 -From: Ivan Romanov -Date: Sat, 22 Nov 2014 06:10:04 +0500 -Subject: [PATCH 07/20] cmake: warn user when QCA_SUFFIX is not set - -Many linux distribution provides both version of Qt: Qt4 and Qt5. -These versions are binary is incompatible and any qt-based library -compiled against such Qt versions will be binary incompatible with -one another. In common case library name must not be related with -based libraries. In our case Linux users want to have both versions -QCA installed in their system. I will do not implicity rename Qt5 -based QCA but just warn user and allow him explicity set QCA_SUFFIX. ---- - CMakeLists.txt | 10 ++++++++++ - 1 file changed, 10 insertions(+) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 7adacf1..5ae36fc 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -435,6 +435,16 @@ if(NOT DEVELOPER_MODE) - endif() - message("") - -+ if(UNIX AND NOT APPLE) -+ if(NOT QCA_SUFFIX AND NOT QT4_BUILD) -+ -+ message("${ESCAPE}[31mYou don't have QCA_SUFFIX set. Please note that the recommended way of") -+ message("building Qt5 version of qca for Linux distributions is to set") -+ message("QCA_SUFFIX to qt5 (-DQCA_SUFFIX=qt5).") -+ message("${ESCAPE}[0m") -+ endif() -+ endif() -+ - install(EXPORT QCATargets DESTINATION ${QCA_LIBRARY_INSTALL_DIR}/cmake/Qca FILE QcaTargets.cmake) - install(FILES - "${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/Qca/QcaConfig.cmake" --- -2.1.0 - diff --git a/0008-cmake-apply-QCA_SUFFIX-for-cmake-config-module-names.patch b/0008-cmake-apply-QCA_SUFFIX-for-cmake-config-module-names.patch deleted file mode 100644 index 5ceeb77..0000000 --- a/0008-cmake-apply-QCA_SUFFIX-for-cmake-config-module-names.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 66447d0454591f4c1deb5f4c988c6027194b1335 Mon Sep 17 00:00:00 2001 -From: Ivan Romanov -Date: Sat, 22 Nov 2014 06:30:07 +0500 -Subject: [PATCH 08/20] cmake: apply QCA_SUFFIX for cmake config module names - ---- - CMakeLists.txt | 16 +++++++++++----- - 1 file changed, 11 insertions(+), 5 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 5ae36fc..8d382ee 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -371,13 +371,19 @@ if(DOXYGEN_FOUND) - COMMENT "Generating API documentation with Doxygen" VERBATIM) - endif(DOXYGEN_FOUND) - -+if(NOT QCA_SUFFIX) -+ set(QCA_CONFIG_NAME_BASE "Qca") -+else() -+ set(QCA_CONFIG_NAME_BASE "Qca-${QCA_SUFFIX}") -+endif() -+ - include(CMakePackageConfigHelpers) - configure_package_config_file( - "${CMAKE_CURRENT_SOURCE_DIR}/QcaConfig.cmake.in" -- "${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/Qca/QcaConfig.cmake" -+ "${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/Qca/${QCA_CONFIG_NAME_BASE}Config.cmake" - INSTALL_DESTINATION ${QCA_LIBRARY_INSTALL_DIR}/cmake/Qca - ) --write_basic_config_version_file("${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/Qca/QcaConfigVersion.cmake" VERSION ${QCA_LIB_VERSION_STRING} COMPATIBILITY AnyNewerVersion) -+write_basic_config_version_file("${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/Qca/${QCA_CONFIG_NAME_BASE}ConfigVersion.cmake" VERSION ${QCA_LIB_VERSION_STRING} COMPATIBILITY AnyNewerVersion) - - if(NOT DEVELOPER_MODE) - -@@ -445,10 +451,10 @@ if(NOT DEVELOPER_MODE) - endif() - endif() - -- install(EXPORT QCATargets DESTINATION ${QCA_LIBRARY_INSTALL_DIR}/cmake/Qca FILE QcaTargets.cmake) -+ install(EXPORT QCATargets DESTINATION ${QCA_LIBRARY_INSTALL_DIR}/cmake/Qca FILE ${QCA_CONFIG_NAME_BASE}Targets.cmake) - install(FILES -- "${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/Qca/QcaConfig.cmake" -- "${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/Qca/QcaConfigVersion.cmake" -+ "${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/Qca/${QCA_CONFIG_NAME_BASE}Config.cmake" -+ "${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/Qca/${QCA_CONFIG_NAME_BASE}ConfigVersion.cmake" - DESTINATION ${QCA_LIBRARY_INSTALL_DIR}/cmake/Qca - ) - endif() --- -2.1.0 - diff --git a/0009-cmake-build-for-android.patch b/0009-cmake-build-for-android.patch deleted file mode 100644 index af987fd..0000000 --- a/0009-cmake-build-for-android.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 5d311c92195ecacb0a46840477091e2922a19764 Mon Sep 17 00:00:00 2001 -From: Ivan Romanov -Date: Thu, 6 Nov 2014 22:09:36 +0500 -Subject: [PATCH 09/20] cmake: build for android - -Android uses .so as shared library suffix without version ---- - src/CMakeLists.txt | 9 +++++++-- - 1 file changed, 7 insertions(+), 2 deletions(-) - -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 290f403..bb415a9 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -152,9 +152,14 @@ if(APPLE) - TARGET_LINK_LIBRARIES(${QCA_LIB_NAME} ${CARBON_LIBRARY} ${CARBON_LIBRARY_SECURITY}) - endif(APPLE) - -+if(NOT ANDROID) -+ set_target_properties(${QCA_LIB_NAME} PROPERTIES -+ VERSION ${QCA_LIB_MAJOR_VERSION}.${QCA_LIB_MINOR_VERSION}.${QCA_LIB_PATCH_VERSION} -+ SOVERSION ${QCA_LIB_MAJOR_VERSION} -+ ) -+endif() -+ - set_target_properties(${QCA_LIB_NAME} PROPERTIES -- VERSION ${QCA_LIB_MAJOR_VERSION}.${QCA_LIB_MINOR_VERSION}.${QCA_LIB_PATCH_VERSION} -- SOVERSION ${QCA_LIB_MAJOR_VERSION} - DEFINE_SYMBOL QCA_MAKEDLL - PUBLIC_HEADER "${public_HEADERS}" - FRAMEWORK ${OSX_FRAMEWORK} --- -2.1.0 - diff --git a/0010-fixed-compilation-on-android.patch b/0010-fixed-compilation-on-android.patch deleted file mode 100644 index 64995cf..0000000 --- a/0010-fixed-compilation-on-android.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 20686e955cc86c2b0ac451de79f713d5fcf24f91 Mon Sep 17 00:00:00 2001 -From: Ivan Romanov -Date: Thu, 6 Nov 2014 22:11:28 +0500 -Subject: [PATCH 10/20] fixed compilation on android - ---- - src/support/console.cpp | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/src/support/console.cpp b/src/support/console.cpp -index 32eb7cd..c3c5570 100644 ---- a/src/support/console.cpp -+++ b/src/support/console.cpp -@@ -30,7 +30,11 @@ - #ifdef Q_OS_WIN - # include - #else --# include -+# ifdef Q_OS_ANDROID -+# include -+# else -+# include -+# endif - # include - # include - #endif --- -2.1.0 - diff --git a/0011-simplified-md5_state_t-and-SHA1_CONTEXT-internal-str.patch b/0011-simplified-md5_state_t-and-SHA1_CONTEXT-internal-str.patch deleted file mode 100644 index 948831b..0000000 --- a/0011-simplified-md5_state_t-and-SHA1_CONTEXT-internal-str.patch +++ /dev/null @@ -1,193 +0,0 @@ -From c8008de37b91b6078d28744c58c01a2b6b36d52a Mon Sep 17 00:00:00 2001 -From: Ivan Romanov -Date: Sat, 8 Nov 2014 00:07:04 +0500 -Subject: [PATCH 11/20] simplified md5_state_t and SHA1_CONTEXT internal - structs - -On arm is not correct to do int* = char* and throw warning. int must -be aligned unlike i686 and x86_64 archs. Anyway the old way to init -structs is not sane. ---- - src/qca_default.cpp | 87 +++++++++++++++++++++++++++-------------------------- - 1 file changed, 45 insertions(+), 42 deletions(-) - -diff --git a/src/qca_default.cpp b/src/qca_default.cpp -index d91fdf5..0499bbc 100644 ---- a/src/qca_default.cpp -+++ b/src/qca_default.cpp -@@ -178,15 +178,15 @@ typedef quint32 md5_word_t; /* 32-bit word */ - - /* Define the state of the MD5 Algorithm. */ - struct md5_state_t { -- SecureArray sbuf; -- md5_word_t *count; // 2 /* message length in bits, lsw first */ -- md5_word_t *abcd; // 4 /* digest buffer */ -- md5_byte_t *buf; // 64 /* accumulate block */ -+ md5_word_t count[2]; // 2 /* message length in bits, lsw first */ -+ md5_word_t abcd[4]; // 4 /* digest buffer */ -+ md5_byte_t buf[64]; // 64 /* accumulate block */ - - md5_state_t() - { -- sbuf.resize((6 * sizeof(md5_word_t)) + 64); -- setup(); -+ memset(count, 0, 2 * sizeof(md5_word_t)); -+ memset(abcd, 0, 4 * sizeof(md5_word_t)); -+ memset(buf, 0, 64 * sizeof(md5_byte_t)); - } - - md5_state_t(const md5_state_t &from) -@@ -196,18 +196,9 @@ struct md5_state_t { - - md5_state_t & operator=(const md5_state_t &from) - { -- sbuf = from.sbuf; -- setup(); -+ *this = from; - return *this; - } -- -- inline void setup() -- { -- char *p = sbuf.data(); -- count = (md5_word_t *)p; -- abcd = (md5_word_t *)(p + (2 * sizeof(md5_word_t))); -- buf = (md5_byte_t *)(p + (6 * sizeof(md5_word_t))); -- } - }; - - /* Initialize the algorithm. */ -@@ -295,9 +286,7 @@ md5_process(md5_state_t *pms, const md5_byte_t *data /*[64]*/) - md5_word_t t; - - /* Define storage for little-endian or both types of CPUs. */ -- // possible FIXME: does xbuf really need to be secured? -- SecureArray sxbuf(16 * sizeof(md5_word_t)); -- md5_word_t *xbuf = (md5_word_t *)sxbuf.data(); -+ md5_word_t xbuf[16]; - const md5_word_t *X; - - { -@@ -319,12 +308,15 @@ md5_process(md5_state_t *pms, const md5_byte_t *data /*[64]*/) - { - /* - * On little-endian machines, we can process properly aligned -- * data without copying it. -+ * data without copying it. On arm do copying always - */ -- if (!((data - (const md5_byte_t *)0) & 3)) { -+#ifndef Q_PROCESSOR_ARM -+ if (!((data - static_cast(0)) & 3)) { - /* data are properly aligned */ -- X = (const md5_word_t *)data; -- } else { -+ X = reinterpret_cast(data); -+ } else -+#endif -+ { - /* not aligned */ - memcpy(xbuf, data, 64); - X = xbuf; -@@ -571,7 +563,12 @@ public: - // SHA1 - from a public domain implementation by Steve Reid (steve@edmweb.com) - - #define rol(value, bits) (((value) << (bits)) | ((value) >> (32 - (bits)))) -+ -+#ifdef Q_PROCESSOR_ARM -+#define blk(i) (block.l[i&15] = rol(block.l[(i+13)&15]^block.l[(i+8)&15]^block.l[(i+2)&15]^block.l[i&15],1)) -+#else - #define blk(i) (block->l[i&15] = rol(block->l[(i+13)&15]^block->l[(i+8)&15]^block->l[(i+2)&15]^block->l[i&15],1)) -+#endif - - /* (R0+R1), R2, R3, R4 are the different operations used in SHA1 */ - #define R0(v,w,x,y,z,i) z+=((w&(x^y))^y)+blk0(i)+0x5A827999+rol(v,5);w=rol(w,30); -@@ -582,15 +579,15 @@ public: - - struct SHA1_CONTEXT - { -- SecureArray sbuf; -- quint32 *state; // 5 -- quint32 *count; // 2 -- unsigned char *buffer; // 64 -+ quint32 state[5]; // 5 -+ quint32 count[2]; // 2 -+ unsigned char buffer[64]; // 64 - - SHA1_CONTEXT() - { -- sbuf.resize((7 * sizeof(quint32)) + 64); -- setup(); -+ memset(state, 0, 5 * sizeof(quint32)); -+ memset(count, 0, 2 * sizeof(quint32)); -+ memset(buffer, 0, 64 * sizeof(unsigned char)); - } - - SHA1_CONTEXT(const SHA1_CONTEXT &from) -@@ -600,18 +597,9 @@ struct SHA1_CONTEXT - - SHA1_CONTEXT & operator=(const SHA1_CONTEXT &from) - { -- sbuf = from.sbuf; -- setup(); -+ *this = from; - return *this; - } -- -- inline void setup() -- { -- char *p = sbuf.data(); -- state = (quint32 *)p; -- count = (quint32 *)(p + (5 * sizeof(quint32))); -- buffer = (unsigned char *)(p + (7 * sizeof(quint32))); -- } - }; - - typedef union { -@@ -623,7 +611,11 @@ class DefaultSHA1Context : public HashContext - { - public: - SHA1_CONTEXT _context; -- CHAR64LONG16* block; -+#ifdef Q_PROCESSOR_ARM -+ CHAR64LONG16 block; -+#else -+ CHAR64LONG16 *block; -+#endif - bool secure; - - DefaultSHA1Context(Provider *p) : HashContext(p, "sha1") -@@ -668,9 +660,17 @@ public: - inline unsigned long blk0(quint32 i) - { - if(QSysInfo::ByteOrder == QSysInfo::BigEndian) -+#ifdef Q_PROCESSOR_ARM -+ return block.l[i]; -+#else - return block->l[i]; -+#endif - else -+#ifdef Q_PROCESSOR_ARM -+ return (block.l[i] = (rol(block.l[i],24)&0xFF00FF00) | (rol(block.l[i],8)&0x00FF00FF)); -+#else - return (block->l[i] = (rol(block->l[i],24)&0xFF00FF00) | (rol(block->l[i],8)&0x00FF00FF)); -+#endif - } - - // Hash a single 512-bit block. This is the core of the algorithm. -@@ -678,8 +678,11 @@ public: - { - quint32 a, b, c, d, e; - -- block = (CHAR64LONG16*)buffer; -- -+#ifdef Q_PROCESSOR_ARM -+ memcpy(&block, buffer, sizeof(block)); -+#else -+ block = reinterpret_cast(buffer); -+#endif - // Copy context->state[] to working vars - a = state[0]; - b = state[1]; --- -2.1.0 - diff --git a/0012-cmake-fixed-warnings-on-android.patch b/0012-cmake-fixed-warnings-on-android.patch deleted file mode 100644 index 188ae30..0000000 --- a/0012-cmake-fixed-warnings-on-android.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 95223e9ee3fe6a7d7fb44855763d9e1b8078aae0 Mon Sep 17 00:00:00 2001 -From: Ivan Romanov -Date: Sat, 8 Nov 2014 18:52:48 +0500 -Subject: [PATCH 12/20] cmake: fixed warnings on android - -do not use -Wcast-align on arm ---- - CMakeLists.txt | 10 ++++++++-- - 1 file changed, 8 insertions(+), 2 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 8d382ee..9710ea9 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -113,8 +113,14 @@ endif (WIN32) - if (CMAKE_COMPILER_IS_GNUCXX) - if (CMAKE_SYSTEM_NAME MATCHES Linux) - add_definitions (-D_BSD_SOURCE) -- set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") -- set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-check-new -fno-common") -+ # on arm -Wcast-align throws many internal qt warning -+ if(NOT CMAKE_SYSTEM_PROCESSOR MATCHES "^arm") -+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wcast-align") -+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wcast-align") -+ endif() -+ -+ set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -ansi -Wundef -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common") -+ set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-check-new -fno-common") - endif (CMAKE_SYSTEM_NAME MATCHES Linux) - endif (CMAKE_COMPILER_IS_GNUCXX) - --- -2.1.0 - diff --git a/0013-docs-fixed-no-images-in-docs-when-build-out-of-sourc.patch b/0013-docs-fixed-no-images-in-docs-when-build-out-of-sourc.patch deleted file mode 100644 index 4b85474..0000000 --- a/0013-docs-fixed-no-images-in-docs-when-build-out-of-sourc.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 98be0a1234538cb0eda66609f8707eccc6f96724 Mon Sep 17 00:00:00 2001 -From: Ivan Romanov -Date: Fri, 28 Nov 2014 23:50:13 +0500 -Subject: [PATCH 13/20] docs: fixed no images in docs when build out of source - ---- - Doxyfile.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Doxyfile.in b/Doxyfile.in -index 7e2bd30..59d9afe 100644 ---- a/Doxyfile.in -+++ b/Doxyfile.in -@@ -567,7 +567,7 @@ EXAMPLE_RECURSIVE = NO - # directories that contain image that are included in the documentation (see - # the \image command). - --IMAGE_PATH = images -+IMAGE_PATH = @CMAKE_SOURCE_DIR@/images - - # The INPUT_FILTER tag can be used to specify a program that doxygen should - # invoke to filter for each input file. Doxygen will invoke the filter program --- -2.1.0 - diff --git a/0014-cmake-fixed-cmake-config-module-when-used-QCA_SUFFIX.patch b/0014-cmake-fixed-cmake-config-module-when-used-QCA_SUFFIX.patch deleted file mode 100644 index 4b37824..0000000 --- a/0014-cmake-fixed-cmake-config-module-when-used-QCA_SUFFIX.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 9a9c16dfd1affc92962acd92e4a5246830ccbc04 Mon Sep 17 00:00:00 2001 -From: Ivan Romanov -Date: Sat, 29 Nov 2014 00:57:31 +0500 -Subject: [PATCH 14/20] cmake: fixed cmake config module when used QCA_SUFFIX - ---- - QcaConfig.cmake.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/QcaConfig.cmake.in b/QcaConfig.cmake.in -index cb053cf..0eea618 100644 ---- a/QcaConfig.cmake.in -+++ b/QcaConfig.cmake.in -@@ -1,7 +1,7 @@ - @PACKAGE_INIT@ - - if(NOT TARGET qca) -- include("${CMAKE_CURRENT_LIST_DIR}/QcaTargets.cmake") -+ include("${CMAKE_CURRENT_LIST_DIR}/@QCA_CONFIG_NAME_BASE@Targets.cmake") - endif() - - set(Qca_LIBRARY qca) --- -2.1.0 - diff --git a/0015-fix-library-name-in-prf-file-to-use-the-lib-name-var.patch b/0015-fix-library-name-in-prf-file-to-use-the-lib-name-var.patch deleted file mode 100644 index bd5b1e8..0000000 --- a/0015-fix-library-name-in-prf-file-to-use-the-lib-name-var.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 02be30908f6b8424e0ae0f4e64fb892912d252d1 Mon Sep 17 00:00:00 2001 -From: Harald Sitter -Date: Tue, 2 Dec 2014 13:29:52 +0100 -Subject: [PATCH 15/20] fix library name in prf file to use the lib name - variable - -the lib name might be suffixed - -(reviewed as part of r121323) ---- - crypto.prf.cmake | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/crypto.prf.cmake b/crypto.prf.cmake -index c966b23..f25440f 100644 ---- a/crypto.prf.cmake -+++ b/crypto.prf.cmake -@@ -16,10 +16,10 @@ exists($$QCA_LIBDIR/qca.framework) { - isEmpty(LINKAGE) { - INCLUDEPATH += $$QCA_INCDIR/QtCrypto - LIBS += -L$$QCA_LIBDIR -- LINKAGE = -lqca -+ LINKAGE = -l@QCA_LIB_NAME@ - CONFIG(debug, debug|release) { -- windows:LINKAGE = -lqcad -- mac:LINKAGE = -lqca_debug -+ windows:LINKAGE = -l@QCA_LIB_NAME@d -+ mac:LINKAGE = -l@QCA_LIB_NAME@_debug - } - } - --- -2.1.0 - diff --git a/0016-move-QCA_CONFIG_NAME_BASE-definition-in-the-regular-.patch b/0016-move-QCA_CONFIG_NAME_BASE-definition-in-the-regular-.patch deleted file mode 100644 index 8aa17bb..0000000 --- a/0016-move-QCA_CONFIG_NAME_BASE-definition-in-the-regular-.patch +++ /dev/null @@ -1,45 +0,0 @@ -From a67d31b1ecdb338eb6508f05f30520b8da4d869f Mon Sep 17 00:00:00 2001 -From: Harald Sitter -Date: Tue, 2 Dec 2014 13:32:09 +0100 -Subject: [PATCH 16/20] move QCA_CONFIG_NAME_BASE definition in the regular - suffix if - -(reviewed as part of r121323) ---- - CMakeLists.txt | 8 ++------ - 1 file changed, 2 insertions(+), 6 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 9710ea9..c79c63f 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -92,11 +92,13 @@ if(QCA_SUFFIX) - set(QCA_TOOL_NAME qcatool-${QCA_SUFFIX}) - set(MOZCERTS_NAME mozcerts-${QCA_SUFFIX}) - set(QCA_PC_NAME qca2-${QCA_SUFFIX}.pc) -+ set(QCA_CONFIG_NAME_BASE "Qca-${QCA_SUFFIX}") - else(QCA_SUFFIX) - set(QCA_LIB_NAME qca) - set(QCA_TOOL_NAME qcatool) - set(MOZCERTS_NAME mozcerts) - set(QCA_PC_NAME qca2.pc) -+ set(QCA_CONFIG_NAME_BASE "Qca") - endif(QCA_SUFFIX) - - set(QCA_LIB_VERSION_STRING "${QCA_LIB_MAJOR_VERSION}.${QCA_LIB_MINOR_VERSION}.${QCA_LIB_PATCH_VERSION}") -@@ -377,12 +379,6 @@ if(DOXYGEN_FOUND) - COMMENT "Generating API documentation with Doxygen" VERBATIM) - endif(DOXYGEN_FOUND) - --if(NOT QCA_SUFFIX) -- set(QCA_CONFIG_NAME_BASE "Qca") --else() -- set(QCA_CONFIG_NAME_BASE "Qca-${QCA_SUFFIX}") --endif() -- - include(CMakePackageConfigHelpers) - configure_package_config_file( - "${CMAKE_CURRENT_SOURCE_DIR}/QcaConfig.cmake.in" --- -2.1.0 - diff --git a/0017-fixed-array-size-checking.patch b/0017-fixed-array-size-checking.patch deleted file mode 100644 index ca319a9..0000000 --- a/0017-fixed-array-size-checking.patch +++ /dev/null @@ -1,26 +0,0 @@ -rom e57f8e7795e65da22377a9a03302aff29f177259 Mon Sep 17 00:00:00 2001 -From: Ivan Romanov -Date: Sat, 13 Dec 2014 01:54:53 +0500 -Subject: [PATCH 17/20] fixed array size checking - -BUG: 341827 ---- - src/botantools/botan/big_io.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/botantools/botan/big_io.cpp b/src/botantools/botan/big_io.cpp -index a8d68ce..ca0c449 100644 ---- a/src/botantools/botan/big_io.cpp -+++ b/src/botantools/botan/big_io.cpp -@@ -60,7 +60,7 @@ std::ostream& operator<<(std::ostream& stream, const BigInt& n) - stream.write("-", 1); - SecureVector buffer = BigInt::encode(n, base); - u32bit skip = 0; -- while(buffer[skip] == '0' && skip < buffer.size()) -+ while(skip < buffer.size() && buffer[skip] == '0') - ++skip; - stream.write((const char*)buffer.begin() + skip, buffer.size() - skip); - } --- -2.1.0 - diff --git a/0018-add-a-reviewboardrc.patch b/0018-add-a-reviewboardrc.patch deleted file mode 100644 index 7ab334f..0000000 --- a/0018-add-a-reviewboardrc.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 3b1bb19c7c355d0907c5434f9df7aeadfa749083 Mon Sep 17 00:00:00 2001 -From: Harald Sitter -Date: Thu, 18 Dec 2014 12:27:04 +0100 -Subject: [PATCH 18/20] add a reviewboardrc - -REVIEW: 121325 ---- - .reviewboardrc | 4 ++++ - 1 file changed, 4 insertions(+) - create mode 100644 .reviewboardrc - -diff --git a/.reviewboardrc b/.reviewboardrc -new file mode 100644 -index 0000000..7a5cb76 ---- /dev/null -+++ b/.reviewboardrc -@@ -0,0 +1,4 @@ -+REPOSITORY = "git://anongit.kde.org/qca" -+REVIEWBOARD_URL = "https://git.reviewboard.kde.org" -+TARGET_PEOPLE = "iromanov" -+BRANCH = "master" --- -2.1.0 - diff --git a/0019-prevent-filewatches-from-emitting-changes-when-there.patch b/0019-prevent-filewatches-from-emitting-changes-when-there.patch deleted file mode 100644 index a76386e..0000000 --- a/0019-prevent-filewatches-from-emitting-changes-when-there.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 4aae2dee34d2f0f6324a9e7819e29310106dc5bb Mon Sep 17 00:00:00 2001 -From: Harald Sitter -Date: Fri, 19 Dec 2014 16:47:40 +0100 -Subject: [PATCH 19/20] prevent filewatches from emitting changes when there is - no file - -(this also fixes the flaky filewatch test that would fail for example on - ubuntu launchpad builds) - -it can happen that (supposedly for filesystem reasons) there are two -changes signals arriving in the watcher code, by the time the first arrives -the file would however already be deleted, by the time the second arrives -it would thus notify of changes to a file that does not exist which is -silly and causes problems with the filewatchtest as it uses signal emission -counting to verify the behavior. -to prevent this problem from popping up there is an additional save guard -in the file_changed slot that will ignore a change if the path in question -doesn't exist AND there is no file being watched by the watcher. - -REVIEW: 121588 ---- - src/support/dirwatch.cpp | 13 ++++++++++++- - 1 file changed, 12 insertions(+), 1 deletion(-) - -diff --git a/src/support/dirwatch.cpp b/src/support/dirwatch.cpp -index e8b2c38..ad47bfc 100644 ---- a/src/support/dirwatch.cpp -+++ b/src/support/dirwatch.cpp -@@ -210,8 +210,19 @@ private slots: - { - Q_UNUSED(path); - QFileInfo fi(filePath); -- if(!fi.exists()) -+ if (!fi.exists() && !fileExisted) { -+ // Got a file changed signal on a file that does not exist -+ // and is not actively watched. This happens when we -+ // previously watched a file but it was deleted and after -+ // the original deletion changed-signal we get another one -+ // (for example because of bad signal timing). In this scenario -+ // we must ignore the change as the change, whatever it may -+ // have been, is of no interest to us because we don't watch -+ // the file and furthermore the file does not even exist. -+ return; -+ } else if (!fi.exists()) { - fileExisted = false; -+ }; - emit q->changed(); - } - }; --- -2.1.0 - diff --git a/0020-put-headers-of-a-suffixed-build-in-a-suffixed-direct.patch b/0020-put-headers-of-a-suffixed-build-in-a-suffixed-direct.patch deleted file mode 100644 index 1c4e13e..0000000 --- a/0020-put-headers-of-a-suffixed-build-in-a-suffixed-direct.patch +++ /dev/null @@ -1,67 +0,0 @@ -From ffc53703adc7e327b3110da9b2cd04f7c5dc2c8a Mon Sep 17 00:00:00 2001 -From: Harald Sitter -Date: Mon, 22 Dec 2014 12:50:18 +0100 -Subject: [PATCH 20/20] put headers of a suffixed build in a suffixed directory - -this makes the headers co-installable between a suffixed and regular -version - -reviewed as part of r121323 ---- - CMakeLists.txt | 18 ++++++++++++++---- - src/CMakeLists.txt | 3 ++- - 2 files changed, 16 insertions(+), 5 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index c79c63f..efab26b 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -164,8 +164,13 @@ if( QCA_INSTALL_IN_QT_PREFIX ) - set(QCA_BINARY_INSTALL_DIR "${QT_BINARY_DIR}" CACHE PATH "Directory where qca plugins will install") - set(QCA_LIBRARY_INSTALL_DIR "${QT_LIBRARY_DIR}" CACHE PATH "Directory where qca library will install") - set(QCA_FEATURE_INSTALL_DIR "${QT_MKSPECS_DIR}/features" CACHE PATH "Directory where qca feature file will install") -- set(QCA_INCLUDE_INSTALL_DIR "${QT_HEADERS_DIR}" CACHE PATH "Directory where qca public headers will install") -- set(QCA_PRIVATE_INCLUDE_INSTALL_DIR "${QT_HEADERS_DIR}" CACHE PATH "Directory where qca headers will install") -+ if(NOT QCA_SUFFIX) -+ set(QCA_INCLUDE_INSTALL_DIR "${QT_HEADERS_DIR}" CACHE PATH "Directory where qca public headers will install") -+ set(QCA_PRIVATE_INCLUDE_INSTALL_DIR "${QT_HEADERS_DIR}" CACHE PATH "Directory where qca headers will install") -+ else() -+ set(QCA_INCLUDE_INSTALL_DIR "${QT_HEADERS_DIR}/${QCA_CONFIG_NAME_BASE}" CACHE PATH "Directory where qca public headers will install") -+ set(QCA_PRIVATE_INCLUDE_INSTALL_DIR "${QT_HEADERS_DIR}/${QCA_CONFIG_NAME_BASE}" CACHE PATH "Directory where qca headers will install") -+ endif() - set(QCA_DOC_INSTALL_DIR "${QT_DOC_DIR}/html/qca/" CACHE PATH "Directory where qca documentation will install") - set(QCA_MAN_INSTALL_DIR "${QT_DATA_DIR}/man" CACHE PATH "Directory where qca man pages will install") - else( QCA_INSTALL_IN_QT_PREFIX ) -@@ -179,8 +184,13 @@ else( QCA_INSTALL_IN_QT_PREFIX ) - set(QCA_BINARY_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/bin" CACHE PATH "Directory where qca plugins will install") - set(QCA_LIBRARY_INSTALL_DIR "${LIB_INSTALL_DIR}" CACHE PATH "Directory where qca library will install") - set(QCA_FEATURE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/mkspecs/features" CACHE PATH "Directory where qca feature file will install") -- set(QCA_INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "Directory where qca public headers will install") -- set(QCA_PRIVATE_INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "Directory where qca headers will install") -+ if(NOT QCA_SUFFIX) -+ set(QCA_INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "Directory where qca public headers will install") -+ set(QCA_PRIVATE_INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "Directory where qca headers will install") -+ else() -+ set(QCA_INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include/${QCA_CONFIG_NAME_BASE}" CACHE PATH "Directory where qca public headers will install") -+ set(QCA_PRIVATE_INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include/${QCA_CONFIG_NAME_BASE}" CACHE PATH "Directory where qca headers will install") -+ endif() - set(QCA_DOC_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/share/doc/${QCA_LIB_NAME}/html" CACHE PATH "Directory where qca documentation will install") - set(QCA_MAN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/share/man" CACHE PATH "Directory where qca man pages will install") - endif( QCA_INSTALL_IN_QT_PREFIX ) -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index bb415a9..861164a 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -173,7 +173,8 @@ if(NOT DEVELOPER_MODE) - RUNTIME DESTINATION "${QCA_BINARY_INSTALL_DIR}" - ARCHIVE DESTINATION "${QCA_LIBRARY_INSTALL_DIR}" - FRAMEWORK DESTINATION "${QCA_LIBRARY_INSTALL_DIR}" -- PUBLIC_HEADER DESTINATION "${QCA_INCLUDE_INSTALL_DIR}/QtCrypto" INCLUDES DESTINATION "${QCA_INCLUDE_INSTALL_DIR}/QtCrypto" -+ PUBLIC_HEADER DESTINATION "${QCA_INCLUDE_INSTALL_DIR}/QtCrypto" -+ INCLUDES DESTINATION "${QCA_INCLUDE_INSTALL_DIR}/QtCrypto" - ) - - install_pdb(${QCA_LIB_NAME} ${QCA_BINARY_INSTALL_DIR}) --- -2.1.0 - diff --git a/0021-properly-support-co-existing-qt4-and-qt5-versions.patch b/0021-properly-support-co-existing-qt4-and-qt5-versions.patch deleted file mode 100644 index 40527c0..0000000 --- a/0021-properly-support-co-existing-qt4-and-qt5-versions.patch +++ /dev/null @@ -1,99 +0,0 @@ -From c32bc6f1bc9befe5f89d3572eb28e0d591a2e3b2 Mon Sep 17 00:00:00 2001 -From: Harald Sitter -Date: Sun, 28 Dec 2014 14:26:50 +0100 -Subject: [PATCH 21/22] properly support co-existing qt4 and qt5 versions - -- if QT4_BUILD is not defined *and* Qt5Core is found build with soname - qca-qt5 -- rename cmake package to reflect the suffix i.e. with a Qt5 build it is - find_package(Qca-qt5) rather than find_package(Qca) -- the imported cmake target also reflects suffix so "Qca-qt5" is the - cmake link target for qt5 and "Qca" for qt4 builds - -this retains 100% compatibility with regular qca while also offering 100% -coinstallability of the qt5 build. - -REVIEW: 121633 ---- - CMakeLists.txt | 15 ++++++++------- - QcaConfig.cmake.in | 4 ++-- - src/CMakeLists.txt | 4 ++-- - 3 files changed, 12 insertions(+), 11 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index efab26b..d047cde 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -59,6 +59,7 @@ if (Qt5Core_FOUND) - include(GNUInstallDirs) - setup_qt5_dirs() - set(QCA_QT_PC_VERSION "Qt5Core") -+ set(QCA_SUFFIX "qt5") - else() - set(QT_MIN_VERSION "4.7.0") - set(QT_USE_IMPORTED_TARGETS ON) -@@ -392,10 +393,10 @@ endif(DOXYGEN_FOUND) - include(CMakePackageConfigHelpers) - configure_package_config_file( - "${CMAKE_CURRENT_SOURCE_DIR}/QcaConfig.cmake.in" -- "${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/Qca/${QCA_CONFIG_NAME_BASE}Config.cmake" -- INSTALL_DESTINATION ${QCA_LIBRARY_INSTALL_DIR}/cmake/Qca -+ "${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/${QCA_CONFIG_NAME_BASE}/${QCA_CONFIG_NAME_BASE}Config.cmake" -+ INSTALL_DESTINATION ${QCA_LIBRARY_INSTALL_DIR}/cmake/${QCA_CONFIG_NAME_BASE} - ) --write_basic_config_version_file("${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/Qca/${QCA_CONFIG_NAME_BASE}ConfigVersion.cmake" VERSION ${QCA_LIB_VERSION_STRING} COMPATIBILITY AnyNewerVersion) -+write_basic_config_version_file("${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/${QCA_CONFIG_NAME_BASE}/${QCA_CONFIG_NAME_BASE}ConfigVersion.cmake" VERSION ${QCA_LIB_VERSION_STRING} COMPATIBILITY AnyNewerVersion) - - if(NOT DEVELOPER_MODE) - -@@ -463,10 +464,10 @@ if(NOT DEVELOPER_MODE) - endif() - endif() - -- install(EXPORT QCATargets DESTINATION ${QCA_LIBRARY_INSTALL_DIR}/cmake/Qca FILE ${QCA_CONFIG_NAME_BASE}Targets.cmake) -+ install(EXPORT ${QCA_CONFIG_NAME_BASE}Targets DESTINATION ${QCA_LIBRARY_INSTALL_DIR}/cmake/${QCA_CONFIG_NAME_BASE} FILE ${QCA_CONFIG_NAME_BASE}Targets.cmake) - install(FILES -- "${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/Qca/${QCA_CONFIG_NAME_BASE}Config.cmake" -- "${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/Qca/${QCA_CONFIG_NAME_BASE}ConfigVersion.cmake" -- DESTINATION ${QCA_LIBRARY_INSTALL_DIR}/cmake/Qca -+ "${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/${QCA_CONFIG_NAME_BASE}/${QCA_CONFIG_NAME_BASE}Config.cmake" -+ "${CMAKE_CURRENT_BINARY_DIR}/lib/cmake/${QCA_CONFIG_NAME_BASE}/${QCA_CONFIG_NAME_BASE}ConfigVersion.cmake" -+ DESTINATION ${QCA_LIBRARY_INSTALL_DIR}/cmake/${QCA_CONFIG_NAME_BASE} - ) - endif() -diff --git a/QcaConfig.cmake.in b/QcaConfig.cmake.in -index 0eea618..24b1737 100644 ---- a/QcaConfig.cmake.in -+++ b/QcaConfig.cmake.in -@@ -1,7 +1,7 @@ - @PACKAGE_INIT@ - --if(NOT TARGET qca) -+if(NOT TARGET @QCA_CONFIG_NAME_BASE@) - include("${CMAKE_CURRENT_LIST_DIR}/@QCA_CONFIG_NAME_BASE@Targets.cmake") - endif() - --set(Qca_LIBRARY qca) -+set(Qca_LIBRARY @QCA_CONFIG_NAME_BASE@) -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 861164a..bea7156 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -163,12 +163,12 @@ set_target_properties(${QCA_LIB_NAME} PROPERTIES - DEFINE_SYMBOL QCA_MAKEDLL - PUBLIC_HEADER "${public_HEADERS}" - FRAMEWORK ${OSX_FRAMEWORK} -- EXPORT_NAME qca -+ EXPORT_NAME ${QCA_LIB_NAME} - ) - - if(NOT DEVELOPER_MODE) - install(TARGETS ${QCA_LIB_NAME} -- EXPORT QCATargets -+ EXPORT ${QCA_CONFIG_NAME_BASE}Targets - LIBRARY DESTINATION "${QCA_LIBRARY_INSTALL_DIR}" - RUNTIME DESTINATION "${QCA_BINARY_INSTALL_DIR}" - ARCHIVE DESTINATION "${QCA_LIBRARY_INSTALL_DIR}" --- -2.1.0 - diff --git a/0022-initialize-QCA_SUFFIX-cache-with-the-possibly-previo.patch b/0022-initialize-QCA_SUFFIX-cache-with-the-possibly-previo.patch deleted file mode 100644 index 8a2fd82..0000000 --- a/0022-initialize-QCA_SUFFIX-cache-with-the-possibly-previo.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 3e3533b2753c8e47f0d22b77b564a0a6332cd5b8 Mon Sep 17 00:00:00 2001 -From: Harald Sitter -Date: Tue, 13 Jan 2015 17:22:06 +0100 -Subject: [PATCH 22/22] initialize QCA_SUFFIX cache with the possibly - previously set SUFFIX - -this prevents us from unsetting what was previously set, making sure -the suffix is applied ---- - CMakeLists.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index d047cde..9f47d3d 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -87,7 +87,7 @@ else(NOT BUILD_SHARED_LIBS OR QT_IS_STATIC) - set(PLUGIN_TYPE "MODULE") - endif(NOT BUILD_SHARED_LIBS OR QT_IS_STATIC) - --set(QCA_SUFFIX "" CACHE STRING "QCA common suffix") -+set(QCA_SUFFIX "${QCA_SUFFIX}" CACHE STRING "QCA common suffix") - if(QCA_SUFFIX) - set(QCA_LIB_NAME qca-${QCA_SUFFIX}) - set(QCA_TOOL_NAME qcatool-${QCA_SUFFIX}) --- -2.1.0 - diff --git a/0023-Add-missing-QIODevice-include.patch b/0023-Add-missing-QIODevice-include.patch deleted file mode 100644 index 1294261..0000000 --- a/0023-Add-missing-QIODevice-include.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 7207e6285e932044cd66d49d0dc484666cfb0092 Mon Sep 17 00:00:00 2001 -From: Hrvoje Senjan -Date: Sat, 17 Jan 2015 20:12:18 +0100 -Subject: [PATCH] Add missing QIODevice include - -Fixes build with Qt 5.5 ---- - include/QtCrypto/qca_basic.h | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/include/QtCrypto/qca_basic.h b/include/QtCrypto/qca_basic.h -index 42808c5..e0c6cbb 100644 ---- a/include/QtCrypto/qca_basic.h -+++ b/include/QtCrypto/qca_basic.h -@@ -35,6 +35,8 @@ - - #include "qca_core.h" - -+#include -+ - // Qt5 comes with QStringLiteral for wrapping string literals, which Qt4 does - // not have. It is needed if the headers are built with QT_NO_CAST_FROM_ASCII. - // Defining it here as QString::fromUtf8 for convenience. --- -2.4.3 - diff --git a/qca-2.1.1-_DEFAULT_SOURCE.patch b/qca-2.1.1-_DEFAULT_SOURCE.patch new file mode 100644 index 0000000..f327a4d --- /dev/null +++ b/qca-2.1.1-_DEFAULT_SOURCE.patch @@ -0,0 +1,12 @@ +diff -up qca-2.1.1/CMakeLists.txt._DEFAULT_SOURCE qca-2.1.1/CMakeLists.txt +--- qca-2.1.1/CMakeLists.txt._DEFAULT_SOURCE 2015-10-02 04:39:21.000000000 -0500 ++++ qca-2.1.1/CMakeLists.txt 2015-10-17 10:00:23.010924486 -0500 +@@ -115,7 +115,7 @@ endif (WIN32) + + if (CMAKE_COMPILER_IS_GNUCXX) + if (CMAKE_SYSTEM_NAME MATCHES Linux) +- add_definitions (-D_BSD_SOURCE) ++ add_definitions (-D_DEFAULT_SOURCE) + # on arm -Wcast-align throws many internal qt warning + if(NOT CMAKE_SYSTEM_PROCESSOR MATCHES "^arm") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wcast-align") diff --git a/qca.spec b/qca.spec index 6248ed4..4893477 100644 --- a/qca.spec +++ b/qca.spec @@ -4,38 +4,18 @@ Name: qca Summary: Qt Cryptographic Architecture -Version: 2.1.0 -Release: 14%{?dist} +Version: 2.1.1 +Release: 1%{?dist} License: LGPLv2+ -URL: http://delta.affinix.com/qca -Source0: http://delta.affinix.com/download/qca/2.0/qca-%{version}.tar.gz +#URL: http://delta.affinix.com/qca +URL: https://projects.kde.org/projects/kdesupport/qca +Source0: http://download.kde.org/stable/qca/2.1.1/src/qca-%{version}.tar.xz ## upstream patches -Patch1: 0001-dropped-unused-include.patch -Patch2: 0002-cmake-pkg-config-is-not-REQUIRED.patch -Patch3: 0003-qca-ossl-fixed-compilation-warnings.patch -Patch4: 0004-cmake-dropped-dead-variable.patch -Patch5: 0005-Fix-build-with-libressl.patch -Patch6: 0006-increased-minimum-cmake-version.patch -Patch7: 0007-cmake-warn-user-when-QCA_SUFFIX-is-not-set.patch -Patch8: 0008-cmake-apply-QCA_SUFFIX-for-cmake-config-module-names.patch -Patch9: 0009-cmake-build-for-android.patch -Patch10: 0010-fixed-compilation-on-android.patch -Patch11: 0011-simplified-md5_state_t-and-SHA1_CONTEXT-internal-str.patch -Patch12: 0012-cmake-fixed-warnings-on-android.patch -Patch13: 0013-docs-fixed-no-images-in-docs-when-build-out-of-sourc.patch -Patch14: 0014-cmake-fixed-cmake-config-module-when-used-QCA_SUFFIX.patch -Patch15: 0015-fix-library-name-in-prf-file-to-use-the-lib-name-var.patch -Patch16: 0016-move-QCA_CONFIG_NAME_BASE-definition-in-the-regular-.patch -Patch17: 0017-fixed-array-size-checking.patch -Patch18: 0018-add-a-reviewboardrc.patch -Patch19: 0019-prevent-filewatches-from-emitting-changes-when-there.patch -Patch20: 0020-put-headers-of-a-suffixed-build-in-a-suffixed-direct.patch -# qt5 branch -Patch21: 0021-properly-support-co-existing-qt4-and-qt5-versions.patch -Patch22: 0022-initialize-QCA_SUFFIX-cache-with-the-possibly-previo.patch -Patch23: 0023-Add-missing-QIODevice-include.patch + +## upstreamable patches +Patch1: qca-2.1.1-_DEFAULT_SOURCE.patch BuildRequires: cmake >= 2.8.12 BuildRequires: libgcrypt-devel @@ -223,12 +203,7 @@ Requires: %{name}-qt5%{?_isa} = %{version}-%{release} mkdir %{_target_platform}-qt5 pushd %{_target_platform}-qt5 %{cmake} .. \ - -DQCA_FEATURE_INSTALL_DIR:PATH=%{_qt5_prefix}/mkspecs/features \ - -DQCA_INCLUDE_INSTALL_DIR:PATH=%{_qt5_headerdir} \ - -DQCA_PLUGINS_INSTALL_DIR:PATH=%{_qt5_plugindir} \ - -DQCA_PRIVATE_INCLUDE_INSTALL_DIR:PATH=%{_qt5_headerdir} \ - -DQCA_LIBRARY_INSTALL_DIR:PATH=%{_qt5_libdir} \ - -DQCA_SUFFIX:STRING="qt5" \ + -DQCA_INSTALL_IN_QT_PREFIX:BOOL=ON \ -DQT4_BUILD:BOOL=OFF make %{?_smp_mflags} @@ -387,6 +362,9 @@ make test ARGS="--timeout 300 --output-on-failure" -C %{_target_platform}-qt5 %changelog +* Sat Oct 17 2015 Rex Dieter 2.1.1-1 +- 2.1.1 + * Mon Aug 03 2015 Helio Chissini de Castro - 2.1.0-14 - Add missing header. Breaks compilation for upcoming okular on Qt5 diff --git a/sources b/sources index d504992..cd9fdfd 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -c2b00c732036244701bae4853a2101cf qca-2.1.0.tar.gz +657cc701316600199199a6b6cb2c73c9 qca-2.1.1.tar.xz