summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/ci.yml6
-rw-r--r--git_bundled_static.go4
-rw-r--r--git_system_dynamic.go4
-rw-r--r--git_system_static.go4
-rwxr-xr-xscript/build-libgit2.sh5
5 files changed, 15 insertions, 8 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index caa52a4..047cb4a 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -91,6 +91,8 @@ jobs:
build-system-dynamic:
strategy:
fail-fast: false
+ matrix:
+ libgit2: [ '1.1.0' ]
name: Go (system-wide, dynamic)
runs-on: ubuntu-20.04
@@ -103,10 +105,10 @@ jobs:
id: go
- name: Check out code into the Go module directory
uses: actions/checkout@v1
- - name: Build libgit2
+ - name: Build libgit2 ${{ matrix.libgit2 }}
run: |
git submodule update --init
- sudo ./script/build-libgit2.sh --dynamic --system
+ sudo env BUILD_LIBGIT_REF=v${{ matrix.libgit2 }} ./script/build-libgit2.sh --dynamic --system
- name: Test
run: make test
diff --git a/git_bundled_static.go b/git_bundled_static.go
index 48d9be5..4d10d45 100644
--- a/git_bundled_static.go
+++ b/git_bundled_static.go
@@ -9,8 +9,8 @@ package git
#cgo CFLAGS: -DLIBGIT2_STATIC
#include <git2.h>
-#if LIBGIT2_VER_MAJOR != 1 || LIBGIT2_VER_MINOR != 1
-# error "Invalid libgit2 version; this git2go supports libgit2 v1.1"
+#if LIBGIT2_VER_MAJOR != 1 || LIBGIT2_VER_MINOR < 1 || LIBGIT2_VER_MINOR > 1
+# error "Invalid libgit2 version; this git2go supports libgit2 between v1.1.0 and v1.1.0"
#endif
*/
import "C"
diff --git a/git_system_dynamic.go b/git_system_dynamic.go
index 571a77f..3013804 100644
--- a/git_system_dynamic.go
+++ b/git_system_dynamic.go
@@ -7,8 +7,8 @@ package git
#cgo CFLAGS: -DLIBGIT2_DYNAMIC
#include <git2.h>
-#if LIBGIT2_VER_MAJOR != 1 || LIBGIT2_VER_MINOR != 1
-# error "Invalid libgit2 version; this git2go supports libgit2 v1.1"
+#if LIBGIT2_VER_MAJOR != 1 || LIBGIT2_VER_MINOR < 1 || LIBGIT2_VER_MINOR > 1
+# error "Invalid libgit2 version; this git2go supports libgit2 between v1.1.0 and v1.1.0"
#endif
*/
import "C"
diff --git a/git_system_static.go b/git_system_static.go
index 3049763..f3da651 100644
--- a/git_system_static.go
+++ b/git_system_static.go
@@ -7,8 +7,8 @@ package git
#cgo CFLAGS: -DLIBGIT2_STATIC
#include <git2.h>
-#if LIBGIT2_VER_MAJOR != 1 || LIBGIT2_VER_MINOR != 1
-# error "Invalid libgit2 version; this git2go supports libgit2 v1.1"
+#if LIBGIT2_VER_MAJOR != 1 || LIBGIT2_VER_MINOR < 1 || LIBGIT2_VER_MINOR > 1
+# error "Invalid libgit2 version; this git2go supports libgit2 between v1.1.0 and v1.1.0"
#endif
*/
import "C"
diff --git a/script/build-libgit2.sh b/script/build-libgit2.sh
index dd11314..9df8c3c 100755
--- a/script/build-libgit2.sh
+++ b/script/build-libgit2.sh
@@ -46,6 +46,11 @@ if [ -z "${BUILD_SHARED_LIBS}" ]; then
usage
fi
+if [ -n "${BUILD_LIBGIT_REF}" ]; then
+ git -C "${VENDORED_PATH}" checkout "${BUILD_LIBGIT_REF}"
+ trap "git submodule update --init" EXIT
+fi
+
if [ "${BUILD_SYSTEM}" = "ON" ]; then
BUILD_INSTALL_PREFIX=${SYSTEM_INSTALL_PREFIX-"/usr"}
else