diff options
-rw-r--r-- | open_issues/binutils.mdwn | 89 | ||||
-rw-r--r-- | open_issues/binutils_testsuite.mdwn | 21 |
2 files changed, 101 insertions, 9 deletions
diff --git a/open_issues/binutils.mdwn b/open_issues/binutils.mdwn new file mode 100644 index 00000000..c4eb7c85 --- /dev/null +++ b/open_issues/binutils.mdwn @@ -0,0 +1,89 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +[[!tag open_issue_binutils]] + +Here's what's to be done for maintaining GNU Binutils. + + +# Configuration + +Last checked against cdf7c161ebd4a934c9e705d33f5247fd52975612, 2010-10-24. + +a.out support and 64 bit support are not interesting. + + * `bfd/` + + * `config.bfd` + + * `i[3-7]86-*-gnu*` + + Comparing to `i[3-7]86-*-linux-*`: + + * `i386linux_vec` -- a.out. + + * `i386pei_vec` + + *BFD back-end for Intel 386 PE IMAGE COFF files*. Not interesting. + + * 64 bit. + + * `configure.host` + + Souldn't need anything. x86 Linux neither. + + * `configure.in` + + Linux: + + * `COREFILE=trad-core.lo` with `TRAD_HEADER='"hosts/i386linux.h"'` + + We don't have any such core file support configured. Should we? + Where is this core file reading exactly used? GDB? + + * `i386linux_vec` -- a.out. + + * `i386pei_vec` + + *BFD back-end for Intel 386 PE IMAGE COFF files*. Not interesting. + + * `binutils/` + + * `configure.tgt` + + * `gas/` + + * `config/te-gnu.h` + + C.f. `te-linux.h`; search tree for `TE_LINUX` vs. `TE_GNU` usage. + + * `tc-i386.h` + + Sole `TE_LINUX` usage is for a.out. + + * `configure.tgt` + + * `ld/` + + * `configure.host` + + * `*-*-gnu*` + + Resolve `crt0.o` vs. `crt1.o` issue. + + * `configure.tgt` + + * `i[3-7]86-*-gnu*` + + Compare to `i[3-7]86-*-linux-*`, but don't need a.out (`i386linux`) + and 64 bit support. + + +# [[Testsuite|binutils_testsuite]] diff --git a/open_issues/binutils_testsuite.mdwn b/open_issues/binutils_testsuite.mdwn index 03846785..acbc48e9 100644 --- a/open_issues/binutils_testsuite.mdwn +++ b/open_issues/binutils_testsuite.mdwn @@ -15,7 +15,7 @@ cdf7c161ebd4a934c9e705d33f5247fd52975612 sources, 2010-10-24, run on kepler.SCHWINGE and grubber. $ export LC_ALL=C - $ ../master/configure 2>&1 | tee log_build + $ ../hurd/configure 2>&1 | tee log_build [...] $ make SHELL=/bin/bash 2>&1 | tee log_build_ [...] @@ -23,22 +23,25 @@ kepler.SCHWINGE and grubber. (kepler.SCHWINGE defaults to using /bin/sh for libtool, grubber to /bin/bash; thus harmonized.) -Differences between GNU/Linux and GNU/Hurd, both on x86: [[log_build-diff]]. - -Mask out most differences that are due to GNU/Linux defining `-DTRAD_CORE`, -`-DHAVE_i386linux_vec` (`-DSELECT_VECS='[...],&i386linux_vec[...]`), -`-DHAVE_i386pei_vec` (`-DSELECT_VECS='[...],&i386pei_vec[...]`). +x86 GNU/Linux and GNU/Hurd's configurations are [[slightly +different|binutils]], thus mask out most of the differences that are due to +GNU/Linux defining `-DTRAD_CORE`, `-DHAVE_i386linux_vec` +(`-DSELECT_VECS='[...],&i386linux_vec[...]`), `-DHAVE_i386pei_vec` +(`-DSELECT_VECS='[...],&i386pei_vec[...]`). $ diff -wu <(ssh kepler.SCHWINGE 'cd tmp/source/binutils/hurd.build/ && cat log_build* | sed -e "s%${PWD}%[...]%g" -e s%-DTRAD_CORE%% -e s%-DHAVE_i386linux_vec%% -e s%-DHAVE_i386pei_vec%% -e s%-DSELECT_VECS=\\\('\\\''\\\?\\\)\&bfd_elf32_i386_vec,\&i386linux_vec,\&i386pei_vec,\&bfd_elf32_little_generic_vec,\&bfd_elf32_big_generic_vec'\\\''\\\?%-DSELECT_VECS=\\\1\\\&bfd_elf32_i386_vec,\\\&bfd_elf32_little_generic_vec,\\\&bfd_elf32_big_generic_vec\\\1%') <(ssh grubber 'cd tmp/binutils/hurd.build/ && cat log_build* | sed "s%${PWD}%[...]%g"') > open_issues/binutils_testsuite/log_build-diff +[[log_build-diff]]. + $ make -k check [...] -Comparing the results files, [[sum_linux]] to [[sum_hurd]]: - $ ssh kepler.SCHWINGE 'cd tmp/source/binutils/ && cat hurd.build/*/*.sum hurd.build/*/*/*.sum | sed "s%${PWD}%[...]%g"' > open_issues/binutils_testsuite/sum_linux $ ssh grubber 'cd tmp/binutils/ && cat hurd.build/*/*.sum hurd.build/*/*/*.sum | sed "s%${PWD}%[...]%g"' > open_issues/binutils_testsuite/sum_hurd - $ diff -u open_issues/binutils_testsuite/sum_linux open_issues/binutils_testsuite/sum_hurd + +Comparing the results files, [[sum_linux]] to [[sum_hurd]]: + + $ diff -u -F ^Running open_issues/binutils_testsuite/sum_linux open_issues/binutils_testsuite/sum_hurd --- open_issues/binutils_testsuite/sum_linux 2010-10-24 20:33:04.000000000 +0200 +++ open_issues/binutils_testsuite/sum_hurd 2010-10-24 20:41:53.000000000 +0200 @@ -1,5 +1,5 @@ |