aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore2
-rw-r--r--Makefile13
-rw-r--r--src/golite.go4
-rw-r--r--tests/golite.go6
4 files changed, 16 insertions, 9 deletions
diff --git a/.gitignore b/.gitignore
index 55c7fa1..355edd7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,4 @@
-/*.sentinel
+/src/version.go
/src/*.a
/src/*cgo*
/tests/*.a
diff --git a/Makefile b/Makefile
index 44b06f6..9bb82bc 100644
--- a/Makefile
+++ b/Makefile
@@ -46,9 +46,11 @@ cgo.o = $(cgo.c:.c=.o)
sources = \
src/$(NAME).go \
+ src/version.go \
derived-assets = \
+ src/version.go \
src/_cgo_.o \
$(cgo.go) \
$(cgo.c) \
@@ -80,12 +82,12 @@ src/_cgo_.o: src/$(NAME).go
src/_cgo_import.go: src/_cgo_.o
go tool cgo --dynpackage $(NAME) --dynimport src/_cgo_.o --dynout $@
-src/$(NAME).a: $(cgo.go) $(cgo.o)
- go tool compile $(GOCFLAGS) -o $@ -p $(*F) $(cgo.go)
+src/$(NAME).a: $(cgo.go) $(cgo.o) src/version.go
+ go tool compile $(GOCFLAGS) -o $@ -p $(*F) $(cgo.go) src/version.go
go tool pack r $@ $(cgo.o)
-tests/$(NAME).a: tests/$(NAME).go $(cgo.go) $(cgo.o)
- go tool compile $(GOCFLAGS) -o $@ -p $(*F) $(cgo.go) $*.go
+tests/$(NAME).a: tests/$(NAME).go $(cgo.go) $(cgo.o) src/version.go
+ go tool compile $(GOCFLAGS) -o $@ -p $(*F) $(cgo.go) src/version.go $*.go
go tool pack r $@ $(cgo.o)
tests/main.a: tests/main.go tests/$(NAME).a
@@ -100,6 +102,9 @@ tests/main.bin: tests/main.a
tests/libbuild.bin: tests/libbuild.a
go tool link $(GOLDFLAGS) -o $@ -L src --extldflags '$(LDLIBS)' $*.a
+src/version.go: Makefile
+ echo 'package $(NAME); var version = "$(VERSION)"' > $@
+
tests.bin-check = \
diff --git a/src/golite.go b/src/golite.go
index dbfade7..9732d1f 100644
--- a/src/golite.go
+++ b/src/golite.go
@@ -1768,7 +1768,7 @@ func init() {
}
// Version returns SQLite library version information.
-func Version() (libVersion string, libVersionNumber int, sourceID string) {
+func LibVersion() (libVersion string, libVersionNumber int, sourceID string) {
libVersion = C.GoString(C.sqlite3_libversion())
libVersionNumber = int(C.sqlite3_libversion_number())
sourceID = C.GoString(C.sqlite3_sourceid())
@@ -5770,3 +5770,5 @@ func (c *SQLiteConn) RegisterFunc(string, any, bool) error {
func (c *SQLiteConn) RegisterRollbackHook(func()) {}
func (c *SQLiteConn) RegisterUpdateHook(func(int, string, string, int64)) {}
*/
+
+var Version = version
diff --git a/tests/golite.go b/tests/golite.go
index 641614e..2216883 100644
--- a/tests/golite.go
+++ b/tests/golite.go
@@ -643,7 +643,7 @@ func TestExtendedErrorCodes_Unique(t *testing.T) {
}
func TestError_SystemErrno(t *testing.T) {
- _, n, _ := Version()
+ _, n, _ := LibVersion()
if n < 3012000 {
t.Skip("sqlite3_system_errno requires sqlite3 >= 3.12.0")
}
@@ -3503,7 +3503,7 @@ func TestInsert(t *testing.T) {
}
func TestUpsert(t *testing.T) {
- _, n, _ := Version()
+ _, n, _ := LibVersion()
if n < 3024000 {
t.Skip("UPSERT requires sqlite3 >= 3.24.0")
}
@@ -4334,7 +4334,7 @@ func TestDateTimeLocal(t *testing.T) {
}
func TestVersion(t *testing.T) {
- s, n, id := Version()
+ s, n, id := LibVersion()
if s == "" || n == 0 || id == "" {
t.Errorf("Version failed %q, %d, %q\n", s, n, id)
}