On some hosts (eg. Cygwin), it's not possible to build the uClibc hostutils. Offer an option to enable/disable the uClibc hostutils build.

/trunk/scripts/build/libc/uClibc.sh |   39    12    27     0 ++++++++++++---------------------------
 /trunk/config/libc/uClibc.in        |   10    10     0     0 ++++++++++
 2 files changed, 22 insertions(+), 27 deletions(-)
This commit is contained in:
Yann E. MORIN" 2009-02-11 10:40:26 +00:00
parent f621e51c3d
commit f962e240a3
2 changed files with 22 additions and 27 deletions

View File

@ -124,6 +124,16 @@ config LIBC_UCLIBC_DEBUG_LEVEL
default 1 if LIBC_UCLIBC_DEBUG_LEVEL_1
default 2 if LIBC_UCLIBC_DEBUG_LEVEL_2
config LIBC_UCLIBC_BUILD_CROSS_LDD
bool
prompt "Build cross-ldd"
default y
help
Say 'y' here to build a cross-ldd to run in the host.
Building a cross-ldd only works on ELF systems, that is,
if you build under Cygwin, you *must* say 'n' here.
config LIBC_UCLIBC_CONFIG_FILE
string
prompt "Configuration file"

View File

@ -142,38 +142,23 @@ do_libc() {
${CT_LIBC_UCLIBC_VERBOSITY} \
install
if [ "${CT_LIBC_UCLIBC_BUILD_CROSS_LDD}" = "y" ]; then
CT_DoLog EXTRA "Building C library cross-ldd"
CT_DoExecLog ALL \
make PREFIX="${CT_SYSROOT_DIR}/" \
${CT_LIBC_UCLIBC_VERBOSITY} \
-C utils hostutils
CT_DoLog EXTRA "Installing C library cross-ldd"
CT_DoExecLog ALL install -m 0755 utils/ldd.host "${CT_PREFIX_DIR}/bin/${CT_TARGET}-ldd"
fi
CT_EndStep
}
# This function is used to install those components needing the final C compiler
do_libc_finish() {
# Build and install host-side ldd
CT_DoStep INFO "Finishing C library"
mkdir -p "${CT_BUILD_DIR}/build-libc-finish"
cd "${CT_BUILD_DIR}/build-libc-finish"
# Simply copy files until uClibc has the ablity to build out-of-tree
CT_DoLog EXTRA "Copying sources to build dir"
{ cd "${CT_SRC_DIR}/uClibc-${CT_LIBC_VERSION}"; tar cf - .; } |tar xf -
# Retrieve the config file
cp "${CT_STATE_DIR}/uClibc.config" .config
CT_DoLog EXTRA "Applying configuration"
CT_DoYes "" |CT_DoExecLog ALL \
make CROSS=${CT_TARGET}- \
PREFIX="${CT_SYSROOT_DIR}/" \
oldconfig
CT_DoLog EXTRA "Installing C library host utils"
CT_DoExecLog ALL \
make PREFIX="${CT_SYSROOT_DIR}/" \
${CT_LIBC_UCLIBC_VERBOSITY} \
-C utils hostutils
CT_DoExecLog ALL install -m 0755 utils/ldd.host "${CT_PREFIX_DIR}/bin/${CT_TARGET}-ldd"
CT_EndStep
:
}
# Initialises the .config file to sensible values