diff --git a/Engine/Build/Android/Java/src/com/epicgames/ue4/GameActivity.java.template b/Engine/Build/Android/Java/src/com/epicgames/ue4/GameActivity.java.template
index 722c5202060b..db5f6d717763 100644
--- a/Engine/Build/Android/Java/src/com/epicgames/ue4/GameActivity.java.template
+++ b/Engine/Build/Android/Java/src/com/epicgames/ue4/GameActivity.java.template
@@ -6140,7 +6140,7 @@ public class GameActivity extends $${gameActivitySuperClass}$$ implements Surfac
static
{
- System.loadLibrary("gnustl_shared");
+ System.loadLibrary("c++_shared");
//$${soLoadLibrary}$$
System.loadLibrary("UE4");
}
diff --git a/Engine/Build/Commit.gitdeps.xml b/Engine/Build/Commit.gitdeps.xml
index ff4c10e3f96a..d9735fb3c5bf 100644
--- a/Engine/Build/Commit.gitdeps.xml
+++ b/Engine/Build/Commit.gitdeps.xml
@@ -6101,10 +6101,10 @@
-
-
-
-
+
+
+
+
@@ -6125,8 +6125,8 @@
-
-
+
+
@@ -45016,14 +45016,14 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
@@ -45605,9 +45605,10 @@
-
-
-
+
+
+
+
@@ -45874,10 +45875,14 @@
-
-
-
-
+
+
+
+
+
+
+
+
@@ -46170,14 +46175,14 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
@@ -46695,14 +46700,14 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
@@ -47489,14 +47494,14 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
@@ -48265,12 +48270,12 @@
-
-
-
-
-
-
+
+
+
+
+
+
@@ -48614,10 +48619,14 @@
-
-
-
-
+
+
+
+
+
+
+
+
@@ -49297,10 +49306,10 @@
-
-
-
-
+
+
+
+
@@ -58477,10 +58486,10 @@
-
-
-
-
+
+
+
+
@@ -58561,15 +58570,15 @@
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
@@ -60819,7 +60828,7 @@
-
+
@@ -60883,7 +60892,7 @@
-
+
@@ -61092,7 +61101,6 @@
-
@@ -61183,6 +61191,7 @@
+
@@ -61242,7 +61251,6 @@
-
@@ -61320,6 +61328,7 @@
+
@@ -61704,7 +61713,7 @@
-
+
@@ -61949,7 +61958,7 @@
-
+
@@ -62054,7 +62063,7 @@
-
+
@@ -62164,7 +62173,7 @@
-
+
@@ -62414,7 +62423,7 @@
-
+
@@ -62753,6 +62762,7 @@
+
@@ -62770,6 +62780,7 @@
+
@@ -63245,7 +63256,6 @@
-
@@ -63457,7 +63467,6 @@
-
@@ -63553,7 +63562,7 @@
-
+
@@ -63567,7 +63576,7 @@
-
+
@@ -63841,7 +63850,7 @@
-
+
@@ -63896,12 +63905,11 @@
-
-
+
@@ -64214,7 +64222,7 @@
-
+
@@ -64889,6 +64897,7 @@
+
@@ -64905,7 +64914,7 @@
-
+
@@ -65125,7 +65134,6 @@
-
@@ -65434,7 +65442,7 @@
-
+
@@ -65474,7 +65482,6 @@
-
@@ -65592,7 +65599,7 @@
-
+
@@ -65669,7 +65676,7 @@
-
+
@@ -65889,7 +65896,6 @@
-
@@ -66072,7 +66078,7 @@
-
+
@@ -66099,7 +66105,6 @@
-
@@ -66277,7 +66282,7 @@
-
+
@@ -66346,7 +66351,6 @@
-
@@ -66373,7 +66377,6 @@
-
@@ -66396,7 +66399,7 @@
-
+
@@ -66589,9 +66592,8 @@
-
+
-
@@ -67372,6 +67374,7 @@
+
@@ -67489,7 +67492,7 @@
-
+
@@ -67548,7 +67551,6 @@
-
@@ -67587,6 +67589,7 @@
+
@@ -67787,11 +67790,11 @@
-
+
-
+
@@ -67951,7 +67954,7 @@
-
+
@@ -68033,7 +68036,7 @@
-
+
@@ -68245,7 +68248,6 @@
-
@@ -68600,6 +68602,7 @@
+
@@ -68629,6 +68632,7 @@
+
@@ -69086,7 +69090,6 @@
-
@@ -69123,6 +69126,7 @@
+
@@ -69237,7 +69241,7 @@
-
+
@@ -69282,7 +69286,7 @@
-
+
@@ -69621,12 +69625,11 @@
-
+
-
@@ -69930,7 +69933,7 @@
-
+
@@ -70163,7 +70166,6 @@
-
@@ -70994,7 +70996,7 @@
-
+
@@ -71304,7 +71306,7 @@
-
+
@@ -71701,6 +71703,7 @@
+
@@ -71939,7 +71942,6 @@
-
@@ -72183,6 +72185,7 @@
+
@@ -72573,7 +72576,6 @@
-
@@ -72795,6 +72797,7 @@
+
@@ -73659,6 +73662,7 @@
+
@@ -73901,7 +73905,6 @@
-
@@ -73939,7 +73942,7 @@
-
+
@@ -74136,7 +74139,6 @@
-
@@ -74443,6 +74445,7 @@
+
@@ -75270,6 +75273,7 @@
+
@@ -75307,9 +75311,9 @@
-
+
@@ -75346,6 +75350,7 @@
+
@@ -75378,7 +75383,7 @@
-
+
@@ -75459,7 +75464,7 @@
-
+
@@ -75532,7 +75537,6 @@
-
@@ -75581,6 +75585,7 @@
+
@@ -75679,6 +75684,7 @@
+
@@ -75710,7 +75716,7 @@
-
+
@@ -75839,7 +75845,6 @@
-
@@ -75891,6 +75896,7 @@
+
@@ -75988,6 +75994,7 @@
+
@@ -76536,6 +76543,7 @@
+
@@ -76782,6 +76790,7 @@
+
@@ -76791,7 +76800,7 @@
-
+
@@ -77067,7 +77076,7 @@
-
+
@@ -77223,7 +77232,7 @@
-
+
@@ -77288,7 +77297,7 @@
-
+
@@ -77407,7 +77416,7 @@
-
+
@@ -77627,6 +77636,7 @@
+
@@ -77673,6 +77683,7 @@
+
@@ -77688,6 +77699,7 @@
+
@@ -77712,7 +77724,7 @@
-
+
@@ -77889,6 +77901,7 @@
+
@@ -78040,7 +78053,6 @@
-
@@ -79051,6 +79063,7 @@
+
@@ -79298,7 +79311,7 @@
-
+
@@ -79306,7 +79319,6 @@
-
@@ -79350,6 +79362,7 @@
+
@@ -79509,6 +79522,7 @@
+
@@ -80071,6 +80085,7 @@
+
@@ -80105,7 +80120,7 @@
-
+
@@ -80166,13 +80181,13 @@
+
-
@@ -80310,6 +80325,7 @@
+
@@ -80422,7 +80438,7 @@
-
+
@@ -80464,6 +80480,7 @@
+
@@ -80484,7 +80501,7 @@
-
+
@@ -80687,7 +80704,7 @@
-
+
@@ -80759,6 +80776,7 @@
+
@@ -80826,7 +80844,6 @@
-
@@ -80914,7 +80931,6 @@
-
@@ -80927,6 +80943,7 @@
+
@@ -81229,7 +81246,6 @@
-
@@ -81428,7 +81444,7 @@
-
+
@@ -81608,7 +81624,7 @@
-
+
@@ -81668,14 +81684,13 @@
-
+
-
@@ -81775,7 +81790,7 @@
-
+
@@ -81934,6 +81949,7 @@
+
@@ -82068,6 +82084,7 @@
+
@@ -82253,6 +82270,7 @@
+
@@ -82314,7 +82332,7 @@
-
+
@@ -82369,7 +82387,7 @@
-
+
@@ -82415,7 +82433,7 @@
-
+
@@ -82717,7 +82735,6 @@
-
@@ -82801,7 +82818,6 @@
-
@@ -83003,6 +83019,7 @@
+
@@ -83023,7 +83040,7 @@
-
+
@@ -83142,7 +83159,7 @@
-
+
@@ -83321,7 +83338,6 @@
-
@@ -83602,6 +83618,7 @@
+
@@ -83654,7 +83671,6 @@
-
@@ -83670,7 +83686,6 @@
-
@@ -83919,6 +83934,7 @@
+
@@ -84064,7 +84080,7 @@
-
+
@@ -84135,7 +84151,7 @@
-
+
@@ -84243,7 +84259,6 @@
-
@@ -84507,11 +84522,10 @@
-
-
+
@@ -84579,6 +84593,7 @@
+
@@ -84966,7 +84981,6 @@
-
@@ -85109,7 +85123,7 @@
-
+
@@ -85391,7 +85405,7 @@
-
+
@@ -85402,7 +85416,6 @@
-
@@ -85530,7 +85543,6 @@
-
@@ -85557,7 +85569,6 @@
-
@@ -85705,7 +85716,6 @@
-
@@ -85795,7 +85805,7 @@
-
+
@@ -86092,7 +86102,7 @@
-
+
@@ -86113,7 +86123,7 @@
-
+
@@ -86213,6 +86223,7 @@
+
@@ -86494,6 +86505,7 @@
+
@@ -86953,7 +86965,6 @@
-
@@ -86967,6 +86978,7 @@
+
@@ -87059,7 +87071,7 @@
-
+
@@ -87445,6 +87457,7 @@
+
@@ -87467,7 +87480,7 @@
-
+
@@ -87494,7 +87507,6 @@
-
@@ -87752,6 +87764,7 @@
+
@@ -87931,6 +87944,7 @@
+
@@ -87979,7 +87993,6 @@
-
@@ -88188,7 +88201,7 @@
-
+
@@ -88222,7 +88235,7 @@
-
+
@@ -88292,7 +88305,7 @@
-
+
@@ -88304,7 +88317,6 @@
-
@@ -88386,7 +88398,6 @@
-
@@ -88468,7 +88479,7 @@
-
+
@@ -89157,7 +89168,6 @@
-
@@ -89215,7 +89225,7 @@
-
+
@@ -89228,7 +89238,6 @@
-
@@ -89457,6 +89466,7 @@
+
@@ -89920,7 +89930,7 @@
-
+
@@ -89962,7 +89972,6 @@
-
@@ -90151,6 +90160,7 @@
+
@@ -90170,6 +90180,7 @@
+
@@ -90364,7 +90375,6 @@
-
@@ -90389,7 +90399,7 @@
-
+
@@ -90499,6 +90509,7 @@
+
@@ -90508,7 +90519,6 @@
-
@@ -90531,7 +90541,6 @@
-
@@ -90852,6 +90861,7 @@
+
@@ -91113,6 +91123,7 @@
+
@@ -91663,6 +91674,7 @@
+
@@ -91944,6 +91956,7 @@
+
@@ -91959,7 +91972,7 @@
-
+
@@ -91987,7 +92000,6 @@
-
@@ -92027,6 +92039,7 @@
+
@@ -92289,7 +92302,6 @@
-
@@ -92383,7 +92395,7 @@
-
+
@@ -92426,6 +92438,7 @@
+
@@ -92821,7 +92834,7 @@
-
+
@@ -92955,6 +92968,7 @@
+
@@ -93080,7 +93094,7 @@
-
+
@@ -93123,7 +93137,7 @@
-
+
@@ -93177,7 +93191,7 @@
-
+
@@ -93378,13 +93392,12 @@
-
-
+
@@ -93750,7 +93763,6 @@
-
@@ -93867,7 +93879,7 @@
-
+
@@ -93904,6 +93916,7 @@
+
@@ -94430,7 +94443,7 @@
-
+
@@ -94685,7 +94698,7 @@
-
+
@@ -94815,7 +94828,6 @@
-
@@ -95153,7 +95165,7 @@
-
+
@@ -95280,7 +95292,6 @@
-
@@ -95342,7 +95353,6 @@
-
@@ -95494,6 +95504,7 @@
+
@@ -95535,6 +95546,7 @@
+
@@ -95584,7 +95596,7 @@
-
+
@@ -95812,7 +95824,7 @@
-
+
@@ -95855,7 +95867,6 @@
-
@@ -95890,6 +95901,7 @@
+
@@ -96541,7 +96553,7 @@
-
+
@@ -96670,7 +96682,6 @@
-
@@ -96690,6 +96701,7 @@
+
@@ -96780,7 +96792,6 @@
-
@@ -96999,6 +97010,7 @@
+
@@ -97111,10 +97123,12 @@
+
+
@@ -97662,7 +97676,6 @@
-
@@ -97699,6 +97712,7 @@
+
@@ -97715,7 +97729,7 @@
-
+
@@ -97823,7 +97837,7 @@
-
+
@@ -97972,6 +97986,7 @@
+
@@ -98089,7 +98104,7 @@
-
+
@@ -98162,6 +98177,7 @@
+
@@ -98227,6 +98243,7 @@
+
@@ -98685,6 +98702,7 @@
+
@@ -98755,7 +98773,7 @@
-
+
@@ -99380,7 +99398,7 @@
-
+
@@ -99670,7 +99688,6 @@
-
@@ -99680,6 +99697,7 @@
+
@@ -99716,7 +99734,7 @@
-
+
@@ -99778,7 +99796,7 @@
-
+
@@ -99789,7 +99807,7 @@
-
+
@@ -99944,7 +99962,6 @@
-
@@ -100087,7 +100104,6 @@
-
@@ -100111,7 +100127,6 @@
-
@@ -100360,7 +100375,7 @@
-
+
@@ -100675,7 +100690,7 @@
-
+
@@ -100736,6 +100751,7 @@
+
@@ -101023,6 +101039,7 @@
+
@@ -101058,6 +101075,7 @@
+
@@ -101153,7 +101171,6 @@
-
@@ -101226,7 +101243,7 @@
-
+
@@ -101427,7 +101444,7 @@
-
+
@@ -101458,7 +101475,7 @@
-
+
@@ -101545,7 +101562,7 @@
-
+
@@ -101585,7 +101602,7 @@
-
+
@@ -101662,7 +101679,6 @@
-
@@ -101677,6 +101693,7 @@
+
@@ -101761,6 +101778,7 @@
+
@@ -102159,7 +102177,6 @@
-
@@ -102168,12 +102185,12 @@
+
-
@@ -102195,6 +102212,7 @@
+
@@ -102202,7 +102220,6 @@
-
@@ -102240,6 +102257,7 @@
+
@@ -102348,7 +102366,6 @@
-
@@ -102380,6 +102397,7 @@
+
@@ -102395,6 +102413,7 @@
+
@@ -102435,6 +102454,7 @@
+
@@ -102458,7 +102478,6 @@
-
@@ -102517,6 +102536,7 @@
+
@@ -102556,6 +102576,7 @@
+
@@ -102582,9 +102603,11 @@
+
+
@@ -102645,7 +102668,6 @@
-
@@ -102656,7 +102678,6 @@
-
@@ -102733,7 +102754,6 @@
-
@@ -102756,6 +102776,7 @@
+
@@ -102763,8 +102784,10 @@
+
+
@@ -102775,7 +102798,6 @@
-
@@ -102801,6 +102823,7 @@
+
@@ -102835,6 +102858,7 @@
+
@@ -102852,6 +102876,7 @@
+
@@ -102879,6 +102904,7 @@
+
@@ -102909,6 +102935,7 @@
+
@@ -102928,8 +102955,8 @@
-
+
@@ -103018,13 +103045,14 @@
+
+
-
@@ -103042,7 +103070,6 @@
-
@@ -103075,6 +103102,7 @@
+
@@ -103099,7 +103127,6 @@
-
@@ -103183,7 +103210,6 @@
-
@@ -103251,7 +103277,6 @@
-
@@ -103272,7 +103297,6 @@
-
@@ -103306,7 +103330,6 @@
-
@@ -103320,10 +103343,10 @@
+
-
@@ -103331,7 +103354,9 @@
+
+
@@ -103449,6 +103474,7 @@
+
@@ -103470,7 +103496,6 @@
-
@@ -103580,6 +103605,7 @@
+
@@ -103617,14 +103643,15 @@
+
+
-
@@ -103660,6 +103687,7 @@
+
@@ -103671,6 +103699,7 @@
+
@@ -103726,7 +103755,6 @@
-
@@ -103837,7 +103865,6 @@
-
@@ -103852,7 +103879,9 @@
+
+
@@ -103865,7 +103894,6 @@
-
@@ -103930,8 +103958,8 @@
-
+
@@ -103945,7 +103973,6 @@
-
@@ -103954,7 +103981,6 @@
-
@@ -103966,7 +103992,6 @@
-
@@ -104007,6 +104032,7 @@
+
@@ -104118,7 +104144,6 @@
-
@@ -104190,7 +104215,6 @@
-
@@ -104206,7 +104230,6 @@
-
@@ -104234,6 +104257,7 @@
+
@@ -104247,7 +104271,6 @@
-
@@ -104310,7 +104333,6 @@
-
@@ -104390,6 +104412,7 @@
+
@@ -104397,6 +104420,7 @@
+
@@ -104411,7 +104435,6 @@
-
@@ -104441,6 +104464,7 @@
+
@@ -104585,7 +104609,6 @@
-
@@ -104623,6 +104646,7 @@
+
@@ -104756,13 +104780,11 @@
-
-
@@ -104802,7 +104824,6 @@
-
@@ -104867,6 +104888,7 @@
+
@@ -104883,6 +104905,7 @@
+
@@ -104915,6 +104938,7 @@
+
@@ -104989,6 +105013,7 @@
+
@@ -104998,6 +105023,7 @@
+
@@ -105043,6 +105069,7 @@
+
@@ -105061,6 +105088,7 @@
+
@@ -105189,9 +105217,7 @@
-
-
@@ -105290,9 +105316,9 @@
+
-
@@ -105331,7 +105357,6 @@
-
@@ -105386,7 +105411,6 @@
-
@@ -105403,9 +105427,10 @@
+
-
+
@@ -105506,12 +105531,12 @@
-
+
@@ -105652,6 +105677,7 @@
+
diff --git a/Engine/Source/Runtime/Core/Private/Android/AndroidPlatformFile.cpp b/Engine/Source/Runtime/Core/Private/Android/AndroidPlatformFile.cpp
index 9629c4291ec6..406f93451eda 100644
--- a/Engine/Source/Runtime/Core/Private/Android/AndroidPlatformFile.cpp
+++ b/Engine/Source/Runtime/Core/Private/Android/AndroidPlatformFile.cpp
@@ -539,7 +539,7 @@ public:
const FString ManifestPath = BasePath + ManifestFileName;
- int Handle = open(TCHAR_TO_UTF8(*ManifestPath), O_WRONLY | O_CREAT | O_TRUNC);
+ int Handle = open(TCHAR_TO_UTF8(*ManifestPath), O_WRONLY | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR);
if ( Handle == -1 )
{
diff --git a/Engine/Source/ThirdParty/Android/libunwind/Android/Build.bat b/Engine/Source/ThirdParty/Android/libunwind/Android/Build.bat
index e48b7e45e8fc..72c162ba79c6 100644
--- a/Engine/Source/ThirdParty/Android/libunwind/Android/Build.bat
+++ b/Engine/Source/ThirdParty/Android/libunwind/Android/Build.bat
@@ -5,11 +5,12 @@ REM Copyright Epic Games, Inc. All Rights Reserved.
setlocal
set PATH_TO_CMAKE_FILE=%CD%
+set PATH_TO_CMAKE_BIN=%ANDROID_HOME%/cmake/3.10.2.4988404/bin
REM Temporary build directories (used as working directories when running CMake)
set ANDROID_BUILD_PATH="%PATH_TO_CMAKE_FILE%\Build"
set MAKE="%NDKROOT%\prebuilt\windows-x86_64\bin\make.exe"
-set CMAKE_TOOLCHAIN_FILE="%PATH_TO_CMAKE_FILE%\..\..\..\PhysX3\Externals\CMakeModules\Android\android.toolchain.cmake"
+set CMAKE_TOOLCHAIN_FILE="%NDKROOT%\build\cmake\android.toolchain.cmake"
rem ..\..\CMake\PlatformScripts\Android\Android.cmake"
set ENGINE_ROOT="%PATH_TO_CMAKE_FILE%\..\..\..\..\..\"
@@ -44,7 +45,7 @@ if exist "%ANDROID_BUILD_PATH%" (rmdir "%ANDROID_BUILD_PATH%" /s/q)
echo Building for Android (%BUILD_ARCH%) %BUILD_TYPE%, API: %NATIVE_API_LEVEL%
mkdir "%ANDROID_BUILD_PATH%"
pushd "%ANDROID_BUILD_PATH%"
-%ENGINE_ROOT%\Extras\ThirdPartyNotUE\CMake\bin\cmake.exe -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE=%CMAKE_TOOLCHAIN_FILE% -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=%BUILD_TYPE% -DANDROID_NATIVE_API_LEVEL=%NATIVE_API_LEVEL% -DANDROID_ABI=%BUILD_ARCH% -DANDROID_STL=gnustl_shared %PATH_TO_CMAKE_FILE%
+%PATH_TO_CMAKE_BIN%/cmake.exe -DCMAKE_TOOLCHAIN_FILE=%CMAKE_TOOLCHAIN_FILE% -G "MinGW Makefiles" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=%BUILD_TYPE% -DANDROID_NATIVE_API_LEVEL=%NATIVE_API_LEVEL% DANDROID_PLATFORM=%NATIVE_API_LEVEL% -DANDROID_ABI=%BUILD_ARCH% -DANDROID_STL=c++_shared %PATH_TO_CMAKE_FILE%
REM Now compile it
%MAKE% -j %NUMBER_OF_PROCESSORS%
diff --git a/Engine/Source/ThirdParty/Expat/expat-2.2.0/BuildForUE/Android/Android.cmake b/Engine/Source/ThirdParty/Expat/expat-2.2.0/BuildForUE/Android/Android.cmake
index ac2e3c90d402..d78f457def67 100644
--- a/Engine/Source/ThirdParty/Expat/expat-2.2.0/BuildForUE/Android/Android.cmake
+++ b/Engine/Source/ThirdParty/Expat/expat-2.2.0/BuildForUE/Android/Android.cmake
@@ -1,5 +1,5 @@
#include(../../CMake/PlatformScripts/Android/Android.cmake)
-include(D:/Fortnite/Engine/Source/ThirdParty/CMake/PlatformScripts/Android/Android.cmake)
+include($ENV{NDKROOT}/build/cmake/android.toolchain.cmake)
set(SKIP_PRE_BUILD_COMMAND 1)
diff --git a/Engine/Source/ThirdParty/Expat/expat-2.2.0/BuildForUE/Android/BuildForAndroid.bat b/Engine/Source/ThirdParty/Expat/expat-2.2.0/BuildForUE/Android/BuildForAndroid.bat
index 72c456558670..743c04d5ffae 100644
--- a/Engine/Source/ThirdParty/Expat/expat-2.2.0/BuildForUE/Android/BuildForAndroid.bat
+++ b/Engine/Source/ThirdParty/Expat/expat-2.2.0/BuildForUE/Android/BuildForAndroid.bat
@@ -7,6 +7,8 @@ setlocal
set PATH_TO_CMAKE_FILE=%CD%\..\..
REM Temporary build directories (used as working directories when running CMake)
+set CMAKE_EXE="%ANDROID_HOME%\cmake\3.10.2.4988404\bin\cmake.exe"
+set ANDROID_TOOLCHAIN_FILE="%PATH_TO_CMAKE_FILE%\BuildForUE\Android\Android.cmake"
set ANDROID_BUILD_PATH="%PATH_TO_CMAKE_FILE%\Android\Build"
set ANDROID_LIB_PATH="%PATH_TO_CMAKE_FILE%\Android"
set MAKE="%NDKROOT%\prebuilt\windows-x86_64\bin\make.exe"
@@ -14,25 +16,22 @@ set CMAKE_GLOBAL_DIR="%PATH_TO_CMAKE_FILE%\..\..\CMake\PlatformScripts"
if exist "%ANDROID_BUILD_PATH%" (rmdir "%ANDROID_BUILD_PATH%" /s/q)
-echo Building for Android (64-bit) Release
+echo Building for Android (ARM 64-bit) Release
mkdir "%ANDROID_BUILD_PATH%"
pushd "%ANDROID_BUILD_PATH%"
-..\..\..\..\..\..\Extras\ThirdPartyNotUE\CMake\bin\cmake.exe -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CMAKE_FILE%\BuildForUE\Android\Android.cmake" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Release -DANDROID_NATIVE_API_LEVEL=android-21 -DANDROID_ABI=arm64-v8a -DANDROID_STL=gnustl_shared -DCMAKE_SUPPRESS_REGENERATION=1 -DBUILD_tools=0 -DBUILD_examples=0 -DBUILD_tests=0 -DBUILD_shared=0 %PATH_TO_CMAKE_FILE%
+%CMAKE_EXE% -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Release -DANDROID_NATIVE_API_LEVEL=android-21 -DANDROID_ABI=arm64-v8a -DANDROID_STL=c++_shared -DCMAKE_SUPPRESS_REGENERATION=1 -DBUILD_tools=0 -DBUILD_examples=0 -DBUILD_tests=0 -DBUILD_shared=0 %PATH_TO_CMAKE_FILE%
REM Now compile it
%MAKE%
mkdir %ANDROID_LIB_PATH%\Release\arm64
move /y %ANDROID_BUILD_PATH%\libexpat.a %ANDROID_LIB_PATH%\Release\arm64
-
-
popd
-
rmdir "%ANDROID_BUILD_PATH%" /s/q
-echo Building for Android (64-bit) Debug
+echo Building for Android (ARM 64-bit) Debug
mkdir "%ANDROID_BUILD_PATH%"
pushd "%ANDROID_BUILD_PATH%"
-..\..\..\..\..\..\Extras\ThirdPartyNotUE\CMake\bin\cmake.exe -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CMAKE_FILE%\BuildForUE\Android\Android.cmake" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Debug -DANDROID_NATIVE_API_LEVEL=android-21 -DANDROID_ABI=arm64-v8a -DANDROID_STL=gnustl_shared -DCMAKE_SUPPRESS_REGENERATION=1 -DBUILD_tools=0 -DBUILD_examples=0 -DBUILD_tests=0 -DBUILD_shared=0 %PATH_TO_CMAKE_FILE%
+%CMAKE_EXE% -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Debug -DANDROID_NATIVE_API_LEVEL=android-21 -DANDROID_ABI=arm64-v8a -DANDROID_STL=c++_shared -DCMAKE_SUPPRESS_REGENERATION=1 -DBUILD_tools=0 -DBUILD_examples=0 -DBUILD_tests=0 -DBUILD_shared=0 %PATH_TO_CMAKE_FILE%
REM Now compile it
%MAKE%
@@ -41,10 +40,34 @@ move /y %ANDROID_BUILD_PATH%\libexpat.a %ANDROID_LIB_PATH%\Debug\arm64
popd
rmdir "%ANDROID_BUILD_PATH%" /s/q
-echo Building for Android (32-bit) Release
+echo Building for Android (x86 64-bit) Release
mkdir "%ANDROID_BUILD_PATH%"
pushd "%ANDROID_BUILD_PATH%"
-..\..\..\..\..\..\Extras\ThirdPartyNotUE\CMake\bin\cmake.exe -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CMAKE_FILE%\BuildForUE\Android\Android.cmake" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Release -DANDROID_NATIVE_API_LEVEL=android-19 -DANDROID_ABI=armeabi-v7a -DANDROID_STL=gnustl_shared -DCMAKE_SUPPRESS_REGENERATION=1 -DBUILD_tools=0 -DBUILD_examples=0 -DBUILD_tests=0 -DBUILD_shared=0 %PATH_TO_CMAKE_FILE%
+%CMAKE_EXE% -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Release -DANDROID_NATIVE_API_LEVEL=android-21 -DANDROID_ABI=x86_64 -DANDROID_STL=c++_shared -DCMAKE_SUPPRESS_REGENERATION=1 -DBUILD_tools=0 -DBUILD_examples=0 -DBUILD_tests=0 -DBUILD_shared=0 %PATH_TO_CMAKE_FILE%
+
+REM Now compile it
+%MAKE%
+mkdir %ANDROID_LIB_PATH%\Release\x64
+move /y %ANDROID_BUILD_PATH%\libexpat.a %ANDROID_LIB_PATH%\Release\x64
+popd
+rmdir "%ANDROID_BUILD_PATH%" /s/q
+
+echo Building for Android (x86 64-bit) Debug
+mkdir "%ANDROID_BUILD_PATH%"
+pushd "%ANDROID_BUILD_PATH%"
+%CMAKE_EXE% -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Debug -DANDROID_NATIVE_API_LEVEL=android-21 -DANDROID_ABI=x86_64 -DANDROID_STL=c++_shared -DCMAKE_SUPPRESS_REGENERATION=1 -DBUILD_tools=0 -DBUILD_examples=0 -DBUILD_tests=0 -DBUILD_shared=0 %PATH_TO_CMAKE_FILE%
+
+REM Now compile it
+%MAKE%
+mkdir %ANDROID_LIB_PATH%\Debug\x64
+move /y %ANDROID_BUILD_PATH%\libexpat.a %ANDROID_LIB_PATH%\Debug\x64
+popd
+rmdir "%ANDROID_BUILD_PATH%" /s/q
+
+echo Building for Android (ARM 32-bit) Release
+mkdir "%ANDROID_BUILD_PATH%"
+pushd "%ANDROID_BUILD_PATH%"
+%CMAKE_EXE% -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Release -DANDROID_NATIVE_API_LEVEL=android-19 -DANDROID_ABI=armeabi-v7a -DANDROID_STL=c++_shared -DCMAKE_SUPPRESS_REGENERATION=1 -DBUILD_tools=0 -DBUILD_examples=0 -DBUILD_tests=0 -DBUILD_shared=0 %PATH_TO_CMAKE_FILE%
REM Now compile it
%MAKE%
@@ -53,15 +76,38 @@ move /y %ANDROID_BUILD_PATH%\libexpat.a %ANDROID_LIB_PATH%\Release\armv7
popd
rmdir "%ANDROID_BUILD_PATH%" /s/q
-echo Building for Android (32-bit) Debug
+echo Building for Android (ARM 32-bit) Debug
mkdir "%ANDROID_BUILD_PATH%"
pushd "%ANDROID_BUILD_PATH%"
-..\..\..\..\..\..\Extras\ThirdPartyNotUE\CMake\bin\cmake.exe -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CMAKE_FILE%\BuildForUE\Android\Android.cmake" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Debug -DANDROID_NATIVE_API_LEVEL=android-19 -DANDROID_ABI=armeabi-v7a -DANDROID_STL=gnustl_shared -DCMAKE_SUPPRESS_REGENERATION=1 -DBUILD_tools=0 -DBUILD_examples=0 -DBUILD_tests=0 -DBUILD_shared=0 %PATH_TO_CMAKE_FILE%
+%CMAKE_EXE% -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Debug -DANDROID_NATIVE_API_LEVEL=android-19 -DANDROID_ABI=armeabi-v7a -DANDROID_STL=c++_shared -DCMAKE_SUPPRESS_REGENERATION=1 -DBUILD_tools=0 -DBUILD_examples=0 -DBUILD_tests=0 -DBUILD_shared=0 %PATH_TO_CMAKE_FILE%
REM Now compile it
%MAKE%
mkdir %ANDROID_LIB_PATH%\Debug\armv7
move /y %ANDROID_BUILD_PATH%\libexpat.a %ANDROID_LIB_PATH%\Debug\armv7
popd
+
+echo Building for Android (x86 32-bit) Release
+mkdir "%ANDROID_BUILD_PATH%"
+pushd "%ANDROID_BUILD_PATH%"
+%CMAKE_EXE% -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Release -DANDROID_NATIVE_API_LEVEL=android-19 -DANDROID_ABI=x86 -DANDROID_STL=c++_shared -DCMAKE_SUPPRESS_REGENERATION=1 -DBUILD_tools=0 -DBUILD_examples=0 -DBUILD_tests=0 -DBUILD_shared=0 %PATH_TO_CMAKE_FILE%
+
+REM Now compile it
+%MAKE%
+mkdir %ANDROID_LIB_PATH%\Release\x86
+move /y %ANDROID_BUILD_PATH%\libexpat.a %ANDROID_LIB_PATH%\Release\x86
+popd
+rmdir "%ANDROID_BUILD_PATH%" /s/q
+
+echo Building for Android (x86 32-bit) Debug
+mkdir "%ANDROID_BUILD_PATH%"
+pushd "%ANDROID_BUILD_PATH%"
+%CMAKE_EXE% -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Debug -DANDROID_NATIVE_API_LEVEL=android-19 -DANDROID_ABI=x86 -DANDROID_STL=c++_shared -DCMAKE_SUPPRESS_REGENERATION=1 -DBUILD_tools=0 -DBUILD_examples=0 -DBUILD_tests=0 -DBUILD_shared=0 %PATH_TO_CMAKE_FILE%
+
+REM Now compile it
+%MAKE%
+mkdir %ANDROID_LIB_PATH%\Debug\x86
+move /y %ANDROID_BUILD_PATH%\libexpat.a %ANDROID_LIB_PATH%\Debug\x86
+popd
rmdir "%ANDROID_BUILD_PATH%" /s/q
diff --git a/Engine/Source/ThirdParty/FreeType2/FreeType2-2.10.0/BuildForUE/Android/BuildForAndroid_21.bat b/Engine/Source/ThirdParty/FreeType2/FreeType2-2.10.0/BuildForUE/Android/BuildForAndroid_21.bat
new file mode 100644
index 000000000000..0b704f61aff4
--- /dev/null
+++ b/Engine/Source/ThirdParty/FreeType2/FreeType2-2.10.0/BuildForUE/Android/BuildForAndroid_21.bat
@@ -0,0 +1,201 @@
+@ECHO OFF
+
+setlocal
+
+set ROOT_DIR=%CD%
+set OUTPUT_ROOT_DIR=%CD%/../../lib/Android
+
+REM NDK OVERRIDE. Use a different NDK then your environment variable NDKROOT by setting it here
+set NDKROOT=G:/android-ndk-r21
+
+set PATH=D:\cmake-3.16.3-win64-x64\bin;%PATH%
+
+set PATH_TO_THIRDPARTY=%ROOT_DIR%/../../../..
+set PATH_TO_PNG=%PATH_TO_THIRDPARTY%/libpng/libPNG-1.5.27
+
+set PATH_TO_CMAKE_FILE=%ROOT_DIR%/../../
+set PATH_TO_CROSS_COMPILE_CMAKE_FILES=%NDKROOT%/build/cmake/android.toolchain.cmake
+set ANDROID_BUILD_PATH_ROOT=%ROOT_DIR%/Build
+
+set PATH_TO_CROSS_COMPILE_CMAKE_FILES=%NDKROOT%/build/cmake/android.toolchain.cmake
+set ANDROID_NMAKE_EXEC=%NDKROOT%/prebuilt/windows-x86_64/bin/make.exe
+
+REM Remove Build folder and recreate it to clear it out
+if exist "%ANDROID_BUILD_PATH_ROOT%" (rmdir "%ANDROID_BUILD_PATH_ROOT%" /s/q)
+mkdir "%ANDROID_BUILD_PATH_ROOT%"
+
+REM Set any additional flags here
+set CXXFLAGS="-std=c++14"
+set AdditionalCompileArguments=-DFT_WITH_PNG=ON -DPNG_LIBRARY=%PATH_TO_PNG% -DPNG_PNG_INCLUDE_DIR=%PATH_TO_PNG%
+
+set OutputFileName=libfreetype
+set OutputDebugFileAddition=d
+set OutputFileExtension=.a
+
+rem ----------------------------------------------------------------------------------
+rem -- ARMv7(Debug) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for ARMv7(Debug)
+set AndroidABI=armeabi-v7a
+set AndroidAPILevel=android-19
+set BuildType=Debug
+set DestFolder=%OUTPUT_ROOT_DIR%/ARMv7/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- ARMv7(Release) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for ARMv7(Release)
+set BuildType=Release
+set DestFolder=%OUTPUT_ROOT_DIR%/ARMv7/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%OutputFileName%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- ARM64(Debug) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for ARM64(Debug)
+set AndroidABI=arm64-v8a
+set AndroidAPILevel=android-21
+set BuildType=Debug
+set DestFolder=%OUTPUT_ROOT_DIR%/ARM64/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- ARM64(Release) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for ARM64(Release)
+set BuildType=Release
+set DestFolder=%OUTPUT_ROOT_DIR%/ARM64/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%OutputFileName%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- x86(Debug) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for x86(Debug)
+set AndroidABI=x86
+set AndroidAPILevel=android-19
+set BuildType=Debug
+set DestFolder=%OUTPUT_ROOT_DIR%/x86/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- x86(Release) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for x86(Release)
+set BuildType=Release
+set DestFolder=%OUTPUT_ROOT_DIR%/x86/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%OutputFileName%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- x64(Debug) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for x64(Debug)
+set AndroidABI=x86_64
+set AndroidAPILevel=android-21
+set BuildType=Debug
+set DestFolder=%OUTPUT_ROOT_DIR%/x64/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- x64(Release) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for x64(Release)
+set BuildType=Release
+set DestFolder=%OUTPUT_ROOT_DIR%/x64/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%OutputFileName%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputFileExtension%"
+
diff --git a/Engine/Source/ThirdParty/GoogleOboe/Private/aaudio/AAudioLoader.cpp b/Engine/Source/ThirdParty/GoogleOboe/Private/aaudio/AAudioLoader.cpp
index a8027d88b5d3..6b74ca4388c9 100644
--- a/Engine/Source/ThirdParty/GoogleOboe/Private/aaudio/AAudioLoader.cpp
+++ b/Engine/Source/ThirdParty/GoogleOboe/Private/aaudio/AAudioLoader.cpp
@@ -305,7 +305,8 @@ AAudioLoader::signature_I_PSKPLPL AAudioLoader::load_I_PSKPLPL(const char *funct
// The aaudio_ usage, content and input_preset types were added in NDK 17,
// which is the first version to support Android Pie (API 28).
-#if __NDK_MAJOR__ >= 17
+//#if __NDK_MAJOR__ >= 17
+#if 0
ASSERT_INT32(aaudio_usage_t);
ASSERT_INT32(aaudio_content_type_t);
diff --git a/Engine/Source/ThirdParty/GooglePlay/gpg-cpp-sdk.v3.0.1/GpgCppSDK.Build.cs b/Engine/Source/ThirdParty/GooglePlay/gpg-cpp-sdk.v3.0.1/GpgCppSDK.Build.cs
index 6fabfc243dc8..fc9fb1f226f4 100644
--- a/Engine/Source/ThirdParty/GooglePlay/gpg-cpp-sdk.v3.0.1/GpgCppSDK.Build.cs
+++ b/Engine/Source/ThirdParty/GooglePlay/gpg-cpp-sdk.v3.0.1/GpgCppSDK.Build.cs
@@ -15,9 +15,9 @@ public class GpgCppSDK : ModuleRules
PublicIncludePaths.Add(Path.Combine(GPGAndroidPath, "include/"));
- PublicAdditionalLibraries.Add(Path.Combine(GPGAndroidPath, "lib/gnustl/armeabi-v7a/libgpg.a"));
- PublicAdditionalLibraries.Add(Path.Combine(GPGAndroidPath, "lib/gnustl/arm64-v8a/libgpg.a"));
- PublicAdditionalLibraries.Add(Path.Combine(GPGAndroidPath, "lib/gnustl/x86/libgpg.a"));
+ PublicAdditionalLibraries.Add(Path.Combine(GPGAndroidPath, "lib/c++/armeabi-v7a/libgpg.a"));
+ PublicAdditionalLibraries.Add(Path.Combine(GPGAndroidPath, "lib/c++/arm64-v8a/libgpg.a"));
+ PublicAdditionalLibraries.Add(Path.Combine(GPGAndroidPath, "lib/c++/x86/libgpg.a"));
}
}
}
diff --git a/Engine/Source/ThirdParty/HarfBuzz/harfbuzz-2.4.0/BuildForUE/Android/BuildForAndroid_21.bat b/Engine/Source/ThirdParty/HarfBuzz/harfbuzz-2.4.0/BuildForUE/Android/BuildForAndroid_21.bat
new file mode 100644
index 000000000000..ec83c57f5e8c
--- /dev/null
+++ b/Engine/Source/ThirdParty/HarfBuzz/harfbuzz-2.4.0/BuildForUE/Android/BuildForAndroid_21.bat
@@ -0,0 +1,198 @@
+@ECHO OFF
+
+setlocal
+
+set ROOT_DIR=%CD%
+set OUTPUT_ROOT_DIR=%CD%/../../lib/Android
+
+REM NDK OVERRIDE. Use a different NDK then your environment variable NDKROOT by setting it here
+set NDKROOT=G:/android-ndk-r21
+
+set PATH=d:/cmake-3.16.3-win64-x64/bin;%PATH%
+
+set PATH_TO_CMAKE_FILE=%ROOT_DIR%/../
+set PATH_TO_CROSS_COMPILE_CMAKE_FILES=%NDKROOT%/build/cmake/android.toolchain.cmake
+set ANDROID_BUILD_PATH_ROOT=%ROOT_DIR%/Build
+
+set PATH_TO_CROSS_COMPILE_CMAKE_FILES=%NDKROOT%/build/cmake/android.toolchain.cmake
+set ANDROID_NMAKE_EXEC=%NDKROOT%/prebuilt/windows-x86_64/bin/make.exe
+
+REM Remove Build folder and recreate it to clear it out
+if exist "%ANDROID_BUILD_PATH_ROOT%" (rmdir "%ANDROID_BUILD_PATH_ROOT%" /s/q)
+mkdir "%ANDROID_BUILD_PATH_ROOT%"
+
+REM Set any additional flags here
+set CXXFLAGS="-std=c++14 -Wno-sign-compare -DU_DISABLE_VERSION_SUFFIX=0"
+set AdditionalCompileArguments=-DUSE_INTEL_ATOMIC_PRIMITIVES=TRUE
+
+set OutputFileName=libharfbuzz
+set OutputDebugFileAddition=
+set OutputFileExtension=.a
+
+rem ----------------------------------------------------------------------------------
+rem -- ARMv7(Debug) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for ARMv7(Debug)
+set AndroidABI=armeabi-v7a
+set AndroidAPILevel=android-19
+set BuildType=Debug
+set DestFolder=%OUTPUT_ROOT_DIR%/ARMv7/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%cd%/../%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- ARMv7(Release) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for ARMv7(Release)
+set BuildType=Release
+set DestFolder=%OUTPUT_ROOT_DIR%/ARMv7/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%cd%/../%OutputFileName%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- ARM64(Debug) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for ARM64(Debug)
+set AndroidABI=arm64-v8a
+set AndroidAPILevel=android-21
+set BuildType=Debug
+set DestFolder=%OUTPUT_ROOT_DIR%/ARM64/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%cd%/../%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- ARM64(Release) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for ARM64(Release)
+set BuildType=Release
+set DestFolder=%OUTPUT_ROOT_DIR%/ARM64/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%cd%/../%OutputFileName%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- x86(Debug) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for x86(Debug)
+set AndroidABI=x86
+set AndroidAPILevel=android-19
+set BuildType=Debug
+set DestFolder=%OUTPUT_ROOT_DIR%/x86/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%cd%/../%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- x86(Release) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for x86(Release)
+set BuildType=Release
+set DestFolder=%OUTPUT_ROOT_DIR%/x86/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%cd%/../%OutputFileName%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- x64(Debug) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for x64(Debug)
+set AndroidABI=x86_64
+set AndroidAPILevel=android-21
+set BuildType=Debug
+set DestFolder=%OUTPUT_ROOT_DIR%/x64/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%cd%/../%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- x64(Release) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for x64(Release)
+set BuildType=Release
+set DestFolder=%OUTPUT_ROOT_DIR%/x64/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%cd%/../%OutputFileName%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputFileExtension%"
+
diff --git a/Engine/Source/ThirdParty/HarfBuzz/harfbuzz-2.4.0/src/hb-common.cc b/Engine/Source/ThirdParty/HarfBuzz/harfbuzz-2.4.0/src/hb-common.cc
index ab93bf42772c..77690dca3a55 100644
--- a/Engine/Source/ThirdParty/HarfBuzz/harfbuzz-2.4.0/src/hb-common.cc
+++ b/Engine/Source/ThirdParty/HarfBuzz/harfbuzz-2.4.0/src/hb-common.cc
@@ -67,7 +67,7 @@ _hb_options_init ()
p = c + strlen (c);
#define OPTION(name, symbol) \
- if (0 == strncmp (c, name, p - c) && strlen (name) == p - c) u.opts.symbol = true;
+ if (0 == strncmp (c, name, p - c) && strlen (name) == (size_t)(p - c)) u.opts.symbol = true;
OPTION ("uniscribe-bug-compatible", uniscribe_bug_compatible);
OPTION ("aat", aat);
diff --git a/Engine/Source/ThirdParty/ICU/icu4c-64_1/BuildForUE/Android/BuildForAndroid_21.bat b/Engine/Source/ThirdParty/ICU/icu4c-64_1/BuildForUE/Android/BuildForAndroid_21.bat
new file mode 100644
index 000000000000..8e2a18515883
--- /dev/null
+++ b/Engine/Source/ThirdParty/ICU/icu4c-64_1/BuildForUE/Android/BuildForAndroid_21.bat
@@ -0,0 +1,199 @@
+@ECHO OFF
+
+setlocal
+
+set ROOT_DIR=%CD%
+set OUTPUT_ROOT_DIR=%CD%/../../lib/Android
+
+REM NDK OVERRIDE. Use a different NDK then your environment variable NDKROOT by setting it here
+set NDKROOT=G:/android-ndk-r21
+
+set PATH=d:/cmake-3.16.3-win64-x64/bin;%PATH%
+
+set PATH_TO_CMAKE_FILE=%ROOT_DIR%/../
+set PATH_TO_CROSS_COMPILE_CMAKE_FILES=%NDKROOT%/build/cmake/android.toolchain.cmake
+set ANDROID_BUILD_PATH_ROOT=%ROOT_DIR%/Build
+
+set PATH_TO_CROSS_COMPILE_CMAKE_FILES=%NDKROOT%/build/cmake/android.toolchain.cmake
+set ANDROID_NMAKE_EXEC=%NDKROOT%/prebuilt/windows-x86_64/bin/make.exe
+
+REM Remove Build folder and recreate it to clear it out
+if exist "%ANDROID_BUILD_PATH_ROOT%" (rmdir "%ANDROID_BUILD_PATH_ROOT%" /s/q)
+mkdir "%ANDROID_BUILD_PATH_ROOT%"
+
+REM Set any additional flags here
+set CXXFLAGS="-std=c++14"
+set AdditionalCompileArguments=
+
+set OutputFileName=libicu
+set OutputDebugFileAddition=
+set OutputFileExtension=.a
+
+rem ----------------------------------------------------------------------------------
+rem -- ARMv7(Debug) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for ARMv7(Debug)
+set AndroidABI=armeabi-v7a
+set AndroidAPILevel=android-19
+set BuildType=Debug
+set DestFolder=%OUTPUT_ROOT_DIR%/ARMv7/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%cd%/../%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- ARMv7(Release) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for ARMv7(Release)
+set BuildType=Release
+set DestFolder=%OUTPUT_ROOT_DIR%/ARMv7/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%cd%/../%OutputFileName%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- ARM64(Debug) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for ARM64(Debug)
+set AndroidABI=arm64-v8a
+set AndroidAPILevel=android-21
+set BuildType=Debug
+set DestFolder=%OUTPUT_ROOT_DIR%/ARM64/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%cd%/../%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- ARM64(Release) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for ARM64(Release)
+set BuildType=Release
+set DestFolder=%OUTPUT_ROOT_DIR%/ARM64/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%cd%/../%OutputFileName%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- x86(Debug) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for x86(Debug)
+set AndroidABI=x86
+set AndroidAPILevel=android-19
+set BuildType=Debug
+set DestFolder=%OUTPUT_ROOT_DIR%/x86/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%cd%/../%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- x86(Release) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for x86(Release)
+set BuildType=Release
+set DestFolder=%OUTPUT_ROOT_DIR%/x86/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%cd%/../%OutputFileName%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- x64(Debug) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for x64(Debug)
+set AndroidABI=x86_64
+set AndroidAPILevel=android-21
+set BuildType=Debug
+set DestFolder=%OUTPUT_ROOT_DIR%/x64/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%cd%/../%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputDebugFileAddition%%OutputFileExtension%"
+
+
+rem ----------------------------------------------------------------------------------
+rem -- x64(Release) --
+rem ----------------------------------------------------------------------------------
+echo Building FreeType makefile for x64(Release)
+set BuildType=Release
+set DestFolder=%OUTPUT_ROOT_DIR%/x64/%BuildType%
+
+if exist "%DestFolder%" (rmdir "%DestFolder%" /s/q)
+mkdir "%DestFolder%"
+
+set CurrentAndroidBuildDir=%ANDROID_BUILD_PATH_ROOT%\%AndroidABI%\%BuildType%
+mkdir "%CurrentAndroidBuildDir%"
+cd %CurrentAndroidBuildDir%
+
+cmake -G"MinGW Makefiles" -fPIC -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CROSS_COMPILE_CMAKE_FILES%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM="%ANDROID_NMAKE_EXEC%" -DANDROID_NATIVE_API_LEVEL="%AndroidAPILevel%" -DANDROID_ABI="%AndroidABI%" -DANDROID_STL="c++_shared" -DCMAKE_BUILD_TYPE=%BuildType% -DCMAKE_CXX_FLAGS=%CXXFLAGS% %AdditionalCompileArguments% %PATH_TO_CMAKE_FILE%
+cmake --build .
+
+move /y "%cd%/../%OutputFileName%%OutputFileExtension%" "%DestFolder%\%OutputFileName%%OutputFileExtension%"
+
+
diff --git a/Engine/Source/ThirdParty/Ogg/libogg-1.2.2/build/Android/BuildForAndroid.bat b/Engine/Source/ThirdParty/Ogg/libogg-1.2.2/build/Android/BuildForAndroid.bat
new file mode 100644
index 000000000000..28dbb68bc9ef
--- /dev/null
+++ b/Engine/Source/ThirdParty/Ogg/libogg-1.2.2/build/Android/BuildForAndroid.bat
@@ -0,0 +1,8 @@
+SET NDK_PROJECT_PATH=%CD%/jni
+cd %NDK_PROJECT_PATH%
+call %NDKROOT%/ndk-build APP_ABI="armeabi-v7a x86" APP_PLATFORM=android-19 APP_BUILD_SCRIPT=%NDK_PROJECT_PATH%/Android.mk
+call %NDKROOT%/ndk-build APP_ABI="arm64-v8a x86_64" APP_PLATFORM=android-21 APP_BUILD_SCRIPT=%NDK_PROJECT_PATH%/Android.mk
+copy /y obj\local\armeabi-v7a\libogg.a ..\..\..\lib\Android\ARMv7
+copy /y obj\local\arm64-v8a\libogg.a ..\..\..\lib\Android\ARM64
+copy /y obj\local\x86\libogg.a ..\..\..\lib\Android\x86
+copy /y obj\local\x86_64\libogg.a ..\..\..\lib\Android\x64
\ No newline at end of file
diff --git a/Engine/Source/ThirdParty/Ogg/libogg-1.2.2/build/Android/jni/Application.mk b/Engine/Source/ThirdParty/Ogg/libogg-1.2.2/build/Android/jni/Application.mk
index 3e257d0747c4..730f54539d55 100644
--- a/Engine/Source/ThirdParty/Ogg/libogg-1.2.2/build/Android/jni/Application.mk
+++ b/Engine/Source/ThirdParty/Ogg/libogg-1.2.2/build/Android/jni/Application.mk
@@ -1 +1 @@
-APP_ABI := armeabi-v7a x86 x86_64
\ No newline at end of file
+APP_ABI := armeabi-v7a arm64-v8a x86 x86_64
\ No newline at end of file
diff --git a/Engine/Source/ThirdParty/Vivox/vivoxclientapi/BuildForUE4/Android/Android.cmake b/Engine/Source/ThirdParty/Vivox/vivoxclientapi/BuildForUE4/Android/Android.cmake
index 5265619eb317..9f417fa72b3e 100644
--- a/Engine/Source/ThirdParty/Vivox/vivoxclientapi/BuildForUE4/Android/Android.cmake
+++ b/Engine/Source/ThirdParty/Vivox/vivoxclientapi/BuildForUE4/Android/Android.cmake
@@ -1,4 +1,4 @@
-include(../../../PhysX3/Externals/CMakeModules/Android/android.toolchain.cmake)
+include($ENV{NDKROOT}/build/cmake/android.toolchain.cmake)
set(CMAKE_C_FLAGS_DEBUG "-O0" CACHE TYPE INTERNAL FORCE)
set(CMAKE_C_FLAGS_RELEASE "-O3" CACHE TYPE INTERNAL FORCE)
diff --git a/Engine/Source/ThirdParty/Vivox/vivoxclientapi/BuildForUE4/Android/BuildForAndroid.bat b/Engine/Source/ThirdParty/Vivox/vivoxclientapi/BuildForUE4/Android/BuildForAndroid.bat
index 8e3bd7991131..0bea38c66582 100644
--- a/Engine/Source/ThirdParty/Vivox/vivoxclientapi/BuildForUE4/Android/BuildForAndroid.bat
+++ b/Engine/Source/ThirdParty/Vivox/vivoxclientapi/BuildForUE4/Android/BuildForAndroid.bat
@@ -7,6 +7,8 @@ setlocal
set PATH_TO_CMAKE_FILE=%CD%\..\
REM Temporary build directories (used as working directories when running CMake)
+set CMAKE_EXE="%ANDROID_HOME%\cmake\3.10.2.4988404\bin\cmake.exe"
+set ANDROID_TOOLCHAIN_FILE="%PATH_TO_CMAKE_FILE%\Android\Android.cmake"
set ANDROID_BUILD_PATH="%PATH_TO_CMAKE_FILE%\..\Android\Build"
set ANDROID_LIB_PATH="%PATH_TO_CMAKE_FILE%\..\Android"
set MAKE="%NDKROOT%\prebuilt\windows-x86_64\bin\make.exe"
@@ -14,10 +16,10 @@ set MAKE="%NDKROOT%\prebuilt\windows-x86_64\bin\make.exe"
echo Generating vivoxclientapi makefile for Android (64-bit)...
if exist "%ANDROID_BUILD_PATH%" (rmdir "%ANDROID_BUILD_PATH%" /s/q)
-echo Building for Android (64-bit) Release
+echo Building for Android (ARM 64-bit) Release
mkdir "%ANDROID_BUILD_PATH%"
pushd "%ANDROID_BUILD_PATH%"
-..\..\..\..\..\..\Extras\ThirdPartyNotUE\CMake\bin\cmake.exe -G "MinGW Makefiles" -DVIVOXSDK_PATH=../../vivox-sdk/Include -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CMAKE_FILE%\Android\Android.cmake" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=RelWithDebInfo -DANDROID_NATIVE_API_LEVEL=android-21 -DANDROID_ABI=arm64-v8a -DANDROID_STL=gnustl_shared %PATH_TO_CMAKE_FILE%
+%CMAKE_EXE% -G "MinGW Makefiles" -DVIVOXSDK_PATH=../../vivox-sdk/Include -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=RelWithDebInfo -DANDROID_NATIVE_API_LEVEL=android-21 -DANDROID_ABI=arm64-v8a -DANDROID_STL=c++_shared %PATH_TO_CMAKE_FILE%
REM Now compile it
%MAKE%
@@ -26,10 +28,10 @@ move /y %ANDROID_BUILD_PATH%\..\libvivoxclientapi.a %ANDROID_LIB_PATH%\Release\a
popd
rmdir "%ANDROID_BUILD_PATH%" /s/q
-echo Building for Android (64-bit) Debug
+echo Building for Android (ARM 64-bit) Debug
mkdir "%ANDROID_BUILD_PATH%"
pushd "%ANDROID_BUILD_PATH%"
-..\..\..\..\..\..\Extras\ThirdPartyNotUE\CMake\bin\cmake.exe -G "MinGW Makefiles" -DVIVOXSDK_PATH=../../vivox-sdk/Include -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CMAKE_FILE%\Android\Android.cmake" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Debug -DANDROID_NATIVE_API_LEVEL=android-21 -DANDROID_ABI=arm64-v8a -DANDROID_STL=gnustl_shared %PATH_TO_CMAKE_FILE%
+%CMAKE_EXE% -G "MinGW Makefiles" -DVIVOXSDK_PATH=../../vivox-sdk/Include -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Debug -DANDROID_NATIVE_API_LEVEL=android-21 -DANDROID_ABI=arm64-v8a -DANDROID_STL=c++_shared %PATH_TO_CMAKE_FILE%
REM Now compile it
%MAKE%
@@ -38,10 +40,10 @@ move /y %ANDROID_BUILD_PATH%\..\libvivoxclientapi.a %ANDROID_LIB_PATH%\Debug\arm
popd
rmdir "%ANDROID_BUILD_PATH%" /s/q
-echo Building for Android (32-bit) Release
+echo Building for Android (ARM 32-bit) Release
mkdir "%ANDROID_BUILD_PATH%"
pushd "%ANDROID_BUILD_PATH%"
-..\..\..\..\..\..\Extras\ThirdPartyNotUE\CMake\bin\cmake.exe -G "MinGW Makefiles" -DVIVOXSDK_PATH=../../vivox-sdk/Include -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CMAKE_FILE%\Android\Android.cmake" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=RelWithDebInfo -DANDROID_NATIVE_API_LEVEL=android-19 -DANDROID_ABI=armeabi-v7a -DANDROID_STL=gnustl_shared %PATH_TO_CMAKE_FILE%
+%CMAKE_EXE% -G "MinGW Makefiles" -DVIVOXSDK_PATH=../../vivox-sdk/Include -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=RelWithDebInfo -DANDROID_NATIVE_API_LEVEL=android-19 -DANDROID_ABI=armeabi-v7a -DANDROID_STL=c++_shared %PATH_TO_CMAKE_FILE%
REM Now compile it
%MAKE%
@@ -50,10 +52,10 @@ move /y %ANDROID_BUILD_PATH%\..\libvivoxclientapi.a %ANDROID_LIB_PATH%\Release\a
popd
rmdir "%ANDROID_BUILD_PATH%" /s/q
-echo Building for Android (32-bit) Debug
+echo Building for Android (ARM 32-bit) Debug
mkdir "%ANDROID_BUILD_PATH%"
pushd "%ANDROID_BUILD_PATH%"
-..\..\..\..\..\..\Extras\ThirdPartyNotUE\CMake\bin\cmake.exe -G "MinGW Makefiles" -DVIVOXSDK_PATH=../../vivox-sdk/Include -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CMAKE_FILE%\Android\Android.cmake" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Debug -DANDROID_NATIVE_API_LEVEL=android-19 -DANDROID_ABI=armeabi-v7a -DANDROID_STL=gnustl_shared %PATH_TO_CMAKE_FILE%
+%CMAKE_EXE% -G "MinGW Makefiles" -DVIVOXSDK_PATH=../../vivox-sdk/Include -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Debug -DANDROID_NATIVE_API_LEVEL=android-19 -DANDROID_ABI=armeabi-v7a -DANDROID_STL=c++_shared %PATH_TO_CMAKE_FILE%
REM Now compile it
%MAKE%
diff --git a/Engine/Source/ThirdParty/Vivox/vivoxclientapi/BuildForUE4/CMakeLists.txt b/Engine/Source/ThirdParty/Vivox/vivoxclientapi/BuildForUE4/CMakeLists.txt
index b26346b659e6..6a45fdd54000 100644
--- a/Engine/Source/ThirdParty/Vivox/vivoxclientapi/BuildForUE4/CMakeLists.txt
+++ b/Engine/Source/ThirdParty/Vivox/vivoxclientapi/BuildForUE4/CMakeLists.txt
@@ -17,7 +17,7 @@ endif (USE_LOGIN_SESSION_AUDIO_SETTINGS)
option(VALIDATE_AUDIO_DEVICE_SELECTION "Validate that audio devices exist before setting them" ON)
if (VALIDATE_AUDIO_DEVICE_SELECTION)
- add_definitions(-VALIDATE_AUDIO_DEVICE_SELECTION=1)
+ add_definitions(-DVALIDATE_AUDIO_DEVICE_SELECTION=1)
endif (VALIDATE_AUDIO_DEVICE_SELECTION)
set(VIVOXSDK_PATH "" CACHE STRING "Path to Vivox sdk headers")
diff --git a/Engine/Source/ThirdParty/Vorbis/libvorbis-1.3.2/build/android/BuildForAndroid.bat b/Engine/Source/ThirdParty/Vorbis/libvorbis-1.3.2/build/android/BuildForAndroid.bat
new file mode 100644
index 000000000000..19c942d64c7e
--- /dev/null
+++ b/Engine/Source/ThirdParty/Vorbis/libvorbis-1.3.2/build/android/BuildForAndroid.bat
@@ -0,0 +1,8 @@
+SET NDK_PROJECT_PATH=%CD%/jni
+cd %NDK_PROJECT_PATH%
+call %NDKROOT%/ndk-build APP_ABI="armeabi-v7a x86" APP_PLATFORM=android-19 APP_BUILD_SCRIPT=%NDK_PROJECT_PATH%/Android.mk
+call %NDKROOT%/ndk-build APP_ABI="arm64-v8a x86_64" APP_PLATFORM=android-21 APP_BUILD_SCRIPT=%NDK_PROJECT_PATH%/Android.mk
+copy /y obj\local\armeabi-v7a\libvorbis*.a ..\..\..\lib\Android\ARMv7
+copy /y obj\local\arm64-v8a\libvorbis*.a ..\..\..\lib\Android\ARM64
+copy /y obj\local\x86\libvorbis*.a ..\..\..\lib\Android\x86
+copy /y obj\local\x86_64\libvorbis*.a ..\..\..\lib\Android\x64
\ No newline at end of file
diff --git a/Engine/Source/ThirdParty/coremod/BuildAndroid.bat b/Engine/Source/ThirdParty/coremod/BuildAndroid.bat
new file mode 100644
index 000000000000..287e11adb80a
--- /dev/null
+++ b/Engine/Source/ThirdParty/coremod/BuildAndroid.bat
@@ -0,0 +1,8 @@
+cd coremod-4.2.6
+set NDK_PROJECT_PATH=%CD%
+call %NDKROOT%\ndk-build APP_ABI="armeabi-v7a x86" APP_PLATFORM=android-19
+call %NDKROOT%\ndk-build APP_ABI="arm64-v8a x86_64" APP_PLATFORM=android-21
+copy obj\local\armeabi-v7a\libxmp-coremod.a lib\Android\armeabi-v7a
+copy obj\local\arm64-v8a\libxmp-coremod.a lib\Android\arm64-v8a
+copy obj\local\x86\libxmp-coremod.a lib\Android\x86
+copy obj\local\x86_64\libxmp-coremod.a lib\Android\x64
diff --git a/Engine/Source/ThirdParty/libOpus/opus-1.1/Application.mk b/Engine/Source/ThirdParty/libOpus/opus-1.1/Application.mk
index cb492278d90a..f2079af44294 100644
--- a/Engine/Source/ThirdParty/libOpus/opus-1.1/Application.mk
+++ b/Engine/Source/ThirdParty/libOpus/opus-1.1/Application.mk
@@ -1,2 +1,2 @@
-APP_ABI := armeabi arm64-v8a x86_64
+APP_ABI := armeabi arm64-v8a x86 x86_64
APP_BUILD_SCRIPT := Android.mk
\ No newline at end of file
diff --git a/Engine/Source/ThirdParty/libOpus/opus-1.1/BuildForAndroid.bat b/Engine/Source/ThirdParty/libOpus/opus-1.1/BuildForAndroid.bat
new file mode 100644
index 000000000000..996c651117e3
--- /dev/null
+++ b/Engine/Source/ThirdParty/libOpus/opus-1.1/BuildForAndroid.bat
@@ -0,0 +1,7 @@
+SET NDK_PROJECT_PATH=%CD%
+call %NDKROOT%/ndk-build APP_ABI="armeabi-v7a x86" APP_PLATFORM=android-19 APP_BUILD_SCRIPT=%CD%/Android.mk
+call %NDKROOT%/ndk-build APP_ABI="arm64-v8a x86_64" APP_PLATFORM=android-21 APP_BUILD_SCRIPT=%CD%/Android.mk
+copy obj\local\armeabi-v7a\*.a Android\ARMv7
+copy obj\local\arm64-v8a\*.a Android\ARM64
+copy obj\local\x86\*.a Android\x86
+copy obj\local\x86_64\*.a Android\x64
\ No newline at end of file
diff --git a/Engine/Source/ThirdParty/libPNG/BuildForAndroid.bat b/Engine/Source/ThirdParty/libPNG/BuildForAndroid.bat
index 146202d4fd60..b0649e073b87 100644
--- a/Engine/Source/ThirdParty/libPNG/BuildForAndroid.bat
+++ b/Engine/Source/ThirdParty/libPNG/BuildForAndroid.bat
@@ -10,7 +10,7 @@ REM copy to work directory to build libpng with ndk-build
xcopy /s /I /Q %LIBPNG_PATH% jni
REM build all 4 architectures
-call ndk-build
+call %NDKROOT%/ndk-build
REM create directories for libraries
mkdir %LIBPNG_PATH%\lib\Android\ARMv7
diff --git a/Engine/Source/ThirdParty/libstrophe/libstrophe-0.9.1/BuildForUE/Android/Android.cmake b/Engine/Source/ThirdParty/libstrophe/libstrophe-0.9.1/BuildForUE/Android/Android.cmake
index 19a56245adf6..03bb8fe4f46c 100644
--- a/Engine/Source/ThirdParty/libstrophe/libstrophe-0.9.1/BuildForUE/Android/Android.cmake
+++ b/Engine/Source/ThirdParty/libstrophe/libstrophe-0.9.1/BuildForUE/Android/Android.cmake
@@ -1,4 +1,4 @@
-include(../../../PhysX3/Externals/CMakeModules/Android/android.toolchain.cmake)
+include($ENV{NDKROOT}/build/cmake/android.toolchain.cmake)
set(SOCKET_IMPL "../src/sock.c" CACHE TYPE INTERNAL FORCE)
set(DISABLE_TLS 0 CACHE TYPE INTERNAL FORCE)
diff --git a/Engine/Source/ThirdParty/libstrophe/libstrophe-0.9.1/BuildForUE/Android/BuildForAndroid.bat b/Engine/Source/ThirdParty/libstrophe/libstrophe-0.9.1/BuildForUE/Android/BuildForAndroid.bat
index a109a565a97a..be7a876afd25 100644
--- a/Engine/Source/ThirdParty/libstrophe/libstrophe-0.9.1/BuildForUE/Android/BuildForAndroid.bat
+++ b/Engine/Source/ThirdParty/libstrophe/libstrophe-0.9.1/BuildForUE/Android/BuildForAndroid.bat
@@ -4,20 +4,22 @@ REM Copyright Epic Games, Inc. All Rights Reserved.
setlocal
-set PATH_TO_CMAKE_FILE=%CD%\..\
+set PATH_TO_CMAKE_FILE=%CD%\..\..
REM Temporary build directories (used as working directories when running CMake)
-set ANDROID_BUILD_PATH="%PATH_TO_CMAKE_FILE%\..\Android\Build"
-set ANDROID_LIB_PATH="%PATH_TO_CMAKE_FILE%\..\Android"
+set CMAKE_EXE="%ANDROID_HOME%\cmake\3.10.2.4988404\bin\cmake.exe"
+set ANDROID_TOOLCHAIN_FILE="%PATH_TO_CMAKE_FILE%\BuildForUE\Android\Android.cmake"
+set ANDROID_BUILD_PATH="%PATH_TO_CMAKE_FILE%\Android\Build"
+set ANDROID_LIB_PATH="%PATH_TO_CMAKE_FILE%\Android"
set MAKE="%NDKROOT%\prebuilt\windows-x86_64\bin\make.exe"
echo Generating libstrophe makefile for Android (64-bit)...
if exist "%ANDROID_BUILD_PATH%" (rmdir "%ANDROID_BUILD_PATH%" /s/q)
-echo Building for Android (64-bit) Release
+echo Building for Android (ARM 64-bit) Release
mkdir "%ANDROID_BUILD_PATH%"
pushd "%ANDROID_BUILD_PATH%"
-..\..\..\..\..\..\Extras\ThirdPartyNotUE\CMake\bin\cmake.exe -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CMAKE_FILE%\Android\Android.cmake" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Release -DANDROID_NATIVE_API_LEVEL=android-21 -DANDROID_ABI=arm64-v8a -DANDROID_STL=gnustl_shared %PATH_TO_CMAKE_FILE%
+%CMAKE_EXE% -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Release -DANDROID_NATIVE_API_LEVEL=android-21 -DANDROID_ABI=arm64-v8a -DANDROID_STL=c++_shared %PATH_TO_CMAKE_FILE%\BuildForUE
REM Now compile it
%MAKE%
@@ -26,10 +28,10 @@ move /y %ANDROID_BUILD_PATH%\..\libstrophe.a %ANDROID_LIB_PATH%\Release\arm64
popd
rmdir "%ANDROID_BUILD_PATH%" /s/q
-echo Building for Android (64-bit) Debug
+echo Building for Android (ARM 64-bit) Debug
mkdir "%ANDROID_BUILD_PATH%"
pushd "%ANDROID_BUILD_PATH%"
-..\..\..\..\..\..\Extras\ThirdPartyNotUE\CMake\bin\cmake.exe -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CMAKE_FILE%\Android\Android.cmake" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Debug -DANDROID_NATIVE_API_LEVEL=android-21 -DANDROID_ABI=arm64-v8a -DANDROID_STL=gnustl_shared %PATH_TO_CMAKE_FILE%
+%CMAKE_EXE% -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Debug -DANDROID_NATIVE_API_LEVEL=android-21 -DANDROID_ABI=arm64-v8a -DANDROID_STL=c++_shared %PATH_TO_CMAKE_FILE%\BuildForUE
REM Now compile it
%MAKE%
@@ -38,10 +40,34 @@ move /y %ANDROID_BUILD_PATH%\..\libstrophe.a %ANDROID_LIB_PATH%\Debug\arm64
popd
rmdir "%ANDROID_BUILD_PATH%" /s/q
-echo Building for Android (32-bit) Release
+echo Building for Android (x64 64-bit) Release
mkdir "%ANDROID_BUILD_PATH%"
pushd "%ANDROID_BUILD_PATH%"
-..\..\..\..\..\..\Extras\ThirdPartyNotUE\CMake\bin\cmake.exe -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CMAKE_FILE%\Android\Android.cmake" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Release -DANDROID_NATIVE_API_LEVEL=android-19 -DANDROID_ABI=armeabi-v7a -DANDROID_STL=gnustl_shared %PATH_TO_CMAKE_FILE%
+%CMAKE_EXE% -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Release -DANDROID_NATIVE_API_LEVEL=android-21 -DANDROID_ABI=x86_64 -DANDROID_STL=c++_shared %PATH_TO_CMAKE_FILE%\BuildForUE
+
+REM Now compile it
+%MAKE%
+mkdir %ANDROID_LIB_PATH%\Release\x64
+move /y %ANDROID_BUILD_PATH%\..\libstrophe.a %ANDROID_LIB_PATH%\Release\x64
+popd
+rmdir "%ANDROID_BUILD_PATH%" /s/q
+
+echo Building for Android (x64 64-bit) Debug
+mkdir "%ANDROID_BUILD_PATH%"
+pushd "%ANDROID_BUILD_PATH%"
+%CMAKE_EXE% -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Debug -DANDROID_NATIVE_API_LEVEL=android-21 -DANDROID_ABI=x86_64 -DANDROID_STL=c++_shared %PATH_TO_CMAKE_FILE%\BuildForUE
+
+REM Now compile it
+%MAKE%
+mkdir %ANDROID_LIB_PATH%\Debug\x64
+move /y %ANDROID_BUILD_PATH%\..\libstrophe.a %ANDROID_LIB_PATH%\Debug\x64
+popd
+rmdir "%ANDROID_BUILD_PATH%" /s/q
+
+echo Building for Android (ARM 32-bit) Release
+mkdir "%ANDROID_BUILD_PATH%"
+pushd "%ANDROID_BUILD_PATH%"
+%CMAKE_EXE% -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Release -DANDROID_NATIVE_API_LEVEL=android-19 -DANDROID_ABI=armeabi-v7a -DANDROID_STL=c++_shared %PATH_TO_CMAKE_FILE%\BuildForUE
REM Now compile it
%MAKE%
@@ -50,10 +76,10 @@ move /y %ANDROID_BUILD_PATH%\..\libstrophe.a %ANDROID_LIB_PATH%\Release\armv7
popd
rmdir "%ANDROID_BUILD_PATH%" /s/q
-echo Building for Android (32-bit) Debug
+echo Building for Android (ARM 32-bit) Debug
mkdir "%ANDROID_BUILD_PATH%"
pushd "%ANDROID_BUILD_PATH%"
-..\..\..\..\..\..\Extras\ThirdPartyNotUE\CMake\bin\cmake.exe -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%PATH_TO_CMAKE_FILE%\Android\Android.cmake" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Debug -DANDROID_NATIVE_API_LEVEL=android-19 -DANDROID_ABI=armeabi-v7a -DANDROID_STL=gnustl_shared %PATH_TO_CMAKE_FILE%
+%CMAKE_EXE% -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Debug -DANDROID_NATIVE_API_LEVEL=android-19 -DANDROID_ABI=armeabi-v7a -DANDROID_STL=c++_shared %PATH_TO_CMAKE_FILE%\BuildForUE
REM Now compile it
%MAKE%
@@ -62,3 +88,27 @@ move /y %ANDROID_BUILD_PATH%\..\libstrophe.a %ANDROID_LIB_PATH%\Debug\armv7
popd
rmdir "%ANDROID_BUILD_PATH%" /s/q
+echo Building for Android (x86 32-bit) Release
+mkdir "%ANDROID_BUILD_PATH%"
+pushd "%ANDROID_BUILD_PATH%"
+%CMAKE_EXE% -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Release -DANDROID_NATIVE_API_LEVEL=android-19 -DANDROID_ABI=x86 -DANDROID_STL=c++_shared %PATH_TO_CMAKE_FILE%\BuildForUE
+
+REM Now compile it
+%MAKE%
+mkdir %ANDROID_LIB_PATH%\Release\x86
+move /y %ANDROID_BUILD_PATH%\..\libstrophe.a %ANDROID_LIB_PATH%\Release\x86
+popd
+rmdir "%ANDROID_BUILD_PATH%" /s/q
+
+echo Building for Android (x86 32-bit) Debug
+mkdir "%ANDROID_BUILD_PATH%"
+pushd "%ANDROID_BUILD_PATH%"
+%CMAKE_EXE% -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE="%ANDROID_TOOLCHAIN_FILE%" -DANDROID_NDK="%NDKROOT%" -DCMAKE_MAKE_PROGRAM=%MAKE% -DCMAKE_BUILD_TYPE=Debug -DANDROID_NATIVE_API_LEVEL=android-19 -DANDROID_ABI=x86 -DANDROID_STL=c++_shared %PATH_TO_CMAKE_FILE%\BuildForUE
+
+REM Now compile it
+%MAKE%
+mkdir %ANDROID_LIB_PATH%\Debug\x86
+move /y %ANDROID_BUILD_PATH%\..\libstrophe.a %ANDROID_LIB_PATH%\Debug\x86
+popd
+rmdir "%ANDROID_BUILD_PATH%" /s/q
+