github.com/zxy12/go_duplicate_112_new@v0.0.0-20200807091221-747231827200/src/cmd/go/testdata/script/gcflags_patterns.txt (about)

     1  [!gc] skip 'using -gcflags and -ldflags'
     2  
     3  # -gcflags=-e applies to named packages, not dependencies
     4  go build -n -v -gcflags=-e z1 z2
     5  stderr 'compile.* -e.* -p z1'
     6  stderr 'compile.* -e.* -p z2'
     7  stderr 'compile.* -p y'
     8  ! stderr 'compile.* -e.* -p [^z]'
     9  
    10  # -gcflags can specify package=flags, and can be repeated; last match wins
    11  go build -n -v -gcflags=-e -gcflags=z1=-N z1 z2
    12  stderr 'compile.* -N.* -p z1'
    13  ! stderr 'compile.* -e.* -p z1'
    14  ! stderr 'compile.* -N.* -p z2'
    15  stderr 'compile.* -e.* -p z2'
    16  stderr 'compile.* -p y'
    17  ! stderr 'compile.* -e.* -p [^z]'
    18  ! stderr 'compile.* -N.* -p [^z]'
    19  
    20  # -gcflags can have arbitrary spaces around the flags
    21  go build -n -v -gcflags='  z1 =  	-e 	' z1
    22  stderr 'compile.* -e.* -p z1'
    23  
    24  # -gcflags='all=-e' should apply to all packages, even with go test
    25  go test -c -n -gcflags='all=-e' z1
    26  stderr 'compile.* -e.* -p z3 '
    27  
    28  # -ldflags for implicit test package applies to test binary
    29  go test -c -n -gcflags=-N -ldflags=-X=x.y=z z1
    30  stderr 'compile.* -N .*z_test.go'
    31  stderr 'link.* -X=x.y=z'
    32  
    33  # -ldflags for explicit test package applies to test binary
    34  go test -c -n -gcflags=z1=-N -ldflags=z1=-X=x.y=z z1
    35  stderr 'compile.* -N .*z_test.go'
    36  stderr 'link.* -X=x.y=z'
    37  
    38  # -ldflags applies to link of command
    39  go build -n -ldflags=-X=math.pi=3 my/cmd/prog
    40  stderr 'link.* -X=math.pi=3'
    41  
    42  # -ldflags applies to link of command even with strange directory name
    43  go build -n -ldflags=-X=math.pi=3 my/cmd/prog/
    44  stderr 'link.* -X=math.pi=3'
    45  
    46  # -ldflags applies to current directory
    47  cd my/cmd/prog
    48  go build -n -ldflags=-X=math.pi=3
    49  stderr 'link.* -X=math.pi=3'
    50  
    51  # -ldflags applies to current directory even if GOPATH is funny
    52  [windows] cd $WORK/GoPath/src/my/cmd/prog
    53  [darwin] cd $WORK/GoPath/src/my/cmd/prog
    54  go build -n -ldflags=-X=math.pi=3
    55  stderr 'link.* -X=math.pi=3'
    56  
    57  -- z1/z.go --
    58  package z1
    59  import _ "y"
    60  import _ "z2"
    61  
    62  -- z1/z_test.go --
    63  package z1_test
    64  import "testing"
    65  import _ "z3"
    66  func Test(t *testing.T) {}
    67  
    68  -- z2/z.go --
    69  package z2
    70  
    71  -- z3/z.go --
    72  package z3
    73  
    74  -- y/y.go --
    75  package y
    76  
    77  -- my/cmd/prog/prog.go --
    78  package main
    79  func main() {}