Improve (POSIX-wise) determination of bashh version.
1.1 --- a/configure Fri Sep 14 17:43:16 2007 +0000
1.2 +++ b/configure Fri Sep 14 19:30:56 2007 +0000
1.3 @@ -123,8 +123,8 @@
1.4
1.5 # Check bash is present, and at least version 3.0
1.6 [ -x /bin/bash ] || do_error "bash 3.0 or above was not found in /bin/bash"
1.7 -bash_version=$(/bin/bash --version |head -n 1 |cut -d ' ' -f 4)
1.8 -bash_major=$(echo "${bash_version}" |sed -e 's/\..*//g;')
1.9 +bash_version=$(/bin/bash --version |sed -r -e '2,$d' -e 's/.* version ([[:digit:]]+).*/\1/;')
1.10 +bash_major=${bash_version%%.*}
1.11 [ ${bash_major} -ge 3 ] || do_error "bash 3.0 or above is needed (found ${bash_version})"
1.12
1.13 sed -r -e "s,@@BINDIR@@,${BINDIR},g;" \
2.1 --- a/docs/overview.txt Fri Sep 14 17:43:16 2007 +0000
2.2 +++ b/docs/overview.txt Fri Sep 14 19:30:56 2007 +0000
2.3 @@ -467,6 +467,42 @@
2.4 use the same crosstool-NG installation, and most notably, the same set of
2.5 patches.
2.6
2.7 +Architecture-specific |
2.8 +----------------------*
2.9 +
2.10 +An architecture is defined by:
2.11 +
2.12 + - a human-readable name, in lower case letters, with numbers as appropriate.
2.13 + The underscore is allowed. Eg.: arm, x86_64
2.14 + - a boolean kconfig option named after the architecture (in capital letters
2.15 + if possible) prefixed with "ARCH_". Eg.: ARCH_ARM, ARCH_x86_64
2.16 + - a directory in "arch/" named after the architecture, with the same letters
2.17 + as above. Eg.: arch/arm, arch/x86_64
2.18 + This directory contains:
2.19 + - a configuration file in kconfig syntax, named "config.in", which may be
2.20 + empty. Eg.: arch/arm/config.in
2.21 + - a function script in bash-3.0 syntax, named "functions", which shall
2.22 + follow the API defined below. Eg.: arch/arm/functions
2.23 +
2.24 +The "functions" file API:
2.25 + > the function "CT_DoBuildTargetTuple"
2.26 + + parameters: none
2.27 + + environment:
2.28 + - all variables from the ".config" file,
2.29 + - the two variables "target_endian_eb" and "target_endian_el" which are
2.30 + the endiannes suffixes
2.31 + + return value: 0 upon success, !0 upon failure
2.32 + + provides:
2.33 + - the target tuple stored in the variable CT_TARGET_ARCH
2.34 +
2.35 + > the environment variable CT_ARCH_ENDIAN_OPT
2.36 + + contains:
2.37 + - the value of the CFLAGS values for selecting the endiannes (eg.: -ml
2.38 + for a Super-H little endian, -mbig-endian for an ARM big endian).
2.39 + - empty if the architecture can not set the endianness (eg x86 and
2.40 + x86_64).
2.41 +
2.42 +
2.43 Build scripts |
2.44 --------------*
2.45