cmd/cgo: print the builtin prolog after the per-file preamble
cmd/cgo: print the builtin prolog after the per-file preamble

The preamble may want to #define some special symbols
and then #include <sys/types.h> itself. The builtin prolog
also #includes <sys/types.h>, which would break such a
preamble (because the second #include will be a no-op).

The use of sys/types.h in the builtin prolog is new since Go 1.1,
so this should preserve the semantics of more existing cgo
code than we would otherwise.

It also fixes src/pkg/syscall/mkall.sh's use of go tool cgo -godefs
on some Linux systems.

Thanks to fullung@ for identifying the problem.

Fixes issue 6558.

R=golang-dev, iant
CC=golang-dev
https://codereview.appspot.com/14684044

wesolows/golang,firebitsbr/golang-old,wesolows/golang,firebitsbr/golang-old,wesolows/golang-old,wesolows/golang,wesolows/golang,wesolows/golang-old,firebitsbr/golang-old,firebitsbr/golang-old,wesolows/golang,wesolows/golang-old,wesolows/golang,firebitsbr/golang-old,firebitsbr/golang-old,wesolows/golang-old,wesolows/golang,wesolows/golang-old,wesolows/golang-old,firebitsbr/golang-old,wesolows/golang-old,firebitsbr/golang-old