Navigation Menu

Skip to content

Commit

Permalink
Merge remote-tracking branch 'qgis/master' into propertieslayout
Browse files Browse the repository at this point in the history
  • Loading branch information
m-kuhn committed Sep 28, 2017
2 parents ae806ad + f9f5aaf commit d2f11b3
Show file tree
Hide file tree
Showing 3,268 changed files with 109,164 additions and 71,782 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
5 changes: 3 additions & 2 deletions .ci/travis/code_layout/install.sh
Expand Up @@ -16,7 +16,8 @@
export CORES=2

mkdir build
cd build
pushd build

cmake -DWITH_CORE=OFF -DWITH_APIDOC=ON -DWITH_ASTYLE=ON -DENABLE_TESTS=ON ..
make -j${CORES}

popd
6 changes: 5 additions & 1 deletion .ci/travis/code_layout/script.sh
Expand Up @@ -15,6 +15,10 @@
set -e

pushd build

export CTEST_BUILD_COMMAND="/usr/bin/make -j3 -i -k"
python ${TRAVIS_BUILD_DIR}/.ci/travis/scripts/ctest2travis.py xvfb-run ctest -V -E "sip_uptodate|spelling" --output-on-failure -S ${TRAVIS_BUILD_DIR}/.ci/travis/travis.ctest
python3 ${TRAVIS_BUILD_DIR}/.ci/travis/scripts/ctest2travis.py xvfb-run ctest -V --output-on-failure -S ${TRAVIS_BUILD_DIR}/.ci/travis/travis.ctest

ctest -V -R PyQgsDocCoverage

popd
1 change: 0 additions & 1 deletion .ci/travis/linux/blacklist.txt
Expand Up @@ -11,7 +11,6 @@ PyQgsAppStartup

# temporary during processing refactoring
ProcessingParametersTest
ProcessingGdalAlgorithmsTest

# code layout tests are run on separate build
qgis_spelling
Expand Down
2 changes: 1 addition & 1 deletion .ci/travis/linux/install.sh
Expand Up @@ -52,9 +52,9 @@ CMAKE_FLAGS="
-DWITH_QWTPOLAR=OFF
-DWITH_APIDOC=OFF
-DWITH_ASTYLE=OFF
-DWITH_INTERNAL_YAML=OFF
-DDISABLE_DEPRECATED=ON
-DCXX_EXTRA_FLAGS=${CLANG_WARNINGS}
-DPYTHON_TEST_WRAPPER="timeout -sSIGSEGV 55s"
"

# The following options trigger a minimalized build to
Expand Down
14 changes: 13 additions & 1 deletion .ci/travis/linux/script.sh
Expand Up @@ -13,6 +13,8 @@
# #
###########################################################################

set -e

export PYTHONPATH=${HOME}/osgeo4travis/lib/python3.3/site-packages/
export PATH=${HOME}/osgeo4travis/bin:${HOME}/osgeo4travis/sbin:${HOME}/OTB-5.6.0-Linux64/bin:${PATH}
export LD_LIBRARY_PATH=${HOME}/osgeo4travis/lib
Expand All @@ -27,7 +29,17 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
export OTB_APPLICATION_PATH=${HOME}/OTB-5.6.0-Linux64/lib/otb/applications
export LD_PRELOAD=/lib/x86_64-linux-gnu/libSegFault.so

export CTEST_BUILD_COMMAND="/usr/bin/make -j3 -i -k"
export CTEST_BUILD_COMMAND="/usr/bin/make -j3 -i"

# This works around an issue where travis would timeout because
# when make is run inside ctest no output is generated. At the current time
# nobody know why, but at least this workaround gets travis results
# back. Better approaches VERY welcome.
pushd build
echo "travis_fold:start:qgis_build"
$CTEST_BUILD_COMMAND
echo "travis_fold:end:qgis_build"
popd

python ${TRAVIS_BUILD_DIR}/.ci/travis/scripts/ctest2travis.py \
xvfb-run ctest -V -E "$(cat ${DIR}/blacklist.txt | sed -r '/^(#.*?)?$/d' | paste -sd '|' -)" -S ${DIR}/../travis.ctest --output-on-failure
7 changes: 2 additions & 5 deletions .ci/travis/macos/before_install.sh
Expand Up @@ -52,12 +52,9 @@ brew install \
spatialindex \
fastcgi \
qtkeychain \
gnu-sed
gnu-sed \
libzip


# Fix qscintilla typo
wget https://gist.githubusercontent.com/m-kuhn/f70e4b160dd7b18eb8d637ed2a75df6d/raw/6eb8a0c8601ec52ad9ad41c01d0fad68fe967aa1/qsci.patch
patch -p1 /usr/local/share/sip/QSci/qscilexer.sip qsci.patch

mkdir -p ${HOME}/Library/Python/3.6/lib/python/site-packages
echo 'import site; site.addsitedir("/usr/local/opt/gdal2-python/lib/python3.6/site-packages")' >> ${HOME}/Library/Python/3.6/lib/python/site-packages/gdal2.pth
3 changes: 2 additions & 1 deletion .ci/travis/macos/install.sh
Expand Up @@ -37,7 +37,8 @@ fcgi
expat
sqlite
flex
bison"
bison
libzip"

full_prefixes=""
for p in ${prefixes}; do
Expand Down
6 changes: 5 additions & 1 deletion .ci/travis/travis.ctest
Expand Up @@ -13,7 +13,11 @@ ELSE()
SET (CTEST_BUILD_NAME "PR: $ENV{TRAVIS_PULL_REQUEST} / $ENV{TRAVIS_BRANCH} ($ENV{BUILD}) ($ENV{TRAVIS_COMMIT})")
ENDIF()
SET (CTEST_BUILD_CONFIGURATION "Release")
SET (CTEST_TEST_TIMEOUT 60) # 60 seconds
IF ($ENV{TRAVIS_CONFIG} STREQUAL "code_layout")
SET (CTEST_TEST_TIMEOUT 600) # 600 seconds, spelling test might take some time
ELSE()
SET (CTEST_TEST_TIMEOUT 60) # 60 seconds
ENDIF()
IF(DEFINED ENV{CTEST_PARALLEL_LEVEL})
SET(PARALLEL_LEVEL $ENV{CTEST_PARALLEL_LEVEL})
ELSE(DEFINED ENV{CTEST_PARALLEL_LEVEL})
Expand Down
2 changes: 2 additions & 0 deletions .dockerignore
@@ -0,0 +1,2 @@
/.*
build*
3 changes: 2 additions & 1 deletion .gitignore
Expand Up @@ -23,7 +23,7 @@
/CMakeLists.txt.user
/CMakeLists.txt.user.*
api_doc
build*
*build*
debian/*.debhelper
debian/*.substvars
desktop.ini
Expand Down Expand Up @@ -61,6 +61,7 @@ tests/testdata/grass/wgs84/test/.gislock
tests/testdata/grass/wgs84/test6/.gislock
tests/testdata/grass/wgs84/test7/.gislock
tests/testdata/*.aux.xml
tests/testdata/landsat-int16-b1.tif.aux.xml
tests/testdata/raster/*.aux.xml
tests/testdata/raster/band1_byte_noct_epsg4326.tif.aux.xml
tests/testdata/raster/band1_float32_noct_epsg4326.tif.aux.xml
Expand Down
25 changes: 13 additions & 12 deletions .travis.yml
Expand Up @@ -35,6 +35,7 @@ matrix:
- poppler-utils
- xvfb
- clang-3.8
- libzip-dev


- os: linux
Expand Down Expand Up @@ -65,18 +66,18 @@ matrix:
- coreutils
- libyaml-tiny-perl
# OSX based build with QT4 and Python 2
- os: osx
osx_image: xcode8.3 # MacOS 10.12: Sierra
cache:
pip: true
directories:
- $HOME/.ccache
env:
- TRAVIS_CONFIG=macos
- IGNORE_BUILD_FAILURES=YES

allow_failures:
- os: osx
# - os: osx
# osx_image: xcode8.3 # MacOS 10.12: Sierra
# cache:
# pip: true
# directories:
# - $HOME/.ccache
# env:
# - TRAVIS_CONFIG=macos
# - IGNORE_BUILD_FAILURES=YES
#
# allow_failures:
# - os: osx

git:
depth: 30
Expand Down
11 changes: 9 additions & 2 deletions CMakeLists.txt
Expand Up @@ -21,7 +21,7 @@ MESSAGE(STATUS "QGIS version: ${COMPLETE_VERSION} ${RELEASE_NAME} (${QGIS_VERSIO
#############################################################
# CMake settings

CMAKE_MINIMUM_REQUIRED(VERSION 2.8.6)
CMAKE_MINIMUM_REQUIRED(VERSION 3.0.0)

SET(CMAKE_COLOR_MAKEFILE ON)

Expand Down Expand Up @@ -210,6 +210,7 @@ IF(WITH_CORE)
IF (WITH_GUI)
FIND_PACKAGE(Qwt REQUIRED)
ENDIF (WITH_GUI)
FIND_PACKAGE(LibZip REQUIRED)

IF (WITH_INTERNAL_QEXTSERIALPORT)
SET(QEXTSERIALPORT_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/src/core/gps/qextserialport)
Expand Down Expand Up @@ -376,11 +377,15 @@ IF (PEDANTIC)
SET(_warnings "${_warnings} /wd4244 ") # conversion from '...' to '...' possible loss of data
SET(_warnings "${_warnings} /wd4251 ") # needs to have dll-interface to be used by clients of class (occurs in Qt template classes)
SET(_warnings "${_warnings} /wd4275 ") # non dll-interface class '...' used as base for dll-interface class '...'
SET(_warnings "${_warnings} /wd4456 ") # declaration of '...' hides previous local declaration
SET(_warnings "${_warnings} /wd4457 ") # declaration of '...' hides a function parameter
SET(_warnings "${_warnings} /wd4458 ") # declaration of '...' hides class member
SET(_warnings "${_warnings} /wd4505 ") # unreferenced local function has been removed (QgsRasterDataProvider::extent)
SET(_warnings "${_warnings} /wd4510 ") # default constructor could not be generated (sqlite3_index_info, QMap)
SET(_warnings "${_warnings} /wd4512 ") # assignment operator could not be generated (sqlite3_index_info)
SET(_warnings "${_warnings} /wd4610 ") # user defined constructor required (sqlite3_index_info)
SET(_warnings "${_warnings} /wd4706 ") # assignment within conditional expression (pal)
SET(_warnings "${_warnings} /wd4714 ") # function '...' marked as __forceinline not inlined (QString::toLower/toUpper/trimmed)
SET(_warnings "${_warnings} /wd4800 ") # 'int' : forcing value to bool 'true' or 'false' (performance warning)
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${_warnings}")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${_warnings}")
Expand Down Expand Up @@ -494,6 +499,9 @@ IF (WITH_CORE)
IF (POLICY CMP0042) # in CMake 3.0.0+
SET (CMAKE_MACOSX_RPATH OFF) # otherwise ON by default
ENDIF (POLICY CMP0042)
IF (POLICY CMP0068) # in CMake 3.9.0+
cmake_policy(SET CMP0068 NEW)
ENDIF (POLICY CMP0068)
# for Mac OS X, everything is put inside an application bundle
# save the root install prefix for the app later
SET (QGIS_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX})
Expand Down Expand Up @@ -576,7 +584,6 @@ IF (WITH_CORE)
#hoops to escape compiler directives then
IF(COMMAND cmake_policy)
cmake_policy(SET CMP0003 NEW)
cmake_policy(SET CMP0005 OLD)
IF(NOT "${CMAKE_VERSION}" VERSION_LESS "3.3")
cmake_policy(SET CMP0063 NEW)
ENDIF(NOT "${CMAKE_VERSION}" VERSION_LESS "3.3")
Expand Down
38 changes: 38 additions & 0 deletions Dockerfile
@@ -0,0 +1,38 @@

# CACHE_TAG is provided by Docker cloud
# see https://docs.docker.com/docker-cloud/builds/advanced/
# using ARG in FROM requires min v17.05.0-ce
ARG CACHE_TAG=latest

FROM qgis/qgis3-build-deps:${CACHE_TAG}
MAINTAINER Denis Rouzaud <denis.rouzaud@gmail.com>

ENV CC=/usr/lib/ccache/clang
ENV CXX=/usr/lib/ccache/clang++
ENV QT_SELECT=5
ENV LANG=C.UTF-8

COPY . /usr/src/QGIS

WORKDIR /usr/src/QGIS/build

RUN cmake \
-GNinja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBINDINGS_GLOBAL_INSTALL=ON \
-DWITH_STAGED_PLUGINS=ON \
-DWITH_GRASS=ON \
-DSUPPRESS_QT_WARNINGS=ON \
-DENABLE_TESTS=OFF \
-DWITH_QSPATIALITE=ON \
-DWITH_QWTPOLAR=OFF \
-DWITH_APIDOC=OFF \
-DWITH_ASTYLE=OFF \
-DWITH_DESKTOP=ON \
-DWITH_BINDINGS=ON \
-DDISABLE_DEPRECATED=ON \
.. \
&& ninja install \
&& rm -rf /usr/src/QGIS

WORKDIR /

0 comments on commit d2f11b3

Please sign in to comment.