• Shenghou Ma's avatar
    cmd/go: new cgo build procedure · 551d8b9f
    Shenghou Ma authored
       This CL adds a step to the build procedure for cgo programs. It uses 'ld -r'
    to combine all gcc compiled object file and generate a relocatable object file
    for our ld. Additionally, this linking step will combine some static linking
    gcc library into the relocatable object file, so that we can use libgcc,
    libmingwex and libmingw32 without problem.
    
       Fixes #3261.
       Fixes #1741.
       Added a testcase for linking in libgcc.
    
    TODO:
    1. still need to fix the INDIRECT_SYMBOL_LOCAL problem on Darwin/386.
    2. still need to enable the libgcc test on Linux/ARM, because 5l can't deal
    with thumb libgcc.
    
    Tested on Darwin/amd64, Darwin/386, FreeBSD/amd64, FreeBSD/386, Linux/amd64,
    Linux/386, Linux/ARM, Windows/amd64, Windows/386
    
    R=iant, rsc, bradfitz, coldredlemur
    CC=golang-dev
    https://golang.org/cl/5822049
    551d8b9f
Name
Last commit
Last update
..
5a Loading commit data...
5c Loading commit data...
5g Loading commit data...
5l Loading commit data...
6a Loading commit data...
6c Loading commit data...
6g Loading commit data...
6l Loading commit data...
8a Loading commit data...
8c Loading commit data...
8g Loading commit data...
8l Loading commit data...
addr2line Loading commit data...
api Loading commit data...
cc Loading commit data...
cgo Loading commit data...
cov Loading commit data...
dist Loading commit data...
fix Loading commit data...
gc Loading commit data...
go Loading commit data...
godoc Loading commit data...
gofmt Loading commit data...
ld Loading commit data...
nm Loading commit data...
objdump Loading commit data...
pack Loading commit data...
prof Loading commit data...
vet Loading commit data...
yacc Loading commit data...