Merge branch 'master' into geometry-refactor

This commit is contained in:
artemp 2016-09-06 10:01:15 +02:00
commit a63a50556a
12 changed files with 115 additions and 40 deletions

View file

@ -92,11 +92,11 @@ script:
- export SCONSFLAGS='--debug=time'
- configure BENCHMARK=${BENCH}
- cat config.log
# we limit the `make` to 35 min
# we limit the `make` to 40 min
# to ensure that slow builds still upload their
# ccache results and therefore should be faster
# (and might work) for the next build
- DURATION=2100
- DURATION=2400
- scripts/travis-command-wrapper.py -s "date" -i 120 --deadline=$(( $(date +%s) + ${DURATION} )) make
- make test
- enabled ${COVERAGE} coverage

View file

@ -41,6 +41,8 @@ Released: xx-xx-xx
- GeoJSON - exposed `num_features_to_query` as datasource paramer (ref #3495)
- Replaced `boost::mpl::vector<Types...>` with `std::tuple<Types...>` (ref #3503)
- BuildingSymbolizer - fixed closing segment of polygon in building symbolizer (ref #3505)
- Update dependencies versions
- Fixed warnings when compiling with g++5
## 3.0.11

View file

@ -17,24 +17,7 @@ install:
$(PYTHON) scons/scons.py -j$(JOBS) --config=cache --implicit-cache --max-drift=1 install
release:
export MAPNIK_VERSION=$(shell ./utils/mapnik-config/mapnik-config --version) && \
export TARBALL_NAME="mapnik-v$${MAPNIK_VERSION}" && \
cd /tmp/ && \
rm -rf $${TARBALL_NAME} && \
git clone --depth 1 --branch v$${MAPNIK_VERSION} git@github.com:mapnik/mapnik.git $${TARBALL_NAME} && \
cd $${TARBALL_NAME} && \
git checkout "tags/v$${MAPNIK_VERSION}" && \
git submodule update --depth 100 --init && \
rm -rf deps/mapbox/variant/.git && \
rm -rf test/data/.git && \
rm -rf test/data/.gitignore && \
rm -rf test/data-visual/.git && \
rm -rf test/data-visual/.gitignore && \
rm -rf .git && \
rm -rf .gitignore && \
cd ../ && \
tar cjf $${TARBALL_NAME}.tar.bz2 $${TARBALL_NAME}/ && \
aws s3 cp --acl public-read $${TARBALL_NAME}.tar.bz2 s3://mapnik/dist/v$${MAPNIK_VERSION}/
./scripts/publish_release.sh
python:
if [ ! -d ./bindings/python ]; then git clone git@github.com:mapnik/python-mapnik.git --recursive ./bindings/python; else (cd bindings/python && git pull && git submodule update --init); fi;
@ -95,10 +78,13 @@ rebuild:
uninstall:
@$(PYTHON) scons/scons.py -j$(JOBS) --config=cache --implicit-cache --max-drift=1 uninstall
test/data:
git submodule update --init
test/data-visual:
./scripts/ensure_test_data.sh
test: ./test/data
test/data:
./scripts/ensure_test_data.sh
test: ./test/data test/data-visual
@./test/run
check: test

View file

@ -1,6 +1,5 @@
environment:
msvs_toolset: 14
BOOST_VERSION: 61
FASTBUILD: 1
matrix:
- platform: x64

View file

@ -47,7 +47,6 @@
#pragma GCC diagnostic ignored "-Wreserved-id-macro"
#pragma GCC diagnostic ignored "-Wweak-vtables"
#pragma GCC diagnostic ignored "-Wextra-semi"
#pragma GCC diagnostic ignored "-Wc++98-compat-pedantic"
#pragma GCC diagnostic ignored "-Wglobal-constructors"
#pragma GCC diagnostic ignored "-Wheader-hygiene"
#pragma GCC diagnostic ignored "-Wexit-time-destructors"
@ -55,4 +54,3 @@
#pragma GCC diagnostic ignored "-Wmissing-noreturn"
#pragma GCC diagnostic ignored "-Wcovered-switch-default"
#pragma GCC diagnostic ignored "-Wfloat-equal"

View file

@ -22,7 +22,6 @@ ECHO msvs_toolset^: %msvs_toolset%
SET BUILD_TYPE=%configuration%
SET BUILDPLATFORM=%platform%
SET TOOLS_VERSION=%msvs_toolset%.0
SET ICU_VERSION=56.1
ECHO ICU_VERSION^: %ICU_VERSION%
IF DEFINED APPVEYOR (ECHO on AppVeyor) ELSE (ECHO NOT on AppVeyor)
ECHO ========
@ -63,6 +62,16 @@ ECHO extracting binary deps
IF EXIST mapnik-sdk (ECHO already extracted) ELSE (7z -y x deps.7z | %windir%\system32\FIND "ing archive")
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
ECHO looking for boost and icu versions in SDK ...
FOR /F "tokens=1,2 usebackq" %%i in (`powershell %APPVEYOR_BUILD_FOLDER%\scripts\get-boost-icu-version-from-sdk.ps1`) DO SET %%i=%%j
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
ECHO BOOST_VERSION found in SDK^: %BOOST_VERSION%
ECHO ICU_VERSION found in SDK^: %ICU_VERSION%
ECHO ICU_VERSION2 found in SDK^: %ICU_VERSION2%
CALL "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
IF %ERRORLEVEL% NEQ 0 GOTO ERROR

View file

@ -10,11 +10,6 @@ SET APPVEYOR=true
SET LOCAL_BUILD_DONT_SKIP_TESTS=true
SET FASTBUILD=1
FOR /F "tokens=1 usebackq" %%i in (`powershell .\scripts\parse-appveyor-yml.ps1`) DO SET BOOST_VERSION=%%i
ECHO BOOST_VERSION found in appveyor.yml^: %BOOST_VERSION%
IF "%BOOST_VERSION%"=="0" ECHO BOOST_VERSION not valid && SET ERRORLEVEL=1 && GOTO ERROR
:: OVERRIDE PARAMETERS >>>>>>>>
:NEXT-ARG

21
scripts/ensure_test_data.sh Executable file
View file

@ -0,0 +1,21 @@
#!/usr/bin/env bash
set -eu
set -o pipefail
VERSION=$(git describe)
if [[ -d .git ]]; then
git submodule update --init
else
if [[ ! -d ./test/data ]]; then
echo "Downloading unit test data from https://github.com/mapnik/test-data/archive/${VERSION}.tar.gz"
mkdir -p test/data/
curl -L -s https://github.com/mapnik/test-data/archive/${VERSION}.tar.gz | tar zxf - --strip-components=1 -C test/data/
fi
if [[ ! -d ./test/data-visual ]]; then
echo "Downloading visual test data from https://github.com/mapnik/test-data-visual/archive/${VERSION}.tar.gz"
mkdir -p test/data-visual/
curl -L -s https://github.com/mapnik/test-data-visual/archive/${VERSION}.tar.gz | tar zxf - --strip-components=1 -C test/data-visual/
fi
fi

View file

@ -0,0 +1,21 @@
$ErrorActionPreference = 'Stop'
$boost_version='0'
$icu_version='0'
$libdir=$PSScriptRoot+"\..\mapnik-gyp\mapnik-sdk\lib"
#get boost and icu versions directly from the files in the SDK
#boost_python-vc140-mt-1_61.dll
$boost_version=(Get-ChildItem $libdir -Filter *boost*.dll)[0].BaseName.split("_")[-1]
#icuin56.dll
$icu_version=(Get-ChildItem $libdir -Filter icuin*.dll)[0].BaseName.split("icuin")[-1]
Write-Host "BOOST_VERSION" $boost_version
Write-Host "ICU_VERSION" $icu_version".1"
Write-Host "ICU_VERSION2" $icu_version"_1"
trap {
"Error: $_"
exit 1
}

View file

@ -1,7 +0,0 @@
$ErrorActionPreference = 'Stop'
$boost_version='0'
Get-Content .\appveyor.yml |
foreach {
if ($_ -match "BOOST_VERSION: "){ $boost_version = $_.split()[-1] }
}
Write-Host $boost_version

51
scripts/publish_release.sh Executable file
View file

@ -0,0 +1,51 @@
#!/usr/bin/env bash
set -eu
set -o pipefail
# for normal release leave empty
# for release candidate, add "-rcN"
export MAPNIK_VERSION=$(git describe)
if [[ $(git tag -l) =~ $MAPNIK_VERSION ]]; then echo yes;
echo "Success: found $MAPNIK_VERSION (result of git describe) in tags, continuing"
else
echo "error: $MAPNIK_VERSION (result of git describe) not in "git tag -l" output, aborting"
echo "You must create a valid annotated tag first, before running this ./scripts/publish_release.sh"
exit 1
fi
export TARBALL_NAME="mapnik-${MAPNIK_VERSION}"
cd /tmp/
rm -rf ${TARBALL_NAME}
echo "Cloning ${MAPNIK_VERSION}"
git clone --depth 1 --branch ${MAPNIK_VERSION} git@github.com:mapnik/mapnik.git ${TARBALL_NAME}
cd ${TARBALL_NAME}
git checkout "tags/${MAPNIK_VERSION}"
echo "updating submodules"
# TODO: skip initializing submodule if data is already tagged
# Will require bundling variant as well
git submodule update --depth 100 --init
rm -rf deps/mapbox/variant/.git
cd test/data/
git remote set-url origin git@github.com:mapnik/test-data
echo "tagging test data"
git tag ${MAPNIK_VERSION} -a -m "tagging for ${MAPNIK_VERSION}"
git push --tags
cd ../../
echo "removing test data submodule"
rm -rf test/data/
cd test/data-visual/
git remote set-url origin git@github.com:mapnik/test-data-visual
echo "tagging visual data"
git tag ${MAPNIK_VERSION} -a -m "tagging for ${MAPNIK_VERSION}"
git push --tags
cd ../../
echo "removing visual test data submodule"
rm -rf test/data-visual/
rm -rf .git
rm -rf .gitignore
cd ../
echo "creating tarball of ${TARBALL_NAME}.tar.bz2"
tar cjf ${TARBALL_NAME}.tar.bz2 ${TARBALL_NAME}/
echo "uploading $(dirname ${TARBALL_NAME})/${TARBALL_NAME}.tar.bz2 to s3://mapnik/dist/${MAPNIK_VERSION}/"
# TODO: upload to github releases instead of s3
aws s3 cp --acl public-read ${TARBALL_NAME}.tar.bz2 s3://mapnik/dist/${MAPNIK_VERSION}/

View file

@ -6,4 +6,4 @@ set -o pipefail
CXXFLAGS="$(./utils/mapnik-config/mapnik-config --cflags)"
CXX="$(./utils/mapnik-config/mapnik-config --cxx)"
echo "Time taken to compile '$(basename $1)':"
time ${CXX} $1 -I./test -I./deps/agg/include -Ideps -I./include $CXXFLAGS -o /tmp/header.out
time ${CXX} $1 -I./test -I./deps/agg/include -Ideps -I./deps/mapbox/variant/include -I./include $CXXFLAGS -o /tmp/header.out