aboutsummaryrefslogtreecommitdiff
path: root/build-android/update_external_sources_android.bat
diff options
context:
space:
mode:
authorCody Northrop <cnorthrop@google.com>2016-08-01 10:27:25 -0600
committerCody Northrop <cnorthrop@google.com>2016-08-02 13:41:58 -0600
commitf354c5e4fd64a936ca41549256bc76c1d136b4fd (patch)
tree6fd8341860af4f115992475cb9bcc9ee676de5cd /build-android/update_external_sources_android.bat
parent9ebf86e556fab3468ee29b2d806a375806745d88 (diff)
downloadusermoji-f354c5e4fd64a936ca41549256bc76c1d136b4fd.tar.xz
toolchain: Update revisions for Android
Also add spirv-headers, a new dependency for shaderc.
Diffstat (limited to 'build-android/update_external_sources_android.bat')
-rwxr-xr-xbuild-android/update_external_sources_android.bat53
1 files changed, 52 insertions, 1 deletions
diff --git a/build-android/update_external_sources_android.bat b/build-android/update_external_sources_android.bat
index ad5bd50d..8f6db224 100755
--- a/build-android/update_external_sources_android.bat
+++ b/build-android/update_external_sources_android.bat
@@ -25,6 +25,7 @@ set BUILD_DIR=%ANDROID_BUILD_DIR%..
set BASE_DIR=%BUILD_DIR%\external
set GLSLANG_DIR=%BASE_DIR%\glslang
set SPIRV_TOOLS_DIR=%BASE_DIR%\spirv-tools
+set SPIRV_HEADERS_DIR=%BASE_DIR%\spirv-tools\external\spirv-headers
set SHADERC_DIR=%BASE_DIR%\shaderc
for %%X in (where.exe) do (set FOUND=%%~$PATH:X)
@@ -78,6 +79,13 @@ if not exist %ANDROID_BUILD_DIR%\spirv-tools_revision_android (
goto:error
)
+if not exist %ANDROID_BUILD_DIR%\spirv-headers_revision_android (
+ echo.
+ echo Missing spirv-headers_revision_android file. Place it in %ANDROID_BUILD_DIR%
+ set errorCode=1
+ goto:error
+)
+
if not exist %ANDROID_BUILD_DIR%\shaderc_revision_android (
echo.
echo Missing shaderc_revision_android file. Place it in %ANDROID_BUILD_DIR%
@@ -87,16 +95,19 @@ if not exist %ANDROID_BUILD_DIR%\shaderc_revision_android (
set /p GLSLANG_REVISION= < glslang_revision_android
set /p SPIRV_TOOLS_REVISION= < spirv-tools_revision_android
+set /p SPIRV_HEADERS_REVISION= < spirv-headers_revision_android
set /p SHADERC_REVISION= < shaderc_revision_android
echo GLSLANG_REVISION=%GLSLANG_REVISION%
echo SPIRV_TOOLS_REVISION=%SPIRV_TOOLS_REVISION%
+echo SPIRV_HEADERS_REVISION=%SPIRV_HEADERS_REVISION%
echo SHADERC_REVISION=%SHADERC_REVISION%
-echo Creating and/or updating glslang, spirv-tools, shaderc in %BASE_DIR%
+echo Creating and/or updating glslang, spirv-tools, spirv-headers, shaderc in %BASE_DIR%
set sync-glslang=1
set sync-spirv-tools=1
+set sync-spirv-headers=1
set sync-shaderc=1
set build-shaderc=1
@@ -125,6 +136,19 @@ if %sync-spirv-tools% equ 1 (
if %errorCode% neq 0 (goto:error)
)
+if %sync-spirv-headers% equ 1 (
+ if exist %SPIRV_HEADERS_DIR% (
+ rd /S /Q %SPIRV_HEADERS_DIR%
+ )
+ if %ERRORLEVEL% neq 0 (goto:error)
+ if not exist %SPIRV_HEADERS_DIR% (
+ call:create_spirv-headers
+ )
+ if %errorCode% neq 0 (goto:error)
+ call:update_spirv-headers
+ if %errorCode% neq 0 (goto:error)
+)
+
if %sync-shaderc% equ 1 (
if exist %SHADERC_DIR% (
rd /S /Q %SHADERC_DIR%
@@ -154,6 +178,8 @@ goto:finish
:finish
if not "%cd%\" == "%BUILD_DIR%" ( cd %BUILD_DIR% )
endlocal
+REM This needs a fix to return error, something like exit %errorCode%
+REM Right now it is returning 0
goto:eof
@@ -210,6 +236,31 @@ goto:eof
)
goto:eof
+:create_spirv-headers
+ echo.
+ echo Creating local spirv-headers repository %SPIRV_HEADERS_DIR%
+ mkdir %SPIRV_HEADERS_DIR%
+ cd %SPIRV_HEADERS_DIR%
+ git clone https://github.com/KhronosGroup/SPIRV-Headers.git .
+ git checkout %SPIRV_HEADERS_REVISION%
+ if not exist %SPIRV_HEADERS_DIR%\include (
+ echo spirv-headers source download failed!
+ set errorCode=1
+ )
+goto:eof
+
+:update_spirv-headers
+ echo.
+ echo Updating %SPIRV_HEADERS_DIR%
+ cd %SPIRV_HEADERS_DIR%
+ git fetch --all
+ git checkout %SPIRV_HEADERS_REVISION%
+ if not exist %SPIRV_HEADERS_DIR%\include (
+ echo spirv-headers source update failed!
+ set errorCode=1
+ )
+goto:eof
+
:create_shaderc
echo.
echo Creating local shaderc repository %SHADERC_DIR%