summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Martín Nieto <[email protected]>2016-11-13 19:31:57 +0100
committerGitHub <[email protected]>2016-11-13 19:31:57 +0100
commit4eecbd8d447b48ca29d4e9e782cbe0451535893e (patch)
tree6c4d504cf3814ea88dd3e16f2d8b2b121e66325e
parent9af9dd3ad71055e60ff7af6ffd5da42960915996 (diff)
parent7f426f2435087a35155b4e8b859fb52f09f79a72 (diff)
Merge pull request #338 from libgit2/cmn/variable-subst
Use variable substitution instead of a wrapper script
-rw-r--r--.travis.yml4
-rw-r--r--Makefile4
-rw-r--r--README.md11
-rw-r--r--git.go4
-rwxr-xr-xscript/with-static.sh12
5 files changed, 11 insertions, 24 deletions
diff --git a/.travis.yml b/.travis.yml
index 79ad168..fb68ca9 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -5,10 +5,6 @@ sudo: required
install: ./script/install-libgit2.sh
go:
- - 1.1
- - 1.2
- - 1.3
- - 1.4
- 1.5
- 1.6
- 1.7
diff --git a/Makefile b/Makefile
index 3040857..39fc558 100644
--- a/Makefile
+++ b/Makefile
@@ -5,7 +5,7 @@ build-libgit2:
test: build-libgit2
go run script/check-MakeGitError-thread-lock.go
- ./script/with-static.sh go test ./...
+ go test ./...
install: build-libgit2
- ./script/with-static.sh go install ./...
+ go install ./...
diff --git a/README.md b/README.md
index 315032f..bd918d6 100644
--- a/README.md
+++ b/README.md
@@ -22,7 +22,7 @@ to use a version of git2go which will work against libgit2 v0.22 and dynamically
import "github.com/libgit2/git2go"
-to use the version which works against the latest release.
+to use the 'master' branch, which works against the latest release of libgit2, whichever that one is at the time.
### From `next`
@@ -44,15 +44,14 @@ libgit2 uses OpenSSL and LibSSH2 for performing encrypted network connections. F
Running the tests
-----------------
-For the stable version, `go test` will work as usual. For the `next` branch, similarly to installing, running the tests requires linking against the local libgit2 library, so the Makefile provides a wrapper
+For the stable version, `go test` will work as usual. For the `next` branch, similarly to installing, running the tests requires building a local libgit2 library, so the Makefile provides a wrapper that makes sure it's built
make test
-Alternatively, if you want to pass arguments to `go test`, you can use the script that sets it all up
+Alternatively, you can build the library manually first and then run the tests
- ./script/with-static.sh go test -v
-
-which will run the specified arguments with the correct environment variables.
+ ./script/build-libgit2-static.sh
+ go test -v
License
-------
diff --git a/git.go b/git.go
index 53b1a12..77394cf 100644
--- a/git.go
+++ b/git.go
@@ -1,6 +1,10 @@
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>
diff --git a/script/with-static.sh b/script/with-static.sh
deleted file mode 100755
index 3f60e31..0000000
--- a/script/with-static.sh
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/sh
-
-set -ex
-
-export BUILD="$PWD/vendor/libgit2/build"
-export PCFILE="$BUILD/libgit2.pc"
-
-FLAGS=$(pkg-config --static --libs $PCFILE) || exit 1
-export CGO_LDFLAGS="$BUILD/libgit2.a -L$BUILD ${FLAGS}"
-export CGO_CFLAGS="-I$PWD/vendor/libgit2/include"
-
-$@