> Mark Hobley <[EMAIL PROTECTED]> writes: > > > It is a big problem for packages that I compile myself, using > > Autotools, because the compiler keeps detecting the architecture as > > 686 and building for a 686,
That's because the build host CPU really is i686. Installing a -486 kernel does not automagically make it i486, e.g. on a Pentium system: $ egrep '(name|MHz)' /proc/cpuinfo model name : Pentium 75 - 200 cpu MHz : 133.275 $ uname -a Linux smehurko 2.6.26-1-486 #1 Thu Oct 9 14:22:52 UTC 2008 i586 GNU/Linux $ /usr/share/misc/config.guess i586-pc-linux-gnu Likewise, on a Pentium II or higher with whatever kernel flavor the result will be "i686-pc-linux-gnu", and that is correct. The Autoconf AC_CANONICAL_* family of macros use the scripts config.guess and config.sub to determine the build host (they are not part of Autoconf). The former uses uname and tries to detect some headers only if uname fails (I think). config.sub just canonicalizes the triplet. > > Ideally, I need all the processor detection systems to lie and say > > that the processors are 486 (albeit extremely fast 486 > > processors), Pass --build i486-pc-linux-gnu to ./configure, which effectively will disable running config.guess. Many Debian packages do exactly that: pass to --build the result of `dpkg-architecture -qDEB_BUILD_GNU_TYPE' (which for this architecture is i486-linux-gnu, in turn "canonicalized" to i486-pc-linux-gnu) and eventually --host if DEB_BUILD_GNU_TYPE and DEB_HOST_GNU_TYPE differ (i.e. cross-compilation). This of course is not a guarantee that the compiled binaries will run on i486, it depends on many things. > > and the target architecture is treated as a fast 486 machine. For this you need to pass --host as well which with configure scripts generated by modern versions of Autoconf will enter cross-compilation mode, so i486-linux-gnu-gcc, etc. will be used. This may cause other problems because of toolchain bugs (maybe not on x86, but other architectures) and IMVHO should not be necessary if the package you are compiling is autoconfiscated properly and its code is portable. Your complaint doesn't look like a bug in the autoconf package. Please see info '(autoconf)Canonicalizing' and follow the references there for more information. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]