1.1 --- a/scripts/build/libc/uClibc.sh Thu Jul 22 20:06:27 2010 +0200
1.2 +++ b/scripts/build/libc/uClibc.sh Wed Jul 28 01:03:07 2010 +0200
1.3 @@ -12,7 +12,7 @@
1.4 # later...
1.5 CT_GetFile "uClibc-${CT_LIBC_VERSION}" ${libc_src}
1.6 # uClibc locales
1.7 - if [ "${CT_LIBC_UCLIBC_LOCALES}" = "y" ]; then
1.8 + if [ "${CT_LIBC_UCLIBC_LOCALES_PREGEN_DATA}" = "y" ]; then
1.9 CT_GetFile "uClibc-locale-030818" ${libc_src}
1.10 fi
1.11
1.12 @@ -40,11 +40,14 @@
1.13 fi
1.14
1.15 # uClibc locales
1.16 - if [ "${CT_LIBC_UCLIBC_LOCALES}" = "y" ]; then
1.17 + # Extracting pregen locales ourselves is kinda
1.18 + # broken, so just link it in place...
1.19 + if [ "${CT_LIBC_UCLIBC_LOCALES_PREGEN_DATA}" = "y" \
1.20 + -a ! -f "${CT_SRC_DIR}/.uClibc-locales-030818.extracted" ]; then
1.21 CT_Pushd "$(libc_uclibc_src_dir)/extra/locale"
1.22 - CT_Extract nochdir "uClibc-locale-030818"
1.23 - CT_Patch nochdir "uClibc" "locale-030818"
1.24 + CT_DoExecLog ALL ln -s "${CT_TARBALLS_DIR}/uClibc-locale-030818.tgz" .
1.25 CT_Popd
1.26 + touch "${CT_SRC_DIR}/.uClibc-locales-030818.extracted"
1.27 fi
1.28
1.29 return 0
1.30 @@ -354,14 +357,26 @@
1.31 # arrangements. Note that having the uClibc Makefile download the
1.32 # pregenerated locales is not compatible with crosstool; besides,
1.33 # crosstool downloads them as part of getandpatch.sh.
1.34 - if [ "${CT_LIBC_UCLIBC_LOCALES}" = "y" ] ; then
1.35 - cat <<-ENDSED
1.36 - s/^# UCLIBC_HAS_LOCALE is not set/UCLIBC_HAS_LOCALE=y\\
1.37 - UCLIBC_PREGENERATED_LOCALE_DATA=y\\
1.38 - # UCLIBC_DOWNLOAD_PREGENERATED_LOCALE_DATA is not set\\
1.39 - # UCLIBC_HAS_XLOCALE is not set/
1.40 - ENDSED
1.41 - fi
1.42 + case "${CT_LIBC_UCLIBC_LOCALES}:${CT_LIBC_UCLIBC_LOCALES_PREGEN_DATA}" in
1.43 + :*)
1.44 + ;;
1.45 + y:)
1.46 + cat <<-ENDSED
1.47 + s/^# UCLIBC_HAS_LOCALE is not set/UCLIBC_HAS_LOCALE=y\\
1.48 + # UCLIBC_PREGENERATED_LOCALE_DATA is not set\\
1.49 + # UCLIBC_DOWNLOAD_PREGENERATED_LOCALE_DATA is not set\\
1.50 + # UCLIBC_HAS_XLOCALE is not set/
1.51 + ENDSED
1.52 + ;;
1.53 + y:y)
1.54 + cat <<-ENDSED
1.55 + s/^# UCLIBC_HAS_LOCALE is not set/UCLIBC_HAS_LOCALE=y\\
1.56 + UCLIBC_PREGENERATED_LOCALE_DATA=y\\
1.57 + # UCLIBC_DOWNLOAD_PREGENERATED_LOCALE_DATA is not set\\
1.58 + # UCLIBC_HAS_XLOCALE is not set/
1.59 + ENDSED
1.60 + ;;
1.61 + esac
1.62
1.63 # WCHAR support
1.64 if [ "${CT_LIBC_UCLIBC_WCHAR}" = "y" ] ; then