mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2025-01-19 11:17:00 +00:00
complibs: introduce generic multi-complibs infrastructure
Use the same method as companion tools for providing generic and extendable companion libs. Signed-off-by: Yann Diorcet <diorcet.yann@gmail.com> Message-Id: <515c5c4635d99ebe4877.1353074410@macbook-smorlat.local> Patchwork-Id: 199613
This commit is contained in:
parent
1d6a6534d1
commit
0be070e5b7
39
scripts/build/companion_libs.sh
Normal file
39
scripts/build/companion_libs.sh
Normal file
@ -0,0 +1,39 @@
|
||||
# Wrapper to build the companion libs facilities
|
||||
|
||||
# List all companion tools facilities, and parse their scripts
|
||||
CT_COMP_LIBS_FACILITY_LIST=
|
||||
for f in "${CT_LIB_DIR}/scripts/build/companion_libs/"*.sh; do
|
||||
_f="$(basename "${f}" .sh)"
|
||||
_f="${_f#???-}"
|
||||
. "${f}"
|
||||
CT_COMP_LIBS_FACILITY_LIST="${CT_COMP_LIBS_FACILITY_LIST} ${_f}"
|
||||
done
|
||||
|
||||
# Download the companion libs facilities
|
||||
do_companion_libs_get() {
|
||||
for f in ${CT_COMP_LIBS_FACILITY_LIST}; do
|
||||
do_${f}_get
|
||||
done
|
||||
}
|
||||
|
||||
# Extract and patch the companion libs facilities
|
||||
do_companion_libs_extract() {
|
||||
for f in ${CT_COMP_LIBS_FACILITY_LIST}; do
|
||||
do_${f}_extract
|
||||
done
|
||||
}
|
||||
|
||||
# Build the companion libs facilities for build
|
||||
do_companion_libs_for_build() {
|
||||
for f in ${CT_COMP_LIBS_FACILITY_LIST}; do
|
||||
do_${f}_for_build
|
||||
done
|
||||
}
|
||||
|
||||
# Build the companion libs facilities for host
|
||||
do_companion_libs_for_host() {
|
||||
for f in ${CT_COMP_LIBS_FACILITY_LIST}; do
|
||||
do_${f}_for_host
|
||||
done
|
||||
}
|
||||
|
@ -126,12 +126,7 @@ CT_DoLog INFO "Building environment variables"
|
||||
. "${CT_LIB_DIR}/scripts/build/arch/${CT_ARCH}.sh"
|
||||
. "${CT_LIB_DIR}/scripts/build/companion_tools.sh"
|
||||
. "${CT_LIB_DIR}/scripts/build/kernel/${CT_KERNEL}.sh"
|
||||
. "${CT_LIB_DIR}/scripts/build/companion_libs/gmp.sh"
|
||||
. "${CT_LIB_DIR}/scripts/build/companion_libs/mpfr.sh"
|
||||
. "${CT_LIB_DIR}/scripts/build/companion_libs/ppl.sh"
|
||||
. "${CT_LIB_DIR}/scripts/build/companion_libs/cloog.sh"
|
||||
. "${CT_LIB_DIR}/scripts/build/companion_libs/mpc.sh"
|
||||
. "${CT_LIB_DIR}/scripts/build/companion_libs/libelf.sh"
|
||||
. "${CT_LIB_DIR}/scripts/build/companion_libs.sh"
|
||||
. "${CT_LIB_DIR}/scripts/build/binutils/binutils.sh"
|
||||
. "${CT_LIB_DIR}/scripts/build/binutils/elf2flt.sh"
|
||||
. "${CT_LIB_DIR}/scripts/build/binutils/sstrip.sh"
|
||||
@ -539,12 +534,7 @@ if [ -z "${CT_RESTART}" ]; then
|
||||
CT_DoStep INFO "Retrieving needed toolchain components' tarballs"
|
||||
do_companion_tools_get
|
||||
do_kernel_get
|
||||
do_gmp_get
|
||||
do_mpfr_get
|
||||
do_ppl_get
|
||||
do_cloog_get
|
||||
do_mpc_get
|
||||
do_libelf_get
|
||||
do_companion_libs_get
|
||||
do_binutils_get
|
||||
do_elf2flt_get
|
||||
do_sstrip_get
|
||||
@ -569,12 +559,7 @@ if [ -z "${CT_RESTART}" ]; then
|
||||
|
||||
CT_DoStep INFO "Extracting and patching toolchain components"
|
||||
do_kernel_extract
|
||||
do_gmp_extract
|
||||
do_mpfr_extract
|
||||
do_ppl_extract
|
||||
do_cloog_extract
|
||||
do_mpc_extract
|
||||
do_libelf_extract
|
||||
do_companion_libs_extract
|
||||
do_binutils_extract
|
||||
do_elf2flt_extract
|
||||
do_sstrip_extract
|
||||
|
52
steps.mk
52
steps.mk
@ -18,37 +18,27 @@ help-env::
|
||||
# but are actual steps for canadian and cross-native.
|
||||
# Please keep the last line with a '\' and keep the following empy line:
|
||||
# it helps when diffing and merging.
|
||||
CT_STEPS := libc_check_config \
|
||||
gmp_for_build \
|
||||
mpfr_for_build \
|
||||
ppl_for_build \
|
||||
cloog_for_build \
|
||||
mpc_for_build \
|
||||
libelf_for_build \
|
||||
binutils_for_build \
|
||||
elf2flt_for_build \
|
||||
gmp_for_host \
|
||||
mpfr_for_host \
|
||||
ppl_for_host \
|
||||
cloog_for_host \
|
||||
mpc_for_host \
|
||||
libelf_for_host \
|
||||
binutils_for_host \
|
||||
elf2flt_for_host \
|
||||
sstrip_for_host \
|
||||
cc_core_pass_1 \
|
||||
kernel_headers \
|
||||
libc_start_files \
|
||||
cc_core_pass_2 \
|
||||
libc \
|
||||
cc_for_build \
|
||||
cc_for_host \
|
||||
libc_finish \
|
||||
libelf_for_target \
|
||||
binutils_for_target \
|
||||
debug \
|
||||
test_suite \
|
||||
finish \
|
||||
CT_STEPS := libc_check_config \
|
||||
companion_libs_for_build \
|
||||
binutils_for_build \
|
||||
elf2flt_for_build \
|
||||
companion_libs_for_host \
|
||||
binutils_for_host \
|
||||
elf2flt_for_host \
|
||||
sstrip_for_host \
|
||||
cc_core_pass_1 \
|
||||
kernel_headers \
|
||||
libc_start_files \
|
||||
cc_core_pass_2 \
|
||||
libc \
|
||||
cc_for_build \
|
||||
cc_for_host \
|
||||
libc_finish \
|
||||
libelf_for_target \
|
||||
binutils_for_target \
|
||||
debug \
|
||||
test_suite \
|
||||
finish \
|
||||
|
||||
# Keep an empty line above this comment, so the last
|
||||
# back-slash terminated line works as expected.
|
||||
|
Loading…
Reference in New Issue
Block a user