Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
com.ccwangluo.accelerator
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
sheteng
com.ccwangluo.accelerator
Commits
43caaa68
Commit
43caaa68
authored
Aug 06, 2016
by
Max Lv
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add submodules for kcptun
parent
586c5e2a
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
90 additions
and
25 deletions
+90
-25
.gitignore
.gitignore
+1
-2
.gitmodules
.gitmodules
+6
-0
.travis.yml
.travis.yml
+1
-0
README.md
README.md
+3
-23
build.sh
build.sh
+4
-0
kcptun/go
kcptun/go
+1
-0
kcptun/kcptun
kcptun/kcptun
+1
-0
kcptun/make.bash
kcptun/make.bash
+66
-0
src/main/assets/armeabi-v7a/kcptun
src/main/assets/armeabi-v7a/kcptun
+0
-0
src/main/assets/x86/kcptun
src/main/assets/x86/kcptun
+0
-0
travis-ci/setup.sh
travis-ci/setup.sh
+7
-0
No files found.
.gitignore
View file @
43caaa68
...
...
@@ -14,6 +14,7 @@ gen_*
*.class
*.o
local.sbt
.deps
#Intellij IDEA
*.iml
...
...
@@ -27,7 +28,5 @@ out/
src/main/obj
src/main/libs
src/main/assets/armeabi-v7a/*
!src/main/assets/armeabi-v7a/kcptun
src/main/assets/x86/*
!src/main/assets/x86/kcptun
jni/Application.mk
.gitmodules
View file @
43caaa68
...
...
@@ -24,3 +24,9 @@
path = src/main/jni/pdnsd
url = https://github.com/shadowsocks/pdnsd.git
branch = shadowsocks-android
[submodule "kcptun/kcptun"]
path = kcptun/kcptun
url = https://github.com/shadowsocks/kcptun
[submodule "kcptun/go"]
path = kcptun/go
url = https://github.com/shadowsocks/go
.travis.yml
View file @
43caaa68
...
...
@@ -31,6 +31,7 @@ install:
-
./travis-ci/setup.sh
-
export NDK_CCACHE=ccache
-
export ARCH=`uname -m`
-
export GOROOT_BOOTSTRAP=$HOME/.android/go
-
export ANDROID_NDK_HOME=$HOME/.android/android-ndk-r12b
-
export ANDROID_HOME=$HOME/.android/android-sdk-linux
-
export PATH=${ANDROID_NDK_HOME}:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools:${PATH}
...
...
README.md
View file @
43caaa68
...
...
@@ -12,6 +12,7 @@ A [shadowsocks](http://shadowsocks.org) client for Android, written in Scala.
*
JDK 1.8
*
SBT 0.13.0+
*
GO 1.4+
*
Android SDK r25+
*
Android NDK r12b+
...
...
@@ -19,6 +20,7 @@ A [shadowsocks](http://shadowsocks.org) client for Android, written in Scala.
*
Set environment variable
`ANDROID_HOME`
to
`/path/to/android-sdk`
*
Set environment variable
`ANDROID_NDK_HOME`
to
`/path/to/android-ndk`
*
Set environment variable
`GOROOT_BOOTSTRAP`
to
`/path/to/go`
*
Create your key following the instructions at https://developer.android.com/studio/publish/app-signing.html
*
Put your key in ~/.keystore
*
Create
`local.properties`
from
`local.properties.example`
with your own key information
...
...
@@ -26,33 +28,11 @@ A [shadowsocks](http://shadowsocks.org) client for Android, written in Scala.
```
bash
git submodule update
--init
# Build the App
sbt native-build clean android:package-release
```
#### BUILD on Mac OS X (with HomeBrew)
*
Install Android SDK and NDK by run
`brew install android-ndk android-sdk`
*
Add
`export ANDROID_HOME=/usr/local/Cellar/android-sdk/$version`
to your .bashrc , then reopen the shell to load it.
*
Add
`export ANDROID_NDK_HOME=/usr/local/Cellar/android-ndk/$version`
to your .bashrc , then reopen the shell to load it.
*
echo "y" | android update sdk --filter tools,platform-tools,build-tools-23.0.2,android-23,extra-google-m2repository --no-ui -a
*
echo "y" | android update sdk --filter extra-android-m2repository --no-ui --no-https -a
*
Create your key following the instructions at http://developer.android.com/guide/publishing/app-signing.html#cert
*
Put your key in ~/.keystore
*
Create
`local.properties`
from
`local.properties.example`
with your own key information .
*
Invoke the building like this
```
bash
git submodule update
--init
# Build native binaries
./build.sh
# Build the apk
sbt clean android:package-release
```
## OPEN SOURCE LICENSES
*
shadowsocks-libev:
[
GPLv3
](
https://github.com/shadowsocks/shadowsocks-libev/blob/master/LICENSE
)
...
...
build.sh
View file @
43caaa68
...
...
@@ -4,6 +4,10 @@ function try () {
"
$@
"
||
exit
-1
}
pushd
kcptun
try ./make.bash
popd
try
pushd
src/main
# Build
...
...
go
@
3549a9d3
Subproject commit 3549a9d3740b5cd9d284cdad1d101bd14888cc85
kcptun
@
eced3949
Subproject commit eced3949b2f33e1801aec6124a01922482358f3e
kcptun/make.bash
0 → 100755
View file @
43caaa68
#!/bin/bash
function
try
()
{
"
$@
"
||
exit
-1
}
[
-z
"
$ANDROID_NDK_HOME
"
]
&&
ANDROID_NDK_HOME
=
~/android-ndk-r12b
DIR
=
"
$(
cd
"
$(
dirname
"
${
BASH_SOURCE
[0]
}
"
)
"
&&
pwd
)
"
DEPS
=
$DIR
/.deps
ANDROID_ARM_TOOLCHAIN
=
$DEPS
/android-toolchain-16-arm
ANDROID_X86_TOOLCHAIN
=
$DEPS
/android-toolchain-16-x86
ANDROID_ARM_CC
=
$ANDROID_ARM_TOOLCHAIN
/bin/arm-linux-androideabi-gcc
ANDROID_ARM_STRIP
=
$ANDROID_ARM_TOOLCHAIN
/bin/arm-linux-androideabi-strip
ANDROID_X86_CC
=
$ANDROID_X86_TOOLCHAIN
/bin/i686-linux-android-gcc
ANDROID_X86_STRIP
=
$ANDROID_X86_TOOLCHAIN
/bin/i686-linux-android-strip
if
[
!
-d
"
$DEPS
"
]
;
then
mkdir
-p
$DEPS
fi
if
[
!
-d
"
$ANDROID_ARM_TOOLCHAIN
"
]
;
then
echo
"Make standalone toolchain for ARM arch"
$ANDROID_NDK_HOME
/build/tools/make_standalone_toolchain.py
--arch
arm
\
--api
16
--install-dir
$ANDROID_ARM_TOOLCHAIN
fi
if
[
!
-d
"
$ANDROID_X86_TOOLCHAIN
"
]
;
then
echo
"Make standalone toolchain for X86 arch"
$ANDROID_NDK_HOME
/build/tools/make_standalone_toolchain.py
--arch
arm
\
$ANDROID_NDK_HOME
/build/tools/make_standalone_toolchain.py
--arch
x86
\
--api
16
--install-dir
$ANDROID_X86_TOOLCHAIN
fi
if
[
!
-d
"
$DIR
/go/bin"
]
;
then
echo
"Build the custom go"
pushd
$DIR
/go/src
try ./make.bash
popd
fi
export
GOROOT
=
$DIR
/go
export
GOPATH
=
$DIR
/kcptun
export
PATH
=
$GOROOT
/bin:
$PATH
pushd
kcptun/client
echo
"Get dependences for kcptun"
go get
echo
"Cross compile kcptun for arm"
try
env
CGO_ENABLED
=
1
CC
=
$ANDROID_ARM_CC
GOOS
=
android
GOARCH
=
arm
GOARM
=
7 go build
try
$ANDROID_ARM_STRIP
client
try
mv
client
$DIR
/../src/main/assets/armeabi-v7a/kcptun
echo
"Cross compile kcptun for x86"
try
env
CGO_ENABLED
=
1
CC
=
$ANDROID_X86_CC
GOOS
=
android
GOARCH
=
386 go build
try
$ANDROID_X86_STRIP
client
try
mv
client
$DIR
/../src/main/assets/x86/kcptun
popd
echo
"Successfully build kcptun"
src/main/assets/armeabi-v7a/kcptun
deleted
100755 → 0
View file @
586c5e2a
File deleted
src/main/assets/x86/kcptun
deleted
100755 → 0
View file @
586c5e2a
File deleted
travis-ci/setup.sh
View file @
43caaa68
#!/bin/bash
export
ARCH
=
`
uname
-m
`
export
GOROOT_BOOTSTRAP
=
.android/go
export
ANDROID_NDK_HOME
=
$HOME
/.android/android-ndk-r12b
export
ANDROID_HOME
=
$HOME
/.android/android-sdk-linux
export
PATH
=
${
ANDROID_NDK_HOME
}
:
${
ANDROID_HOME
}
/tools:
${
ANDROID_HOME
}
/platform-tools:
${
PATH
}
if
[
!
-d
"
$GOROOT_BOOTSTRAP
"
]
;
then
wget https://storage.googleapis.com/golang/go1.6.3.linux-amd64.tar.gz
tar
xvf go1.6.3.linux-amd64.tar.gz
mv
go .android/
fi
if
[
!
-d
"
$ANDROID_HOME
"
]
;
then
mkdir
-p
$ANDROID_HOME
pushd
$HOME
/.android
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment