summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Holsgrove <david.holsgrove@xilinx.com>2013-03-12 05:13:48 (GMT)
committerDavid Holsgrove <david.holsgrove@xilinx.com>2014-12-09 05:51:11 (GMT)
commit79b988129514d8bcf7858fc6b527fd2315c544a2 (patch)
treecfba2b54a6a12ed3a8774bc38ce2d474a6d1bf3a
parent6df76e2c3e5e9fe93a4e47e4f5f64554b8fde07d (diff)
libc/glibc: Add CUSTOM version and CUSTOM_LOCATION config options and GetCustom
CUSTOM_LOCATION config options only presented in menuconfig if component CUSTOM version selected. Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
-rw-r--r--config/libc/glibc.in23
-rw-r--r--scripts/build/libc/glibc.sh7
2 files changed, 29 insertions, 1 deletions
diff --git a/config/libc/glibc.in b/config/libc/glibc.in
index d349dfb..f107438 100644
--- a/config/libc/glibc.in
+++ b/config/libc/glibc.in
@@ -95,11 +95,33 @@ config LIBC_GLIBC_V_2_8
prompt "2.8"
select LIBC_GLIBC_PORTS_EXTERNAL
+config LIBC_GLIBC_CUSTOM
+ bool
+ prompt "Custom glibc"
+ depends on EXPERIMENTAL
+ select LIBC_CUSTOM
+ select LIBC_GLIBC_2_20_or_later
+
endchoice
config LIBC_GLIBC_2_20_or_later
bool
+config LIBC_CUSTOM
+ bool
+
+if LIBC_GLIBC_CUSTOM
+
+config LIBC_GLIBC_CUSTOM_LOCATION
+ string
+ prompt "Full path to custom glibc source"
+ default ""
+ help
+ Enter the path to the directory (or tarball) of your source for glibc,
+ or leave blank to use default CT_CUSTOM_LOCATION_ROOT_DIR/glibc
+
+endif # LIBC_GLIBC_CUSTOM
+
config LIBC_VERSION
string
# Don't remove next line
@@ -120,3 +142,4 @@ config LIBC_VERSION
default "2.10.1" if LIBC_GLIBC_V_2_10_1
default "2.9" if LIBC_GLIBC_V_2_9
default "2.8" if LIBC_GLIBC_V_2_8
+ default "custom" if LIBC_GLIBC_CUSTOM
diff --git a/scripts/build/libc/glibc.sh b/scripts/build/libc/glibc.sh
index 7bc47c5..8093d94 100644
--- a/scripts/build/libc/glibc.sh
+++ b/scripts/build/libc/glibc.sh
@@ -19,9 +19,14 @@ do_libc_get() {
addons_list=($(do_libc_add_ons_list " "))
# Main source
- CT_GetFile "glibc-${CT_LIBC_VERSION}" \
+ if [ "${CT_LIBC_CUSTOM}" = "y" ]; then
+ CT_GetCustom "glibc" "${CT_LIBC_VERSION}" "${CT_LIBC_GLIBC_CUSTOM_LOCATION}"
+ CT_LIBC_CUSTOM_LOCATION="${CT_SRC_DIR}/glibc-${CT_LIBC_VERSION}"
+ else
+ CT_GetFile "glibc-${CT_LIBC_VERSION}" \
{http,ftp,https}://ftp.gnu.org/gnu/glibc \
ftp://{sourceware.org,gcc.gnu.org}/pub/glibc/{releases,snapshots}
+ fi
# C library addons
for addon in "${addons_list[@]}"; do