On Wed, 6 Oct 2010 15:38:37 +0200 Loïc Minier <loic.min...@linaro.org> wrote:
> On Wed, Oct 06, 2010, Neil Williams wrote: > > Non-standard build configuration - you'll need to discuss with upstream > > just how this is meant to support cross-compilation. Probably just have > > to patch the source to make this script truly cross-platform by having > > all the variables defined and selecting according to the > > dpkg-architecture environment variables. > > Telling upstream that the fix is calling a Debian specific utility to > fix cross-builds is not going to work; but they could check some > triplet location > > > .... a wdiff would have been a lot more helpful here. Exactly what > > changed on those long, long lines? > > from amd64 to armel > > [--DTCL_WIDE_INT_IS_LONG=1-] {+-DTCL_WIDE_INT_TYPE=long\ long > -DHAVE_STRUCT_STAT64=1 -DHAVE_OPEN64=1 -DHAVE_LSEEK64=1 > -DHAVE_TYPE_OFF64_T=1+} So those need to be picked up from whatever passes as a configure stage but picked from a standard location - either using m4 tests like ./configure or from the files that exist courtesy of dpkg-cross, per architecture. /etc/dpkg-cross/cross-config.amd64 /etc/dpkg-cross/cross-config.armel I can put Tcl stuff into those files but those must be picked up *at build time* as pkg-config and configure would pick them up, not from the -cross package itself. > > Carrying build meta data inside a package is dumb. It's one thing to > > have libtool and Makefile hanging around in the source package, it's > > quite another to package something like config.h in the binary -dev > > package. That is what this -dev package is trying to do - include > > buildd meta-data into a runtime -dev package. That data needs to come > > from somewhere else, as with the pkg-config system, not from the -dev > > package. > > Uh, pkg-config is exactly the same thing; No. pkg-config specifies architecture-independent metadata which is static within any single source release, not architecture-dependent variables deduced at build time. > it's fair enough to say they > should be using pkg-config, but they could as well dismiss their own > implementation as superior, or just dislike the pkg-config dep. The build metadata needs to be determined at build time and that means cross-build and native builds determining their data during the build, not reading data arbitrarily read in from some previous build. The machine preparing the -dev package does not necessarily have the same configuration as the target device of the cross-build - these things need to be *calculated* not retrieved from some previous build somewhere else. -- Neil Williams ============= http://www.data-freedom.org/ http://www.linux.codehelp.co.uk/ http://e-mail.is-not-s.ms/
pgpshhn1kQsc7.pgp
Description: PGP signature