with patch:
http://gcc.gnu.org/ml/gcc-patches/2009-01/msg01069.html
(which is approved, but not yet in the trunk).
dwarf2 is needed to link m64 on darwin8 ppc (ld64 barfs on stabs).
Also with the attached patch to enable compare-debug to work with dwarf on
darwin.
bootstrap fails with:
rm -f stage_current
Comparing stages 2 and 3
warning: gcc/cc1-checksum.o differs
warning: gcc/cc1obj-checksum.o differs
warning: gcc/cc1objplus-checksum.o differs
warning: gcc/cc1plus-checksum.o differs
Bootstrap comparison failure!
gcc/alias.o differs
gcc/alloc-pool.o differs
gcc/attribs.o differs
gcc/auto-inc-dec.o differs
gcc/bb-reorder.o differs
gcc/bitmap.o differs
gcc/bt-load.o differs
gcc/build/errors.o differs
gcc/build/gcov-iov.o differs
gcc/build/genattr.o differs
gcc/build/genattrtab.o differs
gcc/build/genautomata.o differs
gcc/build/gencheck.o differs
gcc/build/genchecksum.o differs
gcc/build/gencodes.o differs
gcc/build/genconditions.o differs
gcc/build/gencondmd.o differs
gcc/build/genconfig.o differs
gcc/build/genconstants.o differs
gcc/build/genemit.o differs
gcc/build/genextract.o differs
gcc/build/genflags.o differs
etc.
===
Looking at the stripped version of alias.o
using otool -l xxx.o.stripped > xxx.ls
$ diff -u s2alias-ls.txt s3alias-ls.txt
--- s2alias-ls.txt 2009-09-07 13:50:54.000000000 +0100
+++ s3alias-ls.txt 2009-09-07 13:51:06.000000000 +0100
@@ -1,11 +1,11 @@
-stage2-gcc/alias.o.stripped:
+stage3-gcc/alias.o.stripped:
Load command 0
cmd LC_SEGMENT
cmdsize 668
segname
vmaddr 0x00000000
vmsize 0x0000713e
- fileoff 976
+ fileoff 1000
filesize 28496
maxprot 0x00000007
initprot 0x00000007
@@ -16,9 +16,9 @@
segname __TEXT
addr 0x00000000
size 0x0000662c
- offset 976
+ offset 1000
align 2^2 (4)
- reloff 29472
+ reloff 29496
nreloc 2489
flags 0x80000400
reserved1 0
@@ -28,7 +28,7 @@
segname __TEXT
addr 0x0000662c
size 0x000000ec
- offset 27132
+ offset 27156
align 2^2 (4)
reloff 0
nreloc 0
@@ -40,7 +40,7 @@
segname __TEXT
addr 0x00006718
size 0x00000214
- offset 27368
+ offset 27392
align 2^2 (4)
reloff 0
nreloc 0
@@ -52,9 +52,9 @@
segname __TEXT
addr 0x00006930
size 0x000003d0
- offset 27904
+ offset 27928
align 2^4 (16)
- reloff 49384
+ reloff 49408
nreloc 244
flags 0x80000408
reserved1 0 (index into indirect symbol table)
@@ -64,9 +64,9 @@
segname __DATA
addr 0x00006d00
size 0x000000dc
- offset 28880
+ offset 28904
align 2^2 (4)
- reloff 51336
+ reloff 51360
nreloc 16
flags 0x00000000
reserved1 0
@@ -76,7 +76,7 @@
segname __DATA
addr 0x00006ddc
size 0x00000008
- offset 29100
+ offset 29124
align 2^2 (4)
reloff 0
nreloc 0
@@ -88,9 +88,9 @@
segname __DATA
addr 0x00006de4
size 0x000000f4
- offset 29108
+ offset 29132
align 2^2 (4)
- reloff 51464
+ reloff 51488
nreloc 61
flags 0x00000007
reserved1 61 (index into indirect symbol table)
@@ -100,7 +100,7 @@
segname __DATA
addr 0x00006ed8
size 0x00000078
- offset 29352
+ offset 29376
align 2^2 (4)
reloff 0
nreloc 0
@@ -122,9 +122,9 @@
Load command 1
cmd LC_SYMTAB
cmdsize 24
- symoff 52560
+ symoff 52584
nsyms 131
- stroff 54132
+ stroff 54156
strsize 2540
Load command 2
cmd LC_DYSYMTAB
@@ -141,13 +141,18 @@
nmodtab 0
extrefsymoff 0
nextrefsyms 0
- indirectsymoff 51952
+ indirectsymoff 51976
nindirectsyms 152
extreloff 0
nextrel 0
locreloff 0
nlocrel 0
Load command 3
+ cmd LC_UUID
+ cmdsize 24
+ uuid 0x3f 0x20 0x5f 0xca 0xab 0x64 0x42 0xc5
+ 0xb1 0x8d 0x37 0x82 0x04 0x02 0x11 0xbb
+Load command 4
cmd LC_UNIXTHREAD
cmdsize 176
flavor PPC_THREAD_STATE
=====
the difference appears to be the cmd LC_UUID in the stage3 object.
In all probability this is harmless?
but I've yet to find a way to strip that load command.
--
Summary: bootstrap fails with --with-dwarf2 trunk at 151455
Product: gcc
Version: 4.5.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: developer at sandoe-acoustics dot co dot uk
GCC build triplet: powerpc-apple-darwin8
GCC host triplet: powerpc-apple-darwin8
GCC target triplet: powerpc-apple-darwin8
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41296