glibc: Remove support for downloading and extracting add-ons

Since external add-ons were removed in 2.17, and we only support >=
2.18, this support is no longer needed.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
This commit is contained in:
Bryan Hundven 2016-02-23 14:47:37 -08:00
parent cb87833b7b
commit 39273e0843

View File

@ -5,9 +5,6 @@
do_libc_get() {
local date
local version
local -a addons_list
addons_list=($(do_libc_add_ons_list " "))
# Main source
if [ "${CT_LIBC_GLIBC_CUSTOM}" = "y" ]; then
@ -27,79 +24,15 @@ do_libc_get() {
fi
fi
# C library addons
for addon in "${addons_list[@]}"; do
# Never ever try to download these add-ons,
# they've always been internal
case "${addon}" in
nptl) continue;;
esac
case "${addon}:${CT_LIBC_GLIBC_PORTS_EXTERNAL}" in
ports:y) ;;
ports:*) continue;;
esac
if ! CT_GetFile "glibc-${addon}-${CT_LIBC_VERSION}" \
http://mirrors.kernel.org/sourceware/glibc \
{http,ftp,https}://ftp.gnu.org/gnu/glibc \
ftp://{sourceware.org,gcc.gnu.org}/pub/glibc/{releases,snapshots}
then
# Some add-ons are bundled with glibc, others are
# bundled in their own tarball. Eg. NPTL is internal,
# while LinuxThreads was external. Also, for old
# versions of glibc, the libidn add-on was external,
# but with version >=2.10, it is internal.
CT_DoLog DEBUG "Addon '${addon}' could not be downloaded."
CT_DoLog DEBUG "We'll see later if we can find it in the source tree"
fi
done
return 0
}
do_libc_extract() {
local addon
CT_Extract "${CT_LIBC}-${CT_LIBC_VERSION}"
CT_Pushd "${CT_SRC_DIR}/${CT_LIBC}-${CT_LIBC_VERSION}"
# Attempt CT_PATCH only if NOT custom
CT_Patch nochdir "${CT_LIBC}" "${CT_LIBC_VERSION}"
# Extract the add-opns if => 2.17
if [ "${CT_LIBC_GLIBC_2_17_or_later}" != "y" ]; then
for addon in $(do_libc_add_ons_list " "); do
# If the addon was bundled with the main archive, we do not
# need to extract it. Worse, if we were to try to extract
# it, we'd get an error.
if [ -d "${addon}" ]; then
CT_DoLog DEBUG "Add-on '${addon}' already present, skipping extraction"
continue
fi
CT_Extract nochdir "${CT_LIBC}-${addon}-${CT_LIBC_VERSION}"
CT_TestAndAbort "Error in add-on '${addon}': both short and long names in tarball" \
-d "${addon}" -a -d "${CT_LIBC}-${addon}-${CT_LIBC_VERSION}"
# Some addons have the 'long' name, while others have the
# 'short' name, but patches are non-uniformly built with
# either the 'long' or 'short' name, whatever the addons name
# but we prefer the 'short' name and avoid duplicates.
if [ -d "${CT_LIBC}-${addon}-${CT_LIBC_VERSION}" ]; then
CT_DoExecLog FILE mv "${CT_LIBC}-${addon}-${CT_LIBC_VERSION}" "${addon}"
fi
CT_DoExecLog FILE ln -s "${addon}" "${CT_LIBC}-${addon}-${CT_LIBC_VERSION}"
CT_Patch nochdir "${CT_LIBC}" "${addon}-${CT_LIBC_VERSION}"
# Remove the long name since it can confuse configure scripts to run
# the same source twice.
rm "${CT_LIBC}-${addon}-${CT_LIBC_VERSION}"
done
fi
# The configure files may be older than the configure.in files
# if using a snapshot (or even some tarballs). Fake them being
# up to date.