Skip to content

Commit

Permalink
all: adjust some build tags for plan9
Browse files Browse the repository at this point in the history
I'm not saying it works, but it compiles.

Updates #5794

Change-Id: I2f3c99732e67fe57a05edb25b758d083417f083e
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
bradfitz committed Aug 24, 2023
1 parent de9ba1c commit 98a5116
Showing 32 changed files with 84 additions and 17 deletions.
3 changes: 3 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -194,6 +194,9 @@ jobs:
goarch: amd64
- goos: openbsd
goarch: amd64
# Plan9
- goos: plan9
goarch: amd64

runs-on: ubuntu-22.04
steps:
3 changes: 3 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -36,6 +36,9 @@ buildlinuxarm: ## Build tailscale CLI for linux/arm
buildwasm: ## Build tailscale CLI for js/wasm
GOOS=js GOARCH=wasm ./tool/go install ./cmd/tsconnect/wasm ./cmd/tailscale/cli

buildplan9:
GOOS=plan9 GOARCH=amd64 ./tool/go install ./cmd/tailscale ./cmd/tailscaled

buildlinuxloong64: ## Build tailscale CLI for linux/loong64
GOOS=linux GOARCH=loong64 ./tool/go install tailscale.com/cmd/tailscale tailscale.com/cmd/tailscaled

2 changes: 2 additions & 0 deletions cmd/k8s-operator/operator.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !plan9

// tailscale-operator provides a way to expose services running in a Kubernetes
// cluster to your Tailnet.
package main
2 changes: 2 additions & 0 deletions cmd/k8s-operator/operator_test.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !plan9

package main

import (
2 changes: 2 additions & 0 deletions cmd/k8s-operator/proxy.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !plan9

package main

import (
2 changes: 2 additions & 0 deletions cmd/k8s-operator/proxy_test.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !plan9

package main

import (
2 changes: 2 additions & 0 deletions cmd/k8s-operator/sts.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !plan9

package main

import (
2 changes: 2 additions & 0 deletions cmd/k8s-operator/svc.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !plan9

package main

import (
2 changes: 2 additions & 0 deletions cmd/sync-containers/main.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !plan9

// The sync-containers command synchronizes container image tags from one
// registry to another.
//
12 changes: 12 additions & 0 deletions cmd/tailscaled/sigpipe.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build go1.21 && !plan9

package main

import "syscall"

func init() {
sigPipe = syscall.SIGPIPE
}
8 changes: 6 additions & 2 deletions cmd/tailscaled/tailscaled.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build go1.19
//go:build go1.21

// The tailscaled program is the Tailscale client daemon. It's configured
// and controlled via the tailscale CLI program.
@@ -394,6 +394,8 @@ func run() error {
return startIPNServer(context.Background(), logf, pol.PublicID, sys)
}

var sigPipe os.Signal // set by sigpipe.go

func startIPNServer(ctx context.Context, logf logger.Logf, logID logid.PublicID, sys *tsd.System) error {
ln, err := safesocket.Listen(args.socketpath)
if err != nil {
@@ -409,7 +411,9 @@ func startIPNServer(ctx context.Context, logf logger.Logf, logID logid.PublicID,
// SIGPIPE sometimes gets generated when CLIs disconnect from
// tailscaled. The default action is to terminate the process, we
// want to keep running.
signal.Ignore(syscall.SIGPIPE)
if sigPipe != nil {
signal.Ignore(sigPipe)
}
go func() {
select {
case s := <-interrupt:
2 changes: 2 additions & 0 deletions cmd/tsconnect/build-pkg.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !plan9

package main

import (
2 changes: 2 additions & 0 deletions cmd/tsconnect/build.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !plan9

package main

import (
2 changes: 2 additions & 0 deletions cmd/tsconnect/common.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !plan9

package main

import (
2 changes: 2 additions & 0 deletions cmd/tsconnect/dev-pkg.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !plan9

package main

import (
2 changes: 2 additions & 0 deletions cmd/tsconnect/dev.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !plan9

package main

import (
2 changes: 2 additions & 0 deletions cmd/tsconnect/serve.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !plan9

package main

import (
2 changes: 2 additions & 0 deletions cmd/tsconnect/tsconnect.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !plan9

// The tsconnect command builds and serves the static site that is generated for
// the Tailscale Connect JS/WASM client. Can be run in 3 modes:
// - dev: builds the site and serves it. JS and CSS changes can be picked up
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
@@ -64,7 +64,7 @@ require (
github.com/tailscale/hujson v0.0.0-20221223112325-20486734a56a
github.com/tailscale/mkctr v0.0.0-20220601142259-c0b937af2e89
github.com/tailscale/netlink v1.1.1-0.20211101221916-cabfb018fe85
github.com/tailscale/wireguard-go v0.0.0-20230710185534-bb2c8f22eccf
github.com/tailscale/wireguard-go v0.0.0-20230824215414-93bd5cbf7fd8
github.com/tc-hib/winres v0.2.0
github.com/tcnksm/go-httpstat v0.2.0
github.com/toqueteos/webbrowser v1.2.0
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
@@ -878,8 +878,8 @@ github.com/tailscale/mkctr v0.0.0-20220601142259-c0b937af2e89 h1:7xU7AFQE83h0wz/
github.com/tailscale/mkctr v0.0.0-20220601142259-c0b937af2e89/go.mod h1:OGMqrTzDqmJkGumUTtOv44Rp3/4xS+QFbE8Rn0AGlaU=
github.com/tailscale/netlink v1.1.1-0.20211101221916-cabfb018fe85 h1:zrsUcqrG2uQSPhaUPjUQwozcRdDdSxxqhNgNZ3drZFk=
github.com/tailscale/netlink v1.1.1-0.20211101221916-cabfb018fe85/go.mod h1:NzVQi3Mleb+qzq8VmcWpSkcSYxXIg0DkI6XDzpVkhJ0=
github.com/tailscale/wireguard-go v0.0.0-20230710185534-bb2c8f22eccf h1:bHQHwIHId353jAF2Lm0cGDjJpse/PYS0I0DTtihL9Ls=
github.com/tailscale/wireguard-go v0.0.0-20230710185534-bb2c8f22eccf/go.mod h1:QRIcq2+DbdIC5sKh/gcAZhuqu6WT6L6G8/ALPN5wqYw=
github.com/tailscale/wireguard-go v0.0.0-20230824215414-93bd5cbf7fd8 h1:V9kSpiTzFp7OTgJinu/kSJlsI6EfRs8wJgQ+Q+5a8v4=
github.com/tailscale/wireguard-go v0.0.0-20230824215414-93bd5cbf7fd8/go.mod h1:QRIcq2+DbdIC5sKh/gcAZhuqu6WT6L6G8/ALPN5wqYw=
github.com/tc-hib/winres v0.2.0 h1:gly/ivDWGvlhl7ENtEmA7wPQ6dWab1LlLq/DgcZECKE=
github.com/tc-hib/winres v0.2.0/go.mod h1:uG6S5M2Q0/kThoqsCSYvGJODUQP9O9R0SNxUPmFIegw=
github.com/tcnksm/go-httpstat v0.2.0 h1:rP7T5e5U2HfmOBmZzGgGZjBQ5/GluWUylujl0tJ04I0=
2 changes: 2 additions & 0 deletions logtail/filch/filch_wasm.go → logtail/filch/filch_stub.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build wasm || plan9

package filch

import (
2 changes: 1 addition & 1 deletion logtail/filch/filch_unix.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !windows && !wasm
//go:build !windows && !wasm && !plan9

package filch

17 changes: 17 additions & 0 deletions net/tstun/tstun_plan9.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

package tstun

import (
"github.com/tailscale/wireguard-go/tun"
"tailscale.com/types/logger"
)

func New(logf logger.Logf, tunName string) (tun.Device, string, error) {
panic("not implemented")
}

func Diagnose(logf logger.Logf, tunName string, err error) {
panic("not implemented")
}
2 changes: 1 addition & 1 deletion net/tstun/tun.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !wasm
//go:build !wasm && !plan9

// Package tun creates a tuntap device, working around OS-specific
// quirks if necessary.
2 changes: 1 addition & 1 deletion tstest/integration/vms/harness_test.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !windows
//go:build !windows && !plan9

package vms

2 changes: 1 addition & 1 deletion tstest/integration/vms/nixos_test.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !windows
//go:build !windows && !plan9

package vms

2 changes: 1 addition & 1 deletion tstest/integration/vms/top_level_test.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !windows
//go:build !windows && !plan9

package vms

2 changes: 1 addition & 1 deletion tstest/integration/vms/vm_setup_test.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !windows
//go:build !windows && !plan9

package vms

2 changes: 1 addition & 1 deletion tstest/integration/vms/vms_steps_test.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !windows
//go:build !windows && !plan9

package vms

2 changes: 1 addition & 1 deletion tstest/integration/vms/vms_test.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !windows
//go:build !windows && !plan9

package vms

3 changes: 1 addition & 2 deletions wgengine/magicsock/endpoint_default.go
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build !js && !wasm
// +build !js,!wasm
//go:build !js && !wasm && !plan9

package magicsock

Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
// Copyright (c) Tailscale Inc & AUTHORS
// SPDX-License-Identifier: BSD-3-Clause

//go:build js || wasm
// +build js wasm
//go:build wasm || plan9

package magicsock

0 comments on commit 98a5116

Please sign in to comment.