[debhelper-devel] Bug#840323: debhelper: cmake build system: cross compilation

Helmut Grohne helmut at subdivi.de
Mon Oct 10 18:39:39 UTC 2016


Control: tags -1 + moreinfo

On Mon, Oct 10, 2016 at 05:24:51PM +0200, Simon Richter wrote:
> right now, if I want to crosscompile a package that uses CMake, I need to
> override dh_auto_configure:
> 
> override_dh_auto_configure:
>         dh_auto_configure -- \
> 	-DCMAKE_TOOLCHAIN_FILE=/etc/dpkg-cross/cmake/CMakeCross.txt \
> 	-DCMAKE_LIBRARY_PATH=$(DEB_HOST_MULTIARCH)

This is not true. At least 50 source packages cross build just fine with
cmake and dh_auto_configure (in sid) without those flags. You need to be
more precise as to why you think this is needed.

I believe that CMAKE_LIBRARY_PATH is unneeded, because debhelper sets
already CMAKE_INSTALL_LIBDIR. That works for a significant chunk of
packages. Do you see any problem with that approach?

Use debhelper >= 10.2.1.

> This toolchain file is shipped with the dpkg-cross package.

dpkg-cross is deprecated by its former maintainer and ought to be
removed.

> Would it be possible to integrate this into debhelper proper so I don't
> need to add a build dependency in order to support cross compilation?

I don't think that what you are proposing is the right solution to the
problem (in particular due to relying on dpkg-cross). Nevertheless, I
invite you to continue discussion on debian-cross at lists.debian.org.

Helmut




More information about the debhelper-devel mailing list