Skip to content

Commit

Permalink
Merged master fixed conflict.
Browse files Browse the repository at this point in the history
  • Loading branch information
alisovenko committed Jan 10, 2017
2 parents 3c84229 + d2ff57e commit 33955c8
Show file tree
Hide file tree
Showing 2,053 changed files with 10,259 additions and 24,593 deletions.
1 change: 1 addition & 0 deletions .tx/config
Expand Up @@ -13,6 +13,7 @@ trans.cs = i18n/qgis_cs.ts
trans.da = i18n/qgis_da.ts
trans.de = i18n/qgis_de.ts
trans.el = i18n/qgis_el.ts
trans.eo = i18n/qgis_eo.ts
trans.es = i18n/qgis_es.ts
trans.et = i18n/qgis_et.ts
trans.eu = i18n/qgis_eu.ts
Expand Down
19 changes: 1 addition & 18 deletions CMakeLists.txt
Expand Up @@ -564,32 +564,15 @@ IF(COMMAND cmake_policy)
ENDIF(COMMAND cmake_policy)

IF (WIN32)
SET(DLLIMPORT "__declspec(dllimport)")
SET(DLLEXPORT "__declspec(dllexport)")
ELSE (WIN32)
IF ("${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU" OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
SET(DLLEXPORT "__attribute__ ((visibility (\\\"default\\\")))")
ELSE()
SET(DLLEXPORT "")
ENDIF()

IF(PEDANTIC AND NOT APPLE)
SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined")
SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--no-undefined")
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--no-undefined")
ENDIF(PEDANTIC AND NOT APPLE)

ENDIF(WIN32)

ADD_DEFINITIONS("-DCORE_EXPORT=${DLLIMPORT}")
ADD_DEFINITIONS("-DGUI_EXPORT=${DLLIMPORT}")
ADD_DEFINITIONS("-DPYTHON_EXPORT=${DLLIMPORT}")
ADD_DEFINITIONS("-DANALYSIS_EXPORT=${DLLIMPORT}")
ADD_DEFINITIONS("-DAPP_EXPORT=${DLLIMPORT}")
ADD_DEFINITIONS("-DCUSTOMWIDGETS_EXPORT=${DLLIMPORT}")
ADD_DEFINITIONS("-DSERVER_EXPORT=${DLLIMPORT}")

SET(CMAKE_CXX_VISIBILITY_PRESET hidden)
INCLUDE(GenerateExportHeader)

#############################################################
# user-changeable settings which can be used to customize
Expand Down
59 changes: 45 additions & 14 deletions INSTALL
@@ -1,10 +1,10 @@
QGIS
Building QGIS from source - step by step
Monday November 07, 2016
Monday January 09, 2017


Last Updated: Monday November 07, 2016
Last Change : Monday November 07, 2016
Last Updated: Monday January 09, 2017
Last Change : Monday January 09, 2017


1. Introduction
Expand Down Expand Up @@ -87,7 +87,7 @@ source directory.
2. Overview
===========

QGIS, like a number of major projects (eg. KDE 4.0), uses CMake
QGIS, like a number of major projects (e.g., KDE 4.0), uses CMake
(http://www.cmake.org) for building from source.

Following a summary of the required dependencies for building:
Expand All @@ -100,14 +100,17 @@ Required build tools:

Required build dependencies:

- Qt >= 4.8.0
- Qt >= 5.3.0
- Proj >= 4.4.x
- GEOS >= 3.4
- Sqlite3 >= 3.0.0
- GDAL/OGR >= 1.4.x
- SpatiaLite
- libspatialindex
- GDAL/OGR >= 2.0
- Qwt >= 5.0 & (< 6.1 with internal QwtPolar)
- expat >= 1.95
- QScintilla2
- QCA

Optional dependencies:

Expand All @@ -118,14 +121,14 @@ Optional dependencies:
- for georeferencer - GSL >= 1.8
- for postgis support and SPIT plugin - PostgreSQL >= 8.0.x
- for gps plugin - gpsbabel
- for mapserver export and PyQGIS - Python >= 2.3 (2.5+ preferred)
- for python support - SIP >= 4.12, PyQt >= 4.8.3 must match Qt version, Qscintilla2
- for mapserver export and PyQGIS - Python >= 3.3
- for python support - SIP >= 4.12, PyQt >= 5.3 must match Qt version, Qscintilla2
- for qgis mapserver - FastCGI
- for oracle provider - Oracle OCI library

Indirect dependencies:

Some proprietary formats (eg. ECW and MrSid) supported by GDAL require
Some proprietary formats (e.g., ECW and MrSid) supported by GDAL require
proprietary third party libraries. QGIS doesn't need any of those itself to
build, but will only support those formats if GDAL is built accordingly. Refer
to http://gdal.org/formats_list.html ff. for instructions how to include
Expand Down Expand Up @@ -262,27 +265,55 @@ interactive dialog.

Now on with the build:

make
make install
make -jX

where X is the number of available cores. Depending on your platform,
this can speed up the build time considerably.

Then you can directly run from the build directory:

It may take a little while to build depending on your platform.
./output/bin/qgis

Another option is to install to your system:

make install

After that you can try to run QGIS:

$HOME/apps/bin/qgis

If all has worked properly the QGIS application should start up and appear
on your screen. If you get the error message "error while loading shared libraries",
on your screen. If you get the error message "error while loading shared libraries",
execute this command in your shell.

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${HOME}/apps/lib/

Optionally, if you already know what aspects you want in your custom build
then you can skip the interactive ccmake .. part by using the cmake -D
option for each aspect, e.g.:

cmake -D CMAKE_BUILD_TYPE=Debug -D CMAKE_INSTALL_PREFIX=${HOME}/apps ..

Also, if you want to speed your build times, you can easily do it with ninja,
an alternative to make with similar build options.

For example, to configure your build you can do either one of:

ccmake -G Ninja ..

cmake -G Ninja -D CMAKE_BUILD_TYPE=Debug -D CMAKE_INSTALL_PREFIX=${HOME}/apps ..

Build and install with ninja:

ninja (uses all cores by default; also supports the above described -jX option)
ninja install


3.8. Building Debian packages
=============================

Instead of creating a personal installation as in the previous step you can
also create debian package. This is done from the QGIS root directory, where
also create debian package. This is done from the QGIS root directory, where
you'll find a debian directory.

First you need to install the debian packaging tools once:
Expand Down
14 changes: 7 additions & 7 deletions NEWS
@@ -1,6 +1,6 @@
QGIS News
Change history for the QGIS Project
Monday November 07, 2016
Monday January 09, 2017


------------------------------------------------------------------------
Expand Down Expand Up @@ -39,12 +39,12 @@ Monday November 07, 2016
------------------------------------------------------------------------


Last Updated: Monday November 07, 2016
Last Change : Wednesday July 27, 2016
Last Updated: Monday January 09, 2017
Last Change : Sunday January 01, 2017


1. What's new in Version 2.16 'Nødebo'?
========================================
=======================================

This release has following new features:

Expand Down Expand Up @@ -814,7 +814,7 @@ changed so we will just provide a bullet list of key new features here.

- Optionally re-use entered attribute values for next digitized feature.
- Allow merging/assigning attribute values to a set of features.-
- Allow OGR 'save as' without attributes (for eg. DGN/DXF).
- Allow OGR 'save as' without attributes (e.g., DGN/DXF).


14.7. Api and Developer Centric
Expand Down Expand Up @@ -908,7 +908,7 @@ as' option, you can now specify OGR creation options.


15.3. Labeling (New generation only)
=====================================
====================================

- Data defined label position in labeling-ng.
- Line wrapping, data defined font and buffer settings for labeling-ng.
Expand Down Expand Up @@ -1055,7 +1055,7 @@ we recommend that you use a copy of QGIS from our Long Term Support (LTS)1.0.x
release series. In all other cases we recommend that you use this version.

This release includes around 200 bug fixes, nearly 30 new features and has had
a lot of love and attention poured in to it to take our favourite desktop GIS
a lot of love and attention poured in to it to take our favorite desktop GIS
application another step on the road to GIS nirvana! So much has happened in
the 3 months since our last release that it is impossible to document
everything here. Instead we will just highlight a couple of important new
Expand Down
2 changes: 2 additions & 0 deletions ci/travis/linux/after_script.sh
Expand Up @@ -13,4 +13,6 @@
# #
###########################################################################

ccache -s

[ -r /tmp/ctest-important.log ] && cat /tmp/ctest-important.log
55 changes: 37 additions & 18 deletions ci/travis/linux/install.sh
Expand Up @@ -20,6 +20,7 @@ ln -s ${HOME}/osgeo4travis/bin/ccache ${HOME}/osgeo4travis/bin/clang++-${LLVM_VE
ln -s ${HOME}/osgeo4travis/bin/ccache ${HOME}/osgeo4travis/bin/clang-${LLVM_VERSION}

ccache -s
ccache -z

export CXX="clang++-${LLVM_VERSION}"
export CC="clang-${LLVM_VERSION}"
Expand All @@ -38,21 +39,39 @@ CLANG_WARNINGS=""
# Include this line for debug reasons
# -DCMAKE_BUILD_TYPE=RelWithDebInfo \
#
cmake \
-DCMAKE_PREFIX_PATH=/home/travis/osgeo4travis \
-DWITH_STAGED_PLUGINS=ON \
-DWITH_GRASS=ON \
-DWITH_GRASS7=ON \
-DGRASS_PREFIX7=/home/travis/osgeo4travis/grass-7.0.4 \
-DSUPPRESS_QT_WARNINGS=ON \
-DENABLE_MODELTEST=ON \
-DENABLE_PGTEST=ON \
-DWITH_QSPATIALITE=ON \
-DWITH_QWTPOLAR=OFF \
-DWITH_APIDOC=ON \
-DWITH_ASTYLE=ON \
-DWITH_SERVER=ON \
-DWITH_INTERNAL_YAML=OFF \
-DDISABLE_DEPRECATED=ON \
-DCXX_EXTRA_FLAGS="$CLANG_WARNINGS" \
..
CMAKE_FLAGS="
-DCMAKE_PREFIX_PATH=/home/travis/osgeo4travis
-DWITH_STAGED_PLUGINS=ON
-DWITH_GRASS=ON
-DWITH_GRASS7=ON
-DGRASS_PREFIX7=/home/travis/osgeo4travis/grass-7.0.4
-DSUPPRESS_QT_WARNINGS=ON
-DENABLE_MODELTEST=ON
-DENABLE_PGTEST=ON
-DWITH_QSPATIALITE=ON
-DWITH_QWTPOLAR=OFF
-DWITH_APIDOC=ON
-DWITH_ASTYLE=ON
-DWITH_INTERNAL_YAML=OFF
-DDISABLE_DEPRECATED=ON
-DCXX_EXTRA_FLAGS=${CLANG_WARNINGS}
"

# The following options trigger a minimalized build to
# reduce the travis build time so we don't time out and
# have a chance of slowly filling the ccache.
if [ "$CACHE_WARMING" = true ] ; then
CMAKE_FLAGS="
${CMAKE_FLAGS}
-DWITH_DESKTOP=OFF
-DWITH_SERVER=OFF
"
else
CMAKE_FLAGS="
${CMAKE_FLAGS}
-DWITH_DESKTOP=ON
-DWITH_SERVER=ON
"
fi

cmake $CMAKE_FLAGS ..
9 changes: 8 additions & 1 deletion ci/travis/linux/script.sh
Expand Up @@ -18,12 +18,19 @@ export PATH=${HOME}/osgeo4travis/bin:${HOME}/osgeo4travis/sbin:${HOME}/OTB-5.6.0
export LD_LIBRARY_PATH=${HOME}/osgeo4travis/lib
export CTEST_PARALLEL_LEVEL=1
export CCACHE_TEMPDIR=/tmp
ccache -M 2G

DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"

# Set OTB application path (installed in before_install.sh script)
export OTB_APPLICATION_PATH=${HOME}/OTB-5.6.0-Linux64/lib/otb/applications
export LD_PRELOAD=/lib/x86_64-linux-gnu/libSegFault.so

xvfb-run ctest -V -E "qgis_filedownloader|qgis_openstreetmaptest|qgis_wcsprovidertest|PyQgsWFSProviderGUI|qgis_ziplayertest|$(cat ${DIR}/blacklist.txt | paste -sd '|' -)" -S ./qgis-test-travis.ctest --output-on-failure
# xvfb-run ctest -V -E "qgis_openstreetmaptest|qgis_wcsprovidertest" -S ./qgis-test-travis.ctest --output-on-failure
if [ "$CACHE_WARMING" = true ] ; then
echo "WARNING: CACHE WARMING IS ACTIVE. SET CACHE_WARMING=false TO GET MEANINGFUL RESULTS."
xvfb-run ctest -V -R NOTESTS -S ./qgis-test-travis.ctest --output-on-failure
false
else
xvfb-run ctest -V -E "qgis_filedownloader|qgis_openstreetmaptest|qgis_wcsprovidertest|PyQgsWFSProviderGUI|qgis_ziplayertest|$(cat ${DIR}/blacklist.txt | paste -sd '|' -)" -S ./qgis-test-travis.ctest --output-on-failure
fi
22 changes: 7 additions & 15 deletions cmake/FindGDAL.cmake
Expand Up @@ -61,13 +61,9 @@ ELSE(WIN32)
ENDIF (NOT GDAL_VERSION)
STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1" GDAL_VERSION_MAJOR "${GDAL_VERSION}")
STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\2" GDAL_VERSION_MINOR "${GDAL_VERSION}")
IF (GDAL_VERSION_MAJOR LESS 1 OR (GDAL_VERSION EQUAL 1 AND GDAL_VERSION_MINOR LESS 4))
MESSAGE (FATAL_ERROR "GDAL version is too old (${GDAL_VERSION}). Use 1.4.0 or higher.")
ENDIF (GDAL_VERSION_MAJOR LESS 1 OR (GDAL_VERSION EQUAL 1 AND GDAL_VERSION_MINOR LESS 4))

IF (GDAL_VERSION_MAJOR LESS 1 OR (GDAL_VERSION_MAJOR EQUAL 1 AND GDAL_VERSION_MINOR LESS 11))
MESSAGE (WARNING "GDAL version is too old (${GDAL_VERSION}) to support GeoPackage. 1.11.0 or higher is recommended.")
ENDIF (GDAL_VERSION_MAJOR LESS 1 OR (GDAL_VERSION_MAJOR EQUAL 1 AND GDAL_VERSION_MINOR LESS 11))
IF (GDAL_VERSION_MAJOR LESS 2)
MESSAGE (FATAL_ERROR "GDAL version is too old (${GDAL_VERSION}). Use 2.0 or higher.")
ENDIF (GDAL_VERSION_MAJOR LESS 2)

ENDIF (GDAL_LIBRARY)
SET (CMAKE_FIND_FRAMEWORK ${CMAKE_FIND_FRAMEWORK_save} CACHE STRING "" FORCE)
Expand Down Expand Up @@ -105,14 +101,10 @@ ELSE(WIN32)

# check for gdal version
# version 1.2.5 is known NOT to be supported (missing CPL_STDCALL macro)
# According to INSTALL, 1.4.0+ is required
IF (GDAL_VERSION_MAJOR LESS 1 OR (GDAL_VERSION_MAJOR EQUAL 1 AND GDAL_VERSION_MINOR LESS 4))
MESSAGE (FATAL_ERROR "GDAL version is too old (${GDAL_VERSION}). Use 1.4.0 or higher.")
ENDIF (GDAL_VERSION_MAJOR LESS 1 OR (GDAL_VERSION_MAJOR EQUAL 1 AND GDAL_VERSION_MINOR LESS 4))

IF (GDAL_VERSION_MAJOR LESS 1 OR (GDAL_VERSION_MAJOR EQUAL 1 AND GDAL_VERSION_MINOR LESS 11))
MESSAGE (WARNING "GDAL version is too old (${GDAL_VERSION}) to support GeoPackage. 1.11.0 or higher is recommended.")
ENDIF (GDAL_VERSION_MAJOR LESS 1 OR (GDAL_VERSION_MAJOR EQUAL 1 AND GDAL_VERSION_MINOR LESS 11))
# According to INSTALL, 2.0+ is required
IF (GDAL_VERSION_MAJOR LESS 2)
MESSAGE (FATAL_ERROR "GDAL version is too old (${GDAL_VERSION}). Use 2.0 or higher.")
ENDIF (GDAL_VERSION_MAJOR LESS 2)

# set INCLUDE_DIR to prefix+include
EXEC_PROGRAM(${GDAL_CONFIG}
Expand Down
3 changes: 2 additions & 1 deletion cmake/FindGRASS.cmake
Expand Up @@ -167,7 +167,7 @@ IF (UNIX)
IF (GRASS_FIND_VERSION EQUAL 6)
LIST(APPEND GRASS_PATHS /usr/lib64/grass64 /usr/lib/grass64)
ELSEIF (GRASS_FIND_VERSION EQUAL 7)
LIST(APPEND GRASS_PATHS /usr/lib64/grass70 /usr/lib/grass70 /usr/lib64/grass71 /usr/lib/grass71)
LIST(APPEND GRASS_PATHS /usr/lib64/grass70 /usr/lib/grass70 /usr/lib64/grass71 /usr/lib/grass71 /usr/lib64/grass72 /usr/lib/grass72)
ENDIF ()
ENDIF (UNIX)

Expand All @@ -181,6 +181,7 @@ IF (APPLE)
LIST(APPEND GRASS_PATHS
/Applications/GRASS-7.0.app/Contents/MacOS
/Applications/GRASS-7.1.app/Contents/MacOS
/Applications/GRASS-7.2.app/Contents/MacOS
)
ENDIF ()
LIST(APPEND GRASS_PATHS /Applications/GRASS.app/Contents/Resources)
Expand Down
2 changes: 1 addition & 1 deletion cmake/QCAMacros.cmake
Expand Up @@ -92,7 +92,7 @@ function(FIND_QCATOOL TOOL_REQUIRED)
$ENV{OSGEO4W_ROOT}/bin
)
else()
find_program(QCATOOL_EXECUTABLE NAMES qcatool qcatool2)
find_program(QCATOOL_EXECUTABLE NAMES qcatool qcatool2 qcatool-qt5)
endif()

if(NOT QCATOOL_EXECUTABLE)
Expand Down
2 changes: 1 addition & 1 deletion cmake/Txt2Tags.cmake
Expand Up @@ -42,7 +42,7 @@ MACRO(ADD_TXT2TAGS_FILES _sources)
ADD_CUSTOM_COMMAND(
OUTPUT ${_out}
COMMAND ${TXT2TAGS_EXECUTABLE}
ARGS -o${_out} -t txt ${_in}
ARGS --encoding=utf-8 -o${_out} -t txt ${_in}
DEPENDS ${_in}
COMMENT "Building ${_out} from ${_in}"
)
Expand Down
2 changes: 1 addition & 1 deletion cmake_templates/Doxyfile.in
Expand Up @@ -1448,7 +1448,7 @@ DOT_NUM_THREADS = 0

# By default doxygen will write a font called FreeSans.ttf to the output
# directory and reference it in all dot files that doxygen generates. This
# font does not include all possible unicode characters however, so when you need
# font does not include all possible Unicode characters however, so when you need
# these (or just want a differently looking font) you can specify the font name
# using DOT_FONTNAME. You need need to make sure dot is able to find the font,
# which can be done by putting it in a standard location or by setting the
Expand Down
2 changes: 0 additions & 2 deletions debian/qgis.install
@@ -1,8 +1,6 @@
usr/lib/qgis/plugins/libgeorefplugin.so
usr/lib/qgis/plugins/libgpsimporterplugin.so
usr/lib/qgis/plugins/libinterpolationplugin.so
usr/lib/qgis/plugins/libcoordinatecaptureplugin.so
usr/lib/qgis/plugins/liboracleplugin.so
usr/lib/qgis/plugins/libevis.so
usr/lib/qgis/plugins/libspatialqueryplugin.so
usr/lib/qgis/plugins/libofflineeditingplugin.so
Expand Down

0 comments on commit 33955c8

Please sign in to comment.