tilemaker review
Sebastiaan Couwenberg
sebastic at xs4all.nl
Fri Oct 8 08:39:10 BST 2021
On 10/7/21 9:47 PM, Felix Delattre wrote:
> tilemaker looks good to me.
With the cmake build system you shouldn't need as much customization in
d/rules, like the dh_auto_install override, the various buildflag bits,
and all the Makefile changes in the various patches.
You do need to patch CMakeList.txt to use the TM_VERSION environment
variable instead of using git:
execute_process(
COMMAND git describe --tags --abbrev=0
OUTPUT_VARIABLE tm_version)
add_compile_definitions(TM_VERSION=${tm_version})
> Only one last thing: after switching to cmake I see a lintian `file-references-package-build-path` message, and I'm a bit stuck on how to solve this. Do you have a hint for me? I saw you had some similar issues with PROJ.
The paths in question:
$ strings /tmp/tilemaker/usr/bin/tilemaker | grep "/build/"
/build/tilemaker-2.0.0+ds/obj-x86_64-linux-gnu/vector_tile.pb.cc
/build/tilemaker-2.0.0+ds/obj-x86_64-linux-gnu/osmformat.pb.cc
/build/tilemaker-2.0.0+ds/obj-x86_64-linux-gnu/osmformat.pb.h
/build/tilemaker-2.0.0+ds/src/osm_lua_processing.cpp
/build/tilemaker-2.0.0+ds/obj-x86_64-linux-gnu/vector_tile.pb.h
CMake uses the absolute path to source files instead of paths relative
to the build directory as autotools does. These will find their way into
executables via the __FILE__ macro or assert() statements. The latter
can be optimized out with -DNDEBUG. That is set by default when
-DCMAKE_BUILD_TYPE=Release is used, but debhelper uses
-DCMAKE_BUILD_TYPE=None.
With -DNDEBUG there are only two instances left:
$ strings /tmp/tilemaker/usr/bin/tilemaker | grep "/build/"
/build/tilemaker-2.0.0+ds/obj-x86_64-linux-gnu/vector_tile.pb.cc
/build/tilemaker-2.0.0+ds/obj-x86_64-linux-gnu/osmformat.pb.cc
That's probably due to those files being added to the executable with
the absolute path stored in the output variables. I don't see an easy
fix for that. I would just add a lintian override for that.
Kind Regards,
Bas
--
GPG Key ID: 4096R/6750F10AE88D4AF1
Fingerprint: 8182 DE41 7056 408D 6146 50D1 6750 F10A E88D 4AF1
More information about the Pkg-grass-devel
mailing list