diff options
| author | Carlos Martín Nieto <[email protected]> | 2016-11-19 15:48:39 +0100 |
|---|---|---|
| committer | Carlos Martín Nieto <[email protected]> | 2017-04-14 12:36:42 +0200 |
| commit | 5001942b59502155fc51b7d315b161c721ea1cf2 (patch) | |
| tree | 1c964d8ab9a64cd543af294bc5a24ce380c35daa | |
| parent | 71bdf97227584d5a1e346b0ead8a47c52c7b2c41 (diff) | |
Allow building statically via the "static" build tag
| -rw-r--r-- | Makefile | 13 | ||||
| -rw-r--r-- | git.go | 9 | ||||
| -rw-r--r-- | git_dynamic.go | 14 | ||||
| -rw-r--r-- | git_static.go | 17 |
4 files changed, 44 insertions, 9 deletions
@@ -9,3 +9,16 @@ test: build-libgit2 install: build-libgit2 go install ./... + +build-libgit2: + ./script/build-libgit2-static.sh + +static: build-libgit2 + go run script/check-MakeGitError-thread-lock.go + go test --tags "static" ./... + +install-static: build-libgit2 + go install --tags "static" ./... + +test-static: build-libgit2 + go test --tags "static" ./... @@ -1,17 +1,8 @@ package git /* -#cgo CFLAGS: -I${SRCDIR}/vendor/libgit2/include -#cgo LDFLAGS: -L${SRCDIR}/vendor/libgit2/build/ -lgit2 -#cgo windows LDFLAGS: -lwinhttp -#cgo !windows pkg-config: --static ${SRCDIR}/vendor/libgit2/build/libgit2.pc #include <git2.h> #include <git2/sys/openssl.h> - -#if LIBGIT2_VER_MAJOR != 0 || LIBGIT2_VER_MINOR != 25 -# error "Invalid libgit2 version; this git2go supports libgit2 v0.25" -#endif - */ import "C" import ( diff --git a/git_dynamic.go b/git_dynamic.go new file mode 100644 index 0000000..f89d509 --- /dev/null +++ b/git_dynamic.go @@ -0,0 +1,14 @@ +// +build !static + +package git + +/* +#include <git2.h> +#cgo pkg-config: libgit2 + +#if LIBGIT2_VER_MAJOR != 0 || LIBGIT2_VER_MINOR != 25 +# error "Invalid libgit2 version; this git2go supports libgit2 v0.25" +#endif + +*/ +import "C" diff --git a/git_static.go b/git_static.go new file mode 100644 index 0000000..d0acb3a --- /dev/null +++ b/git_static.go @@ -0,0 +1,17 @@ +// +build static + +package git + +/* +#cgo CFLAGS: -I${SRCDIR}/vendor/libgit2/include +#cgo LDFLAGS: -L${SRCDIR}/vendor/libgit2/build/ -lgit2 +#cgo windows LDFLAGS: -lwinhttp +#cgo !windows pkg-config: --static ${SRCDIR}/vendor/libgit2/build/libgit2.pc +#include <git2.h> + +#if LIBGIT2_VER_MAJOR != 0 || LIBGIT2_VER_MINOR != 25 +# error "Invalid libgit2 version; this git2go supports libgit2 v0.25" +#endif + +*/ +import "C" |
