1
0
mirror of https://github.com/golang/go synced 2024-11-16 19:14:43 -07:00
go/misc/cgo
Bryan C. Mills c02f3b86b4 misc/cgo/testcarchive: avoid writing to GOROOT in tests
Also add a -testwork flag to facilitate debugging the test itself.

Three of the tests of this package invoked 'go install -i
-buildmode=c-archive' in order to generate an archive as well as
multiple C header files.

Unfortunately, the behavior of the '-i' flag is inappropriately broad
for this use-case: it not only generates the library and header files
(as desired), but also attempts to install a number of (unnecessary)
archive files for transitive dependencies to
GOROOT/pkg/$GOOS_$GOARCH_shared, which may not be writable — for
example, if GOROOT is owned by the root user but the test is being run
by a non-root user.

Instead, for now we generate the header files for transitive dependencies
separately by running 'go tool cgo -exportheader'.

In the future, we should consider how to improve the ergonomics for
generating transitive header files without coupling that to
unnecessary library installation.

Updates #28387
Updates #30316
Updates #35715

Change-Id: I3d483f84e22058561efe740aa4885fc3f26137b5
Reviewed-on: https://go-review.googlesource.com/c/go/+/208117
Run-TryBot: Bryan C. Mills <bcmills@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
2019-11-22 15:32:23 +00:00
..
errors cmd/cgo: do not rewrite call if there are more args than parameters 2019-07-12 17:31:29 +00:00
fortran misc/cgo/fortran: avoid writing to $PWD 2019-11-20 22:37:23 +00:00
gmp
life misc: ensure that test overlay directories are writable 2019-11-11 17:59:46 +00:00
nocgo
stdio misc: ensure that test overlay directories are writable 2019-11-11 17:59:46 +00:00
test misc: ensure that test overlay directories are writable 2019-11-11 17:59:46 +00:00
testasan
testcarchive misc/cgo/testcarchive: avoid writing to GOROOT in tests 2019-11-22 15:32:23 +00:00
testcshared cmd/link/internal/ld,misc/cgo/testcshared: don't -fuse-ld=gold on Android 2019-11-14 17:43:48 +00:00
testgodefs misc/cgo/testgodefs: convert test from bash to Go 2019-11-13 20:53:39 +00:00
testplugin misc/cgo/testplugin: avoid writing to GOROOT 2019-11-20 22:38:34 +00:00
testsanitizers runtime: save/restore callee saved registers in arm64's sigtramp 2019-06-03 19:02:11 +00:00
testshared misc: ensure that test overlay directories are writable 2019-11-11 17:59:46 +00:00
testsigfwd
testso misc: ensure that test overlay directories are writable 2019-11-11 17:59:46 +00:00
testsovar misc: ensure that test overlay directories are writable 2019-11-11 17:59:46 +00:00
testtls