Update all samples to the latest set of options.
Update some samples to use newer features.
Add patches for the uClibc-20080801 snapshot to be able to build with gcc-4.3.
Add a patch against glibc-2.7 to allow building PPC with latest kernel headers.
Add a patch to gcc to use an alternate unwinding when built against uClibc (after a private explanation/request by Daniel Egger <daniel@eggers-club.de>)
/trunk/patches/glibc/2.7/230-powerpc-private_futex.patch | 15 15 0 0 +
/trunk/patches/uClibc/20080801/300-fix-asm.patch | 175 175 0 0 +++++++++
/trunk/patches/uClibc/20080801/100-ifaddrs.patch | 190 190 0 0 +++++++++
/trunk/patches/uClibc/20080801/200-mips-typeof.patch | 112 112 0 0 ++++++
/trunk/patches/gcc/4.3.1/330-unwind-for-uClibc.patch | 25 25 0 0 +
/trunk/samples/x86_64-unknown-linux-gnu/crosstool.config | 17 10 7 0 +
/trunk/samples/armeb-unknown-linux-uclibc/crosstool.config | 7 5 2 0 +
/trunk/samples/arm-unknown-linux-gnueabi/crosstool.config | 7 5 2 0 +
/trunk/samples/ia64-unknown-linux-gnu/crosstool.config | 14 11 3 0 +
/trunk/samples/x86_64-unknown-linux-uclibc/uClibc-20080801.config | 232 232 0 0 ++++++++++++
/trunk/samples/x86_64-unknown-linux-uclibc/crosstool.config | 34 21 13 0 +-
/trunk/samples/i686-nptl-linux-gnu/crosstool.config | 10 7 3 0 +
/trunk/samples/powerpc-unknown-linux-gnu/crosstool.config | 12 9 3 0 +
/trunk/samples/mips-unknown-linux-uclibc/uClibc-20080801.config | 249 249 0 0 ++++++++++++
/trunk/samples/mips-unknown-linux-uclibc/crosstool.config | 38 23 15 0 +-
/trunk/samples/arm-unknown-linux-uclibcgnueabi/crosstool.config | 14 10 4 0 +
/trunk/samples/armeb-unknown-linux-gnu/crosstool.config | 7 5 2 0 +
/trunk/samples/powerpc-unknown_nofpu-linux-gnu/crosstool.config | 12 9 3 0 +
/trunk/samples/arm-unknown-linux-uclibc/crosstool.config | 7 5 2 0 +
/trunk/samples/i586-geode-linux-uclibc/uClibc-20080801.config | 261 261 0 0 +++++++++++++
/trunk/samples/i586-geode-linux-uclibc/crosstool.config | 32 20 12 0 ++
/trunk/samples/powerpc-unknown-linux-uclibc/crosstool.config | 12 9 3 0 +
/trunk/samples/mipsel-unknown-linux-gnu/crosstool.config | 7 5 2 0 +
/trunk/samples/armeb-unknown-linux-uclibcgnueabi/crosstool.config | 7 5 2 0 +
/trunk/samples/alphaev56-unknown-linux-gnu/crosstool.config | 16 10 6 0 +
25 files changed, 1428 insertions(+), 84 deletions(-)
3 # This scripts makes a tarball of the configured toolchain
5 # - crosstool-NG is configured
6 # - components tarball are available
7 # - toolchain is built successfully
9 # We need the functions first:
10 . "${CT_TOP_DIR}/scripts/functions"
12 # Don't care about any log file
14 rm -f "${tmp_log_file}"
16 # Parse the configuration file:
17 . ${CT_TOP_DIR}/.config
19 # Parse the architecture-specific functions
20 . "${CT_LIB_DIR}/arch/${CT_ARCH}/functions"
22 # Target tuple: CT_TARGET needs a little love:
25 # Kludge: if any of the config options needs either CT_TARGET or CT_TOP_DIR,
27 . "${CT_TOP_DIR}/.config"
29 # Build a one-line list of files to include
30 CT_DoStep DEBUG "Building list of tarballs to add"
31 CT_TARBALLS_DIR="${CT_TOP_DIR}/targets/tarballs"
33 for dir in '' tools debug; do
34 CT_DoStep DEBUG "Scanning directory '${dir}'"
35 for script in "${CT_TOP_DIR}/scripts/build/${dir}/"*.sh; do
36 CT_DoStep DEBUG "Testing component '${script}'"
37 [ -n "${script}" ] || continue
38 unset do_print_file_name
40 for file in $(do_print_filename); do
41 CT_DoLog DEBUG "Finding tarball for '${file}'"
42 [ -n "${file}" ] || continue
43 ext=$(CT_GetFileExtension "${file}")
44 CT_TestOrAbort "Missing tarball for: '${file}'" -f "${CT_TOP_DIR}/targets/tarballs/${file}${ext}"
45 CT_DoLog DEBUG "Found '${file}${ext}'"
46 CT_TARBALLS="${CT_TARBALLS} ${file}${ext}"
54 # We need to emulate a build directory:
55 CT_BUILD_DIR="${CT_TOP_DIR}/targets/${CT_TARGET}/build"
56 mkdir -p "${CT_BUILD_DIR}"
59 # Save crosstool-NG, as it is configured for the current toolchain.
60 topdir=$(basename "${CT_TOP_DIR}")
61 CT_Pushd "${CT_TOP_DIR}/.."
65 # Build the list of files to exclude
66 CT_DoLog DEBUG "Building list of files to exclude"
67 exclude_list="${tempdir}/${CT_TARGET}.list"
69 echo "${topdir}/log.*"; \
70 echo "${topdir}/targets/src"; \
71 echo "${topdir}/targets/tst"; \
72 echo "${topdir}/targets/*-*-*-*"; \
73 for t in $(ls -1 "${topdir}/targets/tarballs/"); do \
74 case " ${CT_TARBALLS} " in \
76 *) echo "${topdir}/targets/tarballs/${t}";; \
81 # Render the install directory writable
82 chmod u+w "${CT_PREFIX_DIR}"
84 CT_DoLog INFO "Saving crosstool-NG into the toolchain directory"
85 tar cvjf "${CT_PREFIX_DIR}/${topdir}.${CT_TARGET}.tar.bzip2" \
86 --no-wildcards-match-slash \
87 -X "${exclude_list}" \
88 "${topdir}" 2>&1 |CT_DoLog ALL
92 CT_DoLog INFO "Saving the toolchain"
93 tar cvjf "${botdir}/${CT_TARGET}.tar.bz2" "${CT_PREFIX_DIR}" 2>&1 |CT_DoLog ALL
95 CT_DoLog DEBUG "Getting rid of working directories"
96 rm -f "${CT_PREFIX_DIR}/${topdir}.${CT_TARGET}.tar.bzip2"
99 if [ "${CT_INSTALL_DIR_RO}" = "y" ]; then
100 # Render the install directory non-writable
101 chmod u-w "${CT_PREFIX_DIR}"