• Russ Cox's avatar
    cmd/go: implement per-package asmflags, gcflags, ldflags, gccgoflags · 5993251c
    Russ Cox authored
    It has always been problematic that there was no way to specify
    tool flags that applied only to the build of certain packages;
    it was only to specify flags for all packages being built.
    The usual workaround was to install all dependencies of something,
    then build just that one thing with different flags. Since the
    dependencies appeared to be up-to-date, they were not rebuilt
    with the different flags. The new content-based staleness
    (up-to-date) checks see through this trick, because they detect
    changes in flags. This forces us to address the underlying problem
    of providing a way to specify per-package flags.
    
    The solution is to allow -gcflags=pattern=flags, which means
    that flags apply to packages matching pattern, in addition to the
    usual -gcflags=flags, which is now redefined to apply only to
    the packages named on the command line.
    
    See #22527 for discussion and rationale.
    
    Fixes #22527.
    
    Change-Id: I6716bed69edc324767f707b5bbf3aaa90e8e7302
    Reviewed-on: https://go-review.googlesource.com/76551
    Run-TryBot: Russ Cox <rsc@golang.org>
    Reviewed-by: 's avatarDavid Crawshaw <crawshaw@golang.org>
    5993251c
Name
Last commit
Last update
..
archive Loading commit data...
bufio Loading commit data...
builtin Loading commit data...
bytes Loading commit data...
cmd Loading commit data...
compress Loading commit data...
container Loading commit data...
context Loading commit data...
crypto Loading commit data...
database/sql Loading commit data...
debug Loading commit data...
encoding Loading commit data...
errors Loading commit data...
expvar Loading commit data...
flag Loading commit data...
fmt Loading commit data...
go Loading commit data...
hash Loading commit data...
html Loading commit data...
image Loading commit data...
index/suffixarray Loading commit data...
internal Loading commit data...
io Loading commit data...
log Loading commit data...
math Loading commit data...
mime Loading commit data...
net Loading commit data...
os Loading commit data...
path Loading commit data...
plugin Loading commit data...
reflect Loading commit data...
regexp Loading commit data...
runtime Loading commit data...
sort Loading commit data...
strconv Loading commit data...
strings Loading commit data...
sync Loading commit data...
syscall Loading commit data...
testing Loading commit data...
text Loading commit data...
time Loading commit data...
unicode Loading commit data...
unsafe Loading commit data...
vendor/golang_org/x Loading commit data...
Make.dist Loading commit data...
all.bash Loading commit data...
all.bat Loading commit data...
all.rc Loading commit data...
androidtest.bash Loading commit data...
bootstrap.bash Loading commit data...
buildall.bash Loading commit data...
clean.bash Loading commit data...
clean.bat Loading commit data...
clean.rc Loading commit data...
cmp.bash Loading commit data...
iostest.bash Loading commit data...
make.bash Loading commit data...
make.bat Loading commit data...
make.rc Loading commit data...
naclmake.bash Loading commit data...
nacltest.bash Loading commit data...
race.bash Loading commit data...
race.bat Loading commit data...
run.bash Loading commit data...
run.bat Loading commit data...
run.rc Loading commit data...