#!/bin/sh

set -e
set -o pipefail


while test "X$1" != X; do
    tmp=$(mktemp)
    trap "rm -f $tmp" ERR EXIT

    if ! test -f "$1"; then
        echo "$1 doesn't exist!" 1>&2
        exit 1
    fi
    dest=${1%.pgo}.go
    (
        echo "// generated by pgo2go $1; DO NOT EDIT"
        echo
        cpp -P -C "$1" | gofmt
    ) > "$tmp"  &&  mv -f "$tmp" "$dest"
    shift
done

