github.com/metux/go-metabuild@v0.0.0-20240118143255-d9ed5ab697f9/util/compiler/base/binaryfileinfo.go (about)

     1  package base
     2  
     3  type BinaryFormat string
     4  
     5  const (
     6  	BinaryFormatELF = BinaryFormat("ELF")
     7  	BiaryFormatMZ   = BinaryFormat("MZ")
     8  )
     9  
    10  type BinaryType string
    11  
    12  const (
    13  	BinaryTypeExecutable    = BinaryType("executable")
    14  	BinaryTypeLibraryShared = BinaryType("library-shared")
    15  	BinaryTypeLibraryStatic = BinaryType("library-static")
    16  	BinaryTypeObject        = BinaryType("object")
    17  )
    18  
    19  type BinaryFileInfo struct {
    20  	Filename   string
    21  	Type       BinaryType
    22  	Format     BinaryFormat
    23  	Depends    []string
    24  	BinaryArch string // potentially format-specific naming
    25  }
    26  
    27  func (b BinaryFileInfo) DependsInfo() string {
    28  	s := ""
    29  	for _, d := range b.Depends {
    30  		s = s + d + " " + b.BinaryArch + "\n"
    31  	}
    32  	return s
    33  }