Description
Just trying out the newly released go 1.5 on Linux (Ubuntu 14.04) and found that:
go build -v -a
reports rebuilding everything including every standard library file I use. Pre-1.5 the standard library wasn't mentioned. Note that when I ran the above "go build..." I did not have permission to write to /usr/local/go/
go build -v -a -x
shows standard library being rebuilt:
$ go build -v -a -x
WORK=/tmp/go-build359871788
runtime
mkdir -p $WORK/runtime/_obj/
mkdir -p $WORK/
cd /usr/local/go/src/runtime
/usr/local/go/pkg/tool/linux_amd64/compile -o $WORK/runtime.a -trimpath $WORK -p runtime -+ -buildid 6d5354bd14cc24df376bca66e501e715c0c9847b -D _/usr/local/go/src/runtime -I $WORK -pack -asmhdr $WORK/runtime/_obj/go_asm.h ./alg.go ./arch1_amd64.go ./arch_amd64.go ./atomic_amd64x.go ./atomic_pointer.go ./cgo.go ./cgocall.go ./cgocallback.go ./chan.go ./compiler.go ./complex.go ./cpuprof.go ./cputicks.go ./debug.go ./defs_linux_amd64.go ./env_posix.go ./error.go ./extern.go ./hash64.go ./hashmap.go ./hashmap_fast.go ./heapdump.go ./iface.go ./lfstack.go ./lfstack_amd64.go ./lock_futex.go ./malloc.go ./mbarrier.go ./mbitmap.go ./mcache.go ./mcentral.go ./mem_linux.go ./mfinal.go ./mfixalloc.go ./mgc.go ./mgcmark.go ./mgcsweep.go ./mgcwork.go ./mheap.go ./mprof.go ./msize.go ./mstats.go ./netpoll.go ./netpoll_epoll.go ./os1_linux.go ./os2_linux.go ./os_linux.go ./panic.go ./panic1.go ./parfor.go ./print1.go ./print1_write.go ./proc.go ./proc1.go ./race0.go ./rdebug.go ./rune.go ./runtime.go ./runtime1.go ./runtime2.go ./select.go ./sema.go ./signal1_unix.go ./signal_amd64x.go ./signal_linux.go ./signal_linux_amd64.go ./signal_unix.go ./sigpanic_unix.go ./sigqueue.go ./slice.go ./softfloat64.go ./sqrt.go ./stack1.go ./stack2.go ./string.go ./string1.go ./stubs.go ./stubs2.go ./symtab.go ./sys_x86.go ./time.go ./trace.go ./traceback.go ./type.go ./typekind.go ./typekind1.go ./unaligned1.go ./vdso_linux_amd64.go ./wbfat.go ./zgoarch_amd64.go ./zgoos_linux.go ./zversion.go
/usr/local/go/pkg/tool/linux_amd64/asm -o $WORK/runtime/_obj/asm.o -trimpath $WORK -I $WORK/runtime/_obj/ -I /usr/local/go/pkg/include -D GOOS_linux -D GOARCH_amd64 ./asm.s
/usr/local/go/pkg/tool/linux_amd64/asm -o $WORK/runtime/_obj/asm_amd64.o -trimpath $WORK -I $WORK/runtime/_obj/ -I /usr/local/go/pkg/include -D GOOS_linux -D GOARCH_amd64 ./asm_amd64.s
/usr/local/go/pkg/tool/linux_amd64/asm -o $WORK/runtime/_obj/duff_amd64.o -trimpath $WORK -I $WORK/runtime/_obj/ -I /usr/local/go/pkg/include -D GOOS_linux -D GOARCH_amd64 ./duff_amd64.s
/usr/local/go/pkg/tool/linux_amd64/asm -o $WORK/runtime/_obj/memclr_amd64.o -trimpath $WORK -I $WORK/runtime/_obj/ -I /usr/local/go/pkg/include -D GOOS_linux -D GOARCH_amd64 ./memclr_amd64.s
/usr/local/go/pkg/tool/linux_amd64/asm -o $WORK/runtime/_obj/memmove_amd64.o -trimpath $WORK -I $WORK/runtime/_obj/ -I /usr/local/go/pkg/include -D GOOS_linux -D GOARCH_amd64 ./memmove_amd64.s
/usr/local/go/pkg/tool/linux_amd64/asm -o $WORK/runtime/_obj/rt0_linux_amd64.o -trimpath $WORK -I $WORK/runtime/_obj/ -I /usr/local/go/pkg/include -D GOOS_linux -D GOARCH_amd64 ./rt0_linux_amd64.s
/usr/local/go/pkg/tool/linux_amd64/asm -o $WORK/runtime/_obj/sys_linux_amd64.o -trimpath $WORK -I $WORK/runtime/_obj/ -I /usr/local/go/pkg/include -D GOOS_linux -D GOARCH_amd64 ./sys_linux_amd64.s
pack r $WORK/runtime.a $WORK/runtime/_obj/asm.o $WORK/runtime/_obj/asm_amd64.o $WORK/runtime/_obj/duff_amd64.o $WORK/runtime/_obj/memclr_amd64.o $WORK/runtime/_obj/memmove_amd64.o $WORK/runtime/_obj/rt0_linux_amd64.o $WORK/runtime/_obj/sys_linux_amd64.o # internal
...
$ go version
go version go1.5 linux/amd64