@@ -3,7 +3,7 @@ GOBIN=$(CURDIR)/bin
3
3
4
4
GOMOBILE =$(GOBIN ) /gomobile
5
5
# Add GOBIN to $PATH so `gomobile` can find `gobind`.
6
- GOBIND =env PATH=$(GOBIN ) :$(PATH ) $(GOMOBILE ) bind
6
+ GOBIND =env PATH=" $(GOBIN ) :$(PATH ) " " $(GOMOBILE ) " bind
7
7
IMPORT_PATH =github.com/Jigsaw-Code/outline-go-tun2socks
8
8
9
9
.PHONY : android apple linux windows intra clean clean-all
@@ -16,23 +16,22 @@ ANDROID_BUILD_CMD=$(GOBIND) -a -ldflags '-w' -target=android -tags android -work
16
16
intra : $(BUILDDIR ) /intra/tun2socks.aar
17
17
18
18
$(BUILDDIR ) /intra/tun2socks.aar : $(GOMOBILE )
19
- mkdir -p $(BUILDDIR ) /intra
20
- $(ANDROID_BUILD_CMD ) -o $@ $(IMPORT_PATH ) /intra $(IMPORT_PATH ) /intra/android $(IMPORT_PATH ) /intra/doh $(IMPORT_PATH ) /intra/split $(IMPORT_PATH ) /intra/protect
21
-
19
+ mkdir -p " $( BUILDDIR) /intra"
20
+ $(ANDROID_BUILD_CMD ) -o " $@ " $(IMPORT_PATH ) /intra $(IMPORT_PATH ) /intra/android $(IMPORT_PATH ) /intra/doh $(IMPORT_PATH ) /intra/split $(IMPORT_PATH ) /intra/protect
22
21
23
22
android : $(BUILDDIR ) /android/tun2socks.aar
24
23
25
24
$(BUILDDIR ) /android/tun2socks.aar : $(GOMOBILE )
26
- mkdir -p $(BUILDDIR ) /android
27
- $(ANDROID_BUILD_CMD ) -o $@ $(IMPORT_PATH ) /outline/android $(IMPORT_PATH ) /outline/shadowsocks
25
+ mkdir -p " $( BUILDDIR) /android"
26
+ $(ANDROID_BUILD_CMD ) -o " $@ " $(IMPORT_PATH ) /outline/android $(IMPORT_PATH ) /outline/shadowsocks
28
27
29
28
30
29
apple : $(BUILDDIR ) /apple/Tun2socks.xcframework
31
30
32
31
$(BUILDDIR ) /apple/Tun2socks.xcframework : $(GOMOBILE )
33
32
# MACOSX_DEPLOYMENT_TARGET and -iosversion should match what outline-client supports.
34
33
# TODO(fortuna): -s strips symbols and is obsolete. Why are we using it?
35
- export MACOSX_DEPLOYMENT_TARGET=10.14; $(GOBIND) -iosversion=9.0 -target=ios,iossimulator,macos -o $@ -ldflags '-s -w' -bundleid org.outline.tun2socks $(IMPORT_PATH)/outline/apple $(IMPORT_PATH)/outline/shadowsocks
34
+ export MACOSX_DEPLOYMENT_TARGET=10.14; $(GOBIND) -iosversion=9.0 -target=ios,iossimulator,macos,maccatalyst -o $@ -ldflags '-s -w' -bundleid org.outline.tun2socks $(IMPORT_PATH)/outline/apple $(IMPORT_PATH)/outline/shadowsocks
36
35
37
36
38
37
XGO =$(GOBIN ) /xgo
@@ -46,33 +45,35 @@ LINUX_BUILDDIR=$(BUILDDIR)/linux
46
45
linux : $(LINUX_BUILDDIR ) /tun2socks
47
46
48
47
$(LINUX_BUILDDIR ) /tun2socks : $(XGO )
49
- $(XGO ) -ldflags $(XGO_LDFLAGS ) --targets=linux/amd64 -dest $(LINUX_BUILDDIR ) $(ELECTRON_PATH )
50
- mv $(LINUX_BUILDDIR ) /electron-linux-amd64 $@
48
+ mkdir -p " $( LINUX_BUILDDIR) "
49
+ $(XGO ) -ldflags $(XGO_LDFLAGS ) --targets=linux/amd64 -dest " $( LINUX_BUILDDIR) " " $( ELECTRON_PATH) "
50
+ mv " $( LINUX_BUILDDIR) /electron-linux-amd64" " $@ "
51
51
52
52
53
53
WINDOWS_BUILDDIR =$(BUILDDIR ) /windows
54
54
55
55
windows : $(WINDOWS_BUILDDIR ) /tun2socks.exe
56
56
57
57
$(WINDOWS_BUILDDIR ) /tun2socks.exe : $(XGO )
58
- $(XGO ) -ldflags $(XGO_LDFLAGS ) --targets=windows/386 -dest $(WINDOWS_BUILDDIR ) $(ELECTRON_PATH )
59
- mv $(WINDOWS_BUILDDIR ) /electron-windows-4.0-386.exe $@
58
+ mkdir -p " $( WINDOWS_BUILDDIR) "
59
+ $(XGO ) -ldflags $(XGO_LDFLAGS ) --targets=windows/386 -dest " $( WINDOWS_BUILDDIR) " " $( ELECTRON_PATH) "
60
+ mv " $( WINDOWS_BUILDDIR) /electron-windows-386.exe" " $@ "
60
61
61
62
62
63
$(GOMOBILE ) : go.mod
63
- env GOBIN=$(GOBIN ) go install golang.org/x/mobile/cmd/gomobile
64
- env GOBIN=$(GOBIN ) $(GOMOBILE ) init
64
+ env GOBIN=" $( GOBIN) " go install golang.org/x/mobile/cmd/gomobile
65
+ env GOBIN=" $( GOBIN) " $(GOMOBILE ) init
65
66
66
67
$(XGO ) : go.mod
67
- env GOBIN=$(GOBIN ) go install github.com/crazy-max/xgo
68
+ env GOBIN=" $( GOBIN) " go install github.com/crazy-max/xgo
68
69
69
70
go.mod : tools.go
70
71
go mod tidy
71
72
touch go.mod
72
73
73
74
clean :
74
- rm -rf $(BUILDDIR )
75
+ rm -rf " $( BUILDDIR) "
75
76
go clean
76
77
77
78
clean-all : clean
78
- rm -rf $(GOBIN )
79
+ rm -rf " $( GOBIN) "
0 commit comments