summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBryan Hundven <bryanhundven@gmail.com>2015-12-18 09:42:09 (GMT)
committerBryan Hundven <bryanhundven@gmail.com>2015-12-18 09:42:09 (GMT)
commit7f949eafaf8167855b7749910e1aa304f5316edb (patch)
tree115b1bca266d57cc7e2c0940fd4f14ca415a888d
parent2d3c70dd3ddc5a569c0fa1a833fd5920029b5794 (diff)
parent9f89e082c5bcb3c49013eeeae0a1ccbac1d91ba9 (diff)
Merge pull request #288 from bhundven/custom_locations_rewrite
Custom locations rewrite
-rw-r--r--.travis.sh66
-rw-r--r--config/arch/microblaze.in2
-rw-r--r--config/arch/xtensa.in.245
-rw-r--r--config/binutils/binutils.in54
-rw-r--r--config/binutils/binutils.in.233
-rw-r--r--config/cc/gcc.in59
-rw-r--r--config/debug/gdb.in59
-rw-r--r--config/global/paths.in9
-rw-r--r--config/kernel/linux.in85
-rw-r--r--config/kernel/linux.in.24
-rw-r--r--config/libc/avr-libc.in54
-rw-r--r--config/libc/glibc.in63
-rw-r--r--config/libc/musl.in42
-rw-r--r--config/libc/newlib.in58
-rw-r--r--config/libc/newlib.in.26
-rw-r--r--config/libc/uClibc.in69
-rwxr-xr-xscripts/addToolVersion.sh64
-rw-r--r--scripts/build/arch/xtensa.sh8
-rw-r--r--scripts/build/binutils/binutils.sh23
-rw-r--r--scripts/build/cc.sh6
-rw-r--r--scripts/build/cc/100-gcc.sh29
-rw-r--r--scripts/build/companion_libs/130-cloog.sh20
-rw-r--r--scripts/build/debug/300-gdb.sh33
-rw-r--r--scripts/build/kernel/linux.sh57
-rw-r--r--scripts/build/libc/avr-libc.sh14
-rw-r--r--scripts/build/libc/glibc.sh16
-rw-r--r--scripts/build/libc/musl.sh14
-rw-r--r--scripts/build/libc/newlib.sh10
-rw-r--r--scripts/build/libc/uClibc.sh16
-rw-r--r--scripts/functions85
-rwxr-xr-xscripts/patch-rework.sh62
-rw-r--r--scripts/saveSample.sh.in6
-rwxr-xr-xscripts/showSamples.sh8
33 files changed, 618 insertions, 561 deletions
diff --git a/.travis.sh b/.travis.sh
index 90a439b..7cb6b14 100644
--- a/.travis.sh
+++ b/.travis.sh
@@ -4,42 +4,42 @@ export PATH="$(pwd):$PATH"
# Manage the travis build
ct-ng_travis_build()
{
- # Override the log behaviour
- sed -i -e 's/^.*\(CT_LOG_ERROR\).*$/# \1 is not set/' \
- -e 's/^.*\(CT_LOG_WARN\).*$/# \1 is not set/' \
- -e 's/^.*\(CT_LOG_INFO\).*$/# \1 is not set/' \
- -e 's/^.*\(CT_LOG_EXTRA\).*$/\1=y/' \
- -e 's/^.*\(CT_LOG_ALL\).*$/# \1 is not set/' \
- -e 's/^.*\(CT_LOG_DEBUG\).*$/# \1 is not set/' \
- -e 's/^.*\(CT_LOG_LEVEL_MAX\).*$/\1="EXTRA"/' \
- -e 's/^.*\(CT_LOG_PROGRESS_BAR\).*$/# \1 is not set/' \
- -e 's/^.*\(CT_LOCAL_TARBALLS_DIR\).*$/\1="${HOME}\/src"/' \
- -e 's/^.*\(CT_SAVE_TARBALLS\).*$/\1=y/' \
- .config
+ # Override the log behaviour
+ sed -i -e 's/^.*\(CT_LOG_ERROR\).*$/# \1 is not set/' \
+ -e 's/^.*\(CT_LOG_WARN\).*$/# \1 is not set/' \
+ -e 's/^.*\(CT_LOG_INFO\).*$/# \1 is not set/' \
+ -e 's/^.*\(CT_LOG_EXTRA\).*$/\1=y/' \
+ -e 's/^.*\(CT_LOG_ALL\).*$/# \1 is not set/' \
+ -e 's/^.*\(CT_LOG_DEBUG\).*$/# \1 is not set/' \
+ -e 's/^.*\(CT_LOG_LEVEL_MAX\).*$/\1="EXTRA"/' \
+ -e 's/^.*\(CT_LOG_PROGRESS_BAR\).*$/# \1 is not set/' \
+ -e 's/^.*\(CT_LOCAL_TARBALLS_DIR\).*$/\1="${HOME}\/src"/' \
+ -e 's/^.*\(CT_SAVE_TARBALLS\).*$/\1=y/' \
+ .config
- # Build the sample
- ct-ng build.2 &
- local build_pid=$!
+ # Build the sample
+ ct-ng build.2 &
+ local build_pid=$!
- # Start a runner task to print a "still running" line every 5 minutes
- # to avoid travis to think that the build is stuck
- {
- while true
- do
- sleep 300
- printf "Crosstool-NG is still running ...\r"
- done
- } &
- local runner_pid=$!
+ # Start a runner task to print a "still running" line every 5 minutes
+ # to avoid travis to think that the build is stuck
+ {
+ while true
+ do
+ sleep 300
+ printf "Crosstool-NG is still running ...\r"
+ done
+ } &
+ local runner_pid=$!
- # Wait for the build to finish and get the result
- wait $build_pid 2>/dev/null
- local result=$?
+ # Wait for the build to finish and get the result
+ wait $build_pid 2>/dev/null
+ local result=$?
- # Stop the runner task
- kill $runner_pid
- wait $runner_pid 2>/dev/null
+ # Stop the runner task
+ kill $runner_pid
+ wait $runner_pid 2>/dev/null
- # Return the result
- return $result
+ # Return the result
+ return $result
}
diff --git a/config/arch/microblaze.in b/config/arch/microblaze.in
index c664498..d236007 100644
--- a/config/arch/microblaze.in
+++ b/config/arch/microblaze.in
@@ -10,7 +10,7 @@
## select ARCH_DEFAULT_HAS_MMU
##
## help The MicroBlaze architecture, as defined by:
-## help http://www.xilinx.com/
+## help http://www.xilinx.com/
## help
## help Upstream projects do not currently provide
## help full support for the microblaze architecture
diff --git a/config/arch/xtensa.in.2 b/config/arch/xtensa.in.2
index 64ec4e6..25ece70 100644
--- a/config/arch/xtensa.in.2
+++ b/config/arch/xtensa.in.2
@@ -1,32 +1,33 @@
choice
- prompt "Target Architecture Variant"
- default ARCH_xtensa_fsf
+ prompt "Target Architecture Variant"
+ default ARCH_xtensa_fsf
+
config XTENSA_CUSTOM
- bool "Custom Xtensa processor configuration"
+ bool "Custom Xtensa processor configuration"
config ARCH_xtensa_fsf
- bool "fsf - Default configuration"
+ bool "fsf - Default configuration"
endchoice
config ARCH_XTENSA_CUSTOM_NAME
- string "Custom Xtensa processor configuration name"
- depends on XTENSA_CUSTOM
- default ""
- help
- Enter the name of the custom processor configuration.
- Overlay file for that configuration must be called
- 'xtensa_<CUSTOM_NAME>.tar'.
- Leave blank to use the default 'xtensa-overlay.tar'.
- For more information about this option, please also consult
- section 'Using crosstool-NG to build Xtensa toolchains' in the
- docs/C - Misc. tutorials.txt
+ string "Custom Xtensa processor configuration name"
+ depends on XTENSA_CUSTOM
+ default ""
+ help
+ Enter the name of the custom processor configuration.
+ Overlay file for that configuration must be called
+ 'xtensa_<CUSTOM_NAME>.tar'.
+
+ Leave blank to use the default 'xtensa-overlay.tar'.
+ For more information about this option, please also consult
+ section 'Using crosstool-NG to build Xtensa toolchains' in the
+ docs/C - Misc. tutorials.txt
config ARCH_XTENSA_CUSTOM_OVERLAY_LOCATION
- string "Full path to custom Xtensa processor configurations"
- depends on XTENSA_CUSTOM
- default ""
- help
- Enter the path to the directory for the custom processor
- configuration file or leave blank to use the default location:
- CT_CUSTOM_LOCATION_ROOT_DIR
+ string "Full path to custom Xtensa processor configurations"
+ depends on XTENSA_CUSTOM
+ default ""
+ help
+ Enter the path to the directory for the custom processor
+ configuration file.
diff --git a/config/binutils/binutils.in b/config/binutils/binutils.in
index fc57412..ef59870 100644
--- a/config/binutils/binutils.in
+++ b/config/binutils/binutils.in
@@ -2,6 +2,41 @@
comment "GNU binutils"
+config BINUTILS_CUSTOM
+ bool
+ prompt "Custom binutils"
+ depends on EXPERIMENTAL
+ select BINUTILS_2_25_or_later
+ help
+ The choosen binutils version shall be not downloaded. Instead use
+ a custom location to get the source.
+
+if BINUTILS_CUSTOM
+
+config BINUTILS_CUSTOM_LOCATION
+ string
+ prompt "Full path to custom binutils source"
+ help
+ Enter the path to the directory or tarball of your source for binutils.
+
+ If the path is a tarball, it should extract to: <name>-<version>/
+ where the name is this component, binutils, and the version is set
+ below in the custom version string.
+
+config BINUTILS_CUSTOM_VERSION
+ string
+ prompt "Binutils Custom Version number"
+ help
+ Enter the version number for your custom binutils.
+
+config BINUTILS_VERSION
+ string
+ default BINUTILS_CUSTOM_VERSION
+
+endif # BINUTILS_CUSTOM
+
+if ! BINUTILS_CUSTOM
+
config CC_BINUTILS_SHOW_LINARO
bool
prompt "Show Linaro versions"
@@ -94,23 +129,6 @@ config BINUTILS_V_2_18a
endchoice
-config BINUTILS_CUSTOM
- bool
- prompt "Custom binutils"
- depends on EXPERIMENTAL
-
-if BINUTILS_CUSTOM
-
-config BINUTILS_CUSTOM_LOCATION
- string
- prompt "Full path to custom binutils source"
- default ""
- help
- Enter the path to the directory (or tarball) of your source for binutils,
- or leave blank to use default CT_CUSTOM_LOCATION_ROOT_DIR/binutils
-
-endif # BINUTILS_CUSTOM
-
config BINUTILS_VERSION
string
# Don't remove next line
@@ -129,6 +147,8 @@ config BINUTILS_VERSION
default "2.19.1a" if BINUTILS_V_2_19_1a
default "2.18a" if BINUTILS_V_2_18a
+endif # ! BINUTILS_CUSTOM
+
config BINUTILS_2_25_1_or_later
bool
select BINUTILS_2_25_or_later
diff --git a/config/binutils/binutils.in.2 b/config/binutils/binutils.in.2
index cb6c81c..e3d3799 100644
--- a/config/binutils/binutils.in.2
+++ b/config/binutils/binutils.in.2
@@ -18,12 +18,12 @@ config ELF2FLT_CUSTOM
bool
prompt "Custom elf2flt"
depends on EXPERIMENTAL
+ help
+ The choosen elf2flt version shall be not downloaded. Instead use
+ a custom location to get the source.
endchoice
-config ELF2FLT_VERSION
- string
-
if ELF2FLT_GIT
config ELF2FLT_GIT_CSET
@@ -35,23 +35,30 @@ config ELF2FLT_GIT_CSET
The default currently points to the HEAD of the git tree.
-config ELF2FLT_VERSION
- default ELF2FLT_GIT_CSET
-
endif # ELF2FLT_GIT
-if ELF2FLT_CUSTOM
-
config ELF2FLT_VERSION
- default "custom"
+ string
+ default ELF2FLT_GIT_CSET if ELF2FLT_GIT
+ default ELF2FLT_CUSTOM_VERSION if ELF2FLT_CUSTOM
+
+if ELF2FLT_CUSTOM
config ELF2FLT_CUSTOM_LOCATION
string
prompt "Full path to custom elf2flt source"
- default ""
help
- Enter the path to the directory (or tarball) of your source for elf2flt,
- or leave blank to use default CT_CUSTOM_LOCATION_ROOT_DIR/elf2flt
+ Enter the path to the directory or tarball of your source for elf2flt.
+
+ If the path is a tarball, it should extract to: <name>-<version>/
+ where the name is this component, elf2flt, and the version is set
+ below in the custom version string.
+
+config ELF2FLT_CUSTOM_VERSION
+ string
+ prompt "elf2flt custom version number"
+ help
+ Enter the version number for your custom elf2flt.
endif # ELF2FLT_CUSTOM
@@ -66,4 +73,4 @@ config ELF2FLT_EXTRA_CONFIG_ARRAY
if they are properly quoted (or escaped, but prefer quotes). Eg.:
--with-foo="1st arg with 4 spaces" --with-bar=2nd-arg-without-space
-endif
+endif # ARCH_BINFMT_FLAT
diff --git a/config/cc/gcc.in b/config/cc/gcc.in
index 4cf4628..887b106 100644
--- a/config/cc/gcc.in
+++ b/config/cc/gcc.in
@@ -13,6 +13,41 @@
## help gcc supports many languages, a powerful code parser, optimised binary
## help output, and lots of other features.
+config CC_GCC_CUSTOM
+ bool
+ prompt "Custom gcc"
+ depends on EXPERIMENTAL
+ select CC_GCC_latest
+ help
+ The choosen gcc version shall be not downloaded. Instead use
+ a custom location to get the source.
+
+if CC_GCC_CUSTOM
+
+config CC_GCC_CUSTOM_LOCATION
+ string
+ prompt "Full path to custom gcc source"
+ help
+ Enter the path to the directory or tarball of your source for gcc.
+
+ If the path is a tarball, it should extract to: <name>-<version>/
+ where the name is this component, gcc, and the version is set
+ below in the custom version string.
+
+config CC_GCC_CUSTOM_VERSION
+ string
+ prompt "Custom GCC Version"
+ help
+ Enter the version number for your custom gcc.
+
+config CC_GCC_VERSION
+ string
+ default CC_GCC_CUSTOM_VERSION
+
+endif #CC_GCC_CUSTOM
+
+if ! CC_GCC_CUSTOM
+
config CC_GCC_SHOW_LINARO
bool
prompt "Show Linaro versions"
@@ -66,25 +101,7 @@ config CC_GCC_V_4_8_5
endchoice
-config CC_GCC_CUSTOM
- bool
- prompt "Custom gcc"
- depends on EXPERIMENTAL
- help
- The choosen compiler version shall be not downloaded. Instead use
- a custom location to get the source.
-
-if CC_GCC_CUSTOM
-
-config CC_GCC_CUSTOM_LOCATION
- string
- prompt "Full path to custom gcc source"
- default ""
- help
- Enter the path to the directory (or tarball) of your source for gcc,
- or leave blank to use default CT_CUSTOM_LOCATION_ROOT_DIR/gcc
-
-endif #CC_GCC_CUSTOM
+endif # ! CC_GCC_CUSTOM
config CC_GCC_4_8
bool
@@ -237,6 +254,8 @@ config CC_GCC_HAS_LIBQUADMATH
config CC_GCC_HAS_LIBSANITIZER
bool
+if ! CC_GCC_CUSTOM
+
config CC_GCC_VERSION
string
# Don't remove next line
@@ -247,6 +266,8 @@ config CC_GCC_VERSION
default "linaro-4.8-2015.06" if CC_GCC_V_linaro_4_8
default "4.8.5" if CC_GCC_V_4_8_5
+endif # ! CC_GCC_CUSTOM
+
config CC_LANG_JAVA_USE_ECJ
bool
default y
diff --git a/config/debug/gdb.in b/config/debug/gdb.in
index d0d1aae..70d2ebf 100644
--- a/config/debug/gdb.in
+++ b/config/debug/gdb.in
@@ -10,6 +10,41 @@ if GDB_CROSS || GDB_NATIVE || GDB_GDBSERVER
comment "gdb version"
+config GDB_CUSTOM
+ bool
+ prompt "Custom gdb"
+ depends on EXPERIMENTAL
+ select GDB_7_2_or_later
+ help
+ The choosen gdb version shall be not downloaded. Instead use
+ a custom location to get the source.
+
+if GDB_CUSTOM
+
+config GDB_CUSTOM_LOCATION
+ string
+ prompt "Full path to custom gdb source"
+ help
+ Enter the path to the directory or tarball of your source for gcc.
+
+ If the path is a tarball, it should extract to: <name>-<version>/
+ where the name is this component, gcc, and the version is set
+ below in the custom version string.
+
+config GDB_CUSTOM_VERSION
+ string
+ prompt "Custom GDB version"
+ help
+ Enter the version number for your custom gdb.
+
+config GDB_VERSION
+ string
+ default GDB_CUSTOM_VERSION
+
+endif # GDB_CUSTOM
+
+if ! GDB_CUSTOM
+
config DEBUG_GDB_SHOW_LINARO
bool
prompt "Show Linaro versions"
@@ -166,13 +201,7 @@ config GDB_V_6_8a
endchoice
-config GDB_CUSTOM
- bool
- prompt "Custom gdb"
- depends on EXPERIMENTAL
- help
- The choosen gdb version shall be not downloaded. Instead use
- a custom location to get the source.
+endif # ! GDB_CUSTOM
config GDB_7_2_or_later
bool
@@ -193,6 +222,8 @@ config GDB_HAS_PYTHON
config GDB_INSTALL_GDBINIT
bool
+if ! GDB_CUSTOM
+
config GDB_VERSION
string
# Don't remove next line
@@ -223,17 +254,7 @@ config GDB_VERSION
default "7.0a" if GDB_V_7_0a
default "6.8a" if GDB_V_6_8a
-if GDB_CUSTOM
-
-config GDB_CUSTOM_LOCATION
- string
- prompt "Full path to custom gdb source"
- default ""
- help
- Enter the path to the directory (or tarball) of your source for gdb,
- or leave blank to use default CT_CUSTOM_LOCATION_ROOT_DIR/gdb
-
-endif # GDB_CUSTOM
+endif # ! GDB_CUSTOM
-endif
+endif # GDB_CROSS || GDB_NATIVE || GDB_GDBSERVER
diff --git a/config/global/paths.in b/config/global/paths.in
index 96319fa..bdad57f 100644
--- a/config/global/paths.in
+++ b/config/global/paths.in
@@ -19,15 +19,6 @@ config SAVE_TARBALLS
If you say 'y' here, new downloaded tarballs will be saved in the
directory you entered above.
-config CUSTOM_LOCATION_ROOT_DIR
- string
- prompt "Directory containing custom source components"
- depends on EXPERIMENTAL
- help
- This is the path CT-NG will attempt to use as a root for locating
- local copies of source components (CUSTOM_LOCATION_ROOT_DIR/component)
- unless a component declares its own specific custom location.
-
config WORK_DIR
string
prompt "Working directory" if ! BACKEND
diff --git a/config/kernel/linux.in b/config/kernel/linux.in
index 3d919df..2669951 100644
--- a/config/kernel/linux.in
+++ b/config/kernel/linux.in
@@ -5,21 +5,38 @@
##
## help Build a toolchain targeting systems running Linux as a kernel.
-config KERNEL_LINUX_USE_CUSTOM_HEADERS
+config KERNEL_LINUX_CUSTOM
bool
- prompt "Use pre-installed headers tree (OBSOLETE)"
- depends on OBSOLETE
+ prompt "custom tarball or directory"
help
- If you have some pre-installed kernel headers lying around, you can
- enter the path to these headers, below, they will be copied from
- there, and into the toolchain's sysroot.
-
- Note:
- This will *not* let you use a complete kernel tree!
- If you want to use your own full kernel tree, then you want to say 'N'
- here, and select KERNEL_LINUX_CUSTOM, in the versions list, below.
+ The choosen linux version shall be not downloaded. Instead use
+ a custom location to get the source.
-if ! KERNEL_LINUX_USE_CUSTOM_HEADERS
+if KERNEL_LINUX_CUSTOM
+
+config KERNEL_LINUX_CUSTOM_LOCATION
+ string
+ prompt "Path to custom source, tarball or directory"
+ help
+ Enter the path to the directory or tarball of your source for linux.
+
+ If the path is a tarball, it should extract to: <name>-<version>/
+ where the name is this component, linux, and the version is set
+ below in the custom version string.
+
+config KERNEL_LINUX_CUSTOM_VERSION
+ string
+ prompt "Custom Linux version"
+ help
+ Enter the version number for your custom linux.
+
+config KERNEL_VERSION
+ string
+ default KERNEL_LINUX_CUSTOM_VERSION
+
+endif # KERNEL_LINUX_CUSTOM
+
+if ! KERNEL_LINUX_CUSTOM
choice
bool
@@ -68,20 +85,6 @@ config KERNEL_V_2_6_32
prompt "2.6.32.68"
help
-config KERNEL_LINUX_CUSTOM
- bool
- prompt "custom tarball or directory"
- help
- Use a local tarball or local kernel directory of a complete kernel source tree.
-
-config KERNEL_LINUX_CUSTOM_LOCATION
- string
- prompt "Path to custom source, tarball or directory"
- depends on KERNEL_LINUX_CUSTOM
- help
- Enter here the path to the tarball of your full kernel tree or
- kernel directory
-
endchoice
config KERNEL_VERSION
@@ -98,33 +101,5 @@ config KERNEL_VERSION
default "3.4.110" if KERNEL_V_3_4
default "3.2.72" if KERNEL_V_3_2
default "2.6.32.68" if KERNEL_V_2_6_32
- default "custom" if KERNEL_LINUX_CUSTOM
-
-endif # ! KERNEL_LINUX_USE_CUSTOM_HEADERS
-
-if KERNEL_LINUX_USE_CUSTOM_HEADERS
-
-config KERNEL_LINUX_CUSTOM_PATH
- string
- prompt "Path to custom headers directory/tarball"
- help
- See KERNEL_LINUX_CUSTOM_IS_TARBALL, below.
-config KERNEL_LINUX_CUSTOM_IS_TARBALL
- bool
- prompt "This is a tarball"
- help
- If you say 'n' here, the path above is expected to point to a directory
- containing readily prepared headers
-
- If you say 'y' here, then the path above is expected to point to a
- tarball of such a directory.
-
- Eg., if your headers are available in: /foo/bar/buz/my_hdrs/include,
- say 'n' here, and enter: /foo/bar/buz/my_hdrs below.
-
- Now, passing a tarball around is easier than passing a directory, so
- if you want to, you can make a tarball of /foo/bar/buz/my_hdrs/include,
- say 'y' here, and enter the path to this tarball below.
-
-endif # KERNEL_LINUX_USE_CUSTOM_HEADERS
+endif # ! KERNEL_LINUX_CUSTOM
diff --git a/config/kernel/linux.in.2 b/config/kernel/linux.in.2
index 8e93958..80e13f3 100644
--- a/config/kernel/linux.in.2
+++ b/config/kernel/linux.in.2
@@ -1,7 +1,5 @@
# Linux kernel options
-if ! KERNEL_LINUX_USE_CUSTOM_HEADERS
-
choice
bool
prompt "Kernel verbosity:"
@@ -40,5 +38,3 @@ config KERNEL_LINUX_INSTALL_CHECK
help
If you are in doubt that installed headers are buggy, say 'Y'
here to have an extra check passed onto the headers.
-
-endif # ! KERNEL_LINUX_USE_CUSTOM_HEADERS
diff --git a/config/libc/avr-libc.in b/config/libc/avr-libc.in
index 968ca6b..f08acb3 100644
--- a/config/libc/avr-libc.in
+++ b/config/libc/avr-libc.in
@@ -9,6 +9,40 @@
## help Atmel AVR 8-bit RISC microcontrollers. In addition, the library
## help provides the basic startup code needed by most applications.
+config LIBC_AVR_LIBC_CUSTOM
+ bool
+ prompt "Custom avr-libc"
+ depends on EXPERIMENTAL
+ help
+ The choosen avr-libc version shall be not downloaded. Instead use
+ a custom location to get the source.
+
+if LIBC_AVR_LIBC_CUSTOM
+
+config LIBC_AVR_LIBC_CUSTOM_LOCATION
+ string
+ prompt "Full path to custom avr-libc source"
+ help
+ Enter the path to the directory or tarball of your source for avr-libc.
+
+ If the path is a tarball, it should extract to: <name>-<version>/
+ where the name is this component, avr-libc, and the version is set
+ below in the custom version string.
+
+config LIBC_AVR_LIBC_CUSTOM_VERSION
+ string
+ prompt "Custom AVR-Libc version"
+ help
+ Enter the version number for your custom avr-libc.
+
+config LIBC_VERSION
+ string
+ default LIBC_AVR_LIBC_CUSTOM_VERSION
+
+endif # LIBC_AVR_LIBC_CUSTOM
+
+if ! LIBC_AVR_LIBC_CUSTOM
+
choice
bool
prompt "avr-libc version"
@@ -23,29 +57,13 @@ config LIBC_AVR_LIBC_V_1_8_0
bool
prompt "1.8.0"
-config LIBC_AVR_LIBC_CUSTOM
- bool
- prompt "Custom avr-libc"
- depends on EXPERIMENTAL
-
endchoice
-if LIBC_AVR_LIBC_CUSTOM
-
-config LIBC_AVR_LIBC_CUSTOM_LOCATION
- string
- prompt "Full path to custom avr-libc source"
- default ""
- help
- Enter the path to the directory (or tarball) of your source for avr-libc,
- or leave blank to use default CT_CUSTOM_LOCATION_ROOT_DIR/avr-libc
-
-endif # LIBC_AVR_LIBC_CUSTOM
-
config LIBC_VERSION
string
# Don't remove next line
# CT_INSERT_VERSION_STRING_BELOW
default "1.8.1" if LIBC_AVR_LIBC_V_1_8_1
default "1.8.0" if LIBC_AVR_LIBC_V_1_8_0
- default "custom" if LIBC_AVR_LIBC_CUSTOM
+
+endif # ! LIBC_AVR_LIBC_CUSTOM
diff --git a/config/libc/glibc.in b/config/libc/glibc.in
index c2ba7b9..97b0107 100644
--- a/config/libc/glibc.in
+++ b/config/libc/glibc.in
@@ -12,6 +12,42 @@
config THREADS
default "nptl"
+config LIBC_GLIBC_CUSTOM
+ bool
+ prompt "Custom glibc"
+ depends on EXPERIMENTAL
+ select LIBC_CUSTOM
+ select LIBC_GLIBC_2_20_or_later
+ help
+ The choosen glibc version shall be not downloaded. Instead use
+ a custom location to get the source.
+
+if LIBC_GLIBC_CUSTOM
+
+config LIBC_GLIBC_CUSTOM_LOCATION
+ string
+ prompt "Full path to custom glibc source"
+ help
+ Enter the path to the directory or tarball of your source for glibc.
+
+ If the path is a tarball, it should extract to: <name>-<version>/
+ where the name is this component, glibc, and the version is set
+ below in the custom version string.
+
+config LIBC_GLIBC_CUSTOM_VERSION
+ string
+ prompt "Custom GLIBC version"
+ help
+ Enter the version number for your custom glibc.
+
+config LIBC_VERSION
+ string
+ default LIBC_GLIBC_CUSTOM_VERSION
+
+endif # LIBC_GLIBC_CUSTOM
+
+if ! LIBC_GLIBC_CUSTOM
+
config CC_GLIBC_SHOW_LINARO
bool
prompt "Show Linaro versions"
@@ -132,15 +168,10 @@ 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
+endif # ! LIBC_GLIBC_CUSTOM
+
config LIBC_GLIBC_2_20_or_later
bool
select LIBC_GLIBC_2_17_or_later
@@ -149,20 +180,7 @@ config LIBC_GLIBC_2_20_or_later
config LIBC_GLIBC_2_17_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
+if ! LIBC_GLIBC_CUSTOM
config LIBC_VERSION
string
@@ -187,4 +205,5 @@ 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
+
+endif # ! LIBC_GLIBC_CUSTOM
diff --git a/config/libc/musl.in b/config/libc/musl.in
index 8df09df..522478a 100644
--- a/config/libc/musl.in
+++ b/config/libc/musl.in
@@ -12,6 +12,40 @@
config THREADS
default "musl"
+config LIBC_MUSL_CUSTOM
+ bool
+ prompt "Custom musl"
+ depends on EXPERIMENTAL
+ help
+ The choosen musl-libc version shall be not downloaded. Instead use
+ a custom location to get the source.
+
+if LIBC_MUSL_CUSTOM
+
+config LIBC_MUSL_CUSTOM_LOCATION
+ string
+ prompt "Full path to custom musl-libc source"
+ help
+ Enter the path to the directory or tarball of your source for musl.
+
+ If the path is a tarball, it should extract to: <name>-<version>/
+ where the name is this component, musl, and the version is set
+ below in the custom version string.
+
+config LIBC_MUSL_CUSTOM_VERSION
+ string
+ prompt "Custom MUSL version"
+ help
+ Enter the version number for your custom musl-libc.
+
+config LIBC_VERSION
+ string
+ default LIBC_MUSL_CUSTOM_VERSION
+
+endif # LIBC_MUSL_CUSTOM
+
+if ! LIBC_MUSL_CUSTOM
+
choice
bool
prompt "musl version"
@@ -27,11 +61,6 @@ config LIBC_MUSL_V_1_0
bool
prompt "1.0.5 (Stable)"
-config LIBC_MUSL_V_CUSTOM
- bool
- prompt "Custom musl"
- depends on EXPERIMENTAL
-
endchoice
config LIBC_VERSION
@@ -40,4 +69,5 @@ config LIBC_VERSION
# CT_INSERT_VERSION_STRING_BELOW
default "1.1.12" if LIBC_MUSL_V_1_1
default "1.0.5" if LIBC_MUSL_V_1_0
- default "custom" if LIBC_MUSL_V_CUSTOM
+
+endif # ! LIBC_MUSL_CUSTOM
diff --git a/config/libc/newlib.in b/config/libc/newlib.in
index eea89da..40203f7 100644
--- a/config/libc/newlib.in
+++ b/config/libc/newlib.in
@@ -12,6 +12,41 @@
## help is only available in source form. It can be compiled for a wide
## help array of processors, and will usually work on any architecture with
## help the addition of a few low-level routines.
+#
+config LIBC_NEWLIB_CUSTOM
+ bool
+ prompt "Custom newlib"
+ depends on EXPERIMENTAL
+ select LIBC_NEWLIB_2_2_or_later
+ help
+ The choosen newlib version shall be not downloaded. Instead use
+ a custom location to get the source.
+
+if LIBC_NEWLIB_CUSTOM
+
+config LIBC_NEWLIB_CUSTOM_LOCATION
+ string
+ prompt "Full path to custom newlib source"
+ help
+ Enter the path to the directory or tarball of your source for newlib.
+
+ If the path is a tarball, it should extract to: <name>-<version>/
+ where the name is this component, newlib, and the version is set
+ below in the custom version string.
+
+config LIBC_NEWLIB_CUSTOM_VERSION
+ string
+ prompt "Custom NEWLIB version"
+ help
+ Enter the version number for your custom newlib.
+
+config LIBC_VERSION
+ string
+ default LIBC_NEWLIB_CUSTOM_VERSION
+
+endif # LIBC_NEWLIB_CUSTOM
+
+if ! LIBC_NEWLIB_CUSTOM
config CC_NEWLIB_SHOW_LINARO
bool
@@ -81,13 +116,7 @@ config LIBC_NEWLIB_V_1_17_0
endchoice
-config LIBC_NEWLIB_CUSTOM
- bool
- prompt "Custom newlib"
- depends on EXPERIMENTAL
- help
- The choosen library version shall be not downloaded. Instead use
- a custom location to get the source.
+endif # ! LIBC_NEWLIB_CUSTOM
config LIBC_NEWLIB_2_2
bool
@@ -115,18 +144,7 @@ config LIBC_NEWLIB_2_0_or_later
bool
select LIBC_PROVIDES_CXA_ATEXIT
-if LIBC_NEWLIB_CUSTOM
-
-config LIBC_NEWLIB_CUSTOM_LOCATION
- string
- prompt "Full path to custom newlib source"
- default ""
- help
- Enter the path to the directory (or tarball) of your source for newlib,
- or leave blank to use default CT_CUSTOM_LOCATION_ROOT_DIR/newlib
-
-endif # LIBC_NEWLIB_CUSTOM
-
+if ! LIBC_NEWLIB_CUSTOM
config LIBC_VERSION
string
# Don't remove next line
@@ -144,6 +162,8 @@ config LIBC_VERSION
Enter the tag you want to use.
Leave empty to use the 'head' of the repository.
+endif # ! LIBC_NEWLIB_CUSTOM
+
config LIBC_NEWLIB_TARGET_CFLAGS
string
prompt "Target CFLAGS for newlib"
diff --git a/config/libc/newlib.in.2 b/config/libc/newlib.in.2
index ef5d076..b16b23a 100644
--- a/config/libc/newlib.in.2
+++ b/config/libc/newlib.in.2
@@ -31,9 +31,9 @@ config LIBC_NEWLIB_DISABLE_SUPPLIED_SYSCALLS
prompt "Disable the syscalls supplied with newlib"
help
Disable the syscalls that come with newlib. You
- will have to implement your own _sbrk, _read,
- _write... If you plan to port newlib to a new
- platform/board, say Yes.
+ will have to implement your own _sbrk, _read,
+ _write... If you plan to port newlib to a new
+ platform/board, say Yes.
config LIBC_NEWLIB_ENABLE_TARGET_OPTSPACE
bool
diff --git a/config/libc/uClibc.in b/config/libc/uClibc.in
index 06a8975..ae26f3a 100644
--- a/config/libc/uClibc.in
+++ b/config/libc/uClibc.in
@@ -20,6 +20,55 @@ comment "'softfp' ABI and uClibc is not entirely tested in crosstool-NG"
comment "You may experience issues, although it should work just fine"
endif # ARCH_FLOAT_SOFTFP
+config LIBC_UCLIBC_CUSTOM
+ bool
+ prompt "Custom uClibc"
+ depends on EXPERIMENTAL
+ help
+ The choosen uclibc version shall be not downloaded. Instead use
+ a custom location to get the source.
+
+if LIBC_UCLIBC_CUSTOM
+
+choice
+ bool
+ prompt "uClibc Version Name"
+
+config LIBC_UCLIBC_CUSTOM_UCLIBC
+ bool "uClibc"
+ select LIBC_UCLIBC_0_9_33_2_or_later
+
+config LIBC_UCLIBC_CUSTOM_UCLIBC_NG
+ bool "uClibc-ng"
+ select LIBC_UCLIBC_NG_1_0_0_or_later
+
+endchoice
+
+config LIBC_UCLIBC_CUSTOM_LOCATION
+ string
+ prompt "Full path to custom uClibc source"
+ help
+ Enter the path to the directory or tarball of your source for uClibc.
+
+ If the path is a tarball, it should extract to: <name>-<version>/
+ where the name is this component will be set by the uClibc Version Name
+ option from above, and the version is set below in the custom version
+ string.
+
+config LIBC_UCLIBC_CUSTOM_VERSION
+ string
+ prompt "Custom uClibc Version"
+ help
+ Enter the version number for your custom uClibc.
+
+config LIBC_VERSION
+ string
+ default LIBC_UCLIBC_CUSTOM_VERSION
+
+endif # LIBC_UCLIBC_CUSTOM
+
+if ! LIBC_UCLIBC_CUSTOM
+
choice
bool
prompt "uClibc version"
@@ -36,26 +85,8 @@ config LIBC_UCLIBC_V_0_9_33_2
prompt "0.9.33.2"
select LIBC_UCLIBC_0_9_33_2_or_later
-config LIBC_UCLIBC_CUSTOM
- bool
- prompt "Custom uClibc"
- depends on EXPERIMENTAL
- select LIBC_UCLIBC_0_9_33_2_or_later
-
endchoice
-if LIBC_UCLIBC_CUSTOM
-
-config LIBC_UCLIBC_CUSTOM_LOCATION
- string
- prompt "Full path to custom uClibc source"
- default ""
- help
- Enter the path to the directory (or tarball) of your source for uClibc,
- or leave blank to use default CT_CUSTOM_LOCATION_ROOT_DIR/uClibc
-
-endif # LIBC_UCLIBC_CUSTOM
-
config LIBC_VERSION
string
# Don't remove next line
@@ -63,6 +94,8 @@ config LIBC_VERSION
default "1.0.9" if LIBC_UCLIBC_NG_V_1_0_9
default "0.9.33.2" if LIBC_UCLIBC_V_0_9_33_2
+endif # ! LIBC_UCLIBC_CUSTOM
+
config LIBC_UCLIBC_NG_1_0_9_or_later
bool
select LIBC_UCLIBC_NG_1_0_0_or_later
diff --git a/scripts/addToolVersion.sh b/scripts/addToolVersion.sh
index bd419f8..0144e4f 100755
--- a/scripts/addToolVersion.sh
+++ b/scripts/addToolVersion.sh
@@ -14,37 +14,37 @@ myname="$0"
doHelp() {
cat <<-EOF
- Usage: ${myname} <--tool> <[options] version [...]> ...
- 'tool' in one of:
- gcc, binutils, glibc, uClibc, newlib, linux, gdb, dmalloc,
- duma, strace, ltrace, libelf, gmp, mpfr, isl, cloog, mpc,
- mingw-w64, expat, ncurses
-
- Valid options for all tools:
- --stable, -s, +x (default)
- mark the version as being stable (as opposed to experimental, below)
-
- --experimental, -x, +s
- mark the version as being experimental (as opposed to stable, above)
-
- --current, -c, +o (default)
- mark the version as being cuurent (as opposed to obsolete, below)
-
- --obsolete, -o, +c
- mark the version as being obsolete (as opposed to current, above)
-
- Note: setting a new tool resets to the defaults: 'stable' and 'current'.
-
- 'version' is a valid version for the specified tool.
-
- Examples:
- add stable current version 2.6.19.2 to linux kernel:
- ${myname} --linux 2.6.19.2
-
- add experimental obsolete version 2.3.5 and stable current versions 2.6.1
- and 2.6.2 to glibc, add stable obsolete version 3.3.3 to gcc:
- ${myname} --glibc -x -o 2.3.5 -s -c 2.6.1 2.6.2 --gcc -o 3.3.3
- EOF
+ Usage: ${myname} <--tool> <[options] version [...]> ...
+ 'tool' in one of:
+ gcc, binutils, glibc, uClibc, newlib, linux, gdb, dmalloc,
+ duma, strace, ltrace, libelf, gmp, mpfr, isl, cloog, mpc,
+ mingw-w64, expat, ncurses
+
+ Valid options for all tools:
+ --stable, -s, +x (default)
+ mark the version as being stable (as opposed to experimental, below)
+
+ --experimental, -x, +s
+ mark the version as being experimental (as opposed to stable, above)
+
+ --current, -c, +o (default)
+ mark the version as being cuurent (as opposed to obsolete, below)
+
+ --obsolete, -o, +c
+ mark the version as being obsolete (as opposed to current, above)
+
+ Note: setting a new tool resets to the defaults: 'stable' and 'current'.
+
+ 'version' is a valid version for the specified tool.
+
+ Examples:
+ add stable current version 2.6.19.2 to linux kernel:
+ ${myname} --linux 2.6.19.2
+
+ add experimental obsolete version 2.3.5 and stable current versions 2.6.1
+ and 2.6.2 to glibc, add stable obsolete version 3.3.3 to gcc:
+ ${myname} --glibc -x -o 2.3.5 -s -c 2.6.1 2.6.2 --gcc -o 3.3.3
+ EOF
}
# Extract field $3 from version $1 with separator $2
@@ -187,7 +187,7 @@ while [ $# -gt 0 ]; do
--ltrace) EXP=; OBS=; cat=LTRACE; tool=ltrace; tool_prefix=debug; dot2suffix=;;
--gmp) EXP=; OBS=; cat=GMP; tool=gmp; tool_prefix=companion_libs; dot2suffix=;;
--mpfr) EXP=; OBS=; cat=MPFR; tool=mpfr; tool_prefix=companion_libs; dot2suffix=;;
- --isl) EXP=; OBS=; cat=ISL; tool=isl; tool_prefix=companion_libs; dot2suffix=;;
+ --isl) EXP=; OBS=; cat=ISL; tool=isl; tool_prefix=companion_libs; dot2suffix=;;
--cloog) EXP=; OBS=; cat=CLOOG; tool=cloog; tool_prefix=companion_libs; dot2suffix=;;
--mpc) EXP=; OBS=; cat=MPC; tool=mpc; tool_prefix=companion_libs; dot2suffix=;;
--libelf) EXP=; OBS=; cat=LIBELF; tool=libelf; tool_prefix=companion_libs; dot2suffix=;;
diff --git a/scripts/build/arch/xtensa.sh b/scripts/build/arch/xtensa.sh
index 7e49312..c7bd432 100644
--- a/scripts/build/arch/xtensa.sh
+++ b/scripts/build/arch/xtensa.sh
@@ -22,13 +22,7 @@ CT_ConfigureXtensa() {
custom_overlay="xtensa-overlay.tar"
fi
- if [ -n "${CT_CUSTOM_LOCATION_ROOT_DIR}" \
- -a -z "${custom_location}" ]; then
- custom_location="${CT_CUSTOM_LOCATION_ROOT_DIR}"
- fi
-
- CT_TestAndAbort "${custom_overlay}: CT_CUSTOM_LOCATION_ROOT_DIR or CT_ARCH_XTENSA_CUSTOM_OVERLAY_LOCATION must be set." \
- -z "${CT_CUSTOM_LOCATION_ROOT_DIR}" -a -z "${custom_location}"
+ CT_TestAndAbort "${custom_overlay}: CT_ARCH_XTENSA_CUSTOM_OVERLAY_LOCATION must be set." -z "${custom_location}"
local full_file="${custom_location}/${custom_overlay}"
local basename="${component}-${version}"
diff --git a/scripts/build/binutils/binutils.sh b/scripts/build/binutils/binutils.sh
index afb797d..6318163 100644
--- a/scripts/build/binutils/binutils.sh
+++ b/scripts/build/binutils/binutils.sh
@@ -5,8 +5,8 @@
# Download binutils
do_binutils_get() {
if [ "${CT_BINUTILS_CUSTOM}" = "y" ]; then
- CT_GetCustom "binutils" "${CT_BINUTILS_VERSION}" \
- "${CT_BINUTILS_CUSTOM_LOCATION}"
+ CT_GetCustom "binutils" "${CT_BINUTILS_CUSTOM_VERSION}" \
+ "${CT_BINUTILS_CUSTOM_LOCATION}"
else
if echo ${CT_BINUTILS_VERSION} |${grep} -q linaro; then
YYMM=`echo ${CT_BINUTILS_VERSION} |cut -d- -f3 |${sed} -e 's,^..,,'`
@@ -22,8 +22,8 @@ do_binutils_get() {
if [ -n "${CT_ARCH_BINFMT_FLAT}" ]; then
if [ "${CT_ELF2FLT_CUSTOM}" = "y" ]; then
- CT_GetCustom "elf2flt" "${CT_ELF2FLT_VERSION}" \
- "${CT_ELF2FLT_CUSTOM_LOCATION}"
+ CT_GetCustom "elf2flt" "${CT_ELF2FLT_CUSTOM_VERSION}" \
+ "${CT_ELF2FLT_CUSTOM_LOCATION}"
else
CT_GetGit elf2flt "${CT_ELF2FLT_GIT_CSET}" git://wh0rd.org/elf2flt.git
fi
@@ -32,19 +32,12 @@ do_binutils_get() {
# Extract binutils
do_binutils_extract() {
- # If using custom directory location, nothing to do
- if ! [ "${CT_BINUTILS_CUSTOM}" = "y" \
- -a -d "${CT_SRC_DIR}/binutils-${CT_BINUTILS_VERSION}" ]; then
- CT_Extract "binutils-${CT_BINUTILS_VERSION}"
- CT_Patch "binutils" "${CT_BINUTILS_VERSION}"
- fi
+ CT_Extract "binutils-${CT_BINUTILS_VERSION}"
+ CT_Patch "binutils" "${CT_BINUTILS_VERSION}"
if [ -n "${CT_ARCH_BINFMT_FLAT}" ]; then
- if ! [ "${CT_ELF2FLT_CUSTOM}" = "y" \
- -a -d "${CT_SRC_DIR}/elf2flt-${CT_ELF2FLT_VERSION}" ]; then
- CT_Extract "elf2flt-${CT_ELF2FLT_GIT_CSET}"
- CT_Patch "elf2flt" "${CT_ELF2FLT_GIT_CSET}"
- fi
+ CT_Extract "elf2flt-${CT_ELF2FLT_GIT_CSET}"
+ CT_Patch "elf2flt" "${CT_ELF2FLT_GIT_CSET}"
fi
if [ -n "${CT_ARCH_XTENSA_CUSTOM_NAME}" ]; then
diff --git a/scripts/build/cc.sh b/scripts/build/cc.sh
index 3c8aaef..0db6b9c 100644
--- a/scripts/build/cc.sh
+++ b/scripts/build/cc.sh
@@ -38,21 +38,21 @@ do_cc_core_pass_1() {
# Core pass 2 the cc facilities
do_cc_core_pass_2() {
- for f in ${CT_CC_FACILITY_LIST}; do
+ for f in ${CT_CC_FACILITY_LIST}; do
do_${f}_core_pass_2
done
}
# Build for build the cc facilities
do_cc_for_build() {
- for f in ${CT_CC_FACILITY_LIST}; do
+ for f in ${CT_CC_FACILITY_LIST}; do
do_${f}_for_build
done
}
# Build for host the cc facilities
do_cc_for_host() {
- for f in ${CT_CC_FACILITY_LIST}; do
+ for f in ${CT_CC_FACILITY_LIST}; do
do_${f}_for_host
done
}
diff --git a/scripts/build/cc/100-gcc.sh b/scripts/build/cc/100-gcc.sh
index 359bb15..0640452 100644
--- a/scripts/build/cc/100-gcc.sh
+++ b/scripts/build/cc/100-gcc.sh
@@ -8,7 +8,8 @@ do_gcc_get() {
local linaro_series=""
if [ "${CT_CC_GCC_CUSTOM}" = "y" ]; then
- CT_GetCustom "gcc" "${CT_CC_GCC_VERSION}" "${CT_CC_GCC_CUSTOM_LOCATION}"
+ CT_GetCustom "gcc" "${CT_CC_GCC_CUSTOM_VERSION}" \
+ "${CT_CC_GCC_CUSTOM_LOCATION}"
else
# Account for the Linaro versioning
linaro_version="$( echo "${CT_CC_GCC_VERSION}" \
@@ -48,12 +49,6 @@ do_gcc_get() {
# Extract gcc
do_gcc_extract() {
- # If using custom directory location, nothing to do
- if [ "${CT_CC_GCC_CUSTOM}" = "y" \
- -a -d "${CT_SRC_DIR}/gcc-${CT_CC_GCC_VERSION}" ]; then
- return 0
- fi
-
CT_Extract "gcc-${CT_CC_GCC_VERSION}"
CT_Patch "gcc" "${CT_CC_GCC_VERSION}"
@@ -148,7 +143,7 @@ do_gcc_core_pass_2() {
;;
*)
core_opts+=( "mode=static" )
- core_opts+=( "build_libgcc=yes" )
+ core_opts+=( "build_libgcc=yes" )
;;
esac
@@ -318,9 +313,9 @@ do_gcc_core_backend() {
if [ "${CT_ISL}" = "y" ]; then
extra_config+=("--with-isl=${complibs}")
fi
- if [ "${CT_CLOOG}" = "y" ]; then
- extra_config+=("--with-cloog=${complibs}")
- fi
+ if [ "${CT_CLOOG}" = "y" ]; then
+ extra_config+=("--with-cloog=${complibs}")
+ fi
elif [ "${CT_CC_GCC_HAS_GRAPHITE}" = "y" ]; then
extra_config+=("--with-isl=no")
extra_config+=("--with-cloog=no")
@@ -477,8 +472,8 @@ do_gcc_core_backend() {
CT_DoExecLog ALL ${make} ${JOBSFLAGS} -C libbacktrace
fi
- libgcc_rule="libgcc.mvars"
- core_targets=( gcc target-libgcc )
+ libgcc_rule="libgcc.mvars"
+ core_targets=( gcc target-libgcc )
# On bare metal and canadian build the host-compiler is used when
# actually the build-system compiler is required. Choose the correct
@@ -715,7 +710,7 @@ do_gcc_backend() {
extra_config+=("--enable-cxx-flags=${CT_CC_GCC_ENABLE_CXX_FLAGS}")
fi
if [ "${CT_THREADS}" = "none" ]; then
- extra_config+=(--disable-libatomic)
+ extra_config+=(--disable-libatomic)
fi
if [ "${CT_CC_GCC_LIBMUDFLAP}" = "y" ]; then
extra_config+=(--enable-libmudflap)
@@ -795,9 +790,9 @@ do_gcc_backend() {
if [ "${CT_ISL}" = "y" ]; then
extra_config+=("--with-isl=${complibs}")
fi
- if [ "${CT_CLOOG}" = "y" ]; then
- extra_config+=("--with-cloog=${complibs}")
- fi
+ if [ "${CT_CLOOG}" = "y" ]; then
+ extra_config+=("--with-cloog=${complibs}")
+ fi
elif [ "${CT_CC_GCC_HAS_GRAPHITE}" = "y" ]; then
extra_config+=("--with-isl=no")
extra_config+=("--with-cloog=no")
diff --git a/scripts/build/companion_libs/130-cloog.sh b/scripts/build/companion_libs/130-cloog.sh
index 1b37167..2376570 100644
--- a/scripts/build/companion_libs/130-cloog.sh
+++ b/scripts/build/companion_libs/130-cloog.sh
@@ -87,9 +87,9 @@ do_cloog_backend() {
done
if [ "${CT_CLOOG_0_18_or_later}" = y ]; then
- cloog_opts+=( --with-gmp=system --with-gmp-prefix="${prefix}" )
- cloog_opts+=( --with-isl=system --with-isl-prefix="${prefix}" )
- cloog_opts+=( --without-osl )
+ cloog_opts+=( --with-gmp=system --with-gmp-prefix="${prefix}" )
+ cloog_opts+=( --with-isl=system --with-isl-prefix="${prefix}" )
+ cloog_opts+=( --without-osl )
fi
CT_DoLog EXTRA "Configuring CLooG"
@@ -99,13 +99,13 @@ do_cloog_backend() {
LDFLAGS="${ldflags}" \
LIBS="-lm" \
"${CT_SRC_DIR}/cloog-${CT_CLOOG_VERSION}/configure" \
- --build=${CT_BUILD} \
- --host=${host} \
- --prefix="${prefix}" \
- --with-bits=gmp \
- --with-host-libstdcxx='-lstdc++' \
- --disable-shared \
- --enable-static \
+ --build=${CT_BUILD} \
+ --host=${host} \
+ --prefix="${prefix}" \
+ --with-bits=gmp \
+ --with-host-libstdcxx='-lstdc++' \
+ --disable-shared \
+ --enable-static \
"${cloog_opts[@]}"
CT_DoLog EXTRA "Building CLooG"
diff --git a/scripts/build/debug/300-gdb.sh b/scripts/build/debug/300-gdb.sh
index beef5ff..418e85c 100644
--- a/scripts/build/debug/300-gdb.sh
+++ b/scripts/build/debug/300-gdb.sh
@@ -7,7 +7,8 @@ do_debug_gdb_get() {
local linaro_series=""
if [ "${CT_GDB_CUSTOM}" = "y" ]; then
- CT_GetCustom "gdb" "${CT_GDB_VERSION}" "${CT_GDB_CUSTOM_LOCATION}"
+ CT_GetCustom "gdb" "${CT_GDB_CUSTOM_VERSION}" \
+ "${CT_GDB_CUSTOM_LOCATION}"
else
# Account for the Linaro versioning
linaro_version="$( echo "${CT_GDB_VERSION}" \
@@ -33,12 +34,6 @@ do_debug_gdb_get() {
}
do_debug_gdb_extract() {
- # If using custom directory location, nothing to do
- if [ "${CT_GDB_CUSTOM}" = "y" \
- -a -d "${CT_SRC_DIR}/gdb-${CT_GDB_VERSION}" ]; then
- return 0
- fi
-
CT_Extract "gdb-${CT_GDB_VERSION}"
CT_Patch "gdb" "${CT_GDB_VERSION}"
@@ -100,10 +95,10 @@ do_debug_gdb_build() {
LD_for_gdb="${CT_HOST}-ld -static"
fi
- # Disable binutils options when building from the binutils-gdb repo.
- cross_extra_config+=("--disable-binutils")
- cross_extra_config+=("--disable-ld")
- cross_extra_config+=("--disable-gas")
+ # Disable binutils options when building from the binutils-gdb repo.
+ cross_extra_config+=("--disable-binutils")
+ cross_extra_config+=("--disable-ld")
+ cross_extra_config+=("--disable-gas")
CT_DoLog DEBUG "Extra config passed: '${cross_extra_config[*]}'"
@@ -191,10 +186,10 @@ do_debug_gdb_build() {
export ac_cv_func_strncmp_works=yes
- # Disable binutils options when building from the binutils-gdb repo.
- native_extra_config+=("--disable-binutils")
- native_extra_config+=("--disable-ld")
- native_extra_config+=("--disable-gas")
+ # Disable binutils options when building from the binutils-gdb repo.
+ native_extra_config+=("--disable-binutils")
+ native_extra_config+=("--disable-ld")
+ native_extra_config+=("--disable-gas")
CT_DoLog DEBUG "Extra config passed: '${native_extra_config[*]}'"
@@ -261,10 +256,10 @@ do_debug_gdb_build() {
fi
fi
- # Disable binutils options when building from the binutils-gdb repo.
- gdbserver_extra_config+=("--disable-binutils")
- gdbserver_extra_config+=("--disable-ld")
- gdbserver_extra_config+=("--disable-gas")
+ # Disable binutils options when building from the binutils-gdb repo.
+ gdbserver_extra_config+=("--disable-binutils")
+ gdbserver_extra_config+=("--disable-ld")
+ gdbserver_extra_config+=("--disable-gas")
CT_DoExecLog CFG \
CC="${CT_TARGET}-gcc" \
diff --git a/scripts/build/kernel/linux.sh b/scripts/build/kernel/linux.sh
index 49fe613..f0f2402 100644
--- a/scripts/build/kernel/linux.sh
+++ b/scripts/build/kernel/linux.sh
@@ -23,13 +23,9 @@ do_kernel_get() {
local rel_dir
local korg_base mirror_base
- if [ "${CT_KERNEL_LINUX_USE_CUSTOM_HEADERS}" = "y" ]; then
- return 0
- fi
-
if [ "${CT_KERNEL_LINUX_CUSTOM}" = "y" ]; then
- CT_GetCustom "linux" "${CT_KERNEL_VERSION}" \
- "${CT_KERNEL_LINUX_CUSTOM_LOCATION}"
+ CT_GetCustom "linux" "${CT_KERNEL_LINUX_CUSTOM_VERSION}" \
+ "${CT_KERNEL_LINUX_CUSTOM_LOCATION}"
else # Not a custom tarball
case "${CT_KERNEL_VERSION}" in
2.6.*.*|3.*.*|4.*.*)
@@ -59,11 +55,6 @@ do_kernel_get() {
# Extract kernel
do_kernel_extract() {
- # If using a custom headers tree, nothing to do
- if [ "${CT_KERNEL_LINUX_USE_CUSTOM_HEADERS}" = "y" ]; then
- return 0
- fi
-
# If using a custom directory location, nothing to do
if [ "${CT_KERNEL_LINUX_CUSTOM}" = "y" \
-a -d "${CT_SRC_DIR}/linux-${CT_KERNEL_VERSION}" ]; then
@@ -81,32 +72,16 @@ do_kernel_extract() {
CT_Patch "linux" "${CT_KERNEL_VERSION}"
}
-# Wrapper to the actual headers install method
-do_kernel_headers() {
- CT_DoStep INFO "Installing kernel headers"
-
- if [ "${CT_KERNEL_LINUX_USE_CUSTOM_HEADERS}" = "y" ]; then
- do_kernel_custom
- else
- do_kernel_install
- fi
-
- CT_EndStep
-}
-
# Install kernel headers using headers_install from kernel sources.
-do_kernel_install() {
+do_kernel_headers() {
local kernel_path
local kernel_arch
- CT_DoLog DEBUG "Using kernel's headers_install"
+ CT_DoStep INFO "Installing kernel headers"
mkdir -p "${CT_BUILD_DIR}/build-kernel-headers"
kernel_path="${CT_SRC_DIR}/linux-${CT_KERNEL_VERSION}"
- if [ "${CT_KERNEL_LINUX_CUSTOM}" = "y" ]; then
- kernel_path="${CT_SRC_DIR}/linux-custom"
- fi
V_OPT="V=${CT_KERNEL_LINUX_VERBOSE_LEVEL}"
kernel_arch="${CT_ARCH}"
@@ -145,28 +120,6 @@ do_kernel_install() {
-o -name '..check.cmd' \
\) \
-exec rm {} \;
-}
-# Use custom headers (most probably by using make headers_install in a
-# modified (read: customised) kernel tree, or using pre-2.6.18 headers, such
-# as 2.4). In this case, simply copy the headers in place
-do_kernel_custom() {
- local tar_opt
-
- CT_DoLog EXTRA "Installing custom kernel headers"
-
- mkdir -p "${CT_SYSROOT_DIR}/usr"
- cd "${CT_SYSROOT_DIR}/usr"
- if [ "${CT_KERNEL_LINUX_CUSTOM_IS_TARBALL}" = "y" ]; then
- case "${CT_KERNEL_LINUX_CUSTOM_PATH}" in
- *.tar) ;;
- *.tgz) tar_opt=--gzip;;
- *.tar.gz) tar_opt=--gzip;;
- *.tar.bz2) tar_opt=--bzip2;;
- *.tar.xz) tar_opt=--xz;;
- esac
- CT_DoExecLog ALL tar x ${tar_opt} -vf ${CT_KERNEL_LINUX_CUSTOM_PATH}
- else
- CT_DoExecLog ALL cp -rv "${CT_KERNEL_LINUX_CUSTOM_PATH}/include" .
- fi
+ CT_EndStep
}
diff --git a/scripts/build/libc/avr-libc.sh b/scripts/build/libc/avr-libc.sh
index 103a795..b73f990 100644
--- a/scripts/build/libc/avr-libc.sh
+++ b/scripts/build/libc/avr-libc.sh
@@ -6,24 +6,14 @@ do_libc_get() {
libc_src="http://download.savannah.gnu.org/releases/avr-libc"
if [ "${CT_LIBC_AVR_LIBC_CUSTOM}" = "y" ]; then
- CT_GetCustom "avr-libc" "${CT_LIBC_VERSION}" \
- "${CT_LIBC_AVR_LIBC_CUSTOM_LOCATION}"
+ CT_GetCustom "avr-libc" "${CT_LIBC_AVR_LIBC_CUSTOM_VERSION}" \
+ "${CT_LIBC_AVR_LIBC_CUSTOM_LOCATION}"
else # ! custom location
CT_GetFile "avr-libc-${CT_LIBC_VERSION}" "${libc_src}"
fi # ! custom location
}
do_libc_extract() {
- # If using custom directory location, nothing to do.
- if [ "${CT_LIBC_AVR_LIBC_CUSTOM}" = "y" ]; then
- # Abort if the custom directory is not found.
- if ! [ -d "${CT_SRC_DIR}/avr-libc-${CT_LIBC_VERSION}" ]; then
- CT_Abort "Directory not found: ${CT_SRC_DIR}/avr-libc-${CT_LIBC_VERSION}"
- fi
-
- return 0
- fi
-
CT_Extract "avr-libc-${CT_LIBC_VERSION}"
CT_Patch "avr-libc" "${CT_LIBC_VERSION}"
}
diff --git a/scripts/build/libc/glibc.sh b/scripts/build/libc/glibc.sh
index 126e9e0..d45248a 100644
--- a/scripts/build/libc/glibc.sh
+++ b/scripts/build/libc/glibc.sh
@@ -6,16 +6,10 @@
do_libc_extract() {
local addon
- # Attempt CT_EXTRACT only if NOT custom, or CUSTOM_LOCATION is not a directory
- if [ "${CT_LIBC_CUSTOM}" != "y" \
- -o ! -d "${CT_LIBC_CUSTOM_LOCATION}" ]; then
- CT_Extract "${CT_LIBC}-${CT_LIBC_VERSION}"
- fi
+ CT_Extract "${CT_LIBC}-${CT_LIBC_VERSION}"
CT_Pushd "${CT_SRC_DIR}/${CT_LIBC}-${CT_LIBC_VERSION}"
# Attempt CT_PATCH only if NOT custom
- if [ "${CT_LIBC_CUSTOM}" != "y" ]; then
- CT_Patch nochdir "${CT_LIBC}" "${CT_LIBC_VERSION}"
- fi
+ 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
@@ -554,9 +548,9 @@ do_libc_get() {
addons_list=($(do_libc_add_ons_list " "))
# Main source
- 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}"
+ if [ "${CT_LIBC_GLIBC_CUSTOM}" = "y" ]; then
+ CT_GetCustom "glibc" "${CT_LIBC_GLIBC_CUSTOM_VERSION}" \
+ "${CT_LIBC_GLIBC_CUSTOM_LOCATION}"
else
if echo ${CT_LIBC_VERSION} |${grep} -q linaro; then
# Linaro glibc releases come from regular downloads...
diff --git a/scripts/build/libc/musl.sh b/scripts/build/libc/musl.sh
index f8f135c..f7dbb97 100644
--- a/scripts/build/libc/musl.sh
+++ b/scripts/build/libc/musl.sh
@@ -8,24 +8,14 @@ do_libc_get() {
libc_src="http://www.musl-libc.org/releases"
if [ "${CT_LIBC_MUSL_CUSTOM}" = "y" ]; then
- CT_GetCustom "musl" "${CT_LIBC_VERSION}" \
- "${CT_LIBC_MUSL_CUSTOM_LOCATION}"
+ CT_GetCustom "musl" "${CT_LIBC_MUSL_CUSTOM_VERSION}" \
+ "${CT_LIBC_MUSL_CUSTOM_LOCATION}"
else # ! custom location
CT_GetFile "musl-${CT_LIBC_VERSION}" "${libc_src}"
fi # ! custom location
}
do_libc_extract() {
- # If using custom directory location, nothing to do.
- if [ "${CT_LIBC_MUSL_CUSTOM}" = "y" ]; then
- # Abort if the custom directory is not found.
- if ! [ -d "${CT_SRC_DIR}/musl-${CT_LIBC_VERSION}" ]; then
- CT_Abort "Directory not found: ${CT_SRC_DIR}/musl-${CT_LIBC_VERSION}"
- fi
-
- return 0
- fi
-
CT_Extract "musl-${CT_LIBC_VERSION}"
CT_Patch "musl" "${CT_LIBC_VERSION}"
}
diff --git a/scripts/build/libc/newlib.sh b/scripts/build/libc/newlib.sh
index a4fe82e..ba52268 100644
--- a/scripts/build/libc/newlib.sh
+++ b/scripts/build/libc/newlib.sh
@@ -14,8 +14,8 @@ do_libc_get() {
ftp://sourceware.org/pub/newlib}"
if [ "${CT_LIBC_NEWLIB_CUSTOM}" = "y" ]; then
- CT_GetCustom "newlib" "${CT_LIBC_VERSION}" \
- "${CT_LIBC_NEWLIB_CUSTOM_LOCATION}"
+ CT_GetCustom "newlib" "${CT_LIBC_NEWLIB_CUSTOM_VERSION}" \
+ "${CT_LIBC_NEWLIB_CUSTOM_LOCATION}"
else # ! custom location
if echo ${CT_LIBC_VERSION} |${grep} -q linaro; then
YYMM=`echo ${CT_LIBC_VERSION} |cut -d- -f3 |${sed} -e 's,^..,,'`
@@ -30,12 +30,6 @@ do_libc_get() {
}
do_libc_extract() {
- # If using custom directory location, nothing to do
- if [ "${CT_LIBC_NEWLIB_CUSTOM}" = "y" \
- -a -d "${CT_SRC_DIR}/newlib-${CT_LIBC_VERSION}" ]; then
- return 0
- fi
-
CT_Extract "newlib-${CT_LIBC_VERSION}"
CT_Patch "newlib" "${CT_LIBC_VERSION}"
diff --git a/scripts/build/libc/uClibc.sh b/scripts/build/libc/uClibc.sh
index f5b871c..422412c 100644
--- a/scripts/build/libc/uClibc.sh
+++ b/scripts/build/libc/uClibc.sh
@@ -19,8 +19,8 @@ fi
# Download uClibc
do_libc_get() {
if [ "${CT_LIBC_UCLIBC_CUSTOM}" = "y" ]; then
- CT_GetCustom "${uclibc_name}" "${CT_LIBC_VERSION}" \
- "${CT_LIBC_UCLIBC_CUSTOM_LOCATION}"
+ CT_GetCustom "${uclibc_name}" "${CT_LIBC_UCLIBC_CUSTOM_VERSION}" \
+ "${CT_LIBC_UCLIBC_CUSTOM_LOCATION}"
else
CT_GetFile "${uclibc_name}-${CT_LIBC_VERSION}" ${libc_src}
fi
@@ -34,16 +34,8 @@ do_libc_get() {
# Extract uClibc
do_libc_extract() {
- # If not using custom directory location, extract and patch
- # Note: we do the inverse test we do in other components,
- # because here we still need to extract the locales, even for
- # custom location directory. Just use negate the whole test,
- # to keep it the same as for other components.
- if ! [ "${CT_LIBC_UCLIBC_CUSTOM}" = "y" \
- -a -d "${CT_SRC_DIR}/${uclibc_name}-${CT_LIBC_VERSION}" ]; then
- CT_Extract "${uclibc_name}-${CT_LIBC_VERSION}"
- CT_Patch "${uclibc_name}" "${CT_LIBC_VERSION}"
- fi
+ CT_Extract "${uclibc_name}-${CT_LIBC_VERSION}"
+ CT_Patch "${uclibc_name}" "${CT_LIBC_VERSION}"
# uClibc locales
# Extracting pregen locales ourselves is kinda
diff --git a/scripts/functions b/scripts/functions
index e266626..5a64232 100644
--- a/scripts/functions
+++ b/scripts/functions
@@ -1,4 +1,6 @@
-# This file contains some usefull common functions -*- sh -*-
+# -*- mode: sh; tab-width: 4 -*-
+# vi: ts=4:sw=4:sts=4:et
+# This file contains some usefull common functions
# Copyright 2007 Yann E. MORIN
# Licensed under the GPL v2. See COPYING in the root of this package
@@ -625,39 +627,58 @@ CT_GetLocal() {
}
# This function gets the custom source from either a tarball or directory
-# Usage: CT_GetCustom <component> <custom_version> <custom_location>
+# Usage: CT_GetCustom <name> <version> <location>
CT_GetCustom() {
- local custom_component="$1"
- local custom_version="$2"
- local custom_location="$3"
- local custom_name="${custom_component}-${custom_version}"
-
- CT_TestAndAbort "${custom_name}: CT_CUSTOM_LOCATION_ROOT_DIR or ${custom_component}'s CUSTOM_LOCATION must be set." \
- -z "${CT_CUSTOM_LOCATION_ROOT_DIR}" -a -z "${custom_location}"
-
- if [ -n "${CT_CUSTOM_LOCATION_ROOT_DIR}" \
- -a -z "${custom_location}" ]; then
- custom_location="${CT_CUSTOM_LOCATION_ROOT_DIR}/${custom_component}"
+ local component_name="$1"
+ local component_version="$2"
+ local component_location="$3"
+
+ # Some local variables we use to help us figure out what to do
+ local component_location_type="dir" # str: 'file' or 'dir'
+ local component_location_filename="" # filename... if it's a file
+
+ CT_TestAndAbort \
+ "${component_name}: Custom location setting is empty" \
+ -z "${component_location}"
+
+ CT_TestAndAbort \
+ "${component_name}: Custom version setting is empty" \
+ -z "${component_version}"
+
+ if [ -f "${component_location}" ]; then
+ component_location_type="file"
+ component_location_filename="$(basename ${component_location})"
+ elif [ -d "${component_location}" ]; then
+ # Yes, it's the default, but it rules out the else case in the `if'.
+ component_location_type="dir"
+ # as -d and -f say: it's a <directory|file> and is readable!
+ else
+ CT_Abort "${component_name}: Unable to read ${component_location}, make sure the setting is correct and double check the permissions!"
fi
- CT_DoLog EXTRA "Using '${custom_name}' from custom location"
- if [ ! -d "${custom_location}" ]; then
+ if [ "${component_location_type}" = "file" ]; then
+ CT_DoLog EXTRA "Got '${component_location}' from custom location"
# We need to know the custom tarball extension,
# so we can create a properly-named symlink, which
# we use later on in 'extract'
- case "${custom_location}" in
- *.tar.xz) custom_name="${custom_name}.tar.xz";;
- *.tar.bz2) custom_name="${custom_name}.tar.bz2";;
- *.tar.gz|*.tgz) custom_name="${custom_name}.tar.gz";;
- *.tar) custom_name="${custom_name}.tar";;
- *) CT_Abort "Unknown extension for custom tarball '${custom_location}'";;
+ case "${component_location}" in
+ *.tar.xz|*.tar.bz2|*.tar.lzma|*.tar.gz|*.tgz|*.tar|*.zip) ;;
+ *) CT_Abort "Unknown extension for custom tarball '${component_location}'" ;;
esac
- CT_DoExecLog DEBUG ln -sf "${custom_location}" \
- "${CT_TARBALLS_DIR}/${custom_name}"
- else
- CT_DoExecLog DEBUG ln -snf "${custom_location}" \
- "${CT_SRC_DIR}/${custom_name}"
+ [ ! -L "${CT_TARBALLS_DIR}/${component_location_filename}" ] && \
+ CT_DoExecLog DEBUG ln -sf "${component_location}" \
+ "${CT_TARBALLS_DIR}/${component_location_filename}"
+ elif [ "${component_location_type}" = "dir" ]; then
+ CT_DoLog EXTRA "Got '${component_location}' from custom location"
+ [ ! -d "${CT_SRC_DIR}/${component_name}-${component_version}" ] && \
+ CT_DoExecLog DEBUG cp -al "${component_location}" \
+ "${CT_SRC_DIR}/${component_name}-${component_version}"
+
+ # Don't try to extract from source directory, it's extracted!
+ touch "${CT_SRC_DIR}/.${component_name}-${component_version}.extracted"
fi
+ # Don't patch a custom source, it's custom!
+ touch "${CT_SRC_DIR}/.${component_name}-${component_version}.patched"
}
# This function saves the specified to local storage if possible,
@@ -938,18 +959,18 @@ CT_Extract() {
basename="$1"
shift
- if ! ext="$(CT_GetFileExtension "${basename}")"; then
- CT_DoLog WARN "'${basename}' not found in '${CT_TARBALLS_DIR}'"
- return 1
- fi
- local full_file="${CT_TARBALLS_DIR}/${basename}${ext}"
-
# Check if already extracted
if [ -e "${CT_SRC_DIR}/.${basename}.extracted" ]; then
CT_DoLog DEBUG "Already extracted '${basename}'"
return 0
fi
+ if ! ext="$(CT_GetFileExtension "${basename}")"; then
+ CT_DoLog WARN "'${basename}' not found in '${CT_TARBALLS_DIR}'"
+ return 1
+ fi
+ local full_file="${CT_TARBALLS_DIR}/${basename}${ext}"
+
# Check if previously partially extracted
if [ -e "${CT_SRC_DIR}/.${basename}.extracting" ]; then
CT_DoLog ERROR "The '${basename}' sources were partially extracted."
diff --git a/scripts/patch-rework.sh b/scripts/patch-rework.sh
index 2809348..d05d2c1 100755
--- a/scripts/patch-rework.sh
+++ b/scripts/patch-rework.sh
@@ -11,35 +11,35 @@ diff="$@"
do_help() {
cat <<-_EOF_
- ${0##*/}: transform a patchset of non-p1 patches into -p1 patches
-
- Usage:
- ${0##*/} <basedir> <src> <dst> [diffopts ...]
-
- Where:
- basedir
- points to the directory of the component to patch
-
- src
- points to the directory containing the existing patchset
- to transform
-
- dst
- points to the directory where to put transformed patches
-
- diffopts
- optional options to pass to diff, for debug purposes. You
- should not need it
-
- Example:
- Transform Gentoo patches against gcc-4.4.2 (some of which are
- -p0, -p1 or even -p2 patches) into all -p1 patches:
-
- tar xjf gcc-4.4.2.tar.bz2
- patch-rework.sh gcc-4.4.2 \\
- /path/to/gentoo/gcc/patches \\
- gcc-4.4.2.patches
- _EOF_
+ ${0##*/}: transform a patchset of non-p1 patches into -p1 patches
+
+ Usage:
+ ${0##*/} <basedir> <src> <dst> [diffopts ...]
+
+ Where:
+ basedir
+ points to the directory of the component to patch
+
+ src
+ points to the directory containing the existing patchset
+ to transform
+
+ dst
+ points to the directory where to put transformed patches
+
+ diffopts
+ optional options to pass to diff, for debug purposes. You
+ should not need it
+
+ Example:
+ Transform Gentoo patches against gcc-4.4.2 (some of which are
+ -p0, -p1 or even -p2 patches) into all -p1 patches:
+
+ tar xjf gcc-4.4.2.tar.bz2
+ patch-rework.sh gcc-4.4.2 \\
+ /path/to/gentoo/gcc/patches \\
+ gcc-4.4.2.patches
+ _EOF_
}
# Sanity checks
@@ -48,8 +48,8 @@ if [ -z "${base}" \
-o ! -d "${src}" \
-o -e "${dst}" -a ! -d "${dst}" \
]; then
- do_help
- exit 1
+ do_help
+ exit 1
fi
mkdir -p "${dst}"
diff --git a/scripts/saveSample.sh.in b/scripts/saveSample.sh.in
index 34e6594..a070dc2 100644
--- a/scripts/saveSample.sh.in
+++ b/scripts/saveSample.sh.in
@@ -37,12 +37,6 @@ if [ "${CT_CUSTOM_PATCH}" = "y" ]; then
echo "You will not be able to (easily) share this sample in this case."
read -p "Press Ctrl-C to stop now, or Enter to continue..."
fi
-if [ "${CT_KERNEL_LINUX_USE_CUSTOM_HEADERS}" = "y" ]; then
- exec >&7
- echo "You are using custom Linux headers."
- echo "You will not be able to (easily) share this sample in this case."
- read -p "Press Ctrl-C to stop now, or Enter to continue..."
-fi
# Do not use a progress bar
unset CT_LOG_PROGRESS_BAR
diff --git a/scripts/showSamples.sh b/scripts/showSamples.sh
index b6d81c1..aed3dd1 100755
--- a/scripts/showSamples.sh
+++ b/scripts/showSamples.sh
@@ -69,7 +69,7 @@ dump_single_sample() {
printf " %-*s : %s\n" ${width} "OS" "${CT_KERNEL}${CT_KERNEL_VERSION:+-}${CT_KERNEL_VERSION}"
if [ -n "${CT_GMP}" \
-o -n "${CT_MPFR}" \
- -o -n "${CT_ISL}" \
+ -o -n "${CT_ISL}" \
-o -n "${CT_CLOOG}" \
-o -n "${CT_MPC}" \
-o -n "${CT_LIBELF}" \
@@ -77,7 +77,7 @@ dump_single_sample() {
-o -n "${CT_NCURSES}" \
-o -n "${CT_GMP_TARGET}" \
-o -n "${CT_MPFR_TARGET}" \
- -o -n "${CT_ISL_TARGET}" \
+ -o -n "${CT_ISL_TARGET}" \
-o -n "${CT_CLOOG_TARGET}" \
-o -n "${CT_MPC_TARGET}" \
-o -n "${CT_LIBELF_TARGET}" \
@@ -89,8 +89,8 @@ dump_single_sample() {
fi
[ -z "${CT_GMP}" -a -z "${CT_GMP_TARGET}" ] || printf " gmp-%s" "${CT_GMP_VERSION}"
[ -z "${CT_MPFR}" -a -z "${CT_MPFR_TARGET}" ] || printf " mpfr-%s" "${CT_MPFR_VERSION}"
- [ -z "${CT_ISL}" -a -z "${CT_ISL_TARGET}" ] || printf " isl-%s" "${CT_ISL_VERSION}"
- [ -z "${CT_CLOOG}" -a -z "${CT_CLOOG_TARGET}" ] || printf " cloog-%s" "${CT_CLOOG_VERSION}"
+ [ -z "${CT_ISL}" -a -z "${CT_ISL_TARGET}" ] || printf " isl-%s" "${CT_ISL_VERSION}"
+ [ -z "${CT_CLOOG}" -a -z "${CT_CLOOG_TARGET}" ] || printf " cloog-%s" "${CT_CLOOG_VERSION}"
[ -z "${CT_MPC}" -a -z "${CT_MPC_TARGET}" ] || printf " mpc-%s" "${CT_MPC_VERSION}"
[ -z "${CT_LIBELF}" -a -z "${CT_LIBELF_TARGET}" ] || printf " libelf-%s" "${CT_LIBELF_VERSION}"
[ -z "${CT_EXPAT}" -a -z "${CT_EXPAT_TARGET}" ] || printf " expat-%s" "${CT_EXPAT_VERSION}"