summaryrefslogtreecommitdiff
path: root/main
diff options
context:
space:
mode:
authorAnton Vaytulevich <anton.vaytulevich@rubius.com>2017-06-29 17:42:18 +0700
committerArne Schwabe <arne@rfc2549.org>2017-06-29 14:15:10 +0200
commitac2878c0af2b89ea587d319493759c587152d067 (patch)
tree3d9f8783085fc5429160a345667eda28e177a2e9 /main
parente0febec022b8308143d4030f0c0391cfefd1a847 (diff)
Rewrite build-native.bat to mimic build-native.sh
Diffstat (limited to 'main')
-rw-r--r--main/misc/build-native.bat76
1 files changed, 64 insertions, 12 deletions
diff --git a/main/misc/build-native.bat b/main/misc/build-native.bat
index 9885557a..636e6f7d 100644
--- a/main/misc/build-native.bat
+++ b/main/misc/build-native.bat
@@ -1,25 +1,77 @@
+@echo off
-@echo on
-echo Currently broken, feel free to fix and send me a patch, see the build-native.sh file how native libraries are build on UNIX
-exit 1
+setlocal EnableDelayedExpansion
-call ndk-build APP_ABI=x86_64 -j 8 USE_BREAKPAD=0
+if not exist openvpn\.git (
+ set lasterror=Cannot find .git directory in openvpn, aborting
+ goto :error
+) else (
+ cd openvpn
+ set head=HEAD
+ for /F "tokens=3 delims=/" %%F in ('git rev-parse --symbolic-full-name HEAD') do (
+ set head=%%F
+ )
+
+ git rev-parse --short=16 HEAD > commit.tmp
+ set /p commit=<commit.tmp
+ del commit.tmp
+
+ set revision=%head%-%commit%
+
+ echo #define CONFIGURE_GIT_REVISION "%revision%"> config-version.h.tmp
+
+ git diff-files --name-status -r --ignore-submodules --quiet -- > flags.tmp || echo +> flags.tmp
+ git diff-index --cached --quiet --ignore-submodules HEAD > flags.tmp || echo *>> flags.tmp
+ set /p flags=<flags.tmp
+ del flags.tmp
+
+ echo #define CONFIGURE_GIT_FLAGS "%flags%">> config-version.h.tmp
+
+ fc /b config-version.h.tmp config-version.h 1>nul 2>nul
+ if not errorlevel 1 goto keep
+
+ echo replacing config-version.h
+ copy config-version.h.tmp config-version.h
+
+:keep
+ del config-version.h.tmp
+
+ cd ..
+)
+
+if [%1] == [] (
+ ndk-build -j 8 USE_BREAKPAD=0
+) else (
+ ndk-build %*
+)
+
+if not errorlevel 0 goto error
+
+rmdir /Q /S ovpnlibs
cd libs
mkdir ..\ovpnlibs
mkdir ..\ovpnlibs\assets
+mkdir ..\ovpnlibs\jniLibs
for /D %%f in (*) do (
- copy %%f\nopievpn ..\ovpnlibs\assets\nopievpn.%%f
- copy %%f\pievpn ..\ovpnlibs\assets\pievpn.%%f
+ copy %%f\nopie_openvpn ..\ovpnlibs\assets\nopie_openvpn.%%f
+ copy %%f\pie_openvpn ..\ovpnlibs\assets\pie_openvpn.%%f
- del %%f\libcrypto.so
- del %%f\libssl.so
+ rem Remove compiled openssl libs, will use platform .so libs
+ rem Reduces size of apk
+ del /Q %%f\libcrypto.so
+ del /Q %%f\libssl.so
- mkdir ..\ovpnlibs\jniLibs
- mkdir ..\ovpnlibs\jniLibs\%%f\
- copy %%f\*.so ..\ovpnlibs\jniLibs\%%f\
+ mkdir ..\ovpnlibs\jniLibs\%%f\
+ copy %%f\*.so ..\ovpnlibs\jniLibs\%%f\
)
-cd ..
+goto :exit
+
+:error
+echo(%lasterror%
+exit /b %errorlevel%
+
+:exit \ No newline at end of file