diff --git a/windows/mkerrors.go b/windows/gen.go similarity index 80% rename from windows/mkerrors.go rename to windows/gen.go index a204e6ca..d08e2779 100644 --- a/windows/mkerrors.go +++ b/windows/gen.go @@ -6,4 +6,4 @@ package windows -//go:generate ./mkerrors.bash zerrors_windows.go +//go:generate ./generate.bash diff --git a/windows/generate.bash b/windows/generate.bash new file mode 100755 index 00000000..9916aa18 --- /dev/null +++ b/windows/generate.bash @@ -0,0 +1,15 @@ +#!/bin/bash + +# Copyright 2019 The Go Authors. All rights reserved. +# Use of this source code is governed by a BSD-style +# license that can be found in the LICENSE file. + +set -e + +# For successful zsyscall_windows.go generation on non-WSL env, this should +# run before mkerrors.bash. +echo "# Generating zsyscall_windows.go ..." +go run $(go env GOROOT)/src/syscall/mksyscall_windows.go -output zsyscall_windows.go eventlog.go service.go syscall_windows.go security_windows.go + +echo "# Generating zerrors_windows.go ..." +./mkerrors.bash zerrors_windows.go diff --git a/windows/mkerrors.bash b/windows/mkerrors.bash index a70b24f3..8e59e93f 100755 --- a/windows/mkerrors.bash +++ b/windows/mkerrors.bash @@ -9,7 +9,7 @@ shopt -s nullglob [[ $# -eq 1 ]] || { echo "Usage: $0 OUTPUT_FILE.go" >&2; exit 1; } winerror="$(printf '%s\n' "/mnt/c/Program Files (x86)/Windows Kits/"/*/Include/*/shared/winerror.h | sort -Vr | head -n 1)" -[[ -n $winerror ]] || { echo "Unable to find winerror.h" >&2; exit 1; } +[[ -n $winerror ]] || { echo "Unable to find winerror.h; this expects to be run on Windows with WSL" >&2; exit 1; } declare -A errors diff --git a/windows/mksyscall.go b/windows/mksyscall.go deleted file mode 100644 index 62770572..00000000 --- a/windows/mksyscall.go +++ /dev/null @@ -1,9 +0,0 @@ -// Copyright 2009 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -// +build generate - -package windows - -//go:generate go run $GOROOT/src/syscall/mksyscall_windows.go -output zsyscall_windows.go eventlog.go service.go syscall_windows.go security_windows.go