Get rid of the with-static.sh script

CGO can perform variable substitution in the directives, so we don't
need to use a script to set up the variables; we can let the go tool do
it for us.
This commit is contained in:
Carlos Martín Nieto 2015-12-19 01:30:28 +01:00
parent 9022ab9c19
commit c05824091b
4 changed files with 9 additions and 19 deletions

View File

@ -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 ./...

View File

@ -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
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
-------

3
git.go
View File

@ -1,6 +1,9 @@
package git
/*
#cgo CFLAGS: -I${SRCDIR}/vendor/libgit2/include
#cgo LDFLAGS: ${SRCDIR}/vendor/libgit2/build/libgit2.a
#cgo pkg-config: --static ${SRCDIR}/vendor/libgit2/build/libgit2.pc
#include <git2.h>
#include <git2/sys/openssl.h>
*/

View File

@ -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"
$@