Skip to content

Commit dfc1bfc

Browse files
committed
Upgrade libosmium to v2.15.6
1 parent 98fd175 commit dfc1bfc

File tree

319 files changed

+6208
-3886
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

319 files changed

+6208
-3886
lines changed

third_party/libosmium/.clang-tidy

Lines changed: 45 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,45 @@
11
---
2-
Checks: '*,-android-cloexec-*,-cert-dcl21-cpp,-cert-err58-cpp,-cppcoreguidelines-owning-memory,-cppcoreguidelines-pro-bounds-array-to-pointer-decay,-cppcoreguidelines-pro-bounds-constant-array-index,-cppcoreguidelines-pro-bounds-pointer-arithmetic,-cppcoreguidelines-pro-type-const-cast,-cppcoreguidelines-pro-type-reinterpret-cast,-cppcoreguidelines-pro-type-static-cast-downcast,-cppcoreguidelines-pro-type-vararg,-fuchsia-*,-google-runtime-references,-hicpp-invalid-access-moved,-hicpp-no-array-decay,-hicpp-no-assembler,-hicpp-vararg,-misc-macro-parentheses,-misc-unused-parameters,-modernize-make-unique,-modernize-raw-string-literal,-readability-avoid-const-params-in-decls,-readability-implicit-bool-cast,-readability-implicit-bool-conversion'
2+
Checks: '*,-android-cloexec-*,-bugprone-branch-clone,-bugprone-macro-parentheses,-cert-dcl21-cpp,-cert-err58-cpp,-clang-analyzer-optin.cplusplus.VirtualCall,-cppcoreguidelines-avoid-c-arrays,-cppcoreguidelines-avoid-magic-numbers,-cppcoreguidelines-macro-usage,-cppcoreguidelines-non-private-member-variables-in-classes,-cppcoreguidelines-owning-memory,-cppcoreguidelines-pro-bounds-array-to-pointer-decay,-cppcoreguidelines-pro-bounds-constant-array-index,-cppcoreguidelines-pro-bounds-pointer-arithmetic,-cppcoreguidelines-pro-type-const-cast,-cppcoreguidelines-pro-type-reinterpret-cast,-cppcoreguidelines-pro-type-static-cast-downcast,-cppcoreguidelines-pro-type-vararg,-fuchsia-*,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-invalid-access-moved,-hicpp-no-array-decay,-hicpp-no-assembler,-hicpp-vararg,-misc-macro-parentheses,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-avoid-c-arrays,-modernize-make-unique,-modernize-raw-string-literal,-modernize-use-trailing-return-type,-readability-avoid-const-params-in-decls,-readability-implicit-bool-cast,-readability-implicit-bool-conversion,-readability-magic-numbers'
33
#
44
# For a list of check options, see:
5-
# http://clang.llvm.org/extra/clang-tidy/checks/list.html
5+
# https://clang.llvm.org/extra/clang-tidy/checks/list.html
66
#
77
# Disabled checks:
88
#
99
# android-cloexec-*
1010
# O_CLOEXEC isn't available on Windows making this non-portable.
1111
#
12+
# bugprone-branch-clone
13+
# Nice idea but collides but with switch statements we'll need to use
14+
# fall-throughs to fix this, which is also bad.
15+
#
16+
# bugprone-macro-parentheses
17+
# False positive in the only place where it reports something and
18+
# disabling locally doesn't work.
19+
#
1220
# cert-dcl21-cpp
1321
# It is unclear whether this is still a good recommendation in modern C++.
1422
#
1523
# cert-err58-cpp
1624
# Used in several singelton factory functions. I don't know of a better
1725
# way to do this and it is rather unlikely that this will be a problem.
1826
#
27+
# clang-analyzer-optin.cplusplus.VirtualCall
28+
# Disable a warning we get from the Catch test framework.
29+
#
30+
# cppcoreguidelines-avoid-c-arrays
31+
# Alias for modernize-avoid-c-arrays.
32+
#
33+
# cppcoreguidelines-avoid-magic-numbers
34+
# Generally good advice, but there are too many places where this is
35+
# useful, for instance in tests.
36+
#
37+
# cppcoreguidelines-macro-usage
38+
# There are cases where we actually need macros.
39+
#
40+
# cppcoreguidelines-non-private-member-variables-in-classes
41+
# Alias for misc-non-private-member-variables-in-classes
42+
#
1943
# cppcoreguidelines-owning-memory
2044
# Don't want to add dependency on gsl library.
2145
#
@@ -48,6 +72,9 @@ Checks: '*,-android-cloexec-*,-cert-dcl21-cpp,-cert-err58-cpp,-cppcoreguidelines
4872
# This is just a matter of preference, and we can't change the interfaces
4973
# now anyways.
5074
#
75+
# hicpp-avoid-c-arrays
76+
# Alias for modernize-avoid-c-arrays.
77+
#
5178
# hicpp-invalid-access-moved
5279
# Creates false positives.
5380
#
@@ -61,20 +88,31 @@ Checks: '*,-android-cloexec-*,-cert-dcl21-cpp,-cert-err58-cpp,-cppcoreguidelines
6188
# Too strict, sometimes calling vararg functions is necessary.
6289
#
6390
# misc-macro-parentheses
64-
# False positive in the only place where it reports something and
65-
# disabling locally doesn't work.
91+
# Old name for bugprone-macro-parentheses.
92+
#
93+
# misc-non-private-member-variables-in-classes
94+
# Reports this also for structs, which doesn't make any sense. There is
95+
# an option "IgnoreClassesWithAllMemberVariablesBeingPublic" which should
96+
# disable this, but it didn't work for me.
6697
#
6798
# misc-unused-parameters
6899
# Can't be fixed, because then Doxygen will complain. (In file
69100
# include/osmium/area/problem_reporter.hpp).
70101
#
102+
# modernize-avoid-c-arrays
103+
# Makes sense for some array, but especially for char arrays using
104+
# std::array isn't a good solution.
105+
#
71106
# modernize-make-unique
72107
# This is a C++11 library and C++ doesn't have std::make_unique.
73108
#
74109
# modernize-raw-string-literal
75110
# Readability isn't that much better, arguably worse because of the new
76111
# syntax.
77112
#
113+
# modernize-use-trailing-return-type
114+
# I am not quite that modern.
115+
#
78116
# readability-avoid-const-params-in-decls
79117
# This is header only library, so the declaration and implementation are
80118
# often the same and we want to have the const in implementations.
@@ -85,6 +123,9 @@ Checks: '*,-android-cloexec-*,-cert-dcl21-cpp,-cert-err58-cpp,-cppcoreguidelines
85123
# readability-implicit-bool-conversion
86124
# I don't think this makes the code more readable.
87125
#
126+
# readability-magic-numbers
127+
# Alias for cppcoreguidelines-avoid-magic-numbers.
128+
#
88129
#WarningsAsErrors: '*'
89130
HeaderFilterRegex: '\/include\/osmium\/.*'
90131
...

third_party/libosmium/.travis.yml

Lines changed: 87 additions & 106 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@
44
#
55
#-----------------------------------------------------------------------------
66

7-
language: generic
7+
os: linux
88

9-
sudo: false
9+
dist: xenial
1010

11-
dist: trusty
11+
language: generic
1212

1313
#-----------------------------------------------------------------------------
1414

@@ -32,190 +32,171 @@ addons_shortcuts:
3232
packages: [ 'libboost1.55-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'clang-3.5']
3333
addons_clang38: &clang38
3434
apt:
35-
sources: [ 'ubuntu-toolchain-r-test', 'boost-latest' ]
36-
packages: [ 'libboost1.55-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'clang-3.8']
35+
packages: [ 'libboost-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'clang-3.8']
3736
addons_clang39: &clang39
3837
apt:
39-
sources: [ 'ubuntu-toolchain-r-test', 'boost-latest' ]
40-
packages: [ 'libboost1.55-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'clang-3.9']
41-
addons_clang40: &clang40
42-
apt:
43-
sources: [ 'ubuntu-toolchain-r-test', 'boost-latest', 'llvm-toolchain-trusty-4.0' ]
44-
packages: [ 'libboost1.55-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'clang-4.0']
38+
packages: [ 'libboost-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'clang-3.9']
4539
addons_clang50: &clang50
4640
apt:
47-
sources: [ 'ubuntu-toolchain-r-test', 'boost-latest', 'llvm-toolchain-trusty-5.0' ]
48-
packages: [ 'libboost1.55-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'clang-5.0', 'g++-6', 'gcc-6']
41+
sources: [ 'ubuntu-toolchain-r-test' ]
42+
packages: [ 'libboost-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'clang-5.0', 'g++-6', 'gcc-6']
43+
addons_clang60: &clang60
44+
apt:
45+
sources: [ 'ubuntu-toolchain-r-test' ]
46+
packages: [ 'libboost-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'clang-6.0', 'g++-6', 'gcc-6']
47+
addons_clang7: &clang7
48+
apt:
49+
packages: [ 'libboost-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'clang-7' ]
4950
addons_gcc48: &gcc48
5051
apt:
51-
sources: [ 'ubuntu-toolchain-r-test', 'boost-latest' ]
52-
packages: [ 'libboost1.55-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'g++-4.8', 'gcc-4.8' ]
52+
packages: [ 'libboost-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'g++-4.8', 'gcc-4.8' ]
5353
addons_gcc49: &gcc49
5454
apt:
55-
sources: [ 'ubuntu-toolchain-r-test', 'boost-latest' ]
56-
packages: [ 'libboost1.55-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'g++-4.9', 'gcc-4.9' ]
55+
packages: [ 'libboost-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'g++-4.9', 'gcc-4.9' ]
5756
addons_gcc5: &gcc5
5857
apt:
59-
sources: [ 'ubuntu-toolchain-r-test', 'boost-latest' ]
60-
packages: [ 'libboost1.55-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'g++-5', 'gcc-5' ]
58+
packages: [ 'libboost-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'g++-5', 'gcc-5' ]
6159
addons_gcc6: &gcc6
6260
apt:
63-
sources: [ 'ubuntu-toolchain-r-test', 'boost-latest' ]
64-
packages: [ 'libboost1.55-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'g++-6', 'gcc-6' ]
61+
sources: [ 'ubuntu-toolchain-r-test' ]
62+
packages: [ 'libboost-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin', 'g++-6', 'gcc-6' ]
63+
addons_gcc7: &gcc7
64+
apt:
65+
packages: [ 'libboost-all-dev', 'libgdal-dev', 'libproj-dev', 'libsparsehash-dev', 'spatialite-bin' ]
6566

6667
#-----------------------------------------------------------------------------
6768

68-
matrix:
69-
include:
69+
addons:
70+
homebrew:
71+
packages:
72+
- cmake
73+
- boost
74+
- google-sparsehash
75+
- gdal
76+
update: true
7077

71-
# 1/ Linux Clang Builds
72-
- os: linux
73-
compiler: linux-clang35-release
74-
env: CC='clang-3.5' CXX='clang++-3.5' BUILD_TYPE='Release'
75-
addons: *clang35
78+
#-----------------------------------------------------------------------------
79+
80+
jobs:
81+
include:
7682

83+
# Linux Clang Builds
7784
- os: linux
7885
compiler: linux-clang35-dev
7986
env: CC='clang-3.5' CXX='clang++-3.5' BUILD_TYPE='Dev'
8087
addons: *clang35
81-
82-
- os: linux
83-
compiler: linux-clang38-release
84-
env: CC='clang-3.8' CXX='clang++-3.8' BUILD_TYPE='Release'
85-
addons: *clang38
88+
dist: trusty
8689

8790
- os: linux
8891
compiler: linux-clang38-dev
8992
env: CC='clang-3.8' CXX='clang++-3.8' BUILD_TYPE='Dev'
9093
addons: *clang38
9194

92-
- os: linux
93-
compiler: linux-clang39-release
94-
env: CC='clang-3.9' CXX='clang++-3.9' BUILD_TYPE='Release'
95-
addons: *clang39
96-
9795
- os: linux
9896
compiler: linux-clang39-dev
9997
env: CC='clang-3.9' CXX='clang++-3.9' BUILD_TYPE='Dev'
10098
addons: *clang39
10199

102100
- os: linux
103-
compiler: linux-clang40-release
104-
env: CC='clang-4.0' CXX='clang++-4.0' BUILD_TYPE='Release'
105-
addons: *clang40
101+
compiler: linux-clang50-dev
102+
env: CC='clang-5.0' CXX='clang++-5.0' BUILD_TYPE='Dev'
103+
addons: *clang50
106104

107105
- os: linux
108-
compiler: linux-clang40-dev
109-
env: CC='clang-4.0' CXX='clang++-4.0' BUILD_TYPE='Dev'
110-
addons: *clang40
106+
compiler: linux-clang60-dev
107+
env: CC='clang-6.0' CXX='clang++-6.0' BUILD_TYPE='Dev'
108+
addons: *clang60
111109

112110
- os: linux
113-
compiler: linux-clang50-release
114-
env: CC='clang-5.0' CXX='clang++-5.0' BUILD_TYPE='Release'
115-
addons: *clang50
111+
compiler: linux-clang60-debug
112+
env: CC='clang-6.0' CXX='clang++-6.0' BUILD_TYPE='Debug'
113+
CXXFLAGS="-fsanitize=address,undefined,integer -fno-sanitize-recover=all -fno-omit-frame-pointer"
114+
LDFLAGS="-fsanitize=address,undefined,integer"
115+
addons: *clang60
116116

117117
- os: linux
118-
compiler: linux-clang50-dev
119-
env: CC='clang-5.0' CXX='clang++-5.0' BUILD_TYPE='Dev'
120-
addons: *clang50
118+
compiler: linux-clang60-release
119+
env: CC='clang-6.0' CXX='clang++-6.0' BUILD_TYPE='Release'
120+
addons: *clang60
121121

122-
# Disabled because it creates false-positives on the old travis systems
123-
# - os: linux
124-
# compiler: linux-clang50-debug
125-
# env: CC='clang-5.0' CXX='clang++-5.0' BUILD_TYPE='Debug'
126-
# CXXFLAGS="-fsanitize=address,undefined,integer -fno-sanitize-recover=all -fno-omit-frame-pointer"
127-
# LDFLAGS="-fsanitize=address,undefined,integer"
128-
# # LSAN doesn't work on container-based system
129-
# sudo: required
130-
# addons: *clang50
122+
- os: linux
123+
compiler: linux-clang7-debug
124+
env: CC='clang-7' CXX='clang++-7' BUILD_TYPE='Debug'
125+
CXXFLAGS="-fsanitize=address,undefined,integer -fno-sanitize-recover=all -fno-omit-frame-pointer"
126+
LDFLAGS="-fsanitize=address,undefined,integer"
127+
addons: *clang7
128+
dist: bionic
131129

132-
# 2/ Linux GCC Builds
133130
- os: linux
134-
compiler: linux-gcc48-release
135-
env: CC='gcc-4.8' CXX='g++-4.8' BUILD_TYPE='Release'
136-
CXXFLAGS='-Wno-return-type'
137-
addons: *gcc48
131+
compiler: linux-clang7-release
132+
env: CC='clang-7' CXX='clang++-7' BUILD_TYPE='Release'
133+
addons: *clang7
134+
dist: bionic
138135

136+
# Linux GCC Builds
139137
- os: linux
140138
compiler: linux-gcc48-dev
141139
env: CC='gcc-4.8' CXX='g++-4.8' BUILD_TYPE='Dev'
142140
CXXFLAGS='-Wno-return-type'
143141
addons: *gcc48
144142

145-
- os: linux
146-
compiler: linux-gcc49-release
147-
env: CC='gcc-4.9' CXX='g++-4.9' BUILD_TYPE='Release'
148-
addons: *gcc49
149-
150143
- os: linux
151144
compiler: linux-gcc49-dev
152145
env: CC='gcc-4.9' CXX='g++-4.9' BUILD_TYPE='Dev'
153146
addons: *gcc49
154147

155-
- os: linux
156-
compiler: linux-gcc5-release
157-
env: CC='gcc-5' CXX='g++-5' BUILD_TYPE='Release'
158-
addons: *gcc5
159-
160148
- os: linux
161149
compiler: linux-gcc5-dev
162150
env: CC='gcc-5' CXX='g++-5' BUILD_TYPE='Dev'
163151
addons: *gcc5
164152

165-
- os: linux
166-
compiler: linux-gcc6-release
167-
env: CC='gcc-6' CXX='g++-6' BUILD_TYPE='Release'
168-
addons: *gcc6
169-
170153
- os: linux
171154
compiler: linux-gcc6-dev
172155
env: CC='gcc-6' CXX='g++-6' BUILD_TYPE='Dev'
173156
addons: *gcc6
174157

175158
- os: linux
176-
compiler: linux-gcc6-coverage
177-
env: CC='gcc-6' CXX='g++-6' BUILD_TYPE='Coverage'
178-
addons: *gcc6
159+
compiler: linux-gcc7-dev
160+
env: CC='gcc-7' CXX='g++-7' BUILD_TYPE='Dev'
161+
addons: *gcc7
162+
dist: bionic
179163

180-
# 3/ OSX Clang Builds
181-
- os: osx
182-
osx_image: xcode6.4
183-
compiler: xcode64-clang-release
184-
env: CC='clang' CXX='clang++' BUILD_TYPE='Release'
164+
- os: linux
165+
compiler: linux-gcc7-coverage
166+
env: CC='gcc-7' CXX='g++-7' BUILD_TYPE='Coverage'
167+
addons: *gcc7
168+
dist: bionic
169+
170+
- os: linux
171+
compiler: linux-gcc7-release
172+
env: CC='gcc-7' CXX='g++-7' BUILD_TYPE='Release'
173+
addons: *gcc7
174+
dist: bionic
185175

176+
# OSX Clang Builds
186177
- os: osx
187-
osx_image: xcode6.4
188-
compiler: xcode64-clang-dev
178+
osx_image: xcode9.4
179+
compiler: xcode94-clang-dev
189180
env: CC='clang' CXX='clang++' BUILD_TYPE='Dev'
190181

191182
- os: osx
192-
osx_image: xcode7
193-
compiler: xcode7-clang-release
194-
env: CC='clang' CXX='clang++' BUILD_TYPE='Release'
183+
osx_image: xcode10.2
184+
compiler: xcode10-clang-dev
185+
env: CC='clang' CXX='clang++' BUILD_TYPE='Dev'
195186

196187
- os: osx
197-
osx_image: xcode7
198-
compiler: xcode7-clang-dev
188+
osx_image: xcode11
189+
compiler: xcode11-clang-dev
199190
env: CC='clang' CXX='clang++' BUILD_TYPE='Dev'
200191

201192
- os: osx
202-
osx_image: xcode8.3
203-
compiler: xcode8-clang-release
193+
osx_image: xcode11
194+
compiler: xcode11-clang-release
204195
env: CC='clang' CXX='clang++' BUILD_TYPE='Release'
205196

206-
- os: osx
207-
osx_image: xcode8.3
208-
compiler: xcode8-clang-dev
209-
env: CC='clang' CXX='clang++' BUILD_TYPE='Dev'
210-
211197

212198
install:
213199
- git clone --quiet --depth 1 https://github.com/mapbox/protozero.git ../protozero
214-
- |
215-
if [[ "${TRAVIS_OS_NAME}" == "osx" ]]; then
216-
brew remove gdal
217-
brew install cmake boost google-sparsehash gdal || true
218-
fi
219200
- cmake --version
220201

221202
before_script:

0 commit comments

Comments
 (0)