summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--Makefile17
-rw-r--r--src/gobang.go1
3 files changed, 14 insertions, 5 deletions
diff --git a/.gitignore b/.gitignore
index 5dc8bc3..1b60c9b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
+/src/version.go
/src/*.a
/tests/*.a
/tests/*.bin
diff --git a/Makefile b/Makefile
index a6d0815..369c01b 100644
--- a/Makefile
+++ b/Makefile
@@ -38,9 +38,11 @@ objects = \
sources = \
src/$(NAME).go \
+ src/version.go \
derived-assets = \
+ src/version.go \
$(objects) \
tests/main.bin \
tests/libbuild.bin \
@@ -56,22 +58,27 @@ all: $(derived-assets)
$(objects): Makefile
-src/$(NAME).a: src/$(NAME).go
+src/$(NAME).a: src/$(NAME).go src/version.go
+ go tool compile $(GOCFLAGS) -o $@ -p $(*F) -I $(@D) $*.go src/version.go
+
tests/main.a: tests/main.go tests/$(NAME).a
-src/$(NAME).a tests/main.a:
+tests/main.a:
go tool compile $(GOCFLAGS) -o $@ -p $(*F) -I $(@D) $*.go
tests/libbuild.a: tests/libbuild.go src/$(NAME).a
go tool compile $(GOCFLAGS) -o $@ -p main -I src $*.go
-tests/$(NAME).a: tests/$(NAME).go src/$(NAME).go
- go tool compile $(GOCFLAGS) -o $@ -p $(*F) $*.go src/$(*F).go
+tests/$(NAME).a: tests/$(NAME).go src/$(NAME).go src/version.go
+ go tool compile $(GOCFLAGS) -o $@ -p $(*F) $*.go src/$(*F).go src/version.go
tests/libbuild.bin: tests/libbuild.a
go tool link $(GOLDFLAGS) -o $@ -L src $*.a
tests/main.bin: tests/main.a
- go tool link $(GOLDFLAGS) -o $@ -L $(@D) $*.a
+ go tool link $(GOLDFLAGS) -o $@ -L $(@D) --extldflags '$(LDLIBS)' $*.a
+
+src/version.go: Makefile
+ echo 'package $(NAME); var version = "$(VERSION)"' > $@
diff --git a/src/gobang.go b/src/gobang.go
index b1fe281..eec94b0 100644
--- a/src/gobang.go
+++ b/src/gobang.go
@@ -87,6 +87,7 @@ var (
level logLevel = LevelInfo
emitMetric bool = true
hostname string
+ Version = version
)