From eb267ade29c9a49c07b1c33dc9bf7a6790217400 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Sun, 3 Mar 2002 09:25:02 +0000 Subject: [PATCH] Added support for --with-host --- INSTALL | 37 +++++++++++++++++++++++++++++++++++++ configure.in | 19 ++++++++++++++++++- 2 files changed, 55 insertions(+), 1 deletion(-) diff --git a/INSTALL b/INSTALL index 8443034b..2a9991d0 100644 --- a/INSTALL +++ b/INSTALL @@ -74,3 +74,40 @@ options for the configure script: Unfortunately, due to bug in the libtool script, the shared and static library cannot be built together. + +Configuration for cross-compilation +----------------------------------- + +When you would like to cross-compile ALSA library (e.g. compile on +i686 host but for arm architecture) you will need to call ./configure +script with aditional parameters: + +CC=arm-linux-gcc ./configure --target=arm-linux \ +--with-soundbase=/usr/local/arm/src/linux/include + +In this example host where the library is build is guessed (should be +given with --host=platform) and target for which is the library build is +Linux on ARM architecture. You need to specify location of kernel includes +configured for target architecture. This is used to find ALSA include +files and so it should be set to prefix where '/sound' directory should +be found. You should ommit setting 'CC' variable and cross-compiler will +be guessed too. You could also use option '--prefix' to specify ALSA include +directory directly if $prefix/include/sound exists. + +So simplest version would be: + +./configure --target=arm-linux --with-soundbase=/usr/local/arm/include + +or + +./configure --target=arm-linux --prefix=/usr/local/arm + +As you will likely specify the prefix, the last posibbility would be +the best if everything match. On the listing of 'configure' script +check if directory with ALSA headers was found properly same as platform +specific configurations like processor type and selected cross-compiler. + +For platform names in the form cpu-vendor-os (or aliases for this) +you should look in 'config.guess' script. Target and all paths +used here are only examples and should not be directly applicable to +your system. diff --git a/configure.in b/configure.in index 3e12427b..e0b4453e 100644 --- a/configure.in +++ b/configure.in @@ -7,6 +7,7 @@ dnl change API = c+1:0:a dnl add API = c+1:0:a+1 dnl remove API = c+1:0:0 dnl ************************************************* +AC_CANONICAL_SYSTEM AM_INIT_AUTOMAKE(alsa-lib, 0.9.0beta12) eval LIBTOOL_VERSION_INFO="2:0:0" dnl ************************************************* @@ -15,6 +16,22 @@ AM_CONDITIONAL(INSTALL_M4, test "x${ACLOCAL}" = "xaclocal") AC_PREFIX_DEFAULT(/usr) dnl Checks for programs. + +dnl try to gues cross-compiler if not set +if test "x$target" != "x$host" -a -z "`echo $CC | grep -e '-gcc'`"; +then + AC_MSG_CHECKING(for cross-compiler) + + which ${program_prefix}gcc >/dev/null 2>&1 && CC=${program_prefix}gcc + which ${target_cpu}-${target_os}-gcc >/dev/null 2>&1 \ + && CC=${target_cpu}-${target-os}-gcc + which ${target_cpu}-${target_vendor}-${target_os}-gcc >/dev/null 2>&1 \ + && CC=${target_cpu}-${target_vendor}-${target_os}-gcc + + AC_MSG_RESULT($CC) +fi + + AC_PROG_CC AC_PROG_INSTALL AC_PROG_LN_S @@ -105,7 +122,7 @@ fi dnl Check for architecture AC_MSG_CHECKING(for architecture) -case "$host_cpu" in +case "$target" in i?86*) AC_MSG_RESULT(x86) ;; -- 2.47.1