author | "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> |
Fri Nov 13 19:34:18 2009 +0100 (2009-11-13) | |
changeset 1624 | 782dea79ae56 |
child 1755 | 30d91bfc1f2a |
permissions | -rw-r--r-- |
yann@1345 | 1 |
# This file adds functions to build elf2flt |
yann@1345 | 2 |
# Copyright 2009 John Williams |
yann@1345 | 3 |
# Copyright 2007 Yann E. MORIN |
yann@1345 | 4 |
# Licensed under the GPL v2. See COPYING in the root of this package |
yann@1345 | 5 |
|
yann@1345 | 6 |
# Download elf2flt |
yann@1345 | 7 |
do_elf2flt_get() { |
yann@1345 | 8 |
CT_GetCVS "elf2flt-cvs-${CT_ELF2FLT_VERSION}" \ |
yann@1345 | 9 |
":pserver:anonymous@cvs.uclinux.org:/var/cvs" \ |
yann@1345 | 10 |
"elf2flt" \ |
yann@1345 | 11 |
"" \ |
yann@1345 | 12 |
"elf2flt-cvs-${CT_ELF2FLT_VERSION}" |
yann@1345 | 13 |
} |
yann@1345 | 14 |
|
yann@1345 | 15 |
# Extract elf2flt |
yann@1345 | 16 |
do_elf2flt_extract() { |
yann@1345 | 17 |
CT_Extract "elf2flt-cvs-${CT_ELF2FLT_VERSION}" |
yann@1345 | 18 |
CT_Patch "elf2flt-cvs-${CT_ELF2FLT_VERSION}" |
yann@1345 | 19 |
} |
yann@1345 | 20 |
|
yann@1345 | 21 |
# Build elf2flt |
yann@1345 | 22 |
do_elf2flt() { |
yann@1345 | 23 |
[ -z ${CT_KERNEL_UCLINUX_BINFMT_FLAT} ] && return 0 |
yann@1345 | 24 |
mkdir -p "${CT_BUILD_DIR}/build-elf2flt" |
yann@1345 | 25 |
cd "${CT_BUILD_DIR}/build-elf2flt" |
yann@1345 | 26 |
|
yann@1345 | 27 |
CT_DoStep INFO "Installing elf2flt" |
yann@1345 | 28 |
|
yann@1345 | 29 |
elf2flt_opts= |
yann@1345 | 30 |
binutils_bld=${CT_BUILD_DIR}/build-binutils |
yann@1345 | 31 |
binutils_src=${CT_SRC_DIR}/binutils-${CT_BINUTILS_VERSION} |
yann@1345 | 32 |
|
yann@1345 | 33 |
CT_DoLog EXTRA "Configuring elf2flt" |
yann@1345 | 34 |
CFLAGS="${CT_CFLAGS_FOR_HOST}" \ |
yann@1345 | 35 |
CT_DoExecLog ALL \ |
yann@1345 | 36 |
"${CT_SRC_DIR}/elf2flt-cvs-${CT_ELF2FLT_VERSION}/configure" \ |
yann@1345 | 37 |
--build=${CT_BUILD} \ |
yann@1345 | 38 |
--host=${CT_HOST} \ |
yann@1345 | 39 |
--target=${CT_TARGET} \ |
yann@1345 | 40 |
--prefix=${CT_PREFIX_DIR} \ |
yann@1345 | 41 |
--with-bfd-include-dir=${binutils_bld}/bfd \ |
yann@1345 | 42 |
--with-binutils-include-dir=${binutils_src}/include \ |
yann@1345 | 43 |
--with-libbfd=${binutils_bld}/bfd/libbfd.a \ |
yann@1345 | 44 |
--with-libiberty=${binutils_bld}/libiberty/libiberty.a \ |
yann@1345 | 45 |
${elf2flt_opts} \ |
yann@1345 | 46 |
${CT_ELF2FLT_EXTRA_CONFIG} |
yann@1345 | 47 |
|
yann@1345 | 48 |
CT_DoLog EXTRA "Building elf2flt" |
yann@1345 | 49 |
CT_DoExecLog ALL make ${PARALLELMFLAGS} |
yann@1345 | 50 |
|
yann@1345 | 51 |
CT_DoLog EXTRA "Installing elf2flt" |
yann@1345 | 52 |
CT_DoExecLog ALL make install |
yann@1345 | 53 |
|
yann@1345 | 54 |
# Make those new tools available to the core C compilers to come. |
yann@1345 | 55 |
# Note: some components want the ${TARGET}-{ar,as,ld,strip} commands as |
yann@1345 | 56 |
# well. Create that. |
yann@1345 | 57 |
mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}/${CT_TARGET}/bin" |
yann@1345 | 58 |
mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}/bin" |
yann@1345 | 59 |
mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}/${CT_TARGET}/bin" |
yann@1345 | 60 |
mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}/bin" |
yann@1345 | 61 |
for t in elf2flt flthdr; do |
yann@1345 | 62 |
ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_STATIC_PREFIX_DIR}/${CT_TARGET}/bin/${t}" |
yann@1345 | 63 |
ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_STATIC_PREFIX_DIR}/bin/${CT_TARGET}-${t}" |
yann@1345 | 64 |
ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_SHARED_PREFIX_DIR}/${CT_TARGET}/bin/${t}" |
yann@1345 | 65 |
ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_SHARED_PREFIX_DIR}/bin/${CT_TARGET}-${t}" |
yann@1345 | 66 |
done 2>&1 |CT_DoLog ALL |
yann@1345 | 67 |
|
yann@1345 | 68 |
CT_EndStep |
yann@1345 | 69 |
} |