| @echo off | |
| REM Copyright (C) 2016 and later: Unicode, Inc. and others. | |
| REM License & terms of use: http://www.unicode.org/copyright.html | |
| REM ******************************************************************** | |
| REM Don't add additional global environment variables, keep the variables local to this script. | |
| rem setlocal | |
| set ICU_ARCH=%1 | |
| set ICU_DBRL=%2 | |
| if "%1" == "" ( | |
| echo Usage: %0 "x86 or x64" "Debug or Release" | |
| exit /b 1 | |
| ) | |
| if "%2" == "" ( | |
| echo Usage: %0 %1 "Debug or Release" | |
| exit /b 1 | |
| ) | |
| set ICU_ICUDIR="%~dp0"\..\..\.. | |
| set ICU_SAMPLESDIR=%ICU_ICUDIR%\source\samples | |
| if "%ICU_ARCH%" == "x64" ( | |
| set ICU_BINDIR=%~dp0..\..\..\bin64 | |
| ) else ( | |
| set ICU_BINDIR=%~dp0..\..\..\bin | |
| ) | |
| if not exist "%ICU_BINDIR%" ( | |
| echo Error '%ICU_BINDIR%' does not exist! | |
| echo Have you built all of ICU yet ? | |
| goto :eof | |
| ) | |
| echo Testing ICU samples in %ICU_ICUDIR% arch=%ICU_ARCH% type=%ICU_DBRL% | |
| set PATH=%ICU_BINDIR%;%PATH% | |
| pushd %ICU_BINDIR% | |
| set SAMPLE_BREAK=%ICU_SAMPLESDIR%\break\%ICU_ARCH%\%ICU_DBRL%\break.exe | |
| set SAMPLE_CAL=%ICU_SAMPLESDIR%\cal\%ICU_ARCH%\%ICU_DBRL%\cal.exe | |
| set SAMPLE_CASE=%ICU_SAMPLESDIR%\case\%ICU_ARCH%\%ICU_DBRL%\case.exe | |
| set SAMPLE_CITER=%ICU_SAMPLESDIR%\citer\%ICU_ARCH%\%ICU_DBRL%\citer.exe | |
| set SAMPLE_COLL=%ICU_SAMPLESDIR%\coll\%ICU_ARCH%\%ICU_DBRL%\coll.exe | |
| set SAMPLE_CSDET=%ICU_SAMPLESDIR%\csdet\%ICU_ARCH%\%ICU_DBRL%\csdet.exe | |
| set SAMPLE_DATE=%ICU_SAMPLESDIR%\date\%ICU_ARCH%\%ICU_DBRL%\date.exe | |
| set SAMPLE_DATEFMT=%ICU_SAMPLESDIR%\datefmt\%ICU_ARCH%\%ICU_DBRL%\datefmt.exe | |
| set SAMPLE_DTITVFMT=%ICU_SAMPLESDIR%\dtitvfmtsample\%ICU_ARCH%\%ICU_DBRL%\dtitvfmtsample.exe | |
| set SAMPLE_DTPTNG=%ICU_SAMPLESDIR%\dtptngsample\%ICU_ARCH%\%ICU_DBRL%\dtptngsample.exe | |
| set SAMPLE_MSGFMT=%ICU_SAMPLESDIR%\msgfmt\%ICU_ARCH%\%ICU_DBRL%\msgfmt.exe | |
| set SAMPLE_NUMFMT=%ICU_SAMPLESDIR%\numfmt\%ICU_ARCH%\%ICU_DBRL%\numfmt.exe | |
| set SAMPLE_PLURFMTSAMPLE=%ICU_SAMPLESDIR%\plurfmtsample\%ICU_ARCH%\%ICU_DBRL%\plurfmtsample.exe | |
| set SAMPLE_PROPS=%ICU_SAMPLESDIR%\props\%ICU_ARCH%\%ICU_DBRL%\props.exe | |
| set SAMPLE_STRSRCH=%ICU_SAMPLESDIR%\strsrch\%ICU_ARCH%\%ICU_DBRL%\strsrch.exe | |
| set SAMPLE_TRANSLIT=%ICU_SAMPLESDIR%\translit\%ICU_ARCH%\%ICU_DBRL%\translit.exe | |
| set SAMPLE_UCITER8=%ICU_SAMPLESDIR%\uciter8\%ICU_ARCH%\%ICU_DBRL%\uciter8.exe | |
| set SAMPLE_UCNV=%ICU_SAMPLESDIR%\ucnv\%ICU_ARCH%\%ICU_DBRL%\ucnv.exe | |
| REM udata needs changes to the vcxproj to change the output locations for writer/reader. | |
| rem set SAMPLE_UDATA_WRITER=%ICU_SAMPLESDIR%\udata\%ICU_ARCH%\%ICU_DBRL%\writer.exe | |
| rem set SAMPLE_UDATA_READER=%ICU_SAMPLESDIR%\udata\%ICU_ARCH%\%ICU_DBRL%\reader.exe | |
| set SAMPLE_UFORTUNE=%ICU_SAMPLESDIR%\ufortune\%ICU_ARCH%\%ICU_DBRL%\ufortune.exe | |
| set SAMPLE_UGREP=%ICU_SAMPLESDIR%\ugrep\%ICU_ARCH%\%ICU_DBRL%\ugrep.exe | |
| REM There is also the 'resources' project in VS. | |
| set SAMPLE_URESB=%ICU_SAMPLESDIR%\uresb\%ICU_ARCH%\%ICU_DBRL%\uresb.exe | |
| set SAMPLE_USTRING=%ICU_SAMPLESDIR%\ustring\%ICU_ARCH%\%ICU_DBRL%\ustring.exe | |
| @set THT=break | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_BREAK% | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=cal | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_CAL% | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=case | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_CASE% | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=citer | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_CITER% | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=coll | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_COLL% | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=csdet | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_CSDET% %ICU_SAMPLESDIR%\csdet\readme.txt | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=date | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_DATE% | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=datefmt | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_DATEFMT% | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=dtitvfmtsample | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_DTITVFMT% | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=dtptngsample | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| pushd %ICU_SAMPLESDIR%\dtptngsample\%ICU_ARCH%\%ICU_DBRL% | |
| %SAMPLE_DTPTNG% | |
| popd | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=msgfmt | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_MSGFMT% arg1 arg2 | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=numfmt | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_NUMFMT% | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=plurfmtsample | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_PLURFMTSAMPLE% | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=props | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_PROPS% | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=strsrch | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_STRSRCH% | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=translit | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_TRANSLIT% | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=citer8 | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_UCITER8% | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=ucnv | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| pushd %ICU_SAMPLESDIR%\ucnv | |
| %SAMPLE_UCNV% | |
| popd | |
| if ERRORLEVEL 1 goto :SampleError | |
| REM TODO: udata needs changes to the vcxproj file to fix the output locations for writer/reader. | |
| @set THT=udata | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| pushd %ICU_SAMPLESDIR%\udata\%ICU_ARCH%\%ICU_DBRL% | |
| @echo TODO: udata needs changes to the vcxproj file to fix the output locations for writer/reader. | |
| @echo Skipping %THT% | |
| rem %SAMPLE_UDATA_WRITER% | |
| rem %SAMPLE_UDATA_READER% | |
| popd | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=ufortune | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| if "%ICU_ARCH%" == "x64" ( | |
| @echo The ufortune sample currently only runs on x86. | |
| @echo Skipping %THT%. | |
| ) else ( | |
| %SAMPLE_UFORTUNE% | |
| if ERRORLEVEL 1 goto :SampleError | |
| ) | |
| @set THT=ugrep | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| echo Looking for "ICU" in '%ICU_SAMPLESDIR%\ugrep\readme.txt' with ugrep.exe | |
| %SAMPLE_UGREP% ICU %ICU_SAMPLESDIR%\ugrep\readme.txt | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=uresb | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| pushd %ICU_SAMPLESDIR%\uresb | |
| %SAMPLE_URESB% en | |
| %SAMPLE_URESB% root | |
| %SAMPLE_URESB% sr | |
| popd | |
| if ERRORLEVEL 1 goto :SampleError | |
| @set THT=ustring | |
| @echo. | |
| @echo ==== %THT% ========================================================================= | |
| %SAMPLE_USTRING% | |
| if ERRORLEVEL 1 goto :SampleError | |
| rem All done | |
| goto :QuitWithNoError | |
| :SampleError | |
| echo. | |
| echo ERROR: Sample program %THT% did not exit cleanly. Stopping execution. | |
| echo. | |
| goto :QuitWithError | |
| :QuitWithNoError | |
| echo. | |
| popd | |
| exit /b 0 | |
| :QuitWithError | |
| echo. | |
| popd | |
| rem Exit with non-zero error code. | |
| exit /b 1 |