60 Commits

Author SHA1 Message Date
Tobias Junghans
2c3992f075 Add Qt 6 build support
The Core5Compat module is still required for QTextCodec and some
difficult remaining QRegExp -> QRegularExpression migrations.
2021-05-29 22:28:27 +00:00
Albert Astals Cid
f944220634 Modernize cmake a bit: Remove confusing else and endif text 2020-02-15 12:29:54 +01:00
Albert Astals Cid
5ddf120260 More modern NSS/cmake 2020-01-30 18:23:59 +01:00
Albert Astals Cid
501a539c22 botan: Require botan2
It's already 2 years old, more than sensible to ask for uptodate crypto
stuff
2020-01-20 23:32:04 +01:00
Albert Astals Cid
d71f4c279b Drop Qt4 support 2020-01-19 17:19:23 +01:00
Harald Sitter
b38e904a4e Partially revert "Require CMake 3.4 and use the OpenSSL imported libs"
Summary:
This reverts the QcaMacro changes of
commit 1137ed5f07d137296874f7dd1ee629f903507161 as they seem fairly
unrelated to the actual openssl change and proof to cause persistent issues
with buildability.

Further revert "unbreak build by moving away from deprecated exec_program"
This reverts commit 32419c899c77b8f5ece374d2453ee37e89af7c10.
Which was done in an attempt to remidy the build problems.

Further revert "Actually abort after the message that tells people to set CMAKE_INSTALL_PREFIX"
This reverts commit 63fd27fbce780bccb9c9b3ff6649888cfd809c6a.
Which was also done in an attempt to fix the problems.

BUG: 406353

Test Plan:
- when configuring without any arguments the qmake derived paths are used and correct
- when configuring with CMAKE_INSTALL_PREFIX the paths are accordingly reported below that

QCA prefix is /opt
Plugins will be installed to /opt/lib/qca-qt5
Binary will be installed to /opt/bin
Library will be installed to /opt/lib
Public headers will be installed to /opt/include/Qca-qt5
Private headers will be installed to /opt/include/Qca-qt5
Feature file will be installed to /opt/mkspecs/features
Documentation will be installed to /opt/share/doc/qca-qt5/html
Man page will be installed to /opt/share/man
Pkg-config file will be installed to /opt/lib/pkgconfig

Reviewers: dfaure, arojas, vonreth

Reviewed By: dfaure, arojas

Differential Revision: https://phabricator.kde.org/D20408
2019-04-23 14:03:50 +02:00
Harald Sitter
32419c899c unbreak build by moving away from deprecated exec_program
Summary:
since 1137ed5f07d137296874f7dd1ee629f903507161 which bumped cmake and
started using TARGET_FILE for the qmake calls qca failed to build for me.
I fail to understand why exactly that is but I suspect it has to do with
the fact that exec_program is deprecated and may not be working
(correctly?) with generator expressions.

moving to the not deprecated execute_process fixes clean builds on my
system and is at the very least a move away from deprecated tech with
no downsides

Test Plan: rm -rf * && cmake -DCMAKE_INSTALL_PREFIX=/usr ..

Reviewers: asturmlechner, dfaure, vonreth

Reviewed By: dfaure

Differential Revision: https://phabricator.kde.org/D20228
2019-04-08 11:32:48 +02:00
Hannah von Reth
1137ed5f07 Require CMake 3.4 and use the OpenSSL imported libs
Summary:
Fixes
 00:09:45.140 [162/278] Linking CXX shared module lib/qca-qt5/crypto/libqca-ossl.dylib
00:09:45.140 FAILED: lib/qca-qt5/crypto/libqca-ossl.dylib
00:09:45.140 : && /usr/bin/clang++ -O2 -g -DNDEBUG -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk -bundle -Wl,-headerpad_max_install_names  -o lib/qca-qt5/crypto/libqca-ossl.dylib plugins/qca-ossl/CMakeFiles/qca-ossl.dir/qca-ossl.cpp.o  lib/qca-qt5.framework/Versions/2.2.0/qca-qt5 /Users/packaging/Craft/BinaryCache/macos-64-clang/lib/libssl.dylib /Users/packaging/Craft/BinaryCache/macos-64-clang/lib/libcrypto.dylib -lcrypto /Users/packaging/Craft/BinaryCache/macos-64-clang/lib/QtCore.framework/QtCore -framework CoreFoundation -framework Security && :
00:09:45.140 ld: library not found for -lcrypto
00:09:45.140 clang: error: linker command failed with exit code 1 (use -v to see invocation)

Reviewers: dfaure, bcooksley, volkov

Reviewed By: dfaure

Differential Revision: https://phabricator.kde.org/D17913
2019-03-04 12:16:36 +01:00
Antonio Rojas
78503bf574 Recommit botan 2 support without making botan mandatory
Differential Revision: https://phabricator.kde.org/D11997
2018-04-12 10:03:12 +02:00
Ben Cooksley
01cbb31770 Revert "Add botan 2 support"
This change adds a mandatory dependency on Botan, which is not available at this time within Craft.
As this change was not notified to Sysadmin and because it has left us in a state whereby we are unable to get the Windows CI system back up and running, this is being reverted so it can be brought back online.

Please reintroduce this change once support for having Botan as optional is restored

This reverts commit 47163784d74232e3a844fc42897bffc7eff817b4.
2018-04-12 19:48:32 +12:00
Antonio Rojas
47163784d7 Add botan 2 support
Botan 1.10 will be EOL'd this year. This patch is a rough port to botan 2 API. Also:

- Removes support for botan < 1.10 to simplify code (1.10 was released 7 years ago)
- Ports the cmake module to use pkgconfig, since botan-config doesn't exist anymore in v2.
- To minimize ifdef'd code, botan2 unique_ptr's are release'd
- Removes -ansi C(XX)FLAGS, botan 2 requires C++11

Differential Revision: https://phabricator.kde.org/D11997
2018-04-11 21:43:57 +02:00
Samuel Gaist
7ba0ee591e OS X build and warning fix
Revert "Add missed file"

This reverts commit 4c9f27270e0a7c00c10cbc56ce5c6842b47e5ab2.

FindCoreFoundation.cmake is not needed since CoreFoundation
is a system framework. Its use has been removed by
commit f223ce03d4b94ffbb093fc8be5adf8d968f54434

Acked by: Ivan Čukić

REVIEW: 126285
2016-10-20 13:34:23 +02:00
Rolf Eike Beer
eb5eeca609 fix the mkspecs install directory when cross-compiling using Qt5
REVIEW:128308
2016-07-02 19:05:19 +02:00
Ivan Romanov
4c9f27270e Add missed file
This file must be a part of 4fd11c444a51e8d317b0d68c7b90a8e0f2c6af9f
commit.

REVIEW: 121703
2015-11-18 23:54:14 +05:00
Samuel Gaist
4fd11c444a Link against CoreFoundation rather than Carbon
Currently qca links to the Carbon framework for building however the mac
specific code don't use any Carbon classes but CoreFoundation. This patch
aims to update the code and build script to link to the more generic
CoreFoundation framework which may also allow to build it on iOS (not
verified).

REVIEW: 121703
2015-04-22 13:06:26 +02:00
Ivan Romanov
8ffb52b439 cmake: pkg-config is not REQUIRED 2014-11-13 02:13:50 +05:00
Ivan Romanov
0311beb5e5 cmake: do not use trailing slash for normalized paths 2014-11-05 22:42:32 +05:00
Ivan Romanov
0ef16c3837 cmake: some fixes with cached and advanced vars 2014-09-26 04:31:30 +06:00
Ivan Romanov
da1f8190ac cmake: use FindPkcConfig module instead of obsoletes PKGCONFIG 2014-08-21 03:10:34 +06:00
Ivan Romanov
efd70c659e cmake: rewritten config package
Fixed algorythm to check for relocatable package.
On Windows when installing to Qt5 prefix QCA will not be relocatable.
2014-08-12 13:22:23 +06:00
Ivan Romanov
fbdf57f843 cmake: install .PDB files
On Windows when compiling with Visual Studio will be produced special
.pdb files for debuggins purposes. It must be put next to target
runtime (.dll or .exe) file.
2014-02-03 02:05:54 +06:00
Ivan Romanov
01bf129066 fix previous commit 2014-02-02 02:39:32 +06:00
Ivan Romanov
9504d1c8e0 cmake: put all runtime to bin when compiling
The most it is need for windows where no rpath and all dll's must be
in the same dir (or in PATH environment)
2014-02-02 02:35:55 +06:00
Ivan Romanov
184db75d4b cmake: use QT_HEADER_DIR instead of QT_INCLUDE_DIR
Qt/Mac frameworks has two include dirs.
One is the framework include for which CMake will add a -F flag
and the other is an include dir for non-framework Qt modules.
QT_INCLUDE_DIR contains both.
QT_HEADER_DIR is for non-framework Qt modules.
2014-01-28 17:33:58 +06:00
Ivan Romanov
6d690c0070 Build static QCA
Added new cmake variable SHARED_LIBRARY. By default is on.
When it is off QCA library, plugins, tools, examples and unittests
will be built as static. Also if is used static Qt plugins will be
built as static. Tested with Qt4.
2014-01-02 03:50:18 +06:00
Ivan Romanov
4edfa3fcba fixed previous commit 2014-01-02 00:02:12 +06:00
Ivan Romanov
1c09b7b8b1 Dropped own FindQt4 cmake module use system one 2014-01-01 22:32:10 +06:00
Ivan Romanov
94ab628411 Added botan-config-1.10 to list possible botan-config names
Such name is used on Fedora 20.
2014-01-01 21:26:43 +06:00
Ivan Romanov
5d06579605 Use internal cache vars to choose plugins for building
It allow to know will be particular plugin build or no
in any place of cmake rules.
2014-01-01 02:10:15 +06:00
Ivan Romanov
0b363c4048 Do not link against QtConcurrent 2013-11-16 20:19:31 +06:00
Ivan Romanov
bd2c474039 no ECM 2013-08-30 20:18:00 +06:00
Ivan Romanov
eb011df617 fixed previous commit 2013-08-27 03:50:45 +06:00
Ivan Romanov
1c6dbab41a fix Qt5 mkspecs install dir 2013-08-27 03:41:39 +06:00
Ivan Romanov
0a8b9db661 [qca-ossl] compiling without AES CTR
Actual openssl versions might have no AES CTR.
In this case qca-ossl will be compiled without AES CTR.

Also dropped own obsoletes FindOpenSSL.cmake.
System version is better choice.
2013-08-25 14:47:36 +06:00
Ivan Romanov
5f6e1759ed install in qt5 prefix 2013-08-24 21:27:08 +06:00
Ivan Romanov
44c7fbb74f install qca to prefix or qt_prefix
Added option QCA_INSTALL_IN_QT_PREFIX to provide a way to choose
default prefix for installing qca. By default is ON.
Also added a cache vars.
  QCA_PREFIX_INSTALL_DIR
  QCA_PLUGINS_INSTALL_DIR
  QCA_BINARY_INSTALL_DIR
  QCA_LIBRARY_INSTALL_DIR
  QCA_FEATURE_INSTALL_DIR
  QCA_INCLUDE_INSTALL_DIR
  QCA_PRIVATE_INCLUDE_INSTALL_DIR
  QCA_DOC_INSTALL_DIR
  QCA_MAN_INSTALL_DIR
2013-08-24 21:26:40 +06:00
Ivan Romanov
e0cdd5db40 Revert "install qca to prefix or qt_prefix"
This reverts commit f5cb5b04dcb37ab4a62943c19646bcfa3d7d3b23.
2013-07-25 14:23:16 +06:00
Ivan Romanov
f5cb5b04dc install qca to prefix or qt_prefix
Added option QCA_INSTALL_IN_QT_PREFIX to provide a way to choose
default prefix for installing qca. By default is ON.
Also added a cache vars.
  QCA_PREFIX_INSTALL_DIR
  QCA_PLUGINS_INSTALL_DIR
  QCA_BINARY_INSTALL_DIR
  QCA_LIBRARY_INSTALL_DIR
  QCA_FEATURE_INSTALL_DIR
  QCA_INCLUDE_INSTALL_DIR
  QCA_PRIVATE_INCLUDE_INSTALL_DIR
  QCA_DOC_INSTALL_DIR
  QCA_MAN_INSTALL_DIR
2013-07-24 22:08:12 +06:00
Ivan Romanov
1b67ea10b0 [qca] improved cmake modules
gpg executable now can be gpg2 too
FindLibGcrypt now will be worked on MinGW/MSYS

svn path=/trunk/kdesupport/qca/; revision=1357722
2013-06-14 10:02:14 +00:00
David Faure
6e0134f3b3 Port to Qt5 (when Qt5 is found, otherwise use Qt4)
The unittests are disabled (because of QSKIP)
and the plugins currently break compilation (because of Q_EXPORT_PLUGIN2)

svn path=/trunk/kdesupport/qca/; revision=1338378
2013-02-07 20:19:00 +00:00
Brad Hards
6fb56b6114 Apply fix from Fabrice Ménard, to improve detection of libgcrypt.
If you previously got "libgcrypt seems to be too old", even with
a really recent libgcrypt, this one is for you.

svn path=/trunk/kdesupport/qca/; revision=752573
2007-12-24 22:57:54 +00:00
Patrick Spendrin
6e9275ebac replaced with version of kdelibs-old one caused cmake error on win32
svn path=/trunk/kdesupport/qca/; revision=705910
2007-08-28 21:33:43 +00:00
Laurent Montel
9dbadfb3d1 Remove not necessary path
svn path=/trunk/kdesupport/qca/; revision=697101
2007-08-06 19:25:31 +00:00
Laurent Montel
0ee9f2b4f9 Don't try to use pkgconfig on win32
svn path=/trunk/kdesupport/qca/; revision=693855
2007-07-29 09:50:49 +00:00
Laurent Montel
334b6612b8 Not try to use pkgconfig on win
svn path=/trunk/kdesupport/qca/; revision=693854
2007-07-29 09:47:29 +00:00
Jonathan Riddell
9b45f191b9 add missing licence file
svn path=/trunk/kdesupport/qca/; revision=693190
2007-07-27 11:46:28 +00:00
Laurent Montel
3ecd37f6b2 Fix when modules is required
svn path=/trunk/kdesupport/qca/; revision=651037
2007-04-06 08:51:15 +00:00
Brad Hards
30a74a6367 Documentation fixes for cmake users.
svn path=/trunk/kdesupport/qca/; revision=644009
2007-03-19 00:22:35 +00:00
Laurent Montel
1974f73661 Fix display message
svn path=/trunk/kdesupport/qca/; revision=642509
2007-03-14 15:31:56 +00:00
Christian Ehrlicher
78406a6651 win32 compile
- update openssl to search for libeay too
- saslservtests needs wsock32
- export CertificateInfoPair to fix qca-openssl linking
- add setenv() to pgpunittest.cpp for win32 - maybe add a check for setenv()

svn path=/trunk/kdesupport/qca/; revision=633918
2007-02-15 19:17:56 +00:00