* 0vars.cmake, FindSIP: Update to save new sip_module_dir variable
sip4 has changed sip_mod_dir to sip_module_dir.
Store the variable for later usage
* Use only new MODULE_DIR sip variable
25ba36180c causes
build failures on Ubuntu 16.04 and 18.04 with gcc
{{{
/usr/bin/c++ -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -I/usr/include/Qca-qt5/QtCrypto -fPIE -std=gnu++11 -o CMakeFiles/cmTC_3b936.dir/qcaossl.cpp.o -c /home/even/qgis/QGIS/build/CMakeFiles/CMakeTmp/qcaossl.cpp
In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h:37:0,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h:41,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/QString:1,
from /usr/include/Qca-qt5/QtCrypto/qca_core.h:36,
from /usr/include/Qca-qt5/QtCrypto/qca.h:36,
from /usr/include/Qca-qt5/QtCrypto/QtCrypto:1,
from /home/even/qgis/QGIS/build/CMakeFiles/CMakeTmp/qcaossl.cpp:2:
/usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:1067:4: error: #error "You must build your code with position independent code if Qt was built with -reduce-relocations. " "Compile your code with -fPIC (-fPIE is not enough)."
# error "You must build your code with position independent code if Qt was built with -reduce-relocations. "\
^
}}}
qtglobal.h doesn't like -fPIC and -fPIE together
See https://github.com/qgis/QGIS/pull/6093#issuecomment-393518711
This pull request is a subset of #6490
This adds a new library for creation of applications based on Qt Quick
framework.
It contains reusable QML / Qt Quick components based on QGIS core
library.
The initial work introduces MapCanvas
To enable compilation of the library, use WITH_QUICK=TRUE
Further documentation of the library is located in doc/qgsquick.dox
For background information see the associated QEP:
qgis/QGIS-Enhancement-Proposals#109
The initial implementation is largely based on the work of Matthias Kuhn
and Marco Bernasocchi on QField probject - kudos to them for the great
job!
Introducting MDAL, QgsMeshLayer, mesh data providers (mesh_memory, mdal)
to read and visualize raw meshes: vertices and faces. Support dragging
2dm files from browser on canvas to visualize 2dm meshes.
Support for QgsMeshLayer in Python API.
On OpenBSD, there's no libgdal.so symlink, only a versioned library (ie
libgdal.so.X.Y where X.Y changes over time so is never constant)
Using cmake's FIND_LIBRARY allows to let cmake find the library.
Without this, the build would fail on OpenBSD:
ninja: error: '/usr/local/lib/libgdal.so', needed by 'output/lib/libqgis_core.so.18.0', missing and no known rule to make it
* detect SIP version to add DefaultDocstringSignature directive
SIP doesn't handle any kind of preprocessing, so there's no better solution than configuring the SIP files from CMake.
SIP 4.19.7+ supports %DefaultDocstringSignature to prepend auto-generated Python signature to existing Docstrings
See description of QgsAuthCertUtils::pkcs8PrivateKey.
This fix may be needed on other platforms (untested at this point),
because Qt5 QSslkey class *still* does not directly support creation
using non-PKCS1 PEM- or DER-encoded data, though QCA, whose qca-ossl
plugin is linked to OpenSSL, does support PKCS1 and PKCS8.
On some OSX macport installation, GNU commands may be used in favor
of native commands and 'make install' fail with
'ln: invalid option -- 'h'"
As BSD ln support the GNU -n option as an equivalent of the -h option
it shoud be preferred over the specific BSD option.
* use AUTORCC to avoid locked qrc_images.cpp during build of gui tests
* bump minimum version of cmake to 3.0.0 for AUTORCC
* suppress some warnings in sip bindings
* suppress unreachable warnings and some more
* split sip files in more parts to suppress warning BK4504
* also remove old WITH_INTERNAL_YAML from travis