github.com/Asutorufa/yuhaiin@v0.3.6-0.20240502055049-7984da7023a0/pkg/utils/goos/syslist.go (about)

     1  // Copyright 2011 The Go Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  package goos
     6  
     7  // Note that this file is read by internal/goarch/gengoarch.go and by
     8  // internal/goos/gengoos.go. If you change this file, look at those
     9  // files as well.
    10  
    11  // knownOS is the list of past, present, and future known GOOS values.
    12  // Do not remove from this list, as it is used for filename matching.
    13  // If you add an entry to this list, look at unixOS, below.
    14  var knownOS = map[string]bool{
    15  	"aix":       true,
    16  	"android":   true,
    17  	"darwin":    true,
    18  	"dragonfly": true,
    19  	"freebsd":   true,
    20  	"hurd":      true,
    21  	"illumos":   true,
    22  	"ios":       true,
    23  	"js":        true,
    24  	"linux":     true,
    25  	"nacl":      true,
    26  	"netbsd":    true,
    27  	"openbsd":   true,
    28  	"plan9":     true,
    29  	"solaris":   true,
    30  	"wasip1":    true,
    31  	"windows":   true,
    32  	"zos":       true,
    33  }
    34  
    35  // unixOS is the set of GOOS values matched by the "unix" build tag.
    36  // This is not used for filename matching.
    37  // This list also appears in cmd/dist/build.go and
    38  // cmd/go/internal/imports/build.go.
    39  var unixOS = map[string]bool{
    40  	"aix":       true,
    41  	"android":   true,
    42  	"darwin":    true,
    43  	"dragonfly": true,
    44  	"freebsd":   true,
    45  	"hurd":      true,
    46  	"illumos":   true,
    47  	"ios":       true,
    48  	"linux":     true,
    49  	"netbsd":    true,
    50  	"openbsd":   true,
    51  	"solaris":   true,
    52  }
    53  
    54  // knownArch is the list of past, present, and future known GOARCH values.
    55  // Do not remove from this list, as it is used for filename matching.
    56  var knownArch = map[string]bool{
    57  	"386":         true,
    58  	"amd64":       true,
    59  	"amd64p32":    true,
    60  	"arm":         true,
    61  	"armbe":       true,
    62  	"arm64":       true,
    63  	"arm64be":     true,
    64  	"loong64":     true,
    65  	"mips":        true,
    66  	"mipsle":      true,
    67  	"mips64":      true,
    68  	"mips64le":    true,
    69  	"mips64p32":   true,
    70  	"mips64p32le": true,
    71  	"ppc":         true,
    72  	"ppc64":       true,
    73  	"ppc64le":     true,
    74  	"riscv":       true,
    75  	"riscv64":     true,
    76  	"s390":        true,
    77  	"s390x":       true,
    78  	"sparc":       true,
    79  	"sparc64":     true,
    80  	"wasm":        true,
    81  }