# vim: filetype=yaml sw=2
version: '1.26.2'
filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
container:
  use_container: 1

var:
  source_sha256: 2e91ebb6947a96e9436fb2b3926a8802efe63a6d375dffec4f82aa9dbd6fd43b
  no_crosscompile: 1
  setup: |
    mkdir -p /var/tmp/dist
    tar -C /var/tmp/dist -xf $rootdir/[% c("go_tarfile") %]
    [% IF pc(c("origin_project"), "var/no_crosscompile") -%]
      export GOOS=linux
      export GOARCH=amd64
    [% ELSE -%]
      export GOOS=[% c("var/GOOS") %]
      export GOARCH=[% c("var/GOARCH") %]
    [% END -%]
    export PATH=/var/tmp/dist/go/bin:/var/tmp/dist/gopath/bin:"$PATH"
    [% IF c("var/linux") -%]
      export CGO_LDFLAGS_ALLOW="-z|noexecstack"
      export CGO_LDFLAGS="-z noexecstack"
    [% END -%]
    [% IF c("var/android") -%]
      export CGO_LDFLAGS_ALLOW="-z|max-page-size"
      export CGO_LDFLAGS="-z max-page-size=16384"
    [% END -%]
    [% IF c("var/cgo") -%]
      export CGO_ENABLED=1
    [% END -%]
    export GOTMPDIR=/var/tmp/build/go-tmp
    mkdir -p "$GOTMPDIR"

targets:
  windows:
    var:
      GOOS: windows
  windows-i686:
    var:
      GOARCH: 386
  windows-x86_64:
    var:
      GOARCH: amd64
  macos-x86_64:
    var:
      GOARCH: amd64
  macos-aarch64:
    var:
      GOARCH: arm64
  macos:
    version: 1.22.12
    var:
      source_sha256: 012a7e1f37f362c0918c1dfa3334458ac2da1628c4b9cf4d9ca02db986e17d71
      GOOS: darwin
  linux:
    var:
      GOOS: linux
  linux-x86_64:
    var:
      GOARCH: amd64
  linux-aarch64:
    var:
      GOARCH: arm64
  android:
    var:
      GOOS: android
  android-armv7:
    var:
      GOARCH: arm
  android-aarch64:
    var:
      GOARCH: arm64
  android-x86_64:
    var:
      GOARCH: amd64

input_files:
  - project: container-image
  - name: '[% c("var/compiler") %]'
    project: '[% c("var/compiler") %]'
    enable: '[% ! c("var/linux") %]'
  - URL: 'https://go.dev/dl/go[% c("version") %].src.tar.gz'
    name: go
    sha256sum: '[% c("var/source_sha256") %]'
  - project: go-bootstrap
    name: go-bootstrap
    target_replace:
      '^.*browser-(?!testbuild).*': 'torbrowser-linux-x86_64'
