Fix installing uClibc headers for versions prior to 0.9.30.

Fix a comment about installing uClibc.
Automatically enable // build for uClibc versions that can be built in //.

 -------- diffstat follows --------
 /trunk/scripts/build/libc/uClibc.sh |   32    23     9     0 +++++++++++++++++++++++---------
 /trunk/config/libc/uClibc.in        |   12     7     5     0 +++++++-----
 2 files changed, 30 insertions(+), 14 deletions(-)
This commit is contained in:
Yann E. MORIN" 2009-05-07 18:56:31 +00:00
parent d9378214cc
commit 7032dea8ba
2 changed files with 30 additions and 14 deletions

View File

@ -38,10 +38,12 @@ config LIBC_V_0_9_29
config LIBC_V_0_9_30
bool
prompt "0.9.30"
select LIBC_UCLIBC_0_9_30_or_later
config LIBC_V_0_9_30_1
bool
prompt "0.9.30.1"
select LIBC_UCLIBC_0_9_30_or_later
# CT_INSERT_VERSION_ABOVE
# Don't remove above line!
@ -72,14 +74,14 @@ config LIBC_VERSION
# CT_INSERT_VERSION_STRING_ABOVE
# Don't remove above line!
config LIBC_UCLIBC_0_9_30_or_later
bool
default n
select LIBC_UCLIBC_PARALLEL
config LIBC_UCLIBC_PARALLEL
bool
prompt "Build uClibc in //" if LIBC_V_snapshot || LIBC_V_specific_date
default n
help
Build uClibc using parallel jobs.
Some 'old' versions won't build in //, but it works starting with
0.9.30 release candidates.
choice
bool

View File

@ -54,6 +54,8 @@ do_libc_check_config() {
# This functions installs uClibc's headers
do_libc_headers() {
local install_rule
CT_DoStep INFO "Installing C library headers"
mkdir -p "${CT_BUILD_DIR}/build-libc-headers"
@ -61,7 +63,7 @@ do_libc_headers() {
# 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 -
tar cf - -C "${CT_SRC_DIR}/uClibc-${CT_LIBC_VERSION}" . |tar xf -
# Retrieve the config file
cp "${CT_CONFIG_DIR}/uClibc.config" .config
@ -76,8 +78,14 @@ do_libc_headers() {
CT_DoLog EXTRA "Building headers"
CT_DoExecLog ALL make ${CT_LIBC_UCLIBC_VERBOSITY} CROSS= PREFIX="${CT_SYSROOT_DIR}/" headers
if [ "${CT_LIBC_UCLIBC_0_9_30_or_later}" = "y" ]; then
install_rule=install_headers
else
install_rule=install_dev
fi
CT_DoLog EXTRA "Installing headers"
CT_DoExecLog ALL make ${CT_LIBC_UCLIBC_VERBOSITY} CROSS= PREFIX="${CT_SYSROOT_DIR}/" install_headers
CT_DoExecLog ALL make ${CT_LIBC_UCLIBC_VERBOSITY} CROSS= PREFIX="${CT_SYSROOT_DIR}/" ${install_rule}"
CT_EndStep
}
@ -96,7 +104,7 @@ do_libc() {
# 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 -
tar cf - -C "${CT_SRC_DIR}/uClibc-${CT_LIBC_VERSION}" . |tar xf -
# Retrieve the config file
cp "${CT_CONFIG_DIR}/uClibc.config" .config
@ -126,14 +134,20 @@ do_libc() {
${CT_LIBC_UCLIBC_VERBOSITY} \
all
# YEM-FIXME: we want to install libraries in $SYSROOT/lib, but we don't want
# to install headers in $SYSROOT/include, thus making only install_runtime.
# Plus, the headers were previously installed earlier with install_headers,
# so all should be well. Unfortunately, the install_headers target does not
# install crti.o and consorts... :-( So reverting to target 'install'.
# Note: PARALLELMFLAGS is not usefull for installation.
# YEM-FIXME:
# - we want to install 'runtime' files, eg. lib*.{a,so*}, crti.o and
# such files, except the headers as they already are installed
# - "make install_dev" installs the headers, the crti.o... and the
# static libs, but not the dynamic libs
# - "make install_runtime" installs the dynamic libs only
# - "make install" calls install_runtime and install_dev
# - so we're left with re-installing the headers... Sigh...
#
# We do _not_ want to strip anything for now, in case we specifically
# asked for a debug toolchain, hence the STRIPTOOL= assignment
#
# Note: PARALLELMFLAGS is not usefull for installation.
#
CT_DoLog EXTRA "Installing C library"
CT_DoExecLog ALL \
make CROSS=${CT_TARGET}- \