aboutsummaryrefslogtreecommitdiffstats
path: root/wireguard-go-bridge/Makefile
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2018-06-09 03:14:34 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2018-06-09 04:22:11 +0200
commit831640312c7cd0305e47c6292f9494a9e779b769 (patch)
tree28d0ac0f4add5a3d2d8685e3122c3bcda4a564ef /wireguard-go-bridge/Makefile
parentAllow adding and deleting peers. (diff)
downloadwireguard-apple-831640312c7cd0305e47c6292f9494a9e779b769.tar.xz
wireguard-apple-831640312c7cd0305e47c6292f9494a9e779b769.zip
First stab at Go bridge
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to '')
-rw-r--r--wireguard-go-bridge/Makefile32
1 files changed, 32 insertions, 0 deletions
diff --git a/wireguard-go-bridge/Makefile b/wireguard-go-bridge/Makefile
new file mode 100644
index 0000000..90dc7ac
--- /dev/null
+++ b/wireguard-go-bridge/Makefile
@@ -0,0 +1,32 @@
+# SPDX-License-Identifier: GPL-2.0
+#
+# Copyright (C) 2018 Jason A. Donenfeld <Jason@zx2c4.com>. All Rights Reserved.
+
+FILES := $(filter-out %/main.go,$(wildcard ../wireguard-go/*/*.go) $(wildcard ../wireguard-go/*.go))
+
+# CLANG_FLAGS := --target=$(ANDROID_LLVM_TRIPLE) --gcc-toolchain=$(ANDROID_TOOLCHAIN_ROOT) --sysroot=$(ANDROID_SYSROOT)
+# export CGO_CFLAGS := $(CLANG_FLAGS) $(CFLAGS)
+# export CGO_LDFLAGS := $(CLANG_FLAGS) $(LDFLAGS)
+# export CC := $(ANDROID_C_COMPILER)
+# export GOARCH := $(NDK_GO_ARCH_MAP_$(ANDROID_ARCH_NAME))
+export GOOS := darwin
+export CGO_ENABLED := 1
+
+default: example
+
+libwg-go.so: $(FILES) src/git.zx2c4.com/wireguard-go/api-ios.go src/git.zx2c4.com/wireguard-go/tun/tun_ios.go
+ find . -name '*.go' -type l -delete
+ find . -type d -empty -delete
+ mkdir -p $(subst ../wireguard-go/,./src/git.zx2c4.com/wireguard-go/,$(dir $(FILES)))
+ $(foreach FILE,$(FILES),ln -sf $(abspath $(FILE)) $(subst ../wireguard-go/,./src/git.zx2c4.com/wireguard-go/,$(dir $(FILE)))$(file $(FILE));)
+ GOPATH=$(PWD) go get -v -d git.zx2c4.com/wireguard-go
+ GOPATH=$(PWD) go build -tags ios -v -o libwg-go.so -buildmode c-shared git.zx2c4.com/wireguard-go
+ @rm -f libwg-go.h
+
+example: example.c libwg-go.so
+ $(CC) -L. -lwg-go -o example example.c
+
+clean:
+ rm -f libwg-go.so test
+
+.PHONY: clean default