1
0
mirror of https://github.com/golang/go synced 2024-11-26 01:07:57 -07:00
go/misc
Bryan C. Mills 3922c006ad misc/cgo/testcshared: avoid writing to GOROOT in tests
The tests in this package invoked 'go install -i -buildmode=c-shared'
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_testcshared_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: I622426a860828020d98f7040636f374e5c766d28
Reviewed-on: https://go-review.googlesource.com/c/go/+/208119
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:34:14 +00:00
..
android misc/android: fix a typo in README 2019-05-17 06:01:17 +00:00
arm all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
cgo misc/cgo/testcshared: avoid writing to GOROOT in tests 2019-11-22 15:34:14 +00:00
chrome/gophertool misc/chrome/gophertool: replace deprecated tabs.getSelected method 2019-11-18 18:14:37 +00:00
ios misc/ios: bump -mios-version-min 2019-11-05 14:44:56 +00:00
linkcheck misc/linkcheck: better redirect handling, use meaningful exit code 2013-10-25 17:31:02 +03:00
reboot misc: ensure that test overlay directories are writable 2019-11-11 17:59:46 +00:00
swig cmd/go: fix swig support and run swig tests during run.bash 2017-11-16 17:19:19 +00:00
trace all: fix a bunch of misspellings 2019-11-15 21:04:43 +00:00
wasm syscall/js: garbage collect references to JavaScript values 2019-11-04 22:50:43 +00:00
editors all: don't refer to code.google.com/p/go{,-wiki}/ 2015-02-06 14:41:47 +00:00
go.mod misc: add go.mod file 2019-02-27 17:47:31 +00:00