forked from XTLS/libXray
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbuild.sh
executable file
·46 lines (40 loc) · 956 Bytes
/
build.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#!/bin/bash
prepare_go() {
rm -f go.mod
rm -f go.sum
go mod init github.com/amnezia-vpn/amnezia-libxray
go mod tidy
}
prepare_gomobile() {
go install golang.org/x/mobile/cmd/gomobile@latest
go get golang.org/x/mobile/cmd/gobind
export PATH=~/go/bin:$PATH
gomobile init
go get -d golang.org/x/mobile/cmd/gomobile
}
build_apple() {
rm -fr *.xcframework
prepare_gomobile
gomobile bind -target ios,iossimulator,macos -iosversion 15.0
}
build_android() {
rm -fr *.jar
rm -fr *.aar
prepare_gomobile
rm -fr assets
mkdir -p assets/geo
mv dat/* assets/geo
gomobile bind -target android -androidapi 24 -javapkg=org.amnezia.vpn.protocol.xray -o libxray.aar -ldflags="-w -s -buildid=" -trimpath
}
download_geo() {
go run main/main.go
}
echo "will build libxray for $1"
prepare_go
download_geo
if [ "$1" != "apple" ]; then
build_android
else
build_apple
fi
echo "build libxray done"