summaryrefslogtreecommitdiffstats
path: root/meta/packages/binutils
diff options
context:
space:
mode:
authorTomas Frydrych <tf@openedhand.com>2006-09-06 15:12:59 +0000
committerTomas Frydrych <tf@openedhand.com>2006-09-06 15:12:59 +0000
commite9b762802b039e8c19e70b054ecc64e7ab07e4d8 (patch)
treeb912494b2fc2845d4f9a67694b4120b2f585ed00 /meta/packages/binutils
parent8f47d85143c108040aa921b32aa9974b8edb0ba1 (diff)
downloadpoky-e9b762802b039e8c19e70b054ecc64e7ab07e4d8.tar.gz
configuration for csl2006q1-6 compiler and binutils
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@697 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'meta/packages/binutils')
-rw-r--r--meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-2.16.91.0.6-objcopy-rename-errorcode.patch31
-rw-r--r--meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-2.17-csl-tc-arm-mmxwc-polymorphism.patch25
-rw-r--r--meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-100-uclibc-conf.patch139
-rw-r--r--meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-300-001_ld_makefile_patch.patch50
-rw-r--r--meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-300-006_better_file_error.patch43
-rw-r--r--meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-300-012_check_ldrunpath_length.patch47
-rw-r--r--meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-400-mips-ELF_MAXPAGESIZE-4K.patch26
-rw-r--r--meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-702-binutils-skip-comments.patch93
-rw-r--r--meta/packages/binutils/binutils-cross_csl-arm-2006q1.bb34
-rw-r--r--meta/packages/binutils/binutils_csl-arm-2006q1.bb138
10 files changed, 626 insertions, 0 deletions
diff --git a/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-2.16.91.0.6-objcopy-rename-errorcode.patch b/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-2.16.91.0.6-objcopy-rename-errorcode.patch
new file mode 100644
index 0000000000..4461bedd4e
--- /dev/null
+++ b/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-2.16.91.0.6-objcopy-rename-errorcode.patch
@@ -0,0 +1,31 @@
1# strip (and objcopy) fail to set the error code if there is no
2# output file name and the rename of the stripped (or copied) file
3# fails, yet the command fails to do anything. This fixes both
4# objcopy and strip.
5#
6# modification by bero: Ported to 2.16.91.0.6
7#
8#Signed-off-by: John Bowler <jbowler@acm.org>
9#Signed-off-by: Bernhard Rosenkraenzer <bero@arklinux.org>
10--- binutils-2.16.91.0.6/binutils/objcopy.c.ark 2006-03-11 15:59:07.000000000 +0100
11+++ binutils-2.16.91.0.6/binutils/objcopy.c 2006-03-11 15:59:45.000000000 +0100
12@@ -2593,7 +2593,8 @@
13 if (preserve_dates)
14 set_times (tmpname, &statbuf);
15 if (output_file == NULL)
16- smart_rename (tmpname, argv[i], preserve_dates);
17+ if(smart_rename (tmpname, argv[i], preserve_dates))
18+ hold_status = 1;
19 status = hold_status;
20 }
21 else
22@@ -3184,7 +3185,8 @@
23 {
24 if (preserve_dates)
25 set_times (tmpname, &statbuf);
26- smart_rename (tmpname, input_filename, preserve_dates);
27+ if (smart_rename (tmpname, input_filename, preserve_dates))
28+ status = 1;
29 }
30 else
31 unlink (tmpname);
diff --git a/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-2.17-csl-tc-arm-mmxwc-polymorphism.patch b/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-2.17-csl-tc-arm-mmxwc-polymorphism.patch
new file mode 100644
index 0000000000..9d16011a06
--- /dev/null
+++ b/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-2.17-csl-tc-arm-mmxwc-polymorphism.patch
@@ -0,0 +1,25 @@
1--- binutils-2.17/gas/config/tc-arm.c.orig 2006-09-05 14:59:25.000000000 +0100
2+++ binutils-2.17/gas/config/tc-arm.c 2006-09-05 14:59:25.000000000 +0100
3@@ -1252,13 +1252,15 @@
4 }
5
6 /* Undo polymorphism when a set of register types may be accepted. */
7- if ((type == REG_TYPE_NDQ
8- && (reg->type == REG_TYPE_NQ || reg->type == REG_TYPE_VFD))
9- || (type == REG_TYPE_VFSD
10- && (reg->type == REG_TYPE_VFS || reg->type == REG_TYPE_VFD))
11- || (type == REG_TYPE_NSDQ
12- && (reg->type == REG_TYPE_VFS || reg->type == REG_TYPE_VFD
13- || reg->type == REG_TYPE_NQ)))
14+ if (((type == REG_TYPE_NDQ
15+ && (reg->type == REG_TYPE_NQ || reg->type == REG_TYPE_VFD))
16+ || (type == REG_TYPE_VFSD
17+ && (reg->type == REG_TYPE_VFS || reg->type == REG_TYPE_VFD))
18+ || (type == REG_TYPE_NSDQ
19+ && (reg->type == REG_TYPE_VFS || reg->type == REG_TYPE_VFD
20+ || reg->type == REG_TYPE_NQ)))
21+ ||(type == REG_TYPE_MMXWC
22+ && (reg->type == REG_TYPE_MMXWCG)))
23 type = reg->type;
24
25 if (type != reg->type)
diff --git a/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-100-uclibc-conf.patch b/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-100-uclibc-conf.patch
new file mode 100644
index 0000000000..25222e5df2
--- /dev/null
+++ b/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-100-uclibc-conf.patch
@@ -0,0 +1,139 @@
1--- binutils-2.16.91.0.7/bfd/configure
2+++ binutils-2.16.91.0.7/bfd/configure
3@@ -3576,7 +3576,7 @@
4 ;;
5
6 # This must be Linux ELF.
7-linux-gnu*)
8+linux-gnu*|linux-uclibc*)
9 lt_cv_deplibs_check_method=pass_all
10 ;;
11
12--- binutils-2.16.91.0.7/binutils/configure
13+++ binutils-2.16.91.0.7/binutils/configure
14@@ -3411,7 +3411,7 @@
15 ;;
16
17 # This must be Linux ELF.
18-linux-gnu*)
19+linux-gnu*|linux-uclibc*)
20 lt_cv_deplibs_check_method=pass_all
21 ;;
22
23--- binutils-2.16.91.0.7/configure
24+++ binutils-2.16.91.0.7/configure
25@@ -1270,7 +1270,7 @@
26 am33_2.0-*-linux*)
27 noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
28 ;;
29- sh-*-linux*)
30+ sh*-*-linux*)
31 noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
32 ;;
33 sh*-*-pe|mips*-*-pe|*arm-wince-pe)
34@@ -1578,7 +1578,7 @@
35 romp-*-*)
36 noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}"
37 ;;
38- sh-*-* | sh64-*-*)
39+ sh*-*-* | sh64-*-*)
40 case "${host}" in
41 i[3456789]86-*-vsta) ;; # don't add gprof back in
42 i[3456789]86-*-go32*) ;; # don't add gprof back in
43--- binutils-2.16.91.0.7/configure.in
44+++ binutils-2.16.91.0.7/configure.in
45@@ -468,7 +468,7 @@
46 am33_2.0-*-linux*)
47 noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
48 ;;
49- sh-*-linux*)
50+ sh*-*-linux*)
51 noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
52 ;;
53 sh*-*-pe|mips*-*-pe|*arm-wince-pe)
54@@ -776,7 +776,7 @@
55 romp-*-*)
56 noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}"
57 ;;
58- sh-*-* | sh64-*-*)
59+ sh*-*-* | sh64-*-*)
60 case "${host}" in
61 i[[3456789]]86-*-vsta) ;; # don't add gprof back in
62 i[[3456789]]86-*-go32*) ;; # don't add gprof back in
63--- binutils-2.16.91.0.7/gas/configure
64+++ binutils-2.16.91.0.7/gas/configure
65@@ -3411,7 +3411,7 @@
66 ;;
67
68 # This must be Linux ELF.
69-linux-gnu*)
70+linux-gnu*|linux-uclibc*)
71 lt_cv_deplibs_check_method=pass_all
72 ;;
73
74--- binutils-2.16.91.0.7/gprof/configure
75+++ binutils-2.16.91.0.7/gprof/configure
76@@ -3419,6 +3419,11 @@
77 lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
78 ;;
79
80+linux-uclibc*)
81+ lt_cv_deplibs_check_method=pass_all
82+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
83+ ;;
84+
85 netbsd* | knetbsd*-gnu)
86 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
87 lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
88--- binutils-2.16.91.0.7/ld/configure
89+++ binutils-2.16.91.0.7/ld/configure
90@@ -3413,7 +3413,7 @@
91 ;;
92
93 # This must be Linux ELF.
94-linux-gnu*)
95+linux-gnu*|linux-uclibc*)
96 lt_cv_deplibs_check_method=pass_all
97 ;;
98
99--- binutils-2.16.91.0.7/libtool.m4
100+++ binutils-2.16.91.0.7/libtool.m4
101@@ -739,7 +739,7 @@
102 ;;
103
104 # This must be Linux ELF.
105-linux-gnu*)
106+linux-gnu*|linux-uclibc*)
107 lt_cv_deplibs_check_method=pass_all
108 ;;
109
110--- binutils-2.16.91.0.7/ltconfig
111+++ binutils-2.16.91.0.7/ltconfig
112@@ -602,6 +602,7 @@
113
114 # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
115 case $host_os in
116+linux-uclibc*) ;;
117 linux-gnu*) ;;
118 linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
119 esac
120@@ -1247,7 +1248,7 @@
121 ;;
122
123 # This must be Linux ELF.
124-linux-gnu*)
125+linux-gnu*|linux-uclibc*)
126 version_type=linux
127 need_lib_prefix=no
128 need_version=no
129--- binutils-2.16.91.0.7/opcodes/configure
130+++ binutils-2.16.91.0.7/opcodes/configure
131@@ -3579,7 +3579,7 @@
132 ;;
133
134 # This must be Linux ELF.
135-linux-gnu*)
136+linux-gnu*|linux-uclibc*)
137 lt_cv_deplibs_check_method=pass_all
138 ;;
139
diff --git a/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-300-001_ld_makefile_patch.patch b/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-300-001_ld_makefile_patch.patch
new file mode 100644
index 0000000000..04a7e61e25
--- /dev/null
+++ b/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-300-001_ld_makefile_patch.patch
@@ -0,0 +1,50 @@
1#!/bin/sh -e
2## 001_ld_makefile_patch.dpatch
3##
4## All lines beginning with `## DP:' are a description of the patch.
5## DP: Description: correct where ld scripts are installed
6## DP: Author: Chris Chimelis <chris@debian.org>
7## DP: Upstream status: N/A
8## DP: Date: ??
9
10if [ $# -ne 1 ]; then
11 echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
12 exit 1
13fi
14
15[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
16patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
17
18case "$1" in
19 -patch) patch $patch_opts -p1 < $0;;
20 -unpatch) patch $patch_opts -p1 -R < $0;;
21 *)
22 echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
23 exit 1;;
24esac
25
26exit 0
27
28@DPATCH@
29--- binutils-2.16.91.0.1/ld/Makefile.am
30+++ binutils-2.16.91.0.1/ld/Makefile.am
31@@ -20,7 +20,7 @@
32 # We put the scripts in the directory $(scriptdir)/ldscripts.
33 # We can't put the scripts in $(datadir) because the SEARCH_DIR
34 # directives need to be different for native and cross linkers.
35-scriptdir = $(tooldir)/lib
36+scriptdir = $(libdir)
37
38 EMUL = @EMUL@
39 EMULATION_OFILES = @EMULATION_OFILES@
40--- binutils-2.16.91.0.1/ld/Makefile.in
41+++ binutils-2.16.91.0.1/ld/Makefile.in
42@@ -268,7 +268,7 @@
43 # We put the scripts in the directory $(scriptdir)/ldscripts.
44 # We can't put the scripts in $(datadir) because the SEARCH_DIR
45 # directives need to be different for native and cross linkers.
46-scriptdir = $(tooldir)/lib
47+scriptdir = $(libdir)
48 BASEDIR = $(srcdir)/..
49 BFDDIR = $(BASEDIR)/bfd
50 INCDIR = $(BASEDIR)/include
diff --git a/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-300-006_better_file_error.patch b/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-300-006_better_file_error.patch
new file mode 100644
index 0000000000..f337611edf
--- /dev/null
+++ b/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-300-006_better_file_error.patch
@@ -0,0 +1,43 @@
1#!/bin/sh -e
2## 006_better_file_error.dpatch by David Kimdon <dwhedon@gordian.com>
3##
4## All lines beginning with `## DP:' are a description of the patch.
5## DP: Specify which filename is causing an error if the filename is a
6## DP: directory. (#45832)
7
8if [ $# -ne 1 ]; then
9 echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
10 exit 1
11fi
12
13[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
14patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
15
16case "$1" in
17 -patch) patch $patch_opts -p1 < $0;;
18 -unpatch) patch $patch_opts -p1 -R < $0;;
19 *)
20 echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
21 exit 1;;
22esac
23
24exit 0
25
26@DPATCH@
27diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c binutils-2.14.90.0.6/bfd/opncls.c
28--- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c 2003-07-23 16:08:09.000000000 +0100
29+++ binutils-2.14.90.0.6/bfd/opncls.c 2003-09-10 22:35:00.000000000 +0100
30@@ -150,6 +150,13 @@
31 {
32 bfd *nbfd;
33 const bfd_target *target_vec;
34+ struct stat s;
35+
36+ if (stat (filename, &s) == 0)
37+ if (S_ISDIR(s.st_mode)) {
38+ bfd_set_error (bfd_error_file_not_recognized);
39+ return NULL;
40+ }
41
42 nbfd = _bfd_new_bfd ();
43 if (nbfd == NULL)
diff --git a/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-300-012_check_ldrunpath_length.patch b/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-300-012_check_ldrunpath_length.patch
new file mode 100644
index 0000000000..498651a90c
--- /dev/null
+++ b/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-300-012_check_ldrunpath_length.patch
@@ -0,0 +1,47 @@
1#!/bin/sh -e
2## 012_check_ldrunpath_length.dpatch by Chris Chimelis <chris@debian.org>
3##
4## All lines beginning with `## DP:' are a description of the patch.
5## DP: Only generate an RPATH entry if LD_RUN_PATH is not empty, for
6## DP: cases where -rpath isn't specified. (#151024)
7
8if [ $# -ne 1 ]; then
9 echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
10 exit 1
11fi
12
13[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
14patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
15
16case "$1" in
17 -patch) patch $patch_opts -p1 < $0;;
18 -unpatch) patch $patch_opts -p1 -R < $0;;
19 *)
20 echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
21 exit 1;;
22esac
23
24exit 0
25
26@DPATCH@
27diff -urNad /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em binutils-2.15/ld/emultempl/elf32.em
28--- /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:58.000000000 +0100
29+++ binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:59.000000000 +0100
30@@ -692,6 +692,8 @@
31 && command_line.rpath == NULL)
32 {
33 lib_path = (const char *) getenv ("LD_RUN_PATH");
34+ if ((lib_path) && (strlen (lib_path) == 0))
35+ lib_path = NULL;
36 if (gld${EMULATION_NAME}_search_needed (lib_path, &n,
37 force))
38 break;
39@@ -871,6 +873,8 @@
40 rpath = command_line.rpath;
41 if (rpath == NULL)
42 rpath = (const char *) getenv ("LD_RUN_PATH");
43+ if ((rpath) && (strlen (rpath) == 0))
44+ rpath = NULL;
45 if (! (bfd_elf_size_dynamic_sections
46 (output_bfd, command_line.soname, rpath,
47 command_line.filter_shlib,
diff --git a/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-400-mips-ELF_MAXPAGESIZE-4K.patch b/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-400-mips-ELF_MAXPAGESIZE-4K.patch
new file mode 100644
index 0000000000..5959c718d2
--- /dev/null
+++ b/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-400-mips-ELF_MAXPAGESIZE-4K.patch
@@ -0,0 +1,26 @@
1--- binutils/bfd/elf32-mips.c~
2+++ binutils/bfd/elf32-mips.c
3@@ -1613,7 +1613,9 @@
4
5 /* The SVR4 MIPS ABI says that this should be 0x10000, and Linux uses
6 page sizes of up to that limit, so we need to respect it. */
7-#define ELF_MAXPAGESIZE 0x10000
8+/*#define ELF_MAXPAGESIZE 0x10000*/
9+/* Use 4K to shrink the elf header. NOT for general use! */
10+#define ELF_MAXPAGESIZE 0x1000
11 #define elf32_bed elf32_tradbed
12
13 /* Include the target file again for this target. */
14--- binutils/bfd/elfn32-mips.c~
15+++ binutils/bfd/elfn32-mips.c
16@@ -2399,7 +2399,9 @@
17
18 /* The SVR4 MIPS ABI says that this should be 0x10000, and Linux uses
19 page sizes of up to that limit, so we need to respect it. */
20-#define ELF_MAXPAGESIZE 0x10000
21+/*#define ELF_MAXPAGESIZE 0x10000*/
22+/* Use 4K to shrink the elf header. NOT for general use! */
23+#define ELF_MAXPAGESIZE 0x1000
24 #define elf32_bed elf32_tradbed
25
26 /* Include the target file again for this target. */
diff --git a/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-702-binutils-skip-comments.patch b/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-702-binutils-skip-comments.patch
new file mode 100644
index 0000000000..9ef7a7c9ec
--- /dev/null
+++ b/meta/packages/binutils/binutils-2.17+csl-arm-2006q1-6/binutils-uclibc-702-binutils-skip-comments.patch
@@ -0,0 +1,93 @@
1Retrieved from http://sources.redhat.com/ml/binutils/2004-04/msg00646.html
2Fixes
3localealias.s:544: Error: junk at end of line, first unrecognized character is `,'
4when building glibc-2.3.2 with gcc-3.4.0 and binutils-2.15.90.0.3
5
6Paths adjusted to match crosstool's patcher.
7
8Message-Id: m3n052qw2g.fsf@whitebox.m5r.de
9From: Andreas Schwab <schwab at suse dot de>
10To: Nathan Sidwell <nathan at codesourcery dot com>
11Cc: Ian Lance Taylor <ian at wasabisystems dot com>, binutils at sources dot redhat dot com
12Date: Fri, 23 Apr 2004 22:27:19 +0200
13Subject: Re: demand_empty_rest_of_line and ignore_rest_of_line
14
15Nathan Sidwell <nathan@codesourcery.com> writes:
16
17> Index: read.c
18> ===================================================================
19> RCS file: /cvs/src/src/gas/read.c,v
20> retrieving revision 1.76
21> diff -c -3 -p -r1.76 read.c
22> *** read.c 12 Mar 2004 17:48:12 -0000 1.76
23> --- read.c 18 Mar 2004 09:56:05 -0000
24> *************** read_a_source_file (char *name)
25> *** 1053,1059 ****
26> #endif
27> input_line_pointer--;
28> /* Report unknown char as ignored. */
29> ! ignore_rest_of_line ();
30> }
31>
32> #ifdef md_after_pass_hook
33> --- 1053,1059 ----
34> #endif
35> input_line_pointer--;
36> /* Report unknown char as ignored. */
37> ! demand_empty_rest_of_line ();
38> }
39>
40> #ifdef md_after_pass_hook
41
42This means that the unknown character is no longer ignored, despite the
43comment. As a side effect a line starting with a line comment character
44not followed by APP in NO_APP mode now triggers an error instead of just a
45warning, breaking builds of glibc on m68k-linux. Earlier in
46read_a_source_file where #APP is handled there is another comment that
47claims that unknown comments are ignored, when in fact they aren't (only
48the initial line comment character is skipped).
49
50Note that the presence of #APP will mess up the line counters, but
51that appears to be difficult to fix.
52
53Andreas.
54
552004-04-23 Andreas Schwab <schwab@suse.de>
56
57 * read.c (read_a_source_file): Ignore unknown text after line
58 comment character. Fix misleading comment.
59
60--- binutils/gas/read.c.~1.78.~ 2004-04-23 08:58:23.000000000 +0200
61+++ binutils/gas/read.c 2004-04-23 21:49:01.000000000 +0200
62@@ -950,10 +950,14 @@ read_a_source_file (char *name)
63 unsigned int new_length;
64 char *tmp_buf = 0;
65
66- bump_line_counters ();
67 s = input_line_pointer;
68 if (strncmp (s, "APP\n", 4))
69- continue; /* We ignore it */
70+ {
71+ /* We ignore it */
72+ ignore_rest_of_line ();
73+ continue;
74+ }
75+ bump_line_counters ();
76 s += 4;
77
78 sb_new (&sbuf);
79@@ -1052,7 +1056,7 @@ read_a_source_file (char *name)
80 continue;
81 #endif
82 input_line_pointer--;
83- /* Report unknown char as ignored. */
84+ /* Report unknown char as error. */
85 demand_empty_rest_of_line ();
86 }
87
88
89--
90Andreas Schwab, SuSE Labs, schwab@suse.de
91SuSE Linux AG, Maxfeldstra&#xC3;e 5, 90409 N&#xC3;rnberg, Germany
92Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
93"And now for something completely different."
diff --git a/meta/packages/binutils/binutils-cross_csl-arm-2006q1.bb b/meta/packages/binutils/binutils-cross_csl-arm-2006q1.bb
new file mode 100644
index 0000000000..07f2b33fa7
--- /dev/null
+++ b/meta/packages/binutils/binutils-cross_csl-arm-2006q1.bb
@@ -0,0 +1,34 @@
1SECTION = "devel"
2require binutils_csl-arm-2006q1.bb
3inherit cross
4DEPENDS += "flex-native bison-native"
5PROVIDES = "virtual/${TARGET_PREFIX}binutils"
6FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/binutils-${PV}"
7PACKAGES = ""
8EXTRA_OECONF = "--with-sysroot=${CROSS_DIR}/${TARGET_SYS} \
9 --program-prefix=${TARGET_PREFIX}"
10
11S = "${WORKDIR}/binutils-2.17"
12
13do_stage () {
14 oe_runmake install
15
16 # We don't really need these, so we'll remove them...
17 rm -rf ${CROSS_DIR}/lib/ldscripts
18 rm -rf ${CROSS_DIR}/share/info
19 rm -rf ${CROSS_DIR}/share/locale
20 rm -rf ${CROSS_DIR}/share/man
21 rmdir ${CROSS_DIR}/share || :
22 rmdir ${CROSS_DIR}/${libdir}/gcc-lib || :
23 rmdir ${CROSS_DIR}/${libdir} || :
24 rmdir ${CROSS_DIR}/${prefix} || :
25
26 # We want to move this into the target specific location
27 mkdir -p ${CROSS_DIR}/${TARGET_SYS}/lib
28 mv -f ${CROSS_DIR}/lib/libiberty.a ${CROSS_DIR}/${TARGET_SYS}/lib
29 rmdir ${CROSS_DIR}/lib || :
30}
31
32do_install () {
33 :
34}
diff --git a/meta/packages/binutils/binutils_csl-arm-2006q1.bb b/meta/packages/binutils/binutils_csl-arm-2006q1.bb
new file mode 100644
index 0000000000..76c8fe53dc
--- /dev/null
+++ b/meta/packages/binutils/binutils_csl-arm-2006q1.bb
@@ -0,0 +1,138 @@
1DESCRIPTION = "A GNU collection of binary utilities"
2HOMEPAGE = "http://www.gnu.org/software/binutils/"
3SECTION = "devel"
4LICENSE = "GPL"
5DEFAULT_PREFERENCE = "-1"
6
7BINV = "2.17"
8PV = "2.17+csl-arm-2006q1-6"
9
10#FILESDIR = "${FILE_DIRNAME}/binutils-"
11
12S = "${WORKDIR}/binutils-2.17"
13
14inherit autotools gettext
15
16PACKAGES = "${PN} ${PN}-dev ${PN}-doc ${PN}-symlinks"
17
18FILES_${PN} = " \
19 ${bindir}/${TARGET_PREFIX}* \
20 ${libdir}/lib*-*.so \
21 ${prefix}/${TARGET_SYS}/bin/*"
22
23FILES_${PN}-dev = " \
24 ${includedir} \
25 ${libdir}/*.a \
26 ${libdir}/*.la \
27 ${libdir}/libbfd.so \
28 ${libdir}/libopcodes.so"
29
30FILES_${PN}-symlinks = " \
31 ${bindir}/addr2line \
32 ${bindir}/ar \
33 ${bindir}/as \
34 ${bindir}/c++filt \
35 ${bindir}/gprof \
36 ${bindir}/ld \
37 ${bindir}/nm \
38 ${bindir}/objcopy \
39 ${bindir}/objdump \
40 ${bindir}/ranlib \
41 ${bindir}/readelf \
42 ${bindir}/size \
43 ${bindir}/strings \
44 ${bindir}/strip"
45
46SRC_URI = \
47 "http://www.codesourcery.com/public/gnu_toolchain/arm-none-eabi/arm-2006q1-6-arm-none-eabi.src.tar.bz2 \
48 file://binutils-2.17-csl-tc-arm-mmxwc-polymorphism.patch;patch=1;pnum=1\
49 file://binutils-2.16.91.0.6-objcopy-rename-errorcode.patch;patch=1;pnum=1\
50 file://binutils-uclibc-100-uclibc-conf.patch;patch=1;pnum=1 \
51 file://binutils-uclibc-300-001_ld_makefile_patch.patch;patch=1;pnum=1 \
52 file://binutils-uclibc-300-006_better_file_error.patch;patch=1;pnum=1 \
53 file://binutils-uclibc-300-012_check_ldrunpath_length.patch;patch=1;pnum=1 \
54 file://binutils-uclibc-400-mips-ELF_MAXPAGESIZE-4K.patch;patch=1;pnum=1 \
55 file://binutils-uclibc-702-binutils-skip-comments.patch;patch=1;pnum=1"
56
57do_unpack2() {
58 cd ${WORKDIR}
59 pwd
60 tar -xvjf ./arm-2006q1-6-arm-none-eabi/binutils-2006q1-6.tar.bz2
61}
62
63addtask unpack2 after do_unpack before do_patch
64
65B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
66
67EXTRA_OECONF = "--program-prefix=${TARGET_PREFIX} \
68 --enable-shared"
69
70# This is necessary due to a bug in the binutils Makefiles
71EXTRA_OEMAKE = "configure-build-libiberty all"
72
73export AR = "${HOST_PREFIX}ar"
74export AS = "${HOST_PREFIX}as"
75export LD = "${HOST_PREFIX}ld"
76export NM = "${HOST_PREFIX}nm"
77export RANLIB = "${HOST_PREFIX}ranlib"
78export OBJCOPY = "${HOST_PREFIX}objcopy"
79export OBJDUMP = "${HOST_PREFIX}objdump"
80
81export AR_FOR_TARGET = "${TARGET_PREFIX}ar"
82export AS_FOR_TARGET = "${TARGET_PREFIX}as"
83export LD_FOR_TARGET = "${TARGET_PREFIX}ld"
84export NM_FOR_TARGET = "${TARGET_PREFIX}nm"
85export RANLIB_FOR_TARGET = "${TARGET_PREFIX}ranlib"
86
87export CC_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
88export CXX_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
89
90export CC_FOR_BUILD = "${BUILD_CC}"
91export CPP_FOR_BUILD = "${BUILD_CPP}"
92export CFLAGS_FOR_BUILD = "${BUILD_CFLAGS}"
93
94export CC = "${CCACHE} ${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
95
96do_configure () {
97 (cd ${S}; gnu-configize) || die "Failed to run gnu-configize"
98 oe_runconf
99}
100
101do_stage () {
102 oe_libinstall -so -a -C opcodes libopcodes ${STAGING_LIBDIR}/
103 oe_libinstall -a -C libiberty libiberty ${STAGING_LIBDIR}/
104 oe_libinstall -so -a -C bfd libbfd ${STAGING_LIBDIR}/
105 install -m 0644 ${S}/include/dis-asm.h ${STAGING_INCDIR}/
106 install -m 0644 ${S}/include/symcat.h ${STAGING_INCDIR}/
107 install -m 0644 ${S}/include/libiberty.h ${STAGING_INCDIR}/
108 install -m 0644 ${S}/include/ansidecl.h ${STAGING_INCDIR}/
109 install -m 0644 ${S}/include/bfdlink.h ${STAGING_INCDIR}/
110 install -m 0644 bfd/bfd.h ${STAGING_INCDIR}/
111}
112
113do_install () {
114 autotools_do_install
115
116 # We don't really need these, so we'll remove them...
117 rm -rf ${D}${libdir}/ldscripts
118
119 # Fix the /usr/${TARGET_SYS}/bin/* links
120 for l in ${D}${prefix}/${TARGET_SYS}/bin/*; do
121 rm -f $l
122 ln -sf `echo ${prefix}/${TARGET_SYS}/bin \
123 | tr -s / \
124 | sed -e 's,^/,,' -e 's,[^/]*,..,g'`${bindir}/${TARGET_PREFIX}`basename $l` $l
125 done
126
127 # Install the libiberty header
128 install -d ${D}${includedir}
129 install -m 644 ${S}/include/ansidecl.h ${D}${includedir}
130 install -m 644 ${S}/include/libiberty.h ${D}${includedir}
131
132 cd ${D}${bindir}
133
134 # Symlinks for ease of running these on the native target
135 for p in ${TARGET_SYS}-* ; do
136 ln -sf $p `echo $p | sed -e s,${TARGET_SYS}-,,`
137 done
138}