Skip to content
Permalink
Browse files

Merge branch 'master' into regularShape_gui

  • Loading branch information
lbartoletti committed Oct 3, 2017
2 parents 0204302 + 22d4d22 commit 870de2e8bb0713226c87aa56b2f11ba5b167f167
Showing 715 changed files with 18,416 additions and 2,988 deletions.
@@ -52,7 +52,6 @@ scripts/astyle.exe
scripts/Debug
scripts/qgisstyle*
scripts/RelWithDebInfo
src/core/qgscontexthelp_texts.cpp
src/core/qgsexpression_texts.cpp
tests/testdata/cache/
tests/testdata/checker360by180.asc.aux.xml
@@ -59,6 +59,8 @@ IF(WITH_CORE)

SET (WITH_DESKTOP TRUE CACHE BOOL "Determines whether QGIS desktop should be built")

SET (WITH_3D FALSE CACHE BOOL "Determines whether QGIS 3D library should be built")

# server disabled default because it needs FastCGI (which is optional dependency)
SET (WITH_SERVER FALSE CACHE BOOL "Determines whether QGIS server should be built")
IF(WITH_SERVER)
@@ -258,7 +260,13 @@ IF(WITH_CORE)
ENDIF(WITH_QTWEBKIT)
#############################################################
# search for Qt5
SET(QT_MIN_VERSION 5.2.0)
IF (WITH_3D)
# for 3D support we strictly require Qt >= 5.8
# (Qt 3D was introduced in 5.7 but it is not stable enough in that branch)
SET(QT_MIN_VERSION 5.8.0)
ELSE ()
SET(QT_MIN_VERSION 5.2.0)
ENDIF()
FIND_PACKAGE(Qt5Core QUIET)
FIND_PACKAGE(Qt5Gui REQUIRED)
FIND_PACKAGE(Qt5Widgets REQUIRED)
@@ -276,6 +284,14 @@ IF(WITH_CORE)
FIND_PACKAGE(Qt5UiTools REQUIRED)
FIND_PACKAGE(Qt5Script REQUIRED)
FIND_PACKAGE(Qt5Sql REQUIRED)
IF (WITH_3D)
FIND_PACKAGE(Qt53DCore REQUIRED)
FIND_PACKAGE(Qt53DRender REQUIRED)
FIND_PACKAGE(Qt53DInput REQUIRED)
FIND_PACKAGE(Qt53DLogic REQUIRED)
FIND_PACKAGE(Qt53DExtras REQUIRED)
SET(HAVE_3D TRUE) # used in qgsconfig.h
ENDIF (WITH_3D)
INCLUDE("cmake/modules/ECMQt4To5Porting.cmake")
MESSAGE(STATUS "Found Qt version: ${Qt5Core_VERSION_STRING}")

@@ -108,6 +108,7 @@ Required build dependencies:
- QScintilla2
- QCA
- qtkeychain (>= 0.5)
- libzip

Optional dependencies:

@@ -364,7 +365,7 @@ new subdirectory called `build` or `build-qt5` in it.
3.9.1. Install build dependencies
=================================

dnf install qt5-qtwebkit-devel qt5-qtlocation-devel qt5-qttools-static qt5-qtscript-devel qca-qt5-devel python3-qt5-devel python3-qscintilla-qt5-devel qscintilla-qt5-devel python3-qscintilla-devel python3-qscintilla-qt5 clang flex bison geos-devel gdal-devel sqlite-devel libspatialite-devel qt5-qtsvg-devel qt5-qtxmlpatterns-devel spatialindex-devel expat-devel proj-devel qwt-qt5-devel gsl-devel postgresql-devel cmake python3-future gdal-python3 python3-psycopg2 python3-PyYAML python3-pygments python3-jinja2 python3-OWSLib qca-qt5-ossl qwt-qt5-devel qtkeychain-qt5-devel qwt-devel sip-devel
dnf install qt5-qtwebkit-devel qt5-qtlocation-devel qt5-qttools-static qt5-qtscript-devel qca-qt5-devel python3-qt5-devel python3-qscintilla-qt5-devel qscintilla-qt5-devel python3-qscintilla-devel python3-qscintilla-qt5 clang flex bison geos-devel gdal-devel sqlite-devel libspatialite-devel qt5-qtsvg-devel qt5-qtxmlpatterns-devel spatialindex-devel expat-devel proj-devel qwt-qt5-devel gsl-devel postgresql-devel cmake python3-future gdal-python3 python3-psycopg2 python3-PyYAML python3-pygments python3-jinja2 python3-OWSLib qca-qt5-ossl qwt-qt5-devel qtkeychain-qt5-devel qwt-devel sip-devel libzip-devel

To build QGIS server additional dependencies are required:

@@ -13,7 +13,7 @@
//used in vim src/core/qgis.cpp
//The way below should work but it resolves to a number like 0110 which the compiler treats as octal I think
//because debuggin it out shows the decimal number 72 which results in incorrect version status.
//As a short term fix I (Tim) am defining the version in top level cmake. It would be good to
//As a short term fix I (Tim) am defining the version in top level cmake. It would be good to
//reinstate this more generic approach below at some point though
//#define VERSION_INT ${CPACK_PACKAGE_VERSION_MAJOR}${CPACK_PACKAGE_VERSION_MINOR}${CPACK_PACKAGE_VERSION_PATCH}
#define VERSION_INT ${QGIS_VERSION_INT}
@@ -58,5 +58,7 @@

#cmakedefine ENABLE_MODELTEST

#cmakedefine HAVE_3D

#endif

@@ -38,7 +38,7 @@ Build-Depends:
graphviz,
xvfb, xauth,
xfonts-base, xfonts-100dpi, xfonts-75dpi, xfonts-scalable,
#sid# libosgearth-dev,
#artful sid# libosgearth-dev, qt3d5-dev, qt3d-assimpsceneimport-plugin, qt3d-defaultgeometryloader-plugin, qt3d-gltfsceneio-plugin, qt3d-scene2d-plugin,
#oracle# oracle-instantclient12.1-devel, oracle-instantclient12.1-basiclite, qtbase5-private-dev,
locales, ca-certificates, ninja-build
Build-Conflicts: libqgis-dev, qgis-dev
@@ -145,6 +145,19 @@ Description: QGIS - shared native gui library
.
This package contains the shared native gui library.

#artful sid#Package: libqgis-3d{QGIS_ABI}
#artful sid#Architecture: any
#artful sid#Section: libs
#artful sid#Depends:
#artful sid# qt3d-assimpsceneimport-plugin, qt3d-defaultgeometryloader-plugin, qt3d-gltfsceneio-plugin, qt3d-scene2d-plugin,
#artful sid# ${shlibs:Depends},
#artful sid# ${misc:Depends}
#artful sid#Description: QGIS - shared 3d library
#artful sid# QGIS is a Geographic Information System (GIS) which manages, analyzes and
#artful sid# display databases of geographic information.
#artful sid# .
#artful sid# This package contains the shared 3d library.
#artful sid#
Package: libqgisgrass{GRASSVER}-{QGIS_ABI}
Architecture: any
Section: libs
@@ -0,0 +1 @@
usr/lib/libqgis_3d.so.{QGIS_ABI}
@@ -8,3 +8,4 @@ usr/lib/libqgis_server.so
usr/lib/libqgisgrass{GRASSVER}.so
usr/lib/libqgispython.so
usr/share/qgis/FindQGIS.cmake
#sid#usr/lib/libqgis_3d.so
@@ -18,3 +18,4 @@ usr/share/qgis/i18n/*
usr/share/qgis/images/*
usr/share/qgis/resources/spatialite.db
usr/share/qgis/resources/themes/*
usr/share/qgis/qgis_global_settings.ini
@@ -102,8 +102,10 @@ ifneq (,$(findstring $(DISTRIBUTION),"sid stretch"))
CMAKE_OPTS += -DPOSTGRES_LIBRARY=/usr/lib/$(DEB_BUILD_MULTIARCH)/libpq.so
endif

ifneq (,$(findstring $(DISTRIBUTION),"sid"))
CMAKE_OPTS += -DGEOS_LIBRARY=/usr/lib/$(DEB_BUILD_MULTIARCH)/libgeos_c.so
ifneq (,$(findstring $(DISTRIBUTION),"artful sid"))
CMAKE_OPTS += \
-DWITH_3D=TRUE \
-DGEOS_LIBRARY=/usr/lib/$(DEB_BUILD_MULTIARCH)/libgeos_c.so
endif


@@ -53,6 +53,7 @@ IF(WITH_APIDOC)
SET(DOXYGEN_INPUT
${CMAKE_SOURCE_DIR}/doc
${CMAKE_SOURCE_DIR}/src/core
${CMAKE_SOURCE_DIR}/src/core/3d
${CMAKE_SOURCE_DIR}/src/core/annotations
${CMAKE_SOURCE_DIR}/src/core/auth
${CMAKE_SOURCE_DIR}/src/core/composer
@@ -91,6 +92,10 @@ IF(WITH_APIDOC)
${CMAKE_SOURCE_DIR}/src/analysis/openstreetmap
${CMAKE_SOURCE_DIR}/src/analysis/raster
${CMAKE_SOURCE_DIR}/src/analysis/vector
${CMAKE_SOURCE_DIR}/src/3d
${CMAKE_SOURCE_DIR}/src/3d/chunks
${CMAKE_SOURCE_DIR}/src/3d/symbols
${CMAKE_SOURCE_DIR}/src/3d/terrain
${CMAKE_SOURCE_DIR}/src/plugins
)

@@ -77,13 +77,13 @@
<DIV CLASS="header" ID="header">
<H1>QGIS</H1>
<H2>Building QGIS from source - step by step</H2>
<H3>Saturday September 23, 2017</H3>
<H3>Monday October 02, 2017</H3>
</DIV>

<DIV CLASS="body" ID="body">
<P>
Last Updated: Saturday September 23, 2017
Last Change : Saturday September 23, 2017
Last Updated: Monday October 02, 2017
Last Change : Monday October 02, 2017
</P>
<DIV CLASS="toc">

@@ -596,7 +596,7 @@ <H2>3.9. On Fedora Linux</H2>
<H3>3.9.1. Install build dependencies</H3>

<div class="code"><PRE>
dnf install qt5-qtwebkit-devel qt5-qtlocation-devel qt5-qttools-static qt5-qtscript-devel qca-qt5-devel python3-qt5-devel python3-qscintilla-qt5-devel qscintilla-qt5-devel python3-qscintilla-devel python3-qscintilla-qt5 clang flex bison geos-devel gdal-devel sqlite-devel libspatialite-devel qt5-qtsvg-devel qt5-qtxmlpatterns-devel spatialindex-devel expat-devel proj-devel qwt-qt5-devel gsl-devel postgresql-devel cmake python3-future gdal-python3 python3-psycopg2 python3-PyYAML python3-pygments python3-jinja2 python3-OWSLib qca-qt5-ossl qwt-qt5-devel qtkeychain-qt5-devel qwt-devel sip-devel
dnf install qt5-qtwebkit-devel qt5-qtlocation-devel qt5-qttools-static qt5-qtscript-devel qca-qt5-devel python3-qt5-devel python3-qscintilla-qt5-devel qscintilla-qt5-devel python3-qscintilla-devel python3-qscintilla-qt5 clang flex bison geos-devel gdal-devel sqlite-devel libspatialite-devel qt5-qtsvg-devel qt5-qtxmlpatterns-devel spatialindex-devel expat-devel proj-devel qwt-qt5-devel gsl-devel postgresql-devel cmake python3-future gdal-python3 python3-psycopg2 python3-PyYAML python3-pygments python3-jinja2 python3-OWSLib qca-qt5-ossl qwt-qt5-devel qtkeychain-qt5-devel qwt-devel sip-devel libzip-devel
</PRE></div>

<P>
@@ -751,6 +751,7 @@ <H3>4.1.2. Other tools and dependencies</H3>
<LI>python3-future
<LI>python3-pyyaml
<LI>python3-mock
<LI>python3-six
<LI>qca-qt5-devel
<LI>qca-qt5-libs
<LI>qscintilla-qt5
@@ -1002,7 +1003,7 @@ <H3>4.2.2. Qt</H3>
When Qt installation is complete:
</P>
<P>
Edit C:\Qt\4.8.0\bin\qtvars.bat and add the following lines:
Edit C:\Qt\5.9.1\bin\qtvars.bat and add the following lines:
</P>

<div class="code"><PRE>
@@ -1011,12 +1012,12 @@ <H3>4.2.2. Qt</H3>
</PRE></div>

<P>
I suggest you also add C:\Qt\4.8.0\bin\ to your Environment Variables Path in
I suggest you also add C:\Qt\5.9.1\bin\ to your Environment Variables Path in
the windows system preferences.
</P>
<P>
If you plan to do some debugging, you'll need to compile debug version of Qt:
C:\Qt\4.8.0\bin\qtvars.bat compile_debug
C:\Qt\5.9.1\bin\qtvars.bat compile_debug
</P>
<P>
Note: there is a problem when compiling debug version of Qt 4.7, the script ends with
@@ -1026,7 +1027,7 @@ <H3>4.2.2. Qt</H3>
</P>

<div class="code"><PRE>
c:\Qt\4.8.0 make
c:\Qt\5.9.1 make
</PRE></div>

<H3>4.2.3. Flex and Bison</H3>
@@ -1036,15 +1037,16 @@ <H3>4.2.3. Flex and Bison</H3>
<A HREF="http://sourceforge.net/project/showfiles.php?group_id=23617&amp;package_id=16424">http://sourceforge.net/project/showfiles.php?group_id=23617&amp;package_id=16424</A>
(the zip bin) and extract it into c:\msys\mingw\bin
</P>

<H3>4.2.4. Python stuff (optional)</H3>

<H3>4.2.4. Python</H3>
<P>
Follow this section in case you would like to use Python bindings for QGIS. To
be able to compile bindings, you need to compile SIP and PyQt4 from sources as
be able to compile bindings, you need to compile SIP and PyQt5 from sources as
their installer doesn't include some development files which are necessary.
</P>

<P>
Note that even if you compile without the Python bindings, Python3 is still
a necessary dependency for building QGIS.
</P>
<H4>4.2.4.1. Download and install Python - use Windows installer</H4>

<P>
@@ -1053,9 +1055,7 @@ <H4>4.2.4.1. Download and install Python - use Windows installer</H4>
<P>
<A HREF="http://python.org/download/">http://python.org/download/</A>
</P>

<H4>4.2.4.2. Download SIP and PyQt4 sources</H4>

<H4>4.2.4.2. Download SIP and PyQt5 sources</H4>
<P>
<A HREF="http://www.riverbankcomputing.com/software/sip/download">http://www.riverbankcomputing.com/software/sip/download</A>
<A HREF="http://www.riverbankcomputing.com/software/pyqt/download">http://www.riverbankcomputing.com/software/pyqt/download</A>
@@ -1068,7 +1068,7 @@ <H4>4.2.4.2. Download SIP and PyQt4 sources</H4>
<H4>4.2.4.3. Compile SIP</H4>

<div class="code"><PRE>
c:\Qt\4.8.0\bin\qtvars.bat
c:\Qt\5.9.1\bin\qtvars.bat
python configure.py -p win32-g++
make
make install
@@ -1077,7 +1077,7 @@ <H4>4.2.4.3. Compile SIP</H4>
<H4>4.2.4.4. Compile PyQt</H4>

<div class="code"><PRE>
c:\Qt\4.8.0\bin\qtvars.bat
c:\Qt\5.9.1\bin\qtvars.bat
python configure.py
make
make install
@@ -1086,7 +1086,7 @@ <H4>4.2.4.4. Compile PyQt</H4>
<H4>4.2.4.5. Final python notes</H4>

<P>
/!\ You can delete the directories with unpacked SIP and PyQt4 sources after a
/!\ You can delete the directories with unpacked SIP and PyQt5 sources after a
successful install, they're not needed anymore.
</P>

@@ -1106,7 +1106,7 @@ <H3>4.2.6. CMake</H3>
CMake is build system used by QGIS. Download it from here:
</P>
<P>
<A HREF="http://www.cmake.org/files/v2.8/cmake-2.8.2-win32-x86.exe">http://www.cmake.org/files/v2.8/cmake-2.8.2-win32-x86.exe</A>
<A HREF="https://cmake.org/files/v3.9/cmake-3.9.3-win64-x64.msi">https://cmake.org/files/v3.9/cmake-3.9.3-win64-x64.msi</A>
</P>

<H3>4.2.7. QGIS</H3>
@@ -1141,11 +1141,11 @@ <H3>4.2.8. Compiling</H3>
</P>

<div class="code"><PRE>
c:\Qt\4.8.0\bin\qtvars.bat
c:\Qt\5.9.1\bin\qtvars.bat
</PRE></div>

<P>
For ease of use add c:\Qt\4.8.0\bin\ to your system path in system
For ease of use add c:\Qt\5.9.1\bin\ to your system path in system
properties so you can just type qtvars.bat when you open the cmd console.
Create build directory and set it as current directory:
</P>
@@ -1154,6 +1154,8 @@ QgsExpression::Function {#qgis_api_break_3_0_QgsExpression_Function}
- `QgsExpression::Function::usesgeometry()` has been renamed to `QgsExpression::Function::usesGeometry( const NodeFunction* node )`
- `QStringList QgsExpression::Function::referencedColumns()` has been changed to `QSet<QString> QgsExpression::Function::referencedColumns( const NodeFunction* node )`
- `QgsExpression::Function::helptext()` has been renamed to `helpText()`
- `QgsExpression::Function::func` has an additional parameter `node` that
provides access to the original node.

QgsExpressionItem {#qgis_api_break_3_0_QgsExpressionItem}
-----------------
@@ -257,7 +257,7 @@ new subdirectory called `build` or `build-qt5` in it.
=== Install build dependencies ===

```
dnf install qt5-qtwebkit-devel qt5-qtlocation-devel qt5-qttools-static qt5-qtscript-devel qca-qt5-devel python3-qt5-devel python3-qscintilla-qt5-devel qscintilla-qt5-devel python3-qscintilla-devel python3-qscintilla-qt5 clang flex bison geos-devel gdal-devel sqlite-devel libspatialite-devel qt5-qtsvg-devel qt5-qtxmlpatterns-devel spatialindex-devel expat-devel proj-devel qwt-qt5-devel gsl-devel postgresql-devel cmake python3-future gdal-python3 python3-psycopg2 python3-PyYAML python3-pygments python3-jinja2 python3-OWSLib qca-qt5-ossl qwt-qt5-devel qtkeychain-qt5-devel qwt-devel sip-devel
dnf install qt5-qtwebkit-devel qt5-qtlocation-devel qt5-qttools-static qt5-qtscript-devel qca-qt5-devel python3-qt5-devel python3-qscintilla-qt5-devel qscintilla-qt5-devel python3-qscintilla-devel python3-qscintilla-qt5 clang flex bison geos-devel gdal-devel sqlite-devel libspatialite-devel qt5-qtsvg-devel qt5-qtxmlpatterns-devel spatialindex-devel expat-devel proj-devel qwt-qt5-devel gsl-devel postgresql-devel cmake python3-future gdal-python3 python3-psycopg2 python3-PyYAML python3-pygments python3-jinja2 python3-OWSLib qca-qt5-ossl qwt-qt5-devel qtkeychain-qt5-devel qwt-devel sip-devel libzip-devel
```

To build QGIS server additional dependencies are required:
@@ -25,6 +25,12 @@ components to QGIS.

*/

/** @defgroup 3d 3D library

The 3D library is build on top of the CORE library and Qt 3D framework. It adds support for display of GIS data in 3D scenes.

*/

/** @defgroup plugins plugin classes

Contains classes related to implementation of QGIS plugins.
@@ -51,6 +51,7 @@ and from OSGeo4W (select //Advanced Installation//):
- python3-future
- python3-pyyaml
- python3-mock
- python3-six
- qca-qt5-devel
- qca-qt5-libs
- qscintilla-qt5

0 comments on commit 870de2e

Please sign in to comment.
You can’t perform that action at this time.