aboutsummaryrefslogtreecommitdiff
path: root/scripts/filter_lcov_info.py
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2018-11-14 17:40:42 +0100
committerEven Rouault <even.rouault@spatialys.com>2018-11-14 22:48:29 +0100
commitd928db15d53805d9b728b440079756081961c536 (patch)
treee862a961d26bedb34c58e4f28ef0bdeedb5f3225 /scripts/filter_lcov_info.py
parent330e8bf686f9c4524075ca1ff50cbca6c9e091da (diff)
downloadPROJ-d928db15d53805d9b728b440079756081961c536.tar.gz
PROJ-d928db15d53805d9b728b440079756081961c536.zip
Implement RFC 2: Initial integration of "GDAL SRS barn" work
This work mostly consists of: - a C++ implementation of the ISO-19111:2018 / OGC Topic 2 "Referencing by coordinates" classes to represent Datums, Coordinate systems, CRSs (Coordinate Reference Systems) and Coordinate Operations. - methods to convert between this C++ modeling and WKT1, WKT2 and PROJ string representations of those objects - management and query of a SQLite3 database of CRS and Coordinate Operation definition - a C API binding part of those capabilities This is all-in-one squashed commit of the work of https://github.com/OSGeo/proj.4/pull/1040
Diffstat (limited to 'scripts/filter_lcov_info.py')
-rwxr-xr-xscripts/filter_lcov_info.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/scripts/filter_lcov_info.py b/scripts/filter_lcov_info.py
new file mode 100755
index 00000000..98d630a3
--- /dev/null
+++ b/scripts/filter_lcov_info.py
@@ -0,0 +1,26 @@
+#!/usr/bin/env python
+
+# Remove coverage from system include files in lcov output
+
+import sys
+import fnmatch
+
+extension_filter = None
+if len(sys.argv) == 2:
+ extension_filter = sys.argv[1].split(',')
+
+output_lines = True
+for line in sys.stdin.readlines():
+ if line.startswith('SF:/usr/include'):
+ output_lines = False
+ elif line.startswith('SF:'):
+ if extension_filter:
+ output_lines = False
+ for filter in extension_filter:
+ if fnmatch.fnmatch(line.strip('\n'), filter):
+ output_lines = True
+ break
+ else:
+ output_lines = True
+ if output_lines:
+ sys.stdout.write(line)