Skip to content

Commit aabeb7f

Browse files
committed
Really build statically
1 parent 6862c2c commit aabeb7f

File tree

6 files changed

+22
-5
lines changed

6 files changed

+22
-5
lines changed

Makefile

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,9 @@ build-libgit2:
55
cat ./vendor/libgit2/libgit2.pc
66
cat ./vendor/install/lib/pkgconfig/libgit2.pc
77

8-
test: build-libgit2
9-
./script/with-static.sh go test ./...
8+
test: install build-libgit2
9+
./script/with-static.sh go test
10+
./script/with-less-static.sh go test ./settings
1011

1112
install: build-libgit2
1213
./script/with-static.sh go install ./...

git.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package git
22

33
/*
4-
#cgo pkg-config: --static libgit2
54
#include <git2.h>
65
#include <git2/errors.h>
76
*/

script/build-libgit2-static.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ cd $VENDORED_PATH
99
cmake -DTHREADSAFE=ON \
1010
-DBUILD_CLAR=OFF \
1111
-DBUILD_SHARED_LIBS=OFF \
12+
-DCMAKE_C_FLAGS=-fPIC \
1213
-DCMAKE_INSTALL_PREFIX=../install \
1314
.
1415

script/with-less-static.sh

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
#!/bin/sh
2+
3+
set -ex
4+
5+
export INSTALL_LOCATION=$PWD/vendor/install
6+
export PKG_CONFIG_PATH=$INSTALL_LOCATION/lib/pkgconfig
7+
8+
export PCFILE="$PWD/vendor/libgit2/libgit2.pc"
9+
10+
export CGO_LDFLAGS="$(pkg-config --static --libs $PCFILE)"
11+
export CGO_CFLAGS="$(pkg-config --static --cflags $PCFILE)"
12+
13+
$@

script/with-static.sh

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,10 @@ set -ex
44

55
export INSTALL_LOCATION=$PWD/vendor/install
66
export PKG_CONFIG_PATH=$INSTALL_LOCATION/lib/pkgconfig
7-
export CGO_LDFLAGS='-lrt'
7+
8+
export PCFILE="$PWD/vendor/libgit2/libgit2.pc"
9+
10+
export CGO_LDFLAGS="$PWD/vendor/libgit2/libgit2.a $(pkg-config --static --libs $PCFILE)"
11+
export CGO_CFLAGS="$(pkg-config --static --cflags $PCFILE)"
812

913
$@

settings/settings.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package settings
22

33
/*
4-
#cgo pkg-config: --static libgit2
54
#include <git2.h>
65
76
int _go_git_opts_get_search_path(int level, git_buf *buf)

0 commit comments

Comments
 (0)