diff options
| author | Even Rouault <even.rouault@spatialys.com> | 2019-04-26 18:43:42 +0200 |
|---|---|---|
| committer | Even Rouault <even.rouault@spatialys.com> | 2019-04-26 19:45:46 +0200 |
| commit | e168ad31badb6702240174250894a76385da323b (patch) | |
| tree | 6af4903168b032291ff8ecaf1c62b076d000c41c /travis/install.sh | |
| parent | 210df01d861f4d75b3e4c698b9394d6d48989169 (diff) | |
| download | PROJ-e168ad31badb6702240174250894a76385da323b.tar.gz PROJ-e168ad31badb6702240174250894a76385da323b.zip | |
Travis: check that the exported symbols conform to what is expected
This is to help checking that we do not introduce un-intended API/ABI breakage.
Not fully bullet proof, but a start.
Diffstat (limited to 'travis/install.sh')
| -rwxr-xr-x | travis/install.sh | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/travis/install.sh b/travis/install.sh index c8da9046..1b0cc759 100755 --- a/travis/install.sh +++ b/travis/install.sh @@ -7,6 +7,7 @@ wget http://download.osgeo.org/proj/proj-datumgrid-1.8.zip # prepare build files ./autogen.sh +TOP_DIR=$PWD # autoconf build mkdir build_autoconf @@ -28,6 +29,13 @@ else ../configure --prefix=/tmp/proj_autoconf_install_from_dist_all fi make -j2 + +if [ "$(uname)" == "Linux" -a -f src/.libs/libproj.so ]; then + echo "Checking exported symbols..." + ${TOP_DIR}/scripts/dump_exported_symbols.sh src/.libs/libproj.so > /tmp/got_symbols.txt + diff -u ${TOP_DIR}/scripts/reference_exported_symbols.txt /tmp/got_symbols.txt || (echo "Difference(s) found in exported symbols. If intended, refresh scripts/reference_exported_symbols.txt with 'scripts/dump_exported_symbols.sh src/.libs/libproj.so > scripts/reference_exported_symbols.txt'"; exit 1) +fi + make check make install find /tmp/proj_autoconf_install_from_dist_all |
