blob: a1a7b7ac33447d8d35bf864db27452a1bdeb1aca [file] [log] [blame]
#!/bin/bash -e
# Copyright 2020 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# Minimal Go build script for an executable within a Chrome OS chroot.
# Personal Go workspace used to cache compiled packages.
readonly GOHOME="${HOME}/go"
# Directory where compiled packages are cached.
readonly PKGDIR="${GOHOME}/pkg"
###
### Customize these parts
###
# Go workspaces containing the source.
readonly SRCDIRS=(
"${HOME}/trunk/infra/tnull"
)
# Package to build to produce executable.
readonly PKG="tnull"
# Output filename for executable.
readonly OUT="${GOHOME}/bin/tnull"
###
### End customized parts
###
# Readonly Go workspaces containing emerged source to build.
export GOPATH="$(IFS=:; echo "${SRCDIRS[*]}"):/usr/lib/gopath"
readonly CMD=$(basename "${0}")
# Builds an executable package to a destination path.
run_build() {
local pkg="${1}"
local dest="${2}"
go build -i -pkgdir "${PKGDIR}" -o "${dest}" "${pkg}"
}
run_build "${PKG}" "${OUT}"