diff options
-rw-r--r-- | meta/recipes-devtools/make/make-3.82/make-savannah-bug30612-fix_white_space.patch | 58 | ||||
-rw-r--r-- | meta/recipes-devtools/make/make_3.82.bb | 3 |
2 files changed, 60 insertions, 1 deletions
diff --git a/meta/recipes-devtools/make/make-3.82/make-savannah-bug30612-fix_white_space.patch b/meta/recipes-devtools/make/make-3.82/make-savannah-bug30612-fix_white_space.patch new file mode 100644 index 0000000000..0ef501fb97 --- /dev/null +++ b/meta/recipes-devtools/make/make-3.82/make-savannah-bug30612-fix_white_space.patch | |||
@@ -0,0 +1,58 @@ | |||
1 | Fix another error related to whitespace handling in archives. | ||
2 | |||
3 | 2011-06-12 Paul Smith <psmith@gnu.org> | ||
4 | |||
5 | * read.c (parse_file_seq): Move the check for empty members out of | ||
6 | the loop so we can go to the next member properly. | ||
7 | Another fix for Savannah bug #30612. | ||
8 | |||
9 | Upstream-Status: Backport | ||
10 | |||
11 | --- | ||
12 | read.c | 10 +++++----- | ||
13 | tests/scripts/features/archives | 5 +++++ | ||
14 | 5 files changed, 30 insertions(+), 5 deletions(-) | ||
15 | |||
16 | diff --git a/read.c b/read.c | ||
17 | index c87d4a7..b012094 100644 | ||
18 | --- a/read.c | ||
19 | +++ b/read.c | ||
20 | @@ -3044,16 +3044,16 @@ parse_file_seq (char **stringp, unsigned int size, int stopchar, | ||
21 | nlen -= (n + 1) - tp; | ||
22 | tp = n + 1; | ||
23 | |||
24 | - /* If we have just "lib(", part of something like | ||
25 | - "lib( a b)", go to the next item. */ | ||
26 | - if (! nlen) | ||
27 | - continue; | ||
28 | - | ||
29 | /* We can stop looking now. */ | ||
30 | break; | ||
31 | } | ||
32 | } | ||
33 | while (*e != '\0'); | ||
34 | + | ||
35 | + /* If we have just "lib(", part of something like "lib( a b)", | ||
36 | + go to the next item. */ | ||
37 | + if (! nlen) | ||
38 | + continue; | ||
39 | } | ||
40 | } | ||
41 | |||
42 | diff --git a/tests/scripts/features/archives b/tests/scripts/features/archives | ||
43 | index 00aa1af..3fe46a0 100644 | ||
44 | --- a/tests/scripts/features/archives | ||
45 | +++ b/tests/scripts/features/archives | ||
46 | @@ -36,6 +36,11 @@ utouch(-50, 'a2.o'); | ||
47 | run_make_test('all: libxx.a(a3.o *.o)', '', | ||
48 | "ar rv libxx.a a3.o\na - a3.o\nar rv libxx.a a2.o\nr - a2.o\n"); | ||
49 | |||
50 | +# Check whitespace handling | ||
51 | +utouch(-40, 'a2.o'); | ||
52 | +run_make_test('all: libxx.a( a3.o *.o )', '', | ||
53 | + "ar rv libxx.a a2.o\nr - a2.o\n"); | ||
54 | + | ||
55 | rmfiles(qw(a1.o a2.o a3.o libxx.a)); | ||
56 | |||
57 | # This tells the test driver that the perl test script executed properly. | ||
58 | |||
diff --git a/meta/recipes-devtools/make/make_3.82.bb b/meta/recipes-devtools/make/make_3.82.bb index b4292b5d62..8a2f287a01 100644 --- a/meta/recipes-devtools/make/make_3.82.bb +++ b/meta/recipes-devtools/make/make_3.82.bb | |||
@@ -7,7 +7,8 @@ require make.inc | |||
7 | 7 | ||
8 | SRC_URI += "file://expand_MAKEFLAGS.patch \ | 8 | SRC_URI += "file://expand_MAKEFLAGS.patch \ |
9 | file://intermediate-target-bugfix.patch \ | 9 | file://intermediate-target-bugfix.patch \ |
10 | file://make-savannah-bug30612-handling_of_archives.patch;striplevel=0" | 10 | file://make-savannah-bug30612-handling_of_archives.patch;striplevel=0 \ |
11 | file://make-savannah-bug30612-fix_white_space.patch" | ||
11 | 12 | ||
12 | SRC_URI[md5sum] = "1a11100f3c63fcf5753818e59d63088f" | 13 | SRC_URI[md5sum] = "1a11100f3c63fcf5753818e59d63088f" |
13 | SRC_URI[sha256sum] = "e2c1a73f179c40c71e2fe8abf8a8a0688b8499538512984da4a76958d0402966" | 14 | SRC_URI[sha256sum] = "e2c1a73f179c40c71e2fe8abf8a8a0688b8499538512984da4a76958d0402966" |