scripts: remove . from $PATH
Add CT_SanitizePath function which removes entries referring to ., /tmp
and non-existing directories from $PATH, and call it early in the
build script.
If . is in PATH, gcc-4.4.4 build breaks:
[ALL ] checking what assembler to use...
/tmp/build/targets/arm-unknown-linux-uclibcgnueabi/build/gcc-core-static/arm-unknown-linux-uclibcgnueabi/bin/as
...
[ALL ] config.status: creating as
i.e. "as" is supposed to be the arm-unknown-linux-uclibcgnueabi cross assembler,
but config.status creates a local "as" script which is calling the
host assembler.
Signed-off-by: Johannes Stezenbach <js@sig21.net>
[Yann E. MORIN: style fixes + explanations]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
(transplanted from 20dd8cef1c8adff0aa3e78ae6d7acfbc45ed5a83)
1 Original patch from http://gmplib.org/patches/mpf_set_str.c.diff
2 Re-diffed to match crosstool-NG conventions.
4 diff -dur gmp-4.2.2.orig/mpf/set_str.c gmp-4.2.2/mpf/set_str.c
5 --- gmp-4.2.2.orig/mpf/set_str.c 2007-08-30 20:31:40.000000000 +0200
6 +++ gmp-4.2.2/mpf/set_str.c 2008-01-28 23:05:29.000000000 +0100
11 - /* FIXME: Should do some error checking here. */
12 - exp_in_base = strtol (expptr, (char **) 0, exp_base);
14 + /* Scan and convert the exponent, in base exp_base. */
15 + long dig, neg = -(long) ('-' == expptr[0]);
16 + expptr -= neg; /* conditional increment */
17 + c = (unsigned char) *expptr++;
18 + dig = digit_value[c];
19 + if (dig >= exp_base)
25 + c = (unsigned char) *expptr++;
26 + dig = digit_value[c];
27 + while (dig < exp_base)
29 + exp_in_base = exp_in_base * exp_base;
31 + c = (unsigned char) *expptr++;
32 + dig = digit_value[c];
34 + exp_in_base = (exp_in_base ^ neg) - neg; /* conditional negation */