From 63f3823d52d5650d31d3e5ddc267ab4afce016ad Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Sat, 19 Mar 2016 18:20:14 +0000 Subject: More standard cross-compilation support (only --host, no --enable-cross needed) --- INSTALL | 41 +++++++++++++++++++++++++---------------- 1 file changed, 25 insertions(+), 16 deletions(-) (limited to 'INSTALL') diff --git a/INSTALL b/INSTALL index a02f34c..fd30611 100644 --- a/INSTALL +++ b/INSTALL @@ -6,7 +6,7 @@ Build Instructions - A POSIX-compliant C development environment - GNU make version 3.81 or later - - skalibs version 2.3.8.3 or later: http://skarnet.org/software/skalibs/ + - skalibs version 2.3.10.0 or later: http://skarnet.org/software/skalibs/ This software will run on any operating system that implements POSIX.1-2008, available at: @@ -39,23 +39,30 @@ off them. Controlling a build process via environment variables is a big and dangerous hammer. You should try and pass flags to configure instead; -nevertheless, the standard environment variables are recognized. +nevertheless, a few standard environment variables are recognized. - The value of the CROSS_COMPILE environment variable will prefix the -building tools' names. The --enable-cross option is preferred, see -"Cross-compilation" below. - If the CC environment variable is set, its value will override compiler -detection by configure. +detection by configure. The --host=HOST option will still add a HOST- +prefix to the value of CC. The values of CFLAGS, CPPFLAGS and LDFLAGS will be appended to flags auto-detected by configure. To entirely override the flags set by -configure, use make -e. +configure instead, use make variables. + + +* Make variables + -------------- + + You can invoke make with a few variables for more configuration. - The value of LDLIBS will be appended by make to command lines that link -an executable, even without the -e option. + CC, CFLAGS, CPPFLAGS, LDFLAGS, LDLIBS, AR, RANLIB, STRIP, INSTALL and +CROSS_COMPILE can all be overridden on the make command line. This is +an even bigger hammer than running ./configure with environment +variables, so it is advised to only do this when it is the only way of +obtaining the behaviour you want. - The Makefile supports the DESTDIR convention for staging. + DESTDIR can be given on the "make install" command line in order to +install to a staging directory. * Shared libraries @@ -93,11 +100,13 @@ is recommended if you have a suitable libc. cross-compilation in one place: skalibs. Once you have cross-compiled skalibs, the rest is easy. - Use the --enable-cross=PREFIX option to configure, or simply ---enable-cross if your default toolchain is a cross-compiling -toolchain. And make sure to use the correct version of skalibs -for your target, and the correct sysdeps directory, making use -of the --with-include, --with-lib, --with-dynlib and --with-sysdeps + * Use the --host=HOST option to configure, HOST being the triplet +for your target. + * Make sure your cross-toolchain binaries (i.e. prefixed with HOST-) +are accessible via your PATH environment variable. + * Make sure to use the correct version of skalibs for your target, +and the correct sysdeps directory, making use of the +--with-include, --with-lib, --with-dynlib and --with-sysdeps options as necessary. -- cgit v1.2.3