github.com/dfklegend/cell2/utils@v0.0.0-20240402033734-a0a9f3d9335d/build/build.go (about)

     1  package build
     2  
     3  import (
     4  	"log"
     5  )
     6  
     7  /*
     8  	build 包
     9  	编译时,使用-ldflags来注入数据
    10  
    11  	目前发现,如果想注入,必须在代码目录下执行
    12  	比如
    13  	xxx
    14  		main
    15  		other
    16  	main包被放到main下执行,如果编译
    17  	go build .\main -ldflags="-X 'main.Version=1.0.0'"  出错
    18  	去到main目录下 执行
    19  	go build -ldflags="-X 'main.Version=1.0.0'" 则正确
    20  */
    21  
    22  var (
    23  	Version   = "not set"
    24  	Time      = "not set"
    25  	GoVersion = "not set"
    26  )
    27  
    28  func DumpInfo(version string, time string, goVersion string) {
    29  	log.Println("---- build info ----")
    30  	log.Printf("Version = %v\r\n", version)
    31  	log.Printf("Time = %v\r\n", time)
    32  	log.Printf("GoVersion = %v\r\n", goVersion)
    33  	log.Println("---- build info end ----")
    34  }
    35  
    36  func DumpBuildInfo() {
    37  	DumpInfo(Version, Time, GoVersion)
    38  }