Source file src/internal/syslist/syslist.go

     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 syslist stores tables of OS and ARCH names that are
     6  // (or at one point were) acceptable build targets.
     7  
     8  package syslist
     9  
    10  // Note that this file is read by internal/goarch/gengoarch.go and by
    11  // internal/goos/gengoos.go. If you change this file, look at those
    12  // files as well.
    13  
    14  // KnownOS is the list of past, present, and future known GOOS values.
    15  // Do not remove from this list, as it is used for filename matching.
    16  // If you add an entry to this list, look at UnixOS, below.
    17  var KnownOS = map[string]bool{
    18  	"aix":       true,
    19  	"android":   true,
    20  	"darwin":    true,
    21  	"dragonfly": true,
    22  	"freebsd":   true,
    23  	"hurd":      true,
    24  	"illumos":   true,
    25  	"ios":       true,
    26  	"js":        true,
    27  	"linux":     true,
    28  	"nacl":      true,
    29  	"netbsd":    true,
    30  	"openbsd":   true,
    31  	"plan9":     true,
    32  	"solaris":   true,
    33  	"wasip1":    true,
    34  	"windows":   true,
    35  	"zos":       true,
    36  }
    37  
    38  // UnixOS is the set of GOOS values matched by the "unix" build tag.
    39  // This is not used for filename matching.
    40  // This list also appears in cmd/dist/build.go.
    41  var UnixOS = map[string]bool{
    42  	"aix":       true,
    43  	"android":   true,
    44  	"darwin":    true,
    45  	"dragonfly": true,
    46  	"freebsd":   true,
    47  	"hurd":      true,
    48  	"illumos":   true,
    49  	"ios":       true,
    50  	"linux":     true,
    51  	"netbsd":    true,
    52  	"openbsd":   true,
    53  	"solaris":   true,
    54  }
    55  
    56  // KnownArch is the list of past, present, and future known GOARCH values.
    57  // Do not remove from this list, as it is used for filename matching.
    58  var KnownArch = map[string]bool{
    59  	"386":         true,
    60  	"amd64":       true,
    61  	"amd64p32":    true,
    62  	"arm":         true,
    63  	"armbe":       true,
    64  	"arm64":       true,
    65  	"arm64be":     true,
    66  	"loong64":     true,
    67  	"mips":        true,
    68  	"mipsle":      true,
    69  	"mips64":      true,
    70  	"mips64le":    true,
    71  	"mips64p32":   true,
    72  	"mips64p32le": true,
    73  	"ppc":         true,
    74  	"ppc64":       true,
    75  	"ppc64le":     true,
    76  	"riscv":       true,
    77  	"riscv64":     true,
    78  	"s390":        true,
    79  	"s390x":       true,
    80  	"sparc":       true,
    81  	"sparc64":     true,
    82  	"wasm":        true,
    83  }
    84  

View as plain text