scripts/build/tools.sh
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Thu Jul 31 09:08:33 2008 +0000 (2008-07-31)
changeset 752 b037a5643e04
parent 479 05c62432ec19
child 916 68af6b83ff7e
permissions -rw-r--r--
Have the glibc build use the cross-objdump, rather than the host one.
On some distros (eg. Fedora), the native objdump can not interpret objects not for the native system, and thus fail.
This commit adds a new patch against glibc-2.7 that introduces OBJDUMP_FOR_HOST, wich, if set, overides the detected objdump.

Note: bizarely enough, glibc already has code to detect the cross-objdump, but that does not work for an unknown reason... :-(

/trunk/patches/glibc/2.7/220-objdump_for_host.patch | 13 13 0 0 +++++++++
/trunk/scripts/build/libc_glibc.sh | 37 21 16 0 +++++++++++++++------------
2 files changed, 34 insertions(+), 16 deletions(-)
yann@148
     1
# Wrapper to build the tools facilities
yann@148
     2
yann@148
     3
# List all tools facilities, and parse their scripts
yann@148
     4
CT_TOOLS_FACILITY_LIST=
yann@182
     5
for f in "${CT_LIB_DIR}/scripts/build/tools/"*.sh; do
yann@148
     6
    is_enabled=
yann@148
     7
    . "${f}"
yann@483
     8
    f=$(basename "${f}" .sh)
yann@148
     9
    if [ "${is_enabled}" = "y" ]; then
yann@483
    10
        CT_TOOLS_FACILITY_LIST="${CT_TOOLS_FACILITY_LIST} ${f#???-}"
yann@148
    11
    fi
yann@148
    12
done
yann@148
    13
yann@148
    14
# Download the tools facilities
yann@148
    15
do_tools_get() {
yann@148
    16
    for f in ${CT_TOOLS_FACILITY_LIST}; do
yann@148
    17
        do_tools_${f}_get
yann@148
    18
    done
yann@148
    19
}
yann@148
    20
yann@148
    21
# Extract and patch the tools facilities
yann@148
    22
do_tools_extract() {
yann@148
    23
    for f in ${CT_TOOLS_FACILITY_LIST}; do
yann@148
    24
        do_tools_${f}_extract
yann@148
    25
    done
yann@148
    26
}
yann@148
    27
yann@148
    28
# Build the tools facilities
yann@148
    29
do_tools() {
yann@148
    30
    for f in ${CT_TOOLS_FACILITY_LIST}; do
yann@148
    31
        do_tools_${f}_build
yann@148
    32
    done
yann@148
    33
}
yann@148
    34