package main

import (
	"flag"
	"fmt"
	"log"
	"os"
	"path/filepath"
)

var (
	// output
	o string
)

func init() {
	flag.StringVar(&o, "o", ".", "output dir")
}

func Usage() {
	fmt.Fprintf(os.Stderr, "Usage of proto2ts:\n")
	fmt.Fprintf(os.Stderr, "\tp2ts [flags] files # at least one file, wildcard is supported\n")
	fmt.Fprintf(os.Stderr, "Flags:\n")
	flag.PrintDefaults()
}

func main() {
	log.SetFlags(0)
	log.SetPrefix("p2ts: ")
	flag.Usage = Usage
	flag.Parse()

	args := flag.Args()
	if len(args) == 0 {
		flag.Usage()
		os.Exit(2)
	}

	var ps []string
	for _, p := range args {
		matches, err := filepath.Glob(p)
		if err == nil {
			ps = append(ps, matches...)
		}
	}

	g := Generator{
		ipaths: ps,
		output: o,
	}

	g.generateTS()
}
