8
8
"fmt"
9
9
"os"
10
10
"os/signal"
11
- "runtime"
11
+ "runtime/debug "
12
12
"syscall"
13
13
"time"
14
14
@@ -19,33 +19,37 @@ import (
19
19
"github.com/semihalev/sdns/server"
20
20
)
21
21
22
- const version = "1.3.1-rc1 "
22
+ const version = "1.3.2 "
23
23
24
24
var (
25
- flagcfgpath = flag . String ( "config" , "sdns.conf" , "location of the config file, if config file not found, a config will generate" )
26
- flagprintver = flag . Bool ( "v" , false , "show version information" )
25
+ flagcfgpath string
26
+ flagprintver bool
27
27
28
28
cfg * config.Config
29
29
)
30
30
31
31
func init () {
32
- runtime .GOMAXPROCS (runtime .NumCPU ())
32
+ flag .StringVar (& flagcfgpath , "config" , "sdns.conf" , "Location of the config file. If it doesn't exist, a new one will be generated." )
33
+ flag .StringVar (& flagcfgpath , "c" , "sdns.conf" , "Location of the config file. If it doesn't exist, a new one will be generated." )
34
+
35
+ flag .BoolVar (& flagprintver , "version" , false , "Show the version of the program." )
36
+ flag .BoolVar (& flagprintver , "v" , false , "Show the version of the program." )
33
37
34
38
flag .Usage = func () {
35
- fmt .Fprintf (os .Stderr , "Usage: %s [OPTIONS]\n \n " , os . Args [ 0 ] )
36
- fmt .Fprintln (os .Stderr , "Options:" )
37
- flag . PrintDefaults ( )
38
- fmt .Fprintln (os .Stderr , "" )
39
- fmt .Fprintln (os .Stderr , "Example: " )
40
- fmt .Fprintf (os .Stderr , "%s -config=sdns.conf \n " , os . Args [ 0 ] )
41
- fmt .Fprintln (os .Stderr , "" )
39
+ fmt .Fprintf (os .Stderr , "Usage:\n sdns [OPTIONS]\n \n " )
40
+ fmt .Fprintf (os .Stderr , "Options:\n " )
41
+ fmt . Fprintf ( os . Stderr , " -c, --config PATH \t Location of the config file. If it doesn't exist, a new one will be generated. \n " )
42
+ fmt .Fprintf (os .Stderr , " -v, --version \t \t Show the version of the program. \n " )
43
+ fmt .Fprintf (os .Stderr , " -h, --help \t \t Show this message and exit. \n \n " )
44
+ fmt .Fprintf (os .Stderr , "Example: \n " )
45
+ fmt .Fprintf (os .Stderr , " sdns -c sdns.conf \n \n " )
42
46
}
43
47
}
44
48
45
49
func setup () {
46
50
var err error
47
51
48
- if cfg , err = config .Load (* flagcfgpath , version ); err != nil {
52
+ if cfg , err = config .Load (flagcfgpath , version ); err != nil {
49
53
log .Crit ("Config loading failed" , "error" , err .Error ())
50
54
}
51
55
@@ -77,8 +81,9 @@ func run(ctx context.Context) *server.Server {
77
81
func main () {
78
82
flag .Parse ()
79
83
80
- if * flagprintver {
81
- println ("SDNS v" + version )
84
+ if flagprintver {
85
+ buildInfo , _ := debug .ReadBuildInfo ()
86
+ fmt .Fprintf (os .Stderr , "SDNS v%s built with %s\n " , version , buildInfo .GoVersion )
82
87
os .Exit (0 )
83
88
}
84
89
0 commit comments