diff --git a/.gitignore b/.gitignore index 9c33dc7f..204b6944 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ .vscode/ _deps/ build/ +Debug/ CMakeFiles/ CMakeScripts/ CMakeLists.txt.user @@ -11,4 +12,5 @@ cmake_install.cmake install_manifest.txt compile_commands.json CTestTestfile.cmake +*.dep diff --git a/test/ports/.gitignore b/test/ports/.gitignore new file mode 100644 index 00000000..fbf828d6 --- /dev/null +++ b/test/ports/.gitignore @@ -0,0 +1 @@ +log \ No newline at end of file diff --git a/test/ports/README.md b/test/ports/README.md new file mode 100644 index 00000000..121aba58 --- /dev/null +++ b/test/ports/README.md @@ -0,0 +1,119 @@ +# Azure RTOS ThreadX CI/CD system + +**The old Azure RTOS ThreadX CI/CD script and README are preserved with the .old extension** + +This directory contains a collection of files to execute test for continuos integration and continuous delivery of Azure RTOS ThreadX. + +This directory contains documentation, scripts and auxiliary files (expected test results, etc). + +The Azure RTOS ThreadX CI/CD system can be used in various scenarios: +* Setting up the environment for a toolchain +* Cleaning up the local repository +* Building locally or on the pipeline +* Smoke testing examples (on the native IDE) +* Testing an example on a generic architecture simulator (like ARM FVP) +* Running the certification test suite on a port +* Testing locally during development +* Testing automatically on the DevOps pipeline +* Testing ports +* Testing examples +* Testing one or more ports +* Verifying the ports build +* Verifying that examples one or more ports during development + +There are several operations that can be performed by the CI/CD system: +* CheckCompliance: perform compliance checks (only debug configurations, valid comments, ...) +* StartCLI: start a CLI environment. +* RealClean: remove all generated files. +* Clean: remove all build generated files. +* Build: compile examples using using the toolchain IDE, project, workspace, etc. +* Test: smoke test examples with the toolchain simulator. +* PlatformTest: test examples using the platform simulator, like the ARM FVP platform. +* CertificationTest: test examples using the certification test suite. +* HardwareTest: test examples using attached hardware. + +## azrtos_cicd.ps1 +This is the main entry point for Azure RTOS ThreadX CI/CD operations. +To get detailed usage information use the PowerShell Get-Help command passing this script as a parameter. +This file outputs a summary to the screen and detailed log file with all output to files located in the default log directory or a directory specified in the script command line. + +## azrtos_cicd.csv +This is the default database of ports, examples and corresponding data and scripts. The database is a CSV file that can be modified or updated by the user. Other databases can be specified on the command line when calling the script. + +## -StartCLI +This option will open a CLI with the environment appropriately set for it. It will have the command aliases "realclean", "clean", "build" and "test" set to the corresponding scripts. Useful for developing and debugging. + +## Examples: + +These examples assume the PowerShell script is called from the Windows Command Interpreter. For calling the script from the PowerShell prompt, remove the leading `pwsh -Command`. + +`pwsh -Command Get-Help .\azrtos_cicd.ps1` +Show the help embedded in the script. + +`pwsh -Command .\azrtos_cicd.ps1 -clean` +This cleans all examples in the default database. + +`pwsh -Command .\azrtos_cicd.ps1 -build` +This builds all examples in the default database. + +`pwsh -Command .\azrtos_cicd.ps1 -test` +This runs the bassic tests on all examples in the default database. + +`pwsh -Command .\azrtos_cicd.ps1 -clean -build -test` +This first cleans, then builds and finally runs tests on all examples in the default database. + +`pwsh -Command .\azrtos_cicd.ps1 -MatchName 'Modules' -build` +This builds all ThreadX Modules examples. + +`pwsh -Command .\azrtos_cicd.ps1 -MatchName 'Modules','IAR' -build` +This builds all examples in the default database that have names matching the string 'Modules' and 'IAR'. + +`pwsh -Command .\azrtos_cicd.ps1 -MatchName 'Cortex M4','ARM compiler v6' -StartCli` +This opens a CLI with set environment for all examples in the default database that have names matching the 'Cortex M4' and 'ARM compiler v6'. + +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','ARM compiler v6','Cortex M' -clean` +This cleans all examples matching all the keywords; these are ThreadX (not ThreadX modules) Cortex M (0/3/4/7/23/33/...) for ARM compiler v6. + +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','ARM compiler v6','Cortex M' -build` +Like the example above, but it builds the matching examples. + +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','Cortex M7' -StartCLI` +Start CLI environments for all ThreadX for Cortex M7 examples (IAR, ARM compiler v5, ARM compiler v6, GHS, ...). +From these you can use the commands 'realclean','clean','build','test' to call these operations and see the output on the console. + +Here is a list of commonly used commands that you can directly cut/paste into your command line: +`pwsh -Command Get-Help .\azrtos_cicd.ps1` +`pwsh -Command .\azrtos_cicd.ps1 -clean` +`pwsh -Command .\azrtos_cicd.ps1 -build` +`pwsh -Command .\azrtos_cicd.ps1 -test` +`pwsh -Command .\azrtos_cicd.ps1 -clean -build -test` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','ARM compiler v6','Cortex M' -clean` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','IAR','Cortex M' -clean` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','GCC','Cortex M' -clean` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','ARM compiler v6','Cortex M' -build` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','IAR','Cortex M' -build` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','GCC','Cortex M' -build` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TXM','ARM compiler v6','Cortex M' -clean` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TXM','IAR','Cortex M' -clean` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TXM','GCC','Cortex M' -clean` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TXM','ARM compiler v6','Cortex M' -build` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TXM','IAR','Cortex M' -build` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TXM','GCC','Cortex M' -build` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','ARM compiler v6','SMP' -clean` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','IAR','SMP' -clean` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','GCC','SMP' -clean` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','ARM compiler v6','SMP' -build` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','IAR','SMP' -build` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','GCC','SMP' -build` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','ARM compiler v6','ARMv8-A' -build` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','GCC','ARMv8-A' -build` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','ARM compiler v6','Cortex-A35' -clean` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','GCC','Cortex-A35' -clean` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','ARM compiler v6','Cortex-A35' -build` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','GCC','Cortex-A35' -build` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','ARM compiler v6','Cortex-A35' -test` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'TX ','GCC','Cortex-A35' -test` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'ARM compiler v6','Cortex-A35' -clean -build -test` +`pwsh -Command .\azrtos_cicd.ps1 -MatchKeywords 'GCC','Cortex-A35' -clean -build -test` + +For more examples look at the help embedded in the script. diff --git a/test/ports/README.old.md b/test/ports/README.old.md new file mode 100644 index 00000000..746d1d74 --- /dev/null +++ b/test/ports/README.old.md @@ -0,0 +1,30 @@ +# Azure RTOS CI/CD (old version) + +**There is a new version of this script written in PowerSell and now named azrtos_cicd.ps1. Use that script instead. The documentation for that script is in the file README.md and the embedded help of that script.** + +This directory contains a collection of files to execute several automated operations on all ports. +These are batch scripts and auxiliary files (expected test results, etc). + +## These operations include: +* Build: compile the port example. +* Clean: remove all build generated files. +* Test: test the example with the toolchain simulator. +* Test_FVP: test the example using the ARM FVP platform. + +## azrtos_cicd.old.bat +This is the main entry point for operations to be performed on several examples at the same time. +This script can be called from any location, it will automatically perform the requested operations on the examples of the repository where it is located. +This file outputs a summary to the screen and a detailed log file with all the output called azrtos_do.all.log +Call this scripts without parameters to get usage information. +The script parameters are case insensitive. + +## Examples: + +`azrtos_cicd.old.bat build tx ghs iar` +This will build all GHS and IAR example projects. + +`azrtos_cicd.old.bat clean tx all` +This cleans all ThreadX examples + +`azrtos_cicd.old.bat build txm iar` +This builds all ThreadX Modules IAR examples. diff --git a/test/ports/azrtos_build_tx_ac5.bat b/test/ports/azrtos_build_tx_ac5.bat new file mode 100644 index 00000000..5bfb7a02 --- /dev/null +++ b/test/ports/azrtos_build_tx_ac5.bat @@ -0,0 +1,17 @@ +@ECHO OFF + +ECHO INFO: Building %CD%... + +CALL build_threadx.bat +IF NOT EXIST tx.a ( + ECHO ERROR: ThreadX library build failed. + EXIT /B 1 +) + +CALL build_threadx_sample.bat +IF NOT EXIST sample_threadx.axf ( + ECHO ERROR: ThreadX example build failed. + EXIT /B 1 +) + +ECHO INFO: Build completed successfully! diff --git a/test/ports/azrtos_build_tx_arm_ds.bat b/test/ports/azrtos_build_tx_arm_ds.bat new file mode 100644 index 00000000..0f3c0102 --- /dev/null +++ b/test/ports/azrtos_build_tx_arm_ds.bat @@ -0,0 +1,23 @@ +@ECHO OFF + +ECHO INFO: Building %CD%... + +IF EXIST workspace GOTO WORKSPACE_EXISTS + +ECHO INFO: Initializing the workspace... +%AZRTOS_ARM_DS_IDEC% -nosplash --launcher.suppressErrors -application org.eclipse.cdt.managedbuilder.core.headlessbuild -data .\workspace -import .\tx -import .\sample_threadx +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: failed to initialize the workspace + EXIT /B 1 +) ELSE ( + ECHO INFO: Workspace initialized. +) + +:WORKSPACE_EXISTS +%AZRTOS_ARM_DS_IDEC% -nosplash --launcher.suppressErrors -application org.eclipse.cdt.managedbuilder.core.headlessbuild -data .\workspace -build tx -build sample_threadx +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: build failed. + EXIT /B 1 +) + +ECHO INFO: Build completed successfully! diff --git a/test/ports/azrtos_build_tx_ghs.bat b/test/ports/azrtos_build_tx_ghs.bat new file mode 100644 index 00000000..20f305eb --- /dev/null +++ b/test/ports/azrtos_build_tx_ghs.bat @@ -0,0 +1,11 @@ +@ECHO OFF + +ECHO INFO: Building %CD%... + +%AZRTOS_GHS_COMP_GBUILD% -top azure_rtos_workspace.gpj tx.a txe.a sample_threadx sample_threadx_el +IF %ERRORLEVEL% NEQ 0 ( + echo ERROR: build failed. + EXIT /B 1 +) + +ECHO INFO: Build completed successfully! diff --git a/test/ports/azrtos_build_tx_gnu.bat b/test/ports/azrtos_build_tx_gnu.bat new file mode 100644 index 00000000..b9d16faa --- /dev/null +++ b/test/ports/azrtos_build_tx_gnu.bat @@ -0,0 +1,17 @@ +@ECHO OFF + +ECHO INFO: Building %CD%... + +CALL build_threadx.bat +IF NOT EXIST tx.a ( + ECHO ERROR: ThreadX library build failed. + EXIT /B 1 +) + +CALL build_threadx_sample.bat +IF NOT EXIST sample_threadx.out ( + ECHO ERROR: ThreadX example build failed. + EXIT /B 1 +) + +ECHO INFO: Build completed successfully! diff --git a/test/ports/azrtos_build_tx_iar.bat b/test/ports/azrtos_build_tx_iar.bat new file mode 100644 index 00000000..866ea54a --- /dev/null +++ b/test/ports/azrtos_build_tx_iar.bat @@ -0,0 +1,17 @@ +@ECHO OFF + +ECHO INFO: Building %CD%... + +%AZRTOS_IAR_BUILD% tx.ewp -make Debug -log all -parallel %NUMBER_OF_PROCESSORS% +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: failed to build tx.ewp + EXIT /B 1 +) + +%AZRTOS_IAR_BUILD% sample_threadx.ewp -make Debug -log all -parallel %NUMBER_OF_PROCESSORS% +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: failed to build sample_threadx.ewp + EXIT /B 1 +) + +ECHO INFO: Build completed successfully! diff --git a/test/ports/azrtos_build_tx_mdk4.bat b/test/ports/azrtos_build_tx_mdk4.bat new file mode 100644 index 00000000..36c352e5 --- /dev/null +++ b/test/ports/azrtos_build_tx_mdk4.bat @@ -0,0 +1,24 @@ +@ECHO OFF + +ECHO INFO: Building %CD%... + +ECHO INFO: Building ThreadX_Library... +DEL out.txt 2> NUL +START /wait %AZRTOS_KEIL_UV% -j0 -b ThreadX_Library.uvproj -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO BUILD_ERROR +TYPE out.txt 2> NUL + +ECHO INFO: Building ThreadX_Demo... +DEL out.txt 2> NUL +START /wait %AZRTOS_KEIL_UV% -j0 -b ThreadX_Demo.uvproj -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO BUILD_ERROR +TYPE out.txt 2> NUL + +DEL out.txt 2> NUL +ECHO INFO: Build completed successfully! +EXIT /B 0 + +:BUILD_ERROR +TYPE out.txt 2> NUL +ECHO ERROR: build failed. +EXIT /B 1 diff --git a/test/ports/azrtos_build_tx_mdk5.bat b/test/ports/azrtos_build_tx_mdk5.bat new file mode 100644 index 00000000..4ebb115c --- /dev/null +++ b/test/ports/azrtos_build_tx_mdk5.bat @@ -0,0 +1,24 @@ +@ECHO OFF + +ECHO INFO: Building %CD%... + +ECHO INFO: Building ThreadX_Library... +DEL out.txt 2> NUL +START /wait %AZRTOS_KEIL_UV% -j0 -b ThreadX_Library.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO BUILD_ERROR +TYPE out.txt 2> NUL + +ECHO INFO: Building ThreadX_Demo... +DEL out.txt 2> NUL +START /wait %AZRTOS_KEIL_UV% -j0 -b ThreadX_Demo.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO BUILD_ERROR +TYPE out.txt 2> NUL + +DEL out.txt 2> NUL +ECHO INFO: Build completed successfully! +EXIT /B 0 + +:BUILD_ERROR +TYPE out.txt 2> NUL +ECHO ERROR: build failed. +EXIT /B 1 diff --git a/test/ports/azrtos_build_tx_tz_mdk5.bat b/test/ports/azrtos_build_tx_tz_mdk5.bat new file mode 100644 index 00000000..e7962ab2 --- /dev/null +++ b/test/ports/azrtos_build_tx_tz_mdk5.bat @@ -0,0 +1,45 @@ +@ECHO OFF + +ECHO INFO: Building %CD%... + +ECHO INFO: Building ThreadX_Library... +PUSHD . +DEL out.txt 2> NUL +%AZRTOS_KEIL_UV% -j0 -b ThreadX_Library.uvprojx -o out.txt +IF %ERRORLEVEL% NEQ 0 GOTO ERR_BUILD +TYPE out.txt 2> NUL +POPD + +ECHO INFO: Building demo_secure_zone... +PUSHD demo_secure_zone +DEL out.txt 2> NUL +%AZRTOS_KEIL_UV% -j0 -b demo_secure_zone.uvprojx -o out.txt +IF %ERRORLEVEL% NEQ 0 GOTO ERR_BUILD +TYPE out.txt 2> NUL +POPD + +ECHO INFO: Building demo_threadx_non-secure_zone... +PUSHD demo_threadx_non-secure_zone +DEL out.txt 2> NUL +%AZRTOS_KEIL_UV% -j0 -b demo_threadx_non-secure_zone.uvprojx -o out.txt +IF %ERRORLEVEL% NEQ 0 GOTO ERR_BUILD +TYPE out.txt 2> NUL +POPD + +REM ECHO Building ThreadX_Demo... +REM PUSHD demo_threadx_non-secure_zone +REM DEL out.txt 2> NUL +REM REM %AZRTOS_KEIL_UV% -j0 -b ThreadX_Demo.uvproj -o out.txt +REM IF %ERRORLEVEL% NEQ 0 GOTO ERR_BUILD +REM TYPE out.txt 2>NUL +REM POPD + +DEL out.txt 2> NUL +ECHO INFO: Build completed successfully! +EXIT /B 0 + +:ERR_BUILD +TYPE out.txt 2> NUL +POPD +echo ERROR: build failed. +EXIT /B 1 diff --git a/test/ports/azrtos_build_txm_ac5.bat b/test/ports/azrtos_build_txm_ac5.bat new file mode 100644 index 00000000..0916c9a1 --- /dev/null +++ b/test/ports/azrtos_build_txm_ac5.bat @@ -0,0 +1,35 @@ +@ECHO OFF + +ECHO INFO: Building %CD%... + +CALL build_threadx.bat +IF NOT EXIST tx.a ( + ECHO ERROR: ThreadX library build failed. + EXIT /B 1 +) + +CALL build_threadx_demo.bat +IF NOT EXIST sample_threadx.axf ( + ECHO ERROR: ThreadX example build failed. + EXIT /B 1 +) + +CALL build_threadx_module_library.bat +IF NOT EXIST txm.a ( + ECHO ERROR: ThreadX module library build failed. + EXIT /B 1 +) + +CALL build_threadx_module_demo.bat +IF NOT EXIST sample_threadx_module.axf ( + ECHO ERROR: ThreadX module example build failed. + EXIT /B 1 +) + +CALL build_threadx_module_manager_demo.bat +IF NOT EXIST sample_threadx_module_manager.axf ( + ECHO ERROR: ThreadX module manager example build failed. + EXIT /B 1 +) + +ECHO INFO: Build completed successfully! diff --git a/test/ports/azrtos_build_txm_arm_ds.bat b/test/ports/azrtos_build_txm_arm_ds.bat new file mode 100644 index 00000000..59e72ada --- /dev/null +++ b/test/ports/azrtos_build_txm_arm_ds.bat @@ -0,0 +1,23 @@ +@ECHO OFF + +ECHO INFO: Building %CD%... + +IF EXIST workspace GOTO WORKSPACE_EXISTS + +ECHO INFO: Initializing the workspace... +%AZRTOS_ARM_DS_IDEC% -nosplash --launcher.suppressErrors -application org.eclipse.cdt.managedbuilder.core.headlessbuild -data .\workspace -import .\tx -import .\sample_threadx -import .\txm -import .\sample_threadx_module -import .\sample_threadx_module_manager +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: failed to initialize the workspace + EXIT /B 1 +) ELSE ( + ECHO INFO: Workspace initialized. +) + +:WORKSPACE_EXISTS +%AZRTOS_ARM_DS_IDEC% -nosplash --launcher.suppressErrors -application org.eclipse.cdt.managedbuilder.core.headlessbuild -data .\workspace -build tx -build sample_threadx -build txm -build sample_threadx_module -build sample_threadx_module_manager +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: build failed. + EXIT /B 1 +) + +ECHO INFO: Build completed successfully! diff --git a/test/ports/azrtos_build_txm_gnu.bat b/test/ports/azrtos_build_txm_gnu.bat new file mode 100644 index 00000000..e0aaa5c5 --- /dev/null +++ b/test/ports/azrtos_build_txm_gnu.bat @@ -0,0 +1,35 @@ +@ECHO OFF + +ECHO INFO: Building %CD%... + +CALL build_threadx.bat +IF NOT EXIST tx.a ( + ECHO ERROR: ThreadX library build failed. + EXIT /B 1 +) + +CALL build_threadx_sample.bat +IF NOT EXIST sample_threadx.out ( + ECHO ERROR: ThreadX example build failed. + EXIT /B 1 +) + +CALL build_threadx_module_library.bat +IF NOT EXIST txm.a ( + ECHO ERROR: ThreadX module library build failed. + EXIT /B 1 +) + +CALL build_threadx_module_sample.bat +IF NOT EXIST sample_threadx_module.out ( + ECHO ERROR: ThreadX module example build failed. + EXIT /B 1 +) + +CALL build_threadx_module_manager_sample.bat +IF NOT EXIST sample_threadx_module_manager.out ( + ECHO ERROR: ThreadX module manager example build failed. + EXIT /B 1 +) + +ECHO INFO: Build completed successfully! diff --git a/test/ports/azrtos_build_txm_iar.bat b/test/ports/azrtos_build_txm_iar.bat new file mode 100644 index 00000000..09b411a3 --- /dev/null +++ b/test/ports/azrtos_build_txm_iar.bat @@ -0,0 +1,35 @@ +@ECHO OFF + +ECHO INFO: Building %CD%... + +%AZRTOS_IAR_BUILD% tx.ewp -make Debug -log all +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: failed to build tx.ewp + EXIT /B 1 +) + +%AZRTOS_IAR_BUILD% sample_threadx.ewp -make Debug -log all +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: failed to build sample_threadx.ewp + EXIT /B 1 +) + +%AZRTOS_IAR_BUILD% txm.ewp -make Debug -log all +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: failed to build txm.ewp + EXIT /B 1 +) + +%AZRTOS_IAR_BUILD% sample_threadx_module.ewp -make Debug -log all +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: failed to build sample_threadx_module.ewp + EXIT /B 1 +) + +%AZRTOS_IAR_BUILD% sample_threadx_module_manager.ewp -make Debug -log all +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: failed to build sample_threadx_module_manager.ewp + EXIT /B 1 +) + +ECHO INFO: Build completed successfully! diff --git a/test/ports/azrtos_build_txm_tz_mdk5.bat b/test/ports/azrtos_build_txm_tz_mdk5.bat new file mode 100644 index 00000000..ee77131c --- /dev/null +++ b/test/ports/azrtos_build_txm_tz_mdk5.bat @@ -0,0 +1,53 @@ +@ECHO OFF + +ECHO INFO: Building %CD%... + +ECHO INFO: Building txm... +PUSHD txm +DEL out.txt > NUL +%AZRTOS_KEIL_UV% -j -b txm.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO ERR_BUILD +TYPE out.txt 2> NUL +POPD + +ECHO INFO: Building ThreadX_Library... +PUSHD . +DEL out.txt 2> NUL +%AZRTOS_KEIL_UV% -j -b ThreadX_Library.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO ERR_BUILD +type out.txt 2> NUL +POPD + +ECHO INFO: Building demo_secure_zone... +PUSHD demo_secure_zone +DEL out.txt 2> NUL +%AZRTOS_KEIL_UV% -j -b demo_secure_zone.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO ERR_BUILD +type out.txt 2> NUL +POPD + +ECHO INFO: Building demo_threadx_non-secure_zone... +PUSHD demo_threadx_non-secure_zone +DEL out.txt 2> NUL +%AZRTOS_KEIL_UV% -j -b demo_threadx_non-secure_zone.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO ERR_BUILD +type out.txt 2> NUL +POPD + +ECHO INFO: Building sample_threadx_module... +PUSHD sample_threadx_module +DEL out.txt 2> NUL +%AZRTOS_KEIL_UV% -j -b sample_threadx_module.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO ERR_BUILD +type out.txt 2> NUL +POPD + +DEL out.txt 2> NUL +ECHO INFO: Build completed successfully! +EXIT /B 0 + +:ERR_BUILD +TYPE out.txt 2> NUL +POPD +echo ERROR: build failed. +EXIT /B 1 diff --git a/test/ports/azrtos_cicd.csv b/test/ports/azrtos_cicd.csv new file mode 100644 index 00000000..e8df6a4e --- /dev/null +++ b/test/ports/azrtos_cicd.csv @@ -0,0 +1,184 @@ +"Name", "Keywords", "Path", "HostPlatform", "CleanEnvScript", "CleanScript", "BuildEnvScript", "BuildScript", "TestEnvScript", "TestScript" +############################################################################## +# ThreadX +############################################################################## +### IAR +"ThreadX for Cortex ARM9 using the IAR tools", "TX ThreadX ARM Cortex ARM9 IAR", "ports\arm9\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_tx_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_tx_iar.bat", "", "" +"ThreadX for Cortex ARM11 using the IAR tools", "TX ThreadX ARM Cortex ARM11 IAR", "ports\arm11\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_tx_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_tx_iar.bat", "", "" +"ThreadX for Cortex M0 using the IAR tools", "TX ThreadX ARM Cortex M0 IAR", "ports\cortex_m0\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_tx_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_tx_iar.bat", "", "" +"ThreadX for Cortex M3 using the IAR tools", "TX ThreadX ARM Cortex M3 IAR", "ports\cortex_m3\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_tx_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_tx_iar.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_iar_cortex_m3_fvp.bat" +"ThreadX for Cortex M4 using the IAR tools", "TX ThreadX ARM Cortex M4 IAR", "ports\cortex_m4\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_tx_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_tx_iar.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_iar_cortex_m4_fvp.bat" +"ThreadX for Cortex M7 using the IAR tools", "TX ThreadX ARM Cortex M7 IAR", "ports\cortex_m7\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_tx_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_tx_iar.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_iar_cortex_m7_fvp.bat" +"ThreadX for Cortex R4 using the IAR tools", "TX ThreadX ARM Cortex R4 IAR", "ports\cortex_r4\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_tx_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_tx_iar.bat", "", "" +"ThreadX for Cortex R5 using the IAR tools", "TX ThreadX ARM Cortex R5 IAR", "ports\cortex_r5\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_tx_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_tx_iar.bat", "", "" +"ThreadX for Cortex A5 using the IAR tools", "TX ThreadX ARM Cortex A5 IAR", "ports\cortex_a5\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_tx_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_tx_iar.bat", "", "" +"ThreadX for Cortex A7 using the IAR tools", "TX ThreadX ARM Cortex A7 IAR", "ports\cortex_a7\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_tx_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_tx_iar.bat", "", "" +"ThreadX for Cortex A8 using the IAR tools", "TX ThreadX ARM Cortex A8 IAR", "ports\cortex_a8\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_tx_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_tx_iar.bat", "", "" +"ThreadX for Cortex A9 using the IAR tools", "TX ThreadX ARM Cortex A9 IAR", "ports\cortex_a9\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_tx_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_tx_iar.bat", "", "" +"ThreadX for Cortex A15 using the IAR tools", "TX ThreadX ARM Cortex A15 IAR", "ports\cortex_a15\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_tx_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_tx_iar.bat", "", "" +### GHS +"ThreadX for Cortex M3 using the GHS tools", "TX ThreadX ARM Cortex M3 GHS", "ports\cortex_m3\ghs\example_build", "Win32NT", "azrtos_setenv_ghs.bat", "azrtos_clean_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_build_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_test_tx_ghs_cortex_m3.bat" +"ThreadX for Cortex M4 using the GHS tools", "TX ThreadX ARM Cortex M4 GHS", "ports\cortex_m4\ghs\example_build", "Win32NT", "azrtos_setenv_ghs.bat", "azrtos_clean_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_build_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_test_tx_ghs_cortex_m4.bat" +"ThreadX for Cortex M7 using the GHS tools", "TX ThreadX ARM Cortex M7 GHS", "ports\cortex_m7\ghs\example_build", "Win32NT", "azrtos_setenv_ghs.bat", "azrtos_clean_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_build_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_test_tx_ghs_cortex_m7.bat" +"ThreadX for Cortex R4 using the GHS tools", "TX ThreadX ARM Cortex R4 GHS", "ports\cortex_r4\ghs\example_build", "Win32NT", "azrtos_setenv_ghs.bat", "azrtos_clean_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_build_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_test_tx_ghs_cortex_r4.bat" +"ThreadX for Cortex R5 using the GHS tools", "TX ThreadX ARM Cortex R5 GHS", "ports\cortex_r5\ghs\example_build", "Win32NT", "azrtos_setenv_ghs.bat", "azrtos_clean_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_build_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_test_tx_ghs_cortex_r5.bat" +"ThreadX for Cortex R7 using the GHS tools", "TX ThreadX ARM Cortex R7 GHS", "ports\cortex_r7\ghs\example_build", "Win32NT", "azrtos_setenv_ghs.bat", "azrtos_clean_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_build_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_test_tx_ghs_cortex_r7.bat" +"ThreadX for Cortex A5 using the GHS tools", "TX ThreadX ARM Cortex A5 GHS", "ports\cortex_a5\ghs\example_build", "Win32NT", "azrtos_setenv_ghs.bat", "azrtos_clean_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_build_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_test_tx_ghs_cortex_a5.bat" +"ThreadX for Cortex A7 using the GHS tools", "TX ThreadX ARM Cortex A7 GHS", "ports\cortex_a7\ghs\example_build", "Win32NT", "azrtos_setenv_ghs.bat", "azrtos_clean_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_build_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_test_tx_ghs_cortex_a7.bat" +"ThreadX for Cortex A8 using the GHS tools", "TX ThreadX ARM Cortex A8 GHS", "ports\cortex_a8\ghs\example_build", "Win32NT", "azrtos_setenv_ghs.bat", "azrtos_clean_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_build_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_test_tx_ghs_cortex_a8.bat" +"ThreadX for Cortex A9 using the GHS tools", "TX ThreadX ARM Cortex A9 GHS", "ports\cortex_a9\ghs\example_build", "Win32NT", "azrtos_setenv_ghs.bat", "azrtos_clean_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_build_tx_ghs.bat", "azrtos_setenv_ghs.bat", "azrtos_test_tx_ghs_cortex_a9.bat" +### KEIL MDK +"ThreadX for Cortex M3 using the KEIL MDK v4", "TX ThreadX ARM Cortex M3 KEIL MDK v4", "ports\cortex_m3\keil\example_build", "Win32NT", "azrtos_setenv_mdk4.bat", "azrtos_clean_tx_mdk4.bat", "azrtos_setenv_mdk4.bat", "azrtos_build_tx_mdk4.bat", "", "" +"ThreadX for Cortex M4 using the KEIL MDK v4", "TX ThreadX ARM Cortex M4 KEIL MDK v4", "ports\cortex_m4\keil\example_build", "Win32NT", "azrtos_setenv_mdk4.bat", "azrtos_clean_tx_mdk4.bat", "azrtos_setenv_mdk4.bat", "azrtos_build_tx_mdk4.bat", "", "" +"ThreadX for Cortex M0 using the KEIL MDK v5", "TX ThreadX ARM Cortex M0 KEIL MDK v5", "ports\cortex_m0\keil\example_build", "Win32NT", "azrtos_setenv_mdk5.bat", "azrtos_clean_tx_mdk5.bat", "azrtos_setenv_mdk5.bat", "azrtos_build_tx_mdk5.bat", "", "" +"ThreadX for Cortex M3 using the KEIL MDK v5", "TX ThreadX ARM Cortex M3 KEIL MDK v5", "ports\cortex_m3\keil\example_build", "Win32NT", "azrtos_setenv_mdk5.bat", "azrtos_clean_tx_mdk5.bat", "azrtos_setenv_mdk5.bat", "azrtos_build_tx_mdk5.bat", "", "" +"ThreadX for Cortex M4 using the KEIL MDK v5", "TX ThreadX ARM Cortex M4 KEIL MDK v5", "ports\cortex_m4\keil\example_build", "Win32NT", "azrtos_setenv_mdk5.bat", "azrtos_clean_tx_mdk5.bat", "azrtos_setenv_mdk5.bat", "azrtos_build_tx_mdk5.bat", "", "" +### ARM compiler v5 +"ThreadX for ARM9 using the ARM compiler v5", "TX ThreadX ARM9 ARM compiler v5", "ports\arm9\ac5\example_build", "Win32NT", "azrtos_setenv_ac5.bat", "azrtos_clean_tx_ac5.bat", "azrtos_setenv_ac5.bat", "azrtos_build_tx_ac5.bat", "", "" +"ThreadX for ARM11 using the ARM compiler v5", "TX ThreadX ARM11 ARM compiler v5", "ports\arm11\ac5\example_build", "Win32NT", "azrtos_setenv_ac5.bat", "azrtos_clean_tx_ac5.bat", "azrtos_setenv_ac5.bat", "azrtos_build_tx_ac5.bat", "", "" +"ThreadX for Cortex M0 using the ARM compiler v5", "TX ThreadX ARM Cortex M0 ARM compiler v5", "ports\cortex_m0\ac5\example_build", "Win32NT", "azrtos_setenv_ac5.bat", "azrtos_clean_tx_ac5.bat", "azrtos_setenv_ac5.bat", "azrtos_build_tx_ac5.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac5_cortex_m0.bat" +"ThreadX for Cortex M3 using the ARM compiler v5", "TX ThreadX ARM Cortex M3 ARM compiler v5", "ports\cortex_m3\ac5\example_build", "Win32NT", "azrtos_setenv_ac5.bat", "azrtos_clean_tx_ac5.bat", "azrtos_setenv_ac5.bat", "azrtos_build_tx_ac5.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac5_cortex_m3.bat" +"ThreadX for Cortex M4 using the ARM compiler v5", "TX ThreadX ARM Cortex M4 ARM compiler v5", "ports\cortex_m4\ac5\example_build", "Win32NT", "azrtos_setenv_ac5.bat", "azrtos_clean_tx_ac5.bat", "azrtos_setenv_ac5.bat", "azrtos_build_tx_ac5.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac5_cortex_m4.bat" +"ThreadX for Cortex M7 using the ARM compiler v5", "TX ThreadX ARM Cortex M7 ARM compiler v5", "ports\cortex_m7\ac5\example_build", "Win32NT", "azrtos_setenv_ac5.bat", "azrtos_clean_tx_ac5.bat", "azrtos_setenv_ac5.bat", "azrtos_build_tx_ac5.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac5_cortex_m7.bat" +"ThreadX for Cortex R4 using the ARM compiler v5", "TX ThreadX ARM Cortex R4 ARM compiler v5", "ports\cortex_r4\ac5\example_build", "Win32NT", "azrtos_setenv_ac5.bat", "azrtos_clean_tx_ac5.bat", "azrtos_setenv_ac5.bat", "azrtos_build_tx_ac5.bat", "", "" +"ThreadX for Cortex R5 using the ARM compiler v5", "TX ThreadX ARM Cortex R5 ARM compiler v5", "ports\cortex_r5\ac5\example_build", "Win32NT", "azrtos_setenv_ac5.bat", "azrtos_clean_tx_ac5.bat", "azrtos_setenv_ac5.bat", "azrtos_build_tx_ac5.bat", "", "" +"ThreadX for Cortex A5 using the ARM compiler v5", "TX ThreadX ARM Cortex A5 ARM compiler v5", "ports\cortex_a7\ac5\example_build", "Win32NT", "azrtos_setenv_ac5.bat", "azrtos_clean_tx_ac5.bat", "azrtos_setenv_ac5.bat", "azrtos_build_tx_ac5.bat", "", "" +"ThreadX for Cortex A7 using the ARM compiler v5", "TX ThreadX ARM Cortex A7 ARM compiler v5", "ports\cortex_a7\ac5\example_build", "Win32NT", "azrtos_setenv_ac5.bat", "azrtos_clean_tx_ac5.bat", "azrtos_setenv_ac5.bat", "azrtos_build_tx_ac5.bat", "", "" +"ThreadX for Cortex A8 using the ARM compiler v5", "TX ThreadX ARM Cortex A8 ARM compiler v5", "ports\cortex_a8\ac5\example_build", "Win32NT", "azrtos_setenv_ac5.bat", "azrtos_clean_tx_ac5.bat", "azrtos_setenv_ac5.bat", "azrtos_build_tx_ac5.bat", "", "" +"ThreadX for Cortex A9 using the ARM compiler v5", "TX ThreadX ARM Cortex A9 ARM compiler v5", "ports\cortex_a9\ac5\example_build", "Win32NT", "azrtos_setenv_ac5.bat", "azrtos_clean_tx_ac5.bat", "azrtos_setenv_ac5.bat", "azrtos_build_tx_ac5.bat", "", "" +### ARM compiler v6 +"ThreadX for Cortex M0 using the ARM compiler v6", "TX ThreadX ARM Cortex M0 ARM compiler v6", "ports\cortex_m0\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_m0.bat" +"ThreadX for Cortex M3 using the ARM compiler v6", "TX ThreadX ARM Cortex M3 ARM compiler v6", "ports\cortex_m3\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_m3.bat" +"ThreadX for Cortex M4 using the ARM compiler v6", "TX ThreadX ARM Cortex M4 ARM compiler v6", "ports\cortex_m4\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_m4.bat" +"ThreadX for Cortex M7 using the ARM compiler v6", "TX ThreadX ARM Cortex M7 ARM compiler v6", "ports\cortex_m7\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_m7.bat" +"ThreadX for Cortex M23 using the ARM compiler v6", "TX ThreadX ARM Cortex M23 ARM compiler v6 KEIL MDK v5", "ports\cortex_m23\ac6\example_build", "Win32NT", "azrtos_setenv_mdk5.bat", "azrtos_clean_tx_tz_mdk5.bat", "azrtos_setenv_mdk5.bat", "azrtos_build_tx_tz_mdk5.bat", "", "" +"ThreadX for Cortex M33 using the ARM compiler v6", "TX ThreadX ARM Cortex M33 ARM compiler v6 KEIL MDK v5", "ports\cortex_m33\ac6\example_build", "Win32NT", "azrtos_setenv_mdk5.bat", "azrtos_clean_tx_tz_mdk5.bat", "azrtos_setenv_mdk5.bat", "azrtos_build_tx_tz_mdk5.bat", "", "" +"ThreadX for Cortex R4 using the ARM compiler v6", "TX ThreadX ARM Cortex R4 ARM compiler v6", "ports\cortex_r4\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_r4.bat" +"ThreadX for Cortex R5 using the ARM compiler v6", "TX ThreadX ARM Cortex R5 ARM compiler v6", "ports\cortex_r5\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_r5.bat" +"ThreadX for Cortex A7 using the ARM compiler v6", "TX ThreadX ARM Cortex A7 ARM compiler v6", "ports\cortex_a7\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_a7.bat" +"ThreadX for Cortex A8 using the ARM compiler v6", "TX ThreadX ARM Cortex A8 ARM compiler v6", "ports\cortex_a8\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_a8.bat" +"ThreadX for Cortex A9 using the ARM compiler v6", "TX ThreadX ARM Cortex A9 ARM compiler v6", "ports\cortex_a9\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_a9.bat" +"ThreadX for Cortex A15 using the ARM compiler v6", "TX ThreadX ARM Cortex A15 ARM compiler v6", "ports\cortex_a15\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_a15.bat" +"ThreadX for Cortex A5x using the ARM compiler v6", "TX ThreadX ARM Cortex A5x ARM compiler v6", "ports\cortex_a5x\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +### ARM Compiler v6 - ARMv8-A +"ThreadX for Cortex A35 using the ARM compiler v6", "TX ThreadX ARM Cortex A35 ARMv8-A ARM compiler v6", "ports\cortex_a35\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A53 using the ARM compiler v6", "TX ThreadX ARM Cortex A53 ARMv8-A ARM compiler v6", "ports\cortex_a53\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A55 using the ARM compiler v6", "TX ThreadX ARM Cortex A55 ARMv8-A ARM compiler v6", "ports\cortex_a55\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A57 using the ARM compiler v6", "TX ThreadX ARM Cortex A57 ARMv8-A ARM compiler v6", "ports\cortex_a57\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A65 using the ARM compiler v6", "TX ThreadX ARM Cortex A65 ARMv8-A ARM compiler v6", "ports\cortex_a65\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A65AE using the ARM compiler v6", "TX ThreadX ARM Cortex A65AE ARMv8-A ARM compiler v6", "ports\cortex_a65ae\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A72 using the ARM compiler v6", "TX ThreadX ARM Cortex A72 ARMv8-A ARM compiler v6", "ports\cortex_a72\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A73 using the ARM compiler v6", "TX ThreadX ARM Cortex A73 ARMv8-A ARM compiler v6", "ports\cortex_a73\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A75 using the ARM compiler v6", "TX ThreadX ARM Cortex A75 ARMv8-A ARM compiler v6", "ports\cortex_a75\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A76 using the ARM compiler v6", "TX ThreadX ARM Cortex A76 ARMv8-A ARM compiler v6", "ports\cortex_a76\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A76AE using the ARM compiler v6", "TX ThreadX ARM Cortex A76AE ARMv8-A ARM compiler v6", "ports\cortex_a76ae\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A77 using the ARM compiler v6", "TX ThreadX ARM Cortex A77 ARMv8-A ARM compiler v6", "ports\cortex_a77\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +### ARM Compiler v6 - ARMv7-A +"ThreadX for ARMv7-A Cortex A5 using the ARM compiler v6", "TX ThreadX ARM Cortex A5 ARM compiler v6", "ports\cortex_a5\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_a5.bat" +"ThreadX for ARMv7-A Cortex A7 using the ARM compiler v6", "TX ThreadX ARM Cortex A7 ARM compiler v6", "ports\cortex_a7\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_a7.bat" +"ThreadX for ARMv7-A Cortex A8 using the ARM compiler v6", "TX ThreadX ARM Cortex A8 ARM compiler v6", "ports\cortex_a8\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_a8.bat" +"ThreadX for ARMv7-A Cortex A9 using the ARM compiler v6", "TX ThreadX ARM Cortex A9 ARM compiler v6", "ports\cortex_a9\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_a9.bat" +"ThreadX for ARMv7-A Cortex A12 using the ARM compiler v6", "TX ThreadX ARM Cortex A15 ARM compiler v6", "ports\cortex_a15\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_a12.bat" +"ThreadX for ARMv7-A Cortex A15 using the ARM compiler v6", "TX ThreadX ARM Cortex A15 ARM compiler v6", "ports\cortex_a15\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_a15.bat" +"ThreadX for ARMv7-A Cortex A17 using the ARM compiler v6", "TX ThreadX ARM Cortex A15 ARM compiler v6", "ports\cortex_a15\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_ac6_cortex_a17.bat" +### GCC +"ThreadX for Cortex M0 using the GNU Compiler Collection", "TX ThreadX ARM Cortex M0 GNU GCC", "ports\cortex_m0\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_gnu_cortex_m0.bat" +"ThreadX for Cortex M3 using the GNU Compiler Collection", "TX ThreadX ARM Cortex M3 GNU GCC", "ports\cortex_m3\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_gnu_cortex_m3.bat" +"ThreadX for Cortex M4 using the GNU Compiler Collection", "TX ThreadX ARM Cortex M4 GNU GCC", "ports\cortex_m4\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_gnu_cortex_m4.bat" +"ThreadX for Cortex M7 using the GNU Compiler Collection", "TX ThreadX ARM Cortex M7 GNU GCC", "ports\cortex_m7\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_gnu_cortex_m7.bat" +"ThreadX for Cortex R4 using the GNU Compiler Collection", "TX ThreadX ARM Cortex R4 GNU GCC", "ports\cortex_r4\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_gnu_cortex_r4.bat" +"ThreadX for Cortex R5 using the GNU Compiler Collection", "TX ThreadX ARM Cortex R5 GNU GCC", "ports\cortex_r5\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "", "" +"ThreadX for Cortex A5 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A5 GNU GCC", "ports\cortex_a5\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "", "" +"ThreadX for Cortex A7 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A7 GNU GCC", "ports\cortex_a7\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "", "" +"ThreadX for Cortex A8 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A8 GNU GCC", "ports\cortex_a8\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "", "" +"ThreadX for Cortex A9 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A9 GNU GCC", "ports\cortex_a9\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "", "" +"ThreadX for Cortex A15 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A15 GNU GCC", "ports\cortex_a15\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "", "" +### GCC - ARMv7-A +"ThreadX for ARMv7-A Cortex A5 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A5 GNU GCC", "ports\cortex_a5\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_gnu_cortex_a5.bat" +"ThreadX for ARMv7-A Cortex A7 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A7 GNU GCC", "ports\cortex_a7\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_gnu_cortex_a7.bat" +"ThreadX for ARMv7-A Cortex A8 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A8 GNU GCC", "ports\cortex_a8\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_gnu_cortex_a8.bat" +"ThreadX for ARMv7-A Cortex A9 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A9 GNU GCC", "ports\cortex_a9\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_gnu_cortex_a9.bat" +"ThreadX for ARMv7-A Cortex A12 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A12 GNU GCC", "ports\cortex_a15\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_gnu_cortex_a12.bat" +"ThreadX for ARMv7-A Cortex A15 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A15 GNU GCC", "ports\cortex_a15\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_gnu_cortex_a15.bat" +"ThreadX for ARMv7-A Cortex A17 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A17 GNU GCC", "ports\cortex_a15\gnu\example_build", "Win32NT", "azrtos_setenv_gnu.bat", "azrtos_clean_tx_gnu.bat", "azrtos_setenv_gnu.bat", "azrtos_build_tx_gnu.bat", "azrtos_setenv_arm_ds.bat", "azrtos_test_tx_gnu_cortex_a17.bat" + +### GCC - ARMv8-A +"ThreadX for Cortex A35 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A35 ARMv8-A GNU GCC", "ports\cortex_a35\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A53 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A53 ARMv8-A GNU GCC", "ports\cortex_a53\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A55 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A55 ARMv8-A GNU GCC", "ports\cortex_a55\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A57 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A57 ARMv8-A GNU GCC", "ports\cortex_a57\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A65 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A65 ARMv8-A GNU GCC", "ports\cortex_a65\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A65AE using the GNU Compiler Collection", "TX ThreadX ARM Cortex A65AE ARMv8-A GNU GCC", "ports\cortex_a65ae\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A72 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A72 ARMv8-A GNU GCC", "ports\cortex_a72\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A73 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A73 ARMv8-A GNU GCC", "ports\cortex_a73\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A75 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A75 ARMv8-A GNU GCC", "ports\cortex_a75\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A76 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A76 ARMv8-A GNU GCC", "ports\cortex_a76\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A76AE using the GNU Compiler Collection", "TX ThreadX ARM Cortex A76AE ARMv8-A GNU GCC", "ports\cortex_a76ae\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX for Cortex A77 using the GNU Compiler Collection", "TX ThreadX ARM Cortex A77 ARMv8-A GNU GCC", "ports\cortex_a77\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +############################################################################## +# ThreadX Modules +############################################################################## +### IAR +"ThreadX Modules for Cortex M3 using the IAR tools", "TXM ThreadX Modules ARM Cortex M3 IAR", "ports_module\cortex_m3\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_txm_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_txm_iar.bat", "", "" +"ThreadX Modules for Cortex M4 using the IAR tools", "TXM ThreadX Modules ARM Cortex M4 IAR", "ports_module\cortex_m4\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_txm_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_txm_iar.bat", "", "" +"ThreadX Modules for Cortex M7 using the IAR tools", "TXM ThreadX Modules ARM Cortex M7 IAR", "ports_module\cortex_m7\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_txm_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_txm_iar.bat", "", "" +"ThreadX Modules for Cortex M0+ using the IAR tools", "TXM ThreadX Modules ARM Cortex M0+ IAR", "ports_module\cortex_m0+\iar\example_build", "Win32NT", "azrtos_setenv_iar.bat", "azrtos_clean_txm_iar.bat", "azrtos_setenv_iar.bat", "azrtos_build_txm_iar.bat", "", "" +### ARM compiler v6 +"ThreadX Modules for Cortex M0+ using the ARM compiler v6", "TXM ThreadX Modules ARM Cortex M0+ ARM compiler v6", "ports_module\cortex_m0+\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_txm_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_txm_arm_ds.bat", "", "" +"ThreadX Modules for Cortex M3 using the ARM compiler v6", "TXM ThreadX Modules ARM Cortex M3 ARM compiler v6", "ports_module\cortex_m3\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_txm_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_txm_arm_ds.bat", "", "" +"ThreadX Modules for Cortex M4 using the ARM compiler v6", "TXM ThreadX Modules ARM Cortex M4 ARM compiler v6", "ports_module\cortex_m4\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_txm_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_txm_arm_ds.bat", "", "" +"ThreadX Modules for Cortex M7 using the ARM compiler v6", "TXM ThreadX Modules ARM Cortex M7 ARM compiler v6", "ports_module\cortex_m7\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_txm_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_txm_arm_ds.bat", "", "" +"ThreadX Modules for Cortex R4 using the ARM compiler v6", "TXM ThreadX Modules ARM Cortex R4 ARM compiler v6", "ports_module\cortex_r4\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_txm_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_txm_arm_ds.bat", "", "" +"ThreadX Modules for Cortex M23 using the ARM compiler v6", "TXM ThreadX Modules ARM Cortex M23 ARM compiler v6 KEIL MDK v5", "ports_module\cortex_m23\ac6\example_build", "Win32NT", "azrtos_setenv_mdk5.bat", "azrtos_clean_txm_tz_mdk5.bat", "azrtos_setenv_mdk5.bat", "azrtos_build_txm_tz_mdk5.bat", "", "" +"ThreadX Modules for Cortex M33 using the ARM compiler v6", "TXM ThreadX Modules ARM Cortex M33 ARM compiler v6 KEIL MDK v5", "ports_module\cortex_m33\ac6\example_build", "Win32NT", "azrtos_setenv_mdk5.bat", "azrtos_clean_txm_tz_mdk5.bat", "azrtos_setenv_mdk5.bat", "azrtos_build_txm_tz_mdk5.bat", "", "" +"ThreadX Modules for Cortex A35 using the ARM compiler v6", "TXM ThreadX Modules ARM Cortex A35 ARMv8-A ARM compiler v6", "ports_module\cortex_a35\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_txm_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_txm_arm_ds.bat", "", "" +### GCC +"ThreadX Modules for Cortex M0+ using the GNU Compiler Collection", "TXM ThreadX Modules ARM Cortex M0+ GNU GCC", "ports_module\cortex_m0+\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_txm_arm_ds.bat", "azrtos_build_txm_arm_ds.bat", "", "" +"ThreadX Modules for Cortex M3 using the GNU Compiler Collection", "TXM ThreadX Modules ARM Cortex M3 GNU GCC", "ports_module\cortex_m3\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_txm_arm_ds.bat", "azrtos_build_txm_arm_ds.bat", "", "" +"ThreadX Modules for Cortex M4 using the GNU Compiler Collection", "TXM ThreadX Modules ARM Cortex M4 GNU GCC", "ports_module\cortex_m4\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_txm_arm_ds.bat", "azrtos_build_txm_arm_ds.bat", "", "" +"ThreadX Modules for Cortex M7 using the GNU Compiler Collection", "TXM ThreadX Modules ARM Cortex M7 GNU GCC", "ports_module\cortex_m7\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_txm_arm_ds.bat", "azrtos_build_txm_arm_ds.bat", "", "" +"ThreadX Modules for Cortex A35 using the GNU Compiler Collection", "TXM ThreadX Modules ARM Cortex A35 ARMv8-A GNU GCC", "ports_module\cortex_a35\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_txm_arm_ds.bat", "azrtos_build_txm_arm_ds.bat", "", "" +############################################################################## +# ThreadX SMP +############################################################################## +### ARM compiler v6 - ARMv8-A-SMP legacy +"ThreadX SMP for Cortex A5x using the ARM compiler v6", "TX ThreadX SMP ARM Cortex A5x ARM compiler v6", "ports_smp\cortex_a5x_smp\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +### ARM Compiler v6 - ARMv8-A-SMP +"ThreadX SMP for Cortex A35 using the ARM compiler v6", "TX ThreadX SMP ARM Cortex A35 ARMv8-A ARM compiler v6", "ports_smp\cortex_a35_smp\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A53 using the ARM compiler v6", "TX ThreadX SMP ARM Cortex A53 ARMv8-A ARM compiler v6", "ports_smp\cortex_a53_smp\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A55 using the ARM compiler v6", "TX ThreadX SMP ARM Cortex A55 ARMv8-A ARM compiler v6", "ports_smp\cortex_a55_smp\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A57 using the ARM compiler v6", "TX ThreadX SMP ARM Cortex A57 ARMv8-A ARM compiler v6", "ports_smp\cortex_a57_smp\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A65 using the ARM compiler v6", "TX ThreadX SMP ARM Cortex A65 ARMv8-A ARM compiler v6", "ports_smp\cortex_a65_smp\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A65AE using the ARM compiler v6", "TX ThreadX SMP ARM Cortex A65AE ARMv8-A ARM compiler v6", "ports_smp\cortex_a65ae_smp\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A72 using the ARM compiler v6", "TX ThreadX SMP ARM Cortex A72 ARMv8-A ARM compiler v6", "ports_smp\cortex_a72_smp\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A73 using the ARM compiler v6", "TX ThreadX SMP ARM Cortex A73 ARMv8-A ARM compiler v6", "ports_smp\cortex_a73_smp\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A75 using the ARM compiler v6", "TX ThreadX SMP ARM Cortex A75 ARMv8-A ARM compiler v6", "ports_smp\cortex_a75_smp\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A76 using the ARM compiler v6", "TX ThreadX SMP ARM Cortex A76 ARMv8-A ARM compiler v6", "ports_smp\cortex_a76_smp\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A76AE using the ARM compiler v6", "TX ThreadX SMP ARM Cortex A76AE ARMv8-A ARM compiler v6", "ports_smp\cortex_a76ae_smp\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A77 using the ARM compiler v6", "TX ThreadX SMP ARM Cortex A77 ARMv8-A ARM compiler v6", "ports_smp\cortex_a77_smp\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +### GCC +"ThreadX SMP for Cortex A5 using the GNU Compiler Collection", "TX ThreadX SMP ARM Cortex A5 GNU GCC", "ports_smp\cortex_a5_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A7 using the GNU Compiler Collection", "TX ThreadX SMP ARM Cortex A7 GNU GCC", "ports_smp\cortex_a7_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A9 using the GNU Compiler Collection", "TX ThreadX SMP ARM Cortex A9 GNU GCC", "ports_smp\cortex_a9_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +### GCC - ARMv8-A-SMP legacy +"ThreadX SMP for Cortex A5x using the GNU Compiler Collection", "TX ThreadX SMP ARM Cortex A5x GNU GCC", "ports_smp\cortex_a5x_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +### GCC - ARMv8-A-SMP +"ThreadX SMP for Cortex A35 using the GNU Compiler Collection", "TX ThreadX SMP ARM Cortex A35 ARMv8-A GNU Compiler Collection GCC", "ports_smp\cortex_a35_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A53 using the GNU Compiler Collection", "TX ThreadX SMP ARM Cortex A53 ARMv8-A GNU Compiler Collection GCC", "ports_smp\cortex_a53_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A55 using the GNU Compiler Collection", "TX ThreadX SMP ARM Cortex A55 ARMv8-A GNU Compiler Collection GCC", "ports_smp\cortex_a55_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A57 using the GNU Compiler Collection", "TX ThreadX SMP ARM Cortex A57 ARMv8-A GNU Compiler Collection GCC", "ports_smp\cortex_a57_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A65 using the GNU Compiler Collection", "TX ThreadX SMP ARM Cortex A65 ARMv8-A GNU Compiler Collection GCC", "ports_smp\cortex_a65_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A65AE using the GNU Compiler Collection", "TX ThreadX SMP ARM Cortex A65AE ARMv8-A GNU Compiler Collection GCC", "ports_smp\cortex_a65ae_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A72 using the GNU Compiler Collection", "TX ThreadX SMP ARM Cortex A72 ARMv8-A GNU Compiler Collection GCC", "ports_smp\cortex_a72_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A73 using the GNU Compiler Collection", "TX ThreadX SMP ARM Cortex A73 ARMv8-A GNU Compiler Collection GCC", "ports_smp\cortex_a73_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A75 using the GNU Compiler Collection", "TX ThreadX SMP ARM Cortex A75 ARMv8-A GNU Compiler Collection GCC", "ports_smp\cortex_a75_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A76 using the GNU Compiler Collection", "TX ThreadX SMP ARM Cortex A76 ARMv8-A GNU Compiler Collection GCC", "ports_smp\cortex_a76_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A76AE using the GNU Compiler Collection", "TX ThreadX SMP ARM Cortex A76AE ARMv8-A GNU Compiler Collection GCC", "ports_smp\cortex_a76ae_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +"ThreadX SMP for Cortex A77 using the GNU Compiler Collection", "TX ThreadX SMP ARM Cortex A77 ARMv8-A GNU Compiler Collection GCC", "ports_smp\cortex_a77_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_tx_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_tx_arm_ds.bat", "", "" +############################################################################## +# ThreadX SMP Modules +############################################################################## +### ARM compiler v6 +"ThreadX SMP Modules for Cortex A35 using the ARM compiler v6", "TXM ThreadX SMP Modules ARM Cortex A35 ARMv8-A ARM compiler v6", "ports_module\cortex_a35_smp\ac6\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_txm_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_txm_arm_ds.bat", "", "" +### GCC +"ThreadX SMP Modules for Cortex A35 using the GNU Compiler Collection", "TXM ThreadX SMP Modules ARM Cortex A35 ARMv8-A GNU GCC", "ports_module\cortex_a35_smp\gnu\example_build", "Win32NT", "azrtos_setenv_arm_ds.bat", "azrtos_clean_txm_arm_ds.bat", "azrtos_setenv_arm_ds.bat", "azrtos_build_txm_arm_ds.bat", "", "" diff --git a/test/ports/azrtos_cicd.old.bat b/test/ports/azrtos_cicd.old.bat new file mode 100644 index 00000000..54dffc57 --- /dev/null +++ b/test/ports/azrtos_cicd.old.bat @@ -0,0 +1,281 @@ +@REM *************************************************************************** +@REM +@REM Builds/Cleans/Tests all examples +@REM +@REM Call this script without parameters for usage help. +@REM +@REM *************************************************************************** + +@ECHO OFF + +SETLOCAL ENABLEEXTENSIONS +SETLOCAL ENABLEDELAYEDEXPANSION + +SET SCRIPT_NAME=%~n0%~x0 +CALL :DBG_MSG "SCRIPT_NAME: %SCRIPT_NAME%" +SET "AZRTOS_TEST_DIR=%~dp0" +CALL :DBG_MSG "AZRTOS_TEST_DIR: %AZRTOS_TEST_DIR%" +SET "AZRTOS_REPO_DIR=%~dp0..\." +CALL :DBG_MSG "AZRTOS_REPO_DIR: %AZRTOS_REPO_DIR%" + +CALL :DBG_MSG "Parsing parameters..." +IF /I "%1" EQU "" GOTO PRINT_USAGE_AND_EXIT +IF /I "%1" EQU "BUILD" SET FLAG_DO_WHAT=BUILD +IF /I "%1" EQU "CLEAN" SET FLAG_DO_WHAT=CLEAN +IF /I "%1" EQU "TEST" SET FLAG_DO_WHAT=TEST +IF "%FLAG_DO_WHAT%"=="" GOTO PRINT_USAGE_AND_EXIT +CALL :DBG_MSG "FLAG_DO_WHAT: %FLAG_DO_WHAT%" +SHIFT +IF /I "%1" EQU "" GOTO PRINT_USAGE_AND_EXIT +IF /I "%1" EQU "TX" SET FLAG_DO_WHICH=TX +IF /I "%1" EQU "TXM" SET FLAG_DO_WHICH=TXM +IF "%FLAG_DO_WHICH%"=="" GOTO PRINT_USAGE_AND_EXIT +CALL :DBG_MSG "FLAG_DO_WHICH: %FLAG_DO_WHICH%" +SET FLAG_GHS=0 +SET FLAG_IAR=0 +SET FLAG_AC5=0 +SET FLAG_AC6=0 +SET FLAG_KUV=0 +SET FLAG_GNU=0 +CALL :DBG_MSG "Parsing groups..." +:PARSE_GROUP_PARAMS +SHIFT +IF /I "%1" EQU "" GOTO GROUP_PARAMS_PARSED +IF /I "%1" EQU "ALL" ( + SET FLAG_IAR=1 + SET FLAG_GHS=1 + SET FLAG_AC5=1 + SET FLAG_AC6=1 + SET FLAG_KUV=1 + SET FLAG_GNU=1 +) +IF /I "%1" EQU "IAR" SET FLAG_IAR=1 +IF /I "%1" EQU "GHS" SET FLAG_GHS=1 +IF /I "%1" EQU "AC5" SET FLAG_AC5=1 +IF /I "%1" EQU "AC6" SET FLAG_AC6=1 +IF /I "%1" EQU "KUV" SET FLAG_KUV=1 +IF /I "%1" EQU "GNU" SET FLAG_GNU=1 +GOTO PARSE_GROUP_PARAMS +CALL :DBG_MSG "Groups parsed." +:GROUP_PARAMS_PARSED +CALL :DBG_MSG "FLAG_IAR: %FLAG_IAR%" +CALL :DBG_MSG "FLAG_GHS: %FLAG_GHS%" +CALL :DBG_MSG "FLAG_AC5: %FLAG_AC5%" +CALL :DBG_MSG "FLAG_AC6: %FLAG_AC6%" +CALL :DBG_MSG "FLAG_KUV: %FLAG_KUV%" +CALL :DBG_MSG "FLAG_GNU: %FLAG_GNU%" +CALL :DBG_MSG "Parameters parsed." + +IF %FLAG_IAR% EQU 1 ( + CALL azrtos_setenv_iar.bat + IF %ERRORLEVEL% NEQ 0 GOTO :SETENV_ERROR +) +IF %FLAG_GHS% EQU 1 ( + CALL azrtos_setenv_ghs.bat + IF %ERRORLEVEL% NEQ 0 GOTO :SETENV_ERROR +) +IF %FLAG_AC5% EQU 1 ( + CALL azrtos_setenv_ac5.bat + IF %ERRORLEVEL% NEQ 0 GOTO :SETENV_ERROR +) +IF %FLAG_AC6% EQU 1 ( + CALL azrtos_setenv_ac6.bat + IF %ERRORLEVEL% NEQ 0 GOTO :SETENV_ERROR +) +IF %FLAG_KUV% EQU 1 ( + CALL azrtos_setenv_kuv.bat + IF %ERRORLEVEL% NEQ 0 GOTO :SETENV_ERROR +) +IF %FLAG_GNU% EQU 1 ( + CALL azrtos_setenv_gnu.bat + IF %ERRORLEVEL% NEQ 0 GOTO :SETENV_ERROR +) +IF "%FLAG_DO_WHAT%" EQU "TEST" ( + IF %FLAG_GNU% EQU 1 ( + CALL azrtos_setenv_arm_dbg.bat + ) +) + +SET LOGFILE=%AZRTOS_REPO_DIR%\test\azrtos_do_all.log +CALL :DBG_MSG "LOGFILE: %LOGFILE%" + +SET /A DIR_COUNT=0 +SET /A DIR_SUCCESS_COUNT=0 +SET /A DIR_ERROR_COUNT=0 + +IF %FLAG_DO_WHICH%==TX ( + IF %FLAG_IAR%==1 ( + CALL :DO_DIR IAR CORTEX_M0 %AZRTOS_REPO_DIR%\ports\cortex_m0\iar\example_build + CALL :DO_DIR IAR CORTEX_M3 %AZRTOS_REPO_DIR%\ports\cortex_m3\iar\example_build + CALL :DO_DIR IAR CORTEX_M4 %AZRTOS_REPO_DIR%\ports\cortex_m4\iar\example_build + CALL :DO_DIR IAR CORTEX_M7 %AZRTOS_REPO_DIR%\ports\cortex_m7\iar\example_build + REM CALL :DO_DIR IAR CORTEX_M23 %AZRTOS_REPO_DIR%\ports\cortex_m23\iar\example_build + REM CALL :DO_DIR IAR CORTEX_M33 %AZRTOS_REPO_DIR%\ports\cortex_m33\iar\example_build + CALL :DO_DIR IAR CORTEX_R4 %AZRTOS_REPO_DIR%\ports\cortex_r4\iar\example_build + CALL :DO_DIR IAR CORTEX_R5 %AZRTOS_REPO_DIR%\ports\cortex_r5\iar\example_build + CALL :DO_DIR IAR CORTEX_A5 %AZRTOS_REPO_DIR%\ports\cortex_a5\iar\example_build + CALL :DO_DIR IAR CORTEX_A7 %AZRTOS_REPO_DIR%\ports\cortex_a7\iar\example_build + CALL :DO_DIR IAR CORTEX_A8 %AZRTOS_REPO_DIR%\ports\cortex_a8\iar\example_build + CALL :DO_DIR IAR CORTEX_A9 %AZRTOS_REPO_DIR%\ports\cortex_a9\iar\example_build + CALL :DO_DIR IAR CORTEX_A15 %AZRTOS_REPO_DIR%\ports\cortex_a15\iar\example_build + CALL :DO_DIR IAR CORTEX_ARM9 %AZRTOS_REPO_DIR%\ports\arm9\iar\example_build + CALL :DO_DIR IAR CORTEX_ARM11 %AZRTOS_REPO_DIR%\ports\arm11\iar\example_build + REM CALL :DO_DIR IAR RISC_V32 %AZRTOS_REPO_DIR%\ports\risc-v32\iar\example_build + ) + IF %FLAG_GHS%==1 ( + CALL :DO_DIR GHS CORTEX_M3 %AZRTOS_REPO_DIR%\ports\cortex_m3\ghs\example_build + CALL :DO_DIR GHS CORTEX_M4 %AZRTOS_REPO_DIR%\ports\cortex_m4\ghs\example_build + CALL :DO_DIR GHS CORTEX_M7 %AZRTOS_REPO_DIR%\ports\cortex_m7\ghs\example_build + CALL :DO_DIR GHS CORTEX_R4 %AZRTOS_REPO_DIR%\ports\cortex_r4\ghs\example_build + CALL :DO_DIR GHS CORTEX_R5 %AZRTOS_REPO_DIR%\ports\cortex_r5\ghs\example_build + CALL :DO_DIR GHS CORTEX_R7 %AZRTOS_REPO_DIR%\ports\cortex_r7\ghs\example_build + CALL :DO_DIR GHS CORTEX_A5 %AZRTOS_REPO_DIR%\ports\cortex_a5\ghs\example_build + CALL :DO_DIR GHS CORTEX_A7 %AZRTOS_REPO_DIR%\ports\cortex_a7\ghs\example_build + CALL :DO_DIR GHS CORTEX_A8 %AZRTOS_REPO_DIR%\ports\cortex_a8\ghs\example_build + CALL :DO_DIR GHS CORTEX_A9 %AZRTOS_REPO_DIR%\ports\cortex_a9\ghs\example_build + ) + IF %FLAG_AC5%==1 ( + CALL :DO_DIR AC5 CORTEX_M4 %AZRTOS_REPO_DIR%\ports\cortex_m4\ac5\example_build + ) + IF %FLAG_AC6%==1 ( + CALL :DO_DIR AC6 CORTEX_M0 %AZRTOS_REPO_DIR%\ports\cortex_m0\ac6\example_build + CALL :DO_DIR AC6 CORTEX_M3 %AZRTOS_REPO_DIR%\ports\cortex_m3\ac6\example_build + CALL :DO_DIR AC6 CORTEX_M4 %AZRTOS_REPO_DIR%\ports\cortex_m4\ac6\example_build + CALL :DO_DIR AC6 CORTEX_M7 %AZRTOS_REPO_DIR%\ports\cortex_m7\ac6\example_build + REM CALL :DO_DIR AC6 CORTEX_M23 %AZRTOS_REPO_DIR%\ports\cortex_m23\ac6\example_build + REM CALL :DO_DIR AC6 CORTEX_M33 %AZRTOS_REPO_DIR%\ports\cortex_m33\ac6\example_build + CALL :DO_DIR AC6 CORTEX_R4 %AZRTOS_REPO_DIR%\ports\cortex_r4\ac6\example_build + CALL :DO_DIR AC6 CORTEX_R5 %AZRTOS_REPO_DIR%\ports\cortex_r5\ac6\example_build + CALL :DO_DIR AC6 CORTEX_A5X %AZRTOS_REPO_DIR%\ports\cortex_a5x\ac6\example_build + CALL :DO_DIR AC6 CORTEX_A7 %AZRTOS_REPO_DIR%\ports\cortex_a7\ac6\example_build + CALL :DO_DIR AC6 CORTEX_A8 %AZRTOS_REPO_DIR%\ports\cortex_a8\ac6\example_build + CALL :DO_DIR AC6 CORTEX_A9 %AZRTOS_REPO_DIR%\ports\cortex_a9\ac6\example_build + CALL :DO_DIR AC6 CORTEX_A15 %AZRTOS_REPO_DIR%\ports\cortex_a15\ac6\example_build + ) + IF %FLAG_KUV%==1 ( + CALL :DO_DIR KUV CORTEX_M3 %AZRTOS_REPO_DIR%\ports\cortex_m3\keil\example_build + CALL :DO_DIR KUV CORTEX_M4 %AZRTOS_REPO_DIR%\ports\cortex_m4\keil\example_build + ) + IF %FLAG_GNU%==1 ( + CALL :DO_DIR GNU CORTEX_M0 %AZRTOS_REPO_DIR%\ports\cortex_m0\gnu\example_build + CALL :DO_DIR GNU CORTEX_M3 %AZRTOS_REPO_DIR%\ports\cortex_m3\gnu\example_build + CALL :DO_DIR GNU CORTEX_M4 %AZRTOS_REPO_DIR%\ports\cortex_m4\gnu\example_build + CALL :DO_DIR GNU CORTEX_M7 %AZRTOS_REPO_DIR%\ports\cortex_m7\gnu\example_build + REM CALL :DO_DIR GNU CORTEX_M23 %AZRTOS_REPO_DIR%\ports\cortex_m23\gnu\example_build + REM CALL :DO_DIR GNU CORTEX_M33 %AZRTOS_REPO_DIR%\ports\cortex_m33\gnu\example_build + CALL :DO_DIR GNU CORTEX_R4 %AZRTOS_REPO_DIR%\ports\cortex_r4\gnu\example_build + CALL :DO_DIR GNU CORTEX_R5 %AZRTOS_REPO_DIR%\ports\cortex_r5\gnu\example_build + CALL :DO_DIR GNU CORTEX_A5 %AZRTOS_REPO_DIR%\ports\cortex_a5\gnu\example_build + CALL :DO_DIR GNU CORTEX_A7 %AZRTOS_REPO_DIR%\ports\cortex_a7\gnu\example_build + CALL :DO_DIR GNU CORTEX_A8 %AZRTOS_REPO_DIR%\ports\cortex_a8\gnu\example_build + CALL :DO_DIR GNU CORTEX_A9 %AZRTOS_REPO_DIR%\ports\cortex_a9\gnu\example_build + CALL :DO_DIR GNU CORTEX_A15 %AZRTOS_REPO_DIR%\ports\cortex_a15\gnu\example_build + REM CALL :DO_DIR GNU CORTEX_A35 %AZRTOS_REPO_DIR%\ports\cortex_a35\gnu\example_build + ) +) +IF %FLAG_DO_WHICH%==TXM ( + IF %FLAG_IAR%==1 ( + SET CURRENT_TOOLCHAIN=IAR + CALL :DO_DIR IAR CORTEX_M3 %AZRTOS_REPO_DIR%\ports_module\cortex-m3\iar\example_build + CALL :DO_DIR IAR CORTEX_M4 %AZRTOS_REPO_DIR%\ports_module\cortex-m4\iar\example_build + CALL :DO_DIR IAR CORTEX_M7 %AZRTOS_REPO_DIR%\ports_module\cortex-m7\iar\example_build + CALL :DO_DIR IAR CORTEX_R4 %AZRTOS_REPO_DIR%\ports_module\cortex-r4\iar\example_build + ) + IF %FLAG_AC5%==1 ( + CALL :DO_DIR AC5 CORTEX_M3 %AZRTOS_REPO_DIR%\ports_module\cortex-m3\ac5\example_build + CALL :DO_DIR AC5 CORTEX_M4 %AZRTOS_REPO_DIR%\ports_module\cortex-m4\ac5\example_build + CALL :DO_DIR AC5 CORTEX_M7 %AZRTOS_REPO_DIR%\ports_module\cortex-m7\ac5\example_build + CALL :DO_DIR AC5 CORTEX_A7 %AZRTOS_REPO_DIR%\ports_module\cortex-a7\ac5\example_build + ) + IF %FLAG_AC6%==1 ( + CALL :DO_DIR AC6 CORTEX_M3 %AZRTOS_REPO_DIR%\ports_module\cortex-m3\ac6\example_build + CALL :DO_DIR AC6 CORTEX_M4 %AZRTOS_REPO_DIR%\ports_module\cortex-m4\ac6\example_build + CALL :DO_DIR AC6 CORTEX_M7 %AZRTOS_REPO_DIR%\ports_module\cortex-m7\ac6\example_build + CALL :DO_DIR AC6 CORTEX_R4 %AZRTOS_REPO_DIR%\ports_module\cortex-r4\ac6\example_build + ) + IF %FLAG_KUV%==1 ( + CALL :DO_DIR KUV CORTEX_M4 %AZRTOS_REPO_DIR%\ports_module\cortex-m4\keil\example_build + ) + IF %FLAG_GNU%==1 ( + CALL :DO_DIR GNU CORTEX_M3 %AZRTOS_REPO_DIR%\ports_module\cortex-m3\gnu\example_build + CALL :DO_DIR GNU CORTEX_M4 %AZRTOS_REPO_DIR%\ports_module\cortex-m4\gnu\example_build + CALL :DO_DIR GNU CORTEX_M7 %AZRTOS_REPO_DIR%\ports_module\cortex-m7\gnu\example_build + ) +) +CALL :DBG_MSG "All operations called." + +CALL :DBG_MSG "Printing results." +CALL :OUT_MSG "INFO: %FLAG_DO_WHAT% results:" +CALL :OUT_MSG "INFO: %DIR_COUNT% total." +CALL :OUT_MSG "INFO: %DIR_SUCCESS_COUNT% completed successfully." +IF "%DIR_ERROR_COUNT%" NEQ "0" CALL :OUT_MSG "ERROR: %DIR_ERROR_COUNT% failed." +CALL :OUT_MSG "INFO: Ending %FLAG_DO_WHAT% on %DATE% at %TIME%." +EXIT /B 0 + + +:PRINT_USAGE_AND_EXIT +ECHO. +ECHO Usage: +ECHO %SCRIPT_NAME% {build^|clean^|test} {tx^|txm} [[group] [[group] [...]]] +ECHO Performs the selected operation on ThreadX or ThreadX Modules examples in one or more groups, +ECHO where group is one of the following: +ECHO ALL -- ALL examples +ECHO IAR -- IAR Embedded Workbench examples +ECHO GHS -- Green Hills Software examples +ECHO AC5 -- ARM Developer Studio 5 examples +ECHO AC6 -- ARM Developer Studio 6 examples +ECHO KUV -- KEIL uVision +ECHO GNU -- GNU Compiler Collection +ECHO If no parameters are passed usage information is displayed. +ECHO Outputs a report to standard output. +ECHO Creates a log file with all output. +ECHO. +EXIT /B 0 + + +:SETENV_ERROR +CALL :OUT_MSG "ERROR: failed to set the environment" +EXIT 1 + + +:DO_DIR +SET "CURRENT_TOOLCHAIN=%~1" +SET "CURRENT_PLATFORM=%~2" +SET "CURRENT_DIRECTORY=%~3" +CALL :DBG_MSG "CURRENT_DIRECTORY: %CURRENT_DIRECTORY%" +IF NOT EXIST %CURRENT_DIRECTORY% ( + EXIT /B 1 + CALL :OUT_MSG "ERROR: Directory doesn't exist: CURRENT_DIRECTORY" +) +PUSHD %CURRENT_DIRECTORY% +IF /I "%FLAG_DO_WHAT%" EQU "BUILD" SET CURRENT_SCRIPT=%AZRTOS_REPO_DIR%\test\azrtos_build_%FLAG_DO_WHICH%_%CURRENT_TOOLCHAIN%.bat +IF /I "%FLAG_DO_WHAT%" EQU "CLEAN" SET CURRENT_SCRIPT=%AZRTOS_REPO_DIR%\test\azrtos_clean_%FLAG_DO_WHICH%_%CURRENT_TOOLCHAIN%.bat +IF /I "%FLAG_DO_WHAT%" EQU "TEST" SET CURRENT_SCRIPT=%AZRTOS_REPO_DIR%\test\azrtos_test_%FLAG_DO_WHICH%_%CURRENT_TOOLCHAIN%_%CURRENT_PLATFORM%.bat +IF DEFINED DEBUG ECHO DEBUG: %CURRENT_SCRIPT% +IF NOT EXIST %CURRENT_SCRIPT% ( + CALL :OUT_MSG "ERROR: script does not exist: %CURRENT_SCRIPT%" +) ELSE ( + CALL :OUT_MSG "INFO: STARTING: %FLAG_DO_WHAT%: %CD% - %DATE% %TIME%" + SET /A DIR_COUNT+=1 + CALL %CURRENT_SCRIPT% >> %LOGFILE% 2>&1 + IF %ERRORLEVEL% EQU 0 ( + CALL :OUT_MSG "INFO: SUCCESS: %FLAG_DO_WHAT%: %CD% - %DATE% %TIME%" + SET /A DIR_SUCCESS_COUNT+=1 + ) ELSE ( + CALL :OUT_MSG "ERROR: %FLAG_DO_WHAT%: %CD% - %DATE% %TIME%" + SET /A DIR_ERROR_COUNT+=1 + ) + POPD +) +EXIT /B 0 + + +:DBG_MSG +IF DEFINED AZRTOS_DEBUG (ECHO DEBUG: %~1) +EXIT /B 0 + + +:OUT_MSG +ECHO %~1 +IF DEFINED LOGFILE (ECHO %~1 > %LOGFILE%) +EXIT /B 0 diff --git a/test/ports/azrtos_cicd.ps1 b/test/ports/azrtos_cicd.ps1 new file mode 100644 index 00000000..e932bed1 --- /dev/null +++ b/test/ports/azrtos_cicd.ps1 @@ -0,0 +1,328 @@ +<# +.SYNOPSIS + Azure RTOS ThreadX CI/CD script + +.DESCRIPTION + Entry point for automated building, cleaning, testing, verification, ... + +.EXAMPLE + .\azrtos_cicd.ps1 -clean + This cleans all examples in the default database. + + .\azrtos_cicd.ps1 -MatchName 'Modules' -build + This builds all ThreadX Modules examples. + + .\azrtos_cicd.ps1 -MatchName 'Modules','IAR' -build + This builds all examples in the default database that have names matching the string 'Modules' and 'IAR'. + + .\azrtos_cicd.ps1 -MatchName 'Cortex M4','ARM compiler v6' -StartCLI + This opens CLI with set environments for all examples in the default database that have names matching the 'Cortex M4' and 'ARM compiler v6'. + +.LINK + https://azure.com/rtos + +.NOTES + Author: Andres Mlinar + Date: 2021 +#> + +[CmdletBinding(PositionalBinding=$false)] Param( + + [string[]] + #One or more CSV files with the list of examples to process + $CsvFile = "azrtos_cicd.csv", + + [string[]] + #One or more regular expression strings to match names for + $MatchName, + + [string[]] + #One or more regular expression strings to match keywords for + $MatchKeywords, + + [string[]] + #One or more regular expression strings to match paths for + $MatchPath, + + [string] + #The source root directory, if not specified it defaults to the current repo + $SrcDir = $( Join-Path $PSScriptRoot "..\.." ), + + [string] + #The script root directory, if not specified it defaults to this script's directory + $ScriptDir = $PSScriptRoot, + + [string] + #The output log directory + $LogDir = $( Join-Path $PSScriptRoot "log" ), + + [switch] + #Start a CLI with a set environment for the specified examples + $StartCLI = $false, + + [switch] + #Check compliance for the specified examples + $CheckCompliance = $false, + + [switch] + #Clean all files not in the repository for the specified examples + $RealClean = $false, + + [switch] + #Clean the specified examples + $Clean = $false, + + [switch] + #Build the specified examples + $Build = $false, + + [switch] + #Test the specified examples + $Test = $false + +) + +If ($PSVersionTable.PSVersion.Major -lt 7) { + Write-Host "ERROR: PowerShell version 7 or higher is required!" + Exit -2 +} + +Write-Verbose ("CSV files: " + $CsvFile) +Write-Verbose ("MatchName: " + $MatchName.Count + "[" + $MatchName + "]") +Write-Verbose ("MatchKeywords: " + $MatchKeywords.Count + "[" + $MatchKeywords + "]") +Write-Verbose ("MatchPath: " + $MatchPath.Count + "[" + $MatchPath + "]") +Write-Verbose ("SrcDir: " + $SrcDir) +Write-Verbose ("ScriptDir: " + $ScriptDir) +Write-Verbose ("LogDir: " + $LogDir) +Write-Verbose ("StartCLI? " + $StartCLI) +Write-Verbose ("CheckCompliance? " + $CheckCompliance) +Write-Verbose ("RealClean? " + $RealClean) +Write-Verbose ("Clean? " + $Clean) +Write-Verbose ("Build? " + $Build) +Write-Verbose ("Test? " + $Test) + +$Stats = [PSCustomObject]@{ + Total = 0 + CurrentCsv = 0 + CleanScriptOK = 0 + CleanScriptERROR = 0 + BuildScriptOK = 0 + BuildScriptERROR = 0 + TestScriptOK = 0 + TestScriptERROR = 0 +} + +function Invoke-CustomScript { + + Param ( + + [string] + #A string describing the script type + $Type, + + [string] + #The sample name + $Name, + + [string] + #The environment setup script full path + $EnvScript, + + [string] + #The script full path + $Script + ) + + Write-Verbose ("Type: " + $Type) + Write-Verbose ("SampleDir: " + $SampleDir) + Write-Verbose ("EnvScript: " + $EnvScript) + Write-Verbose ("Script: " + $Script) + + If (-not (Test-Path -Path $EnvScript -PathType leaf)) { + Write-Host "ERROR: the environment setup script doesn't exist:" $Script -ForegroundColor red + return -1 + } + + If (-not (Test-Path -Path $Script -PathType leaf)) { + Write-Host "ERROR: the script doesn't exist:" $Script -ForegroundColor red + return -1 + } + + Write-Host ("`n`r") + Write-Host (Get-Date -Format FileDateTimeUniversal) "INFO:" $Type "starting" "->" $Name -ForegroundColor green + + $ScriptOutput = & CMD /C "$EnvScript && $Script 2>&1" + $ExitCode = $LASTEXITCODE + Write-Verbose ("ExitCode: " + $ExitCode) + Write-Verbose ("ScriptOutput: " + $ScriptOutput) + + $LogFileName = (Get-Date -Format FileDateTimeUniversal) + '.' + ($Name -replace ' ', '_' -replace '/', '_' -replace '\\', '_') + "." + $Type + "." + (($ExitCode -eq 0) ? "OK" : "ERROR") + ".log" + $LogFileFullPath = Join-Path $LogDir $LogFileName + Write-Verbose ("LogFileNmae: " + $LogFileName) + Write-Verbose ("LogFileFullPath: " + $LogFileFullPath) + + $ScriptOutput | Out-File -FilePath $LogFileFullPath + + If ($ExitCode -ne 0) { + Write-Host (Get-Date -Format FileDateTimeUniversal) "ERROR:" $Type "failed!" "->" $Name -ForegroundColor red + } else { + Write-Host (Get-Date -Format FileDateTimeUniversal) "INFO:" $Type "success!" "->" $Name -ForegroundColor green + } + + return $ExitCode +} + +# Create the log directory if it doesn't already exists +If (-Not (Test-Path -Path $LogDir -PathType Container)) { + New-Item -Path $LogDir -ItemType Directory +} + +ForEach ($f in $CsvFile) { + + Write-Host $(Get-Date -Format FileDateTimeUniversal) "INFO:" $f -ForegroundColor green + + Write-Verbose ("CSV file: " + $f) + + try { + $t = Import-Csv -Path $f + } catch { + Write-Output "ERROR: failed to open CSV file:" $f -ForegroundColor red + Continue + } + + Write-Verbose ("Table rows: " + $t.Count) + + $Stats.CurrentCsv = 0 + + ForEach ($i in $t) { + + $Stats.Total++ + $Stats.CurrentCsv++ + + Write-Verbose ("`n`r") + Write-Verbose ("Name: " + $i.Name) + Write-Verbose ("Keywords: " + $i.Keywords) + Write-Verbose ("Path: " + $i.Path) + Write-Verbose ("HostPlatform: " + $i.HostPlatform) + + If ($i.HostPlatform -ne $PSVersionTable.Platform) { + Write-Verbose ("HostPlatform mismatch, skipping...") + Continue + } + + $match = $true + + If ($MatchName.Count -ne 0) { + Write-Verbose ("Matching name...") + ForEach ($m in $MatchName) { + Write-Verbose ("Matching " + $m) + If (-not ($i.Name -match $m)) { + Write-Verbose ("Name mismatch: " + $m) + $match = $false; + } + } + } + + If ($MatchKeywords.Count -ne 0) { + Write-Verbose ("Matching keywords...") + ForEach ($m in $MatchKeywords) { + Write-Verbose ("Matching " + $m) + If (-not ($i.Keywords -match $m)) { + Write-Verbose ("Keywords mismatch: " + $m) + $match = $false + } + } + } + + If ($MatchPath.Count -ne 0) { + Write-Verbose ("Matching path...") + ForEach ($m in $MatchPath) { + Write-Verbose ("Matching " + $m) + If (-not ($i.Path -match $m)) { + Write-Verbose ("Path mismatch: " + $m) + $match = $false + } + } + } + + If (-not $match) { + Write-Verbose ("No match, skipping...") + Continue + } + + $FullPath = Join-Path $SrcDir $i.Path + Write-Verbose ("FullPath: " + $FullPath) + + If (-Not $( Test-Path $FullPath -PathType Container )) { + Write-Host "ERROR: path doesn't exist:" $FullPath -ForegroundColor red + Continue + } + + If ($StartCLI) { + If ($PSVersionTable.Platform -eq "Win32NT") { + Start-Process ` + -FilePath "cmd.exe" ` + -WorkingDirectory $FullPath ` + -ArgumentList ( + "/k " ` + + ("set PATH=" + $PSScriptRoot + ";%PATH% & ") ` + + ("DOSKEY realclean=" + "git clean -d -f -X " + $FullPath + " & ") ` + + ("DOSKEY clean=" + (Join-Path $ScriptDir $i.CleanEnvScript) + '$T$T' + (Join-Path $ScriptDir $i.CleanScript) + " & ") ` + + ("DOSKEY build=" + (Join-Path $ScriptDir $i.BuildEnvScript) + '$T$T' + (Join-Path $ScriptDir $i.BuildScript) + " & ") ` + + ("DOSKEY test=" + (Join-Path $ScriptDir $i.TestEnvScript) + '$T$T' + (Join-Path $ScriptDir $i.TestScript)) + ) + } + } + + Push-Location $FullPath + + If ($RealClean ) { + & ("git clean -d -f -X " + $FullPath) + } + + If ($Clean -and ($i.CleanScript -ne "")) { + Write-Progress -Activity $f -Status ($Stats.CurrentCsv.ToString() + "/" + $t.Count.ToString()) -CurrentOperation $i.Name -PercentComplete (1.0 * $Stats.CurrentCsv / $t.Count * 100) + $result = Invoke-CustomScript "Clean" $i.Name (Join-Path $ScriptDir $i.CleanEnvScript) (Join-Path $ScriptDir $i.CleanScript) + if ($result -ne 0) { + $Stats.CleanScriptERROR++ + } else { + $Stats.CleanScriptOK++ + } + } + + If ($Build -and ($i.BuildScript -ne "")) { + Write-Progress -Activity $f -Status ($Stats.CurrentCsv.ToString() + "/" + $t.Count.ToString()) -CurrentOperation $i.Name -PercentComplete (1.0 * $Stats.CurrentCsv / $t.Count * 100) + $result = Invoke-CustomScript "Build" $i.Name (Join-Path $ScriptDir $i.BuildEnvScript) (Join-Path $ScriptDir $i.BuildScript) + if ($result -ne 0) { + $Stats.BuildScriptERROR++ + } else { + $Stats.BuildScriptOK++ + } + } + + If ($Test -and ($i.TestScript -ne "")) { + Write-Progress -Activity $f -Status ($Stats.CurrentCsv.ToString() + "/" + $t.Count.ToString()) -CurrentOperation $i.Name -PercentComplete (1.0 * $Stats.CurrentCsv / $t.Count * 100) + $result = Invoke-CustomScript "Test" $i.Name (Join-Path $ScriptDir $i.TestEnvScript) (Join-Path $ScriptDir $i.TestScript) + if ($result -ne 0) { + $Stats.TestScriptERROR++ + } else { + $Stats.TestScriptOK++ + } + } + + Pop-Location + } +} + +"Total: " + $Stats.Total +If ($Clean) { + "Clean: " + $Stats.CleanScriptOK + " OK, " + $Stats.CleanScriptERROR + " failed" +} +If ($Build) { + "Build: " + $Stats.BuildScriptOK + " OK, " + $Stats.BuildScriptERROR + " failed" +} +If ($Test) { + "Test: " + $Stats.TestScriptOK + " OK, " + $Stats.TestScriptERROR + " failed" +} + +Exit $Stats.CleanScriptERROR+$Stats.BuildScriptERROR+$Stats.TestScriptERROR diff --git a/test/ports/azrtos_clean_tx_ac5.bat b/test/ports/azrtos_clean_tx_ac5.bat new file mode 100644 index 00000000..0f62d79d --- /dev/null +++ b/test/ports/azrtos_clean_tx_ac5.bat @@ -0,0 +1,4 @@ +@ECHO OFF +ECHO INFO: Cleaning %CD%... +DEL *.o *.a *.axf *.map +ECHO INFO: Cleaning completed successfully! diff --git a/test/ports/azrtos_clean_tx_arm_ds.bat b/test/ports/azrtos_clean_tx_arm_ds.bat new file mode 100644 index 00000000..2422b913 --- /dev/null +++ b/test/ports/azrtos_clean_tx_arm_ds.bat @@ -0,0 +1,10 @@ +@ECHO OFF +ECHO INFO: Cleaning %CD%... +RMDIR /Q /S workspace +RMDIR /Q /S sample_threadx\.settings +RMDIR /Q /S sample_threadx\Debug +RMDIR /Q /S sample_threadx\Release +RMDIR /Q /S tx\.settings +RMDIR /Q /S tx\Debug +RMDIR /Q /S tx\Release +ECHO INFO: Cleaning completed successfully! diff --git a/test/ports/azrtos_clean_tx_ghs.bat b/test/ports/azrtos_clean_tx_ghs.bat new file mode 100644 index 00000000..62c4bddd --- /dev/null +++ b/test/ports/azrtos_clean_tx_ghs.bat @@ -0,0 +1,10 @@ +@ECHO OFF +ECHO INFO: Cleaning %CD%... +%AZRTOS_GHS_COMP_GBUILD% -top azure_rtos_workspace.gpj -clean tx.a txe.a sample_threadx sample_threadx_el +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: clean failed. + EXIT /B 1 +) +RMDIR /Q /S libs +DEL /Q /F test.log +ECHO INFO: Clean completed successfully! diff --git a/test/ports/azrtos_clean_tx_gnu.bat b/test/ports/azrtos_clean_tx_gnu.bat new file mode 100644 index 00000000..a476c92d --- /dev/null +++ b/test/ports/azrtos_clean_tx_gnu.bat @@ -0,0 +1,7 @@ +@ECHO OFF +ECHO INFO: Cleaning %CD%... +DEL *.o +DEL tx.a +DEL sample_threadx.map +DEL sample_threadx.out +ECHO INFO: Cleaning completed successfully! diff --git a/test/ports/azrtos_clean_tx_iar.bat b/test/ports/azrtos_clean_tx_iar.bat new file mode 100644 index 00000000..d902c6f7 --- /dev/null +++ b/test/ports/azrtos_clean_tx_iar.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Cleaning %CD%... + +%AZRTOS_IAR_BUILD% tx.ewp -clean Debug -log all +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: clean failed. + EXIT /B 1 +) + +%AZRTOS_IAR_BUILD% sample_threadx.ewp -clean Debug -log all +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: clean failed. + EXIT /B 1 +) + +RMDIR /Q /S Debug + +ECHO INFO: Clean completed successfully! diff --git a/test/ports/azrtos_clean_tx_mdk4.bat b/test/ports/azrtos_clean_tx_mdk4.bat new file mode 100644 index 00000000..15f0f353 --- /dev/null +++ b/test/ports/azrtos_clean_tx_mdk4.bat @@ -0,0 +1,26 @@ +@ECHO OFF + +ECHO INFO: Cleaning %CD%... + +ECHO INFO: Cleaning ThreadX_Library... +DEL out.txt 2> NUL +REM ### bug in uv4? uv4 hungs on clean, uv5 works +REM START /wait %AZRTOS_KEIL_UV% -j0 -c ThreadX_Library.uvproj -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO CLEAN_ERROR +TYPE out.txt 2> NUL + +ECHO INFO: Cleaning ThreadX_Demo... +DEL out.txt 2> NUL +REM ### bug in uv4? uv4 hungs on clean, uv5 works +REM START /wait %AZRTOS_KEIL_UV% -j0 -c ThreadX_Demo.uvproj -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO CLEAN_ERROR +TYPE out.txt 2> NUL + +DEL out.txt 2> NUL +ECHO INFO: Cleaning completed successfully! +EXIT /B 0 + +:CLEAN_ERROR +TYPE out.txt 2> NUL +ECHO ERROR: clean failed. +EXIT /B 1 diff --git a/test/ports/azrtos_clean_tx_mdk5.bat b/test/ports/azrtos_clean_tx_mdk5.bat new file mode 100644 index 00000000..44176366 --- /dev/null +++ b/test/ports/azrtos_clean_tx_mdk5.bat @@ -0,0 +1,24 @@ +@ECHO OFF + +ECHO INFO: Cleaning %CD%... + +ECHO INFO: Cleaning ThreadX_Library... +DEL out.txt 2> NUL +START /wait %AZRTOS_KEIL_UV% -j0 -c ThreadX_Library.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO CLEAN_ERROR +TYPE out.txt 2> NUL + +ECHO INFO: Cleaning ThreadX_Demo... +DEL out.txt 2> NUL +START /wait %AZRTOS_KEIL_UV% -j0 -c ThreadX_Demo.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO CLEAN_ERROR +TYPE out.txt 2> NUL + +DEL out.txt 2> NUL +ECHO INFO: Cleaning completed successfully! +EXIT /B 0 + +:CLEAN_ERROR +TYPE out.txt 2> NUL +ECHO ERROR: clean failed. +EXIT /B 1 diff --git a/test/ports/azrtos_clean_tx_tz_mdk5.bat b/test/ports/azrtos_clean_tx_tz_mdk5.bat new file mode 100644 index 00000000..8a6554a2 --- /dev/null +++ b/test/ports/azrtos_clean_tx_tz_mdk5.bat @@ -0,0 +1,30 @@ +@ECHO OFF + +ECHO INFO: Cleaning %CD%... + +ECHO INFO: Cleaning ThreadX_Library... +DEL out.txt 2> NUL +START /wait %AZRTOS_KEIL_UV% -j0 -c ThreadX_Library.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO CLEAN_ERROR +TYPE out.txt 2> NUL + +ECHO INFO: Cleaning demo_secure_zone... +DEL out.txt 2> NUL +START /wait %AZRTOS_KEIL_UV% -j0 -c demo_secure_zone\demo_secure_zone.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO CLEAN_ERROR +TYPE out.txt 2> NUL + +ECHO INFO: Cleaning demo_threadx_non-secure_zone... +DEL out.txt 2> NUL +START /wait %AZRTOS_KEIL_UV% -j0 -c demo_threadx_non-secure_zone\demo_threadx_non-secure_zone.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO CLEAN_ERROR +TYPE out.txt 2> NUL + +DEL out.txt 2> NUL +ECHO INFO: Cleaning completed successfully! +EXIT /B 0 + +:CLEAN_ERROR +DEL out.txt 2> NUL +ECHO ERROR: clean failed. +EXIT /B 1 diff --git a/test/ports/azrtos_clean_txm_ac5.bat b/test/ports/azrtos_clean_txm_ac5.bat new file mode 100644 index 00000000..0f62d79d --- /dev/null +++ b/test/ports/azrtos_clean_txm_ac5.bat @@ -0,0 +1,4 @@ +@ECHO OFF +ECHO INFO: Cleaning %CD%... +DEL *.o *.a *.axf *.map +ECHO INFO: Cleaning completed successfully! diff --git a/test/ports/azrtos_clean_txm_arm_ds.bat b/test/ports/azrtos_clean_txm_arm_ds.bat new file mode 100644 index 00000000..9de3bcf9 --- /dev/null +++ b/test/ports/azrtos_clean_txm_arm_ds.bat @@ -0,0 +1,19 @@ +@ECHO OFF +ECHO INFO: Cleaning %CD%... +RMDIR /Q /S workspace +RMDIR /Q /S sample_threadx\.settings +RMDIR /Q /S sample_threadx\Debug +RMDIR /Q /S sample_threadx\Release +RMDIR /Q /S sample_threadx_module\.settings +RMDIR /Q /S sample_threadx_module\Debug +RMDIR /Q /S sample_threadx_module\Release +RMDIR /Q /S sample_threadx_module_manager\.settings +RMDIR /Q /S sample_threadx_module_manager\Debug +RMDIR /Q /S sample_threadx_module_manager\Release +RMDIR /Q /S tx\.settings +RMDIR /Q /S tx\Debug +RMDIR /Q /S tx\Release +RMDIR /Q /S txm\.settings +RMDIR /Q /S txm\Debug +RMDIR /Q /S txm\Release +ECHO INFO: Cleaning completed successfully! diff --git a/test/ports/azrtos_clean_txm_gnu.bat b/test/ports/azrtos_clean_txm_gnu.bat new file mode 100644 index 00000000..f7c46caa --- /dev/null +++ b/test/ports/azrtos_clean_txm_gnu.bat @@ -0,0 +1,7 @@ +@ECHO OFF +ECHO INFO: Cleaning %CD%... +DEL *.o +DEL tx.a +DEL sample_threadx.map +DEL sample_threadx.out +ECHO INFO. Cleaning done. diff --git a/test/ports/azrtos_clean_txm_iar.bat b/test/ports/azrtos_clean_txm_iar.bat new file mode 100644 index 00000000..38865df4 --- /dev/null +++ b/test/ports/azrtos_clean_txm_iar.bat @@ -0,0 +1,37 @@ +@ECHO OFF + +ECHO INFO: Cleaning %CD%... + +%AZRTOS_IAR_BUILD% tx.ewp -clean Debug -log all +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: clean failed. + EXIT /B 1 +) + +%AZRTOS_IAR_BUILD% sample_threadx.ewp -clean Debug -log all +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: clean failed. + EXIT /B 1 +) + +%AZRTOS_IAR_BUILD% txm.ewp -clean Debug -log all +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: clean failed. + EXIT /B 1 +) + +%AZRTOS_IAR_BUILD% sample_threadx_module.ewp -clean Debug -log all +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: clean failed. + EXIT /B 1 +) + +%AZRTOS_IAR_BUILD% sample_threadx_module_manager.ewp -clean Debug -log all +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: clean failed. + EXIT /B 1 +) + +RMDIR /Q /S Debug + +ECHO INFO: Clean completed successfully! diff --git a/test/ports/azrtos_clean_txm_tz_mdk5.bat b/test/ports/azrtos_clean_txm_tz_mdk5.bat new file mode 100644 index 00000000..f98b76e0 --- /dev/null +++ b/test/ports/azrtos_clean_txm_tz_mdk5.bat @@ -0,0 +1,42 @@ +@ECHO OFF + +ECHO INFO: Cleaning %CD%... + +ECHO INFO: Cleaning ThreadX_Library... +DEL out.txt 2> NUL +START /wait %AZRTOS_KEIL_UV% -j0 -c ThreadX_Library.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO CLEAN_ERROR +TYPE out.txt 2> NUL + +ECHO INFO: Cleaning txm... +DEL out.txt 2> NUL +START /wait %AZRTOS_KEIL_UV% -j0 -c txm\txm.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO CLEAN_ERROR +TYPE out.txt 2> NUL + +ECHO INFO: Cleaning demo_secure_zone... +DEL out.txt 2> NUL +START /wait %AZRTOS_KEIL_UV% -j0 -c demo_secure_zone\demo_secure_zone.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO CLEAN_ERROR +TYPE out.txt 2> NUL + +ECHO INFO: Cleaning demo_threadx_non-secure_zone... +DEL out.txt 2> NUL +START /wait %AZRTOS_KEIL_UV% -j0 -c demo_threadx_non-secure_zone\demo_threadx_non-secure_zone.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO CLEAN_ERROR +TYPE out.txt 2> NUL + +ECHO INFO: Cleaning sample_threadx_module... +DEL out.txt 2> NUL +START /wait %AZRTOS_KEIL_UV% -j0 -c sample_threadx_module\sample_threadx_module.uvprojx -o out.txt +IF %ERRORLEVEL% GEQ 2 GOTO CLEAN_ERROR +TYPE out.txt 2> NUL + +DEL out.txt 2> NUL +ECHO INFO: Cleaning completed successfully! +EXIT /B 0 + +:CLEAN_ERROR +DEL out.txt 2> NUL +ECHO ERROR: clean failed. +EXIT /B 1 diff --git a/test/ports/azrtos_debug_tx_arm_ds.bat b/test/ports/azrtos_debug_tx_arm_ds.bat new file mode 100644 index 00000000..a79bfe53 --- /dev/null +++ b/test/ports/azrtos_debug_tx_arm_ds.bat @@ -0,0 +1,16 @@ +@ECHO OFF + +ECHO INFO: Debugging %CD%... + +IF NOT EXIST workspace ( + ECHO ERROR: the workspace doesn't exist! + EXIT /B 2 +) + +%AZRTOS_ARM_DS_IDEC% -nosplash --launcher.suppressErrors -data .\workspace +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: build failed. + EXIT /B 1 +) + +ECHO INFO: Debugger started successfully! diff --git a/test/ports/azrtos_debug_tx_gnu_cortex_m4.bat b/test/ports/azrtos_debug_tx_gnu_cortex_m4.bat new file mode 100644 index 00000000..b415b284 --- /dev/null +++ b/test/ports/azrtos_debug_tx_gnu_cortex_m4.bat @@ -0,0 +1,11 @@ +@echo off + +ECHO INFO: Debugging %CD%... + +%AZRTOS_ARM_DS_DBG% --cdb-entry "Arm FVP::MPS2_Cortex_M4::Bare Metal Debug::Bare Metal Debug::Cortex-M4" --image sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_m4.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +ECHO INFO: Debugger started successfully! diff --git a/test/ports/azrtos_setenv_ac5.bat b/test/ports/azrtos_setenv_ac5.bat new file mode 100644 index 00000000..144f7a67 --- /dev/null +++ b/test/ports/azrtos_setenv_ac5.bat @@ -0,0 +1,48 @@ +@ECHO OFF + +ECHO INFO: Setting up the environment for ARM Compiler v5... + +IF EXIST "%AZRTOS_ARM_COMPILER_5_DIR%" GOTO FOUND_ARM_COMPILER_5 + +SET "AZRTOS_ARM_COMPILER_5_DIR=%ProgramFiles%\Arm\Development Studio 2021.0\sw\ARMCompiler5.06u7\bin" +IF EXIST "%AZRTOS_ARM_COMPILER_5_DIR%" ( + SET "PATH=%AZRTOS_ARM_COMPILER_5_DIR%;%PATH%" + SET "ARMLMD_LICENSE_FILE=%APPDATA%\arm\ds\licenses" + SET "ARM_CONFIG_PATH=%APPDATA%\arm\ds\2021.0" + SET "ARM_PRODUCT_DEF=%ProgramFiles%\Arm\Development Studio 2021.0\sw\mappings\gold.elmap" + GOTO FOUND_ARM_COMPILER_5 +) + +SET "AZRTOS_ARM_COMPILER_5_DIR=%ProgramFiles%\Arm\Development Studio 2020.1\sw\ARMCompiler5.06u7\bin" +IF EXIST "%AZRTOS_ARM_COMPILER_5_DIR%" ( + SET "PATH=%AZRTOS_ARM_COMPILER_5_DIR%;%PATH%" + SET "ARMLMD_LICENSE_FILE=%APPDATA%\arm\ds\licenses" + SET "ARM_CONFIG_PATH=%APPDATA%\arm\ds\2020.1" + SET "ARM_PRODUCT_DEF=%ProgramFiles%\Arm\Development Studio 2020.1\sw\mappings\gold.elmap" + GOTO FOUND_ARM_COMPILER_5 +) + +SET "AZRTOS_ARM_COMPILER_5_DIR=%ProgramFiles%\Arm\Development Studio 2020.0\sw\ARMCompiler5.06u6\bin" +IF EXIST "%AZRTOS_ARM_COMPILER_5_DIR%" ( + SET "PATH=%AZRTOS_ARM_COMPILER_5_DIR%;%PATH%" + SET "ARMLMD_LICENSE_FILE=%APPDATA%\arm\ds\licenses" + SET "ARM_CONFIG_PATH=%APPDATA%\arm\ds\2020.0" + SET "ARM_PRODUCT_DEF=%ProgramFiles%\Arm\Development Studio 2020.0\sw\mappings\gold.elmap" + GOTO FOUND_ARM_COMPILER_5 +) + +SET "AZRTOS_ARM_COMPILER_5_DIR=%ProgramFiles%\DS-5 v5.29.3\sw\ARMCompiler5.06u6\bin" +IF EXIST "%AZRTOS_ARM_COMPILER_5_DIR%" ( + SET "PATH=%AZRTOS_ARM_COMPILER_5_DIR%;%PATH%" + SET "ARMLMD_LICENSE_FILE=%APPDATA%\ARM\DS-5\licenses" + SET "ARM_CONFIG_PATH=%APPDATA%\ARM\DS-5_v5.29.3" + SET "ARM_PRODUCT_PATH=%ProgramFiles%\DS-5 v5.29.3\sw\mappings" + GOTO FOUND_ARM_COMPILER_5 +) + +ECHO ERROR: ARM Compiler v5 not found! +EXIT /B 2 + +:FOUND_ARM_COMPILER_5 +ECHO INFO: ARM Compiler v5 found in %AZRTOS_ARM_COMPILER_5_DIR% +ECHO INFO: ARM Compiler v5 environmnet setup completed successfully! diff --git a/test/ports/azrtos_setenv_arm_ds.bat b/test/ports/azrtos_setenv_arm_ds.bat new file mode 100644 index 00000000..ebaa3b3a --- /dev/null +++ b/test/ports/azrtos_setenv_arm_ds.bat @@ -0,0 +1,3 @@ +@ECHO OFF + +CALL %~dp0\azrtos_setenv_arm_ds_2021_1.bat diff --git a/test/ports/azrtos_setenv_arm_ds_2020_0.bat b/test/ports/azrtos_setenv_arm_ds_2020_0.bat new file mode 100644 index 00000000..a74b1b16 --- /dev/null +++ b/test/ports/azrtos_setenv_arm_ds_2020_0.bat @@ -0,0 +1,29 @@ +@ECHO OFF + +ECHO INFO: Setting up the environment for ARM Developer Studio 2020.0... + +SET "AZRTOS_TEST_DIR=%~dp0" + +SET AZRTOS_ARM_DS_DIR="C:\Program Files\Arm\Development Studio 2020.0" +IF NOT EXIST %AZRTOS_ARM_DS_DIR% ( + ECHO ERROR: ARM Developer Studio directory not found + EXIT /B 2 +) + +SET AZRTOS_ARM_DS_IDEC=%AZRTOS_ARM_DS_DIR%\bin\armds_idec.exe +IF NOT EXIST %AZRTOS_ARM_DS_IDEC% ( + ECHO ERROR: armds_idec.exe not found + EXIT /B 2 +) ELSE ( + ECHO INFO: armds_idec.exe found at %AZRTOS_ARM_DS_IDEC% +) + +SET AZRTOS_ARM_DS_DBG=%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe +IF NOT EXIST %AZRTOS_ARM_DS_DBG% ( + ECHO ERROR: armdbg.exe not found + EXIT /B 2 +) ELSE ( + ECHO INFO: armdbg.exe found at %AZRTOS_ARM_DS_DBG% +) + +ECHO INFO: ARM Developer Studio 2020.0 environment setup completed. diff --git a/test/ports/azrtos_setenv_arm_ds_2020_1.bat b/test/ports/azrtos_setenv_arm_ds_2020_1.bat new file mode 100644 index 00000000..af91c9f6 --- /dev/null +++ b/test/ports/azrtos_setenv_arm_ds_2020_1.bat @@ -0,0 +1,29 @@ +@ECHO OFF + +ECHO INFO: Setting up the environment for ARM Developer Studio 2020.1... + +SET "AZRTOS_TEST_DIR=%~dp0" + +SET AZRTOS_ARM_DS_DIR="C:\Program Files\Arm\Development Studio 2020.1" +IF NOT EXIST %AZRTOS_ARM_DS_DIR% ( + ECHO ERROR: ARM Developer Studio directory not found + EXIT /B 2 +) + +SET AZRTOS_ARM_DS_IDEC=%AZRTOS_ARM_DS_DIR%\bin\armds_idec.exe +IF NOT EXIST %AZRTOS_ARM_DS_IDEC% ( + ECHO ERROR: armds_idec.exe not found + EXIT /B 2 +) ELSE ( + ECHO INFO: armds_idec.exe found at %AZRTOS_ARM_DS_IDEC% +) + +SET AZRTOS_ARM_DS_DBG=%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe +IF NOT EXIST %AZRTOS_ARM_DS_DBG% ( + ECHO ERROR: armdbg.exe not found + EXIT /B 2 +) ELSE ( + ECHO INFO: armdbg.exe found at %AZRTOS_ARM_DS_DBG% +) + +ECHO INFO: ARM Developer Studio 2020.1 environment setup completed. diff --git a/test/ports/azrtos_setenv_arm_ds_2021_0.bat b/test/ports/azrtos_setenv_arm_ds_2021_0.bat new file mode 100644 index 00000000..d63c5b58 --- /dev/null +++ b/test/ports/azrtos_setenv_arm_ds_2021_0.bat @@ -0,0 +1,29 @@ +@ECHO OFF + +ECHO INFO: Setting up the environment for ARM Developer Studio 2021.0... + +SET "AZRTOS_TEST_DIR=%~dp0" + +SET AZRTOS_ARM_DS_DIR="C:\Program Files\Arm\Development Studio 2021.0" +IF NOT EXIST %AZRTOS_ARM_DS_DIR% ( + ECHO ERROR: ARM Developer Studio directory not found + EXIT /B 2 +) + +SET AZRTOS_ARM_DS_IDEC=%AZRTOS_ARM_DS_DIR%\bin\armds_idec.exe +IF NOT EXIST %AZRTOS_ARM_DS_IDEC% ( + ECHO ERROR: armds_idec.exe not found + EXIT /B 2 +) ELSE ( + ECHO INFO: armds_idec.exe found at %AZRTOS_ARM_DS_IDEC% +) + +SET AZRTOS_ARM_DS_DBG=%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe +IF NOT EXIST %AZRTOS_ARM_DS_DBG% ( + ECHO ERROR: armdbg.exe not found + EXIT /B 2 +) ELSE ( + ECHO INFO: armdbg.exe found at %AZRTOS_ARM_DS_DBG% +) + +ECHO INFO: ARM Developer Studio 2021.0 environment setup completed. diff --git a/test/ports/azrtos_setenv_arm_ds_2021_1.bat b/test/ports/azrtos_setenv_arm_ds_2021_1.bat new file mode 100644 index 00000000..653a4261 --- /dev/null +++ b/test/ports/azrtos_setenv_arm_ds_2021_1.bat @@ -0,0 +1,29 @@ +@ECHO OFF + +ECHO INFO: Setting up the environment for ARM Developer Studio 2021.1... + +SET "AZRTOS_TEST_DIR=%~dp0" + +SET AZRTOS_ARM_DS_DIR="C:\Program Files\Arm\Development Studio 2021.1" +IF NOT EXIST %AZRTOS_ARM_DS_DIR% ( + ECHO ERROR: ARM Developer Studio directory not found + EXIT /B 2 +) + +SET AZRTOS_ARM_DS_IDEC=%AZRTOS_ARM_DS_DIR%\bin\armds_idec.exe +IF NOT EXIST %AZRTOS_ARM_DS_IDEC% ( + ECHO ERROR: armds_idec.exe not found + EXIT /B 2 +) ELSE ( + ECHO INFO: armds_idec.exe found at %AZRTOS_ARM_DS_IDEC% +) + +SET AZRTOS_ARM_DS_DBG=%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe +IF NOT EXIST %AZRTOS_ARM_DS_DBG% ( + ECHO ERROR: armdbg.exe not found + EXIT /B 2 +) ELSE ( + ECHO INFO: armdbg.exe found at %AZRTOS_ARM_DS_DBG% +) + +ECHO INFO: ARM Developer Studio 2021.1 environment setup completed. diff --git a/test/ports/azrtos_setenv_arm_ds_2021_2.bat b/test/ports/azrtos_setenv_arm_ds_2021_2.bat new file mode 100644 index 00000000..2b54503a --- /dev/null +++ b/test/ports/azrtos_setenv_arm_ds_2021_2.bat @@ -0,0 +1,29 @@ +@ECHO OFF + +ECHO INFO: Setting up the environment for ARM Developer Studio 2021.2... + +SET "AZRTOS_TEST_DIR=%~dp0" + +SET AZRTOS_ARM_DS_DIR="C:\Program Files\Arm\Development Studio 2021.2" +IF NOT EXIST %AZRTOS_ARM_DS_DIR% ( + ECHO ERROR: ARM Developer Studio directory not found + EXIT /B 2 +) + +SET AZRTOS_ARM_DS_IDEC=%AZRTOS_ARM_DS_DIR%\bin\armds_idec.exe +IF NOT EXIST %AZRTOS_ARM_DS_IDEC% ( + ECHO ERROR: armds_idec.exe not found + EXIT /B 2 +) ELSE ( + ECHO INFO: armds_idec.exe found at %AZRTOS_ARM_DS_IDEC% +) + +SET AZRTOS_ARM_DS_DBG=%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe +IF NOT EXIST %AZRTOS_ARM_DS_DBG% ( + ECHO ERROR: armdbg.exe not found + EXIT /B 2 +) ELSE ( + ECHO INFO: armdbg.exe found at %AZRTOS_ARM_DS_DBG% +) + +ECHO INFO: ARM Developer Studio 2021.2 environment setup completed. diff --git a/test/ports/azrtos_setenv_ghs.bat b/test/ports/azrtos_setenv_ghs.bat new file mode 100644 index 00000000..581da488 --- /dev/null +++ b/test/ports/azrtos_setenv_ghs.bat @@ -0,0 +1,45 @@ +@ECHO OFF + +ECHO INFO: Setting up GHS environment... + +SET "AZRTOS_TEST_DIR=%~dp0" + +IF EXIST %AZRTOS_GHS_COMP_DIR% GOTO FOUND_GHS_COMP_DIR +set AZRTOS_GHS_COMP_DIR="C:\ghs\comp_202014" +IF EXIST %AZRTOS_GHS_COMP_DIR% GOTO FOUND_GHS_COMP_DIR +set AZRTOS_GHS_COMP_DIR="C:\ghs\comp_201952" +IF EXIST %AZRTOS_GHS_COMP_DIR% GOTO FOUND_GHS_COMP_DIR +set AZRTOS_GHS_COMP_DIR="C:\ghs\comp_201914" +IF EXIST %AZRTOS_GHS_COMP_DIR% GOTO FOUND_GHS_COMP_DIR +ECHO ERROR: Green Hills Software compiler directory not found. +EXIT /B 2 +:FOUND_GHS_COMP_DIR + +SET AZRTOS_GHS_COMP_GBUILD=%AZRTOS_GHS_COMP_DIR%\gbuild.exe +IF NOT EXIST %AZRTOS_GHS_COMP_GBUILD% ( + ECHO ERROR: gbuild.exe not found at %AZRTOS_GHS_COMP_GBUILD% + EXIT /B 1 +) ELSE ( + ECHO INFO: gbuild.exe found at %AZRTOS_GHS_COMP_GBUILD% +) + +IF EXIST %AZRTOS_GHS_MULTI_DIR% GOTO FOUND_GHS_MULTI_DIR +set AZRTOS_GHS_MULTI_DIR="C:\ghs\multi_716d" +IF EXIST %AZRTOS_GHS_MULTI_DIR% GOTO FOUND_GHS_MULTI_DIR +set AZRTOS_GHS_MULTI_DIR="C:\ghs\multi_716" +IF EXIST %AZRTOS_GHS_MULTI_DIR% GOTO FOUND_GHS_MULTI_DIR +set AZRTOS_GHS_MULTI_DIR="C:\ghs\multi_714" +IF EXIST %AZRTOS_GHS_MULTI_DIR% GOTO FOUND_GHS_MULTI_DIR +ECHO ERROR: Green Hills Software MULTI directory not found. +EXIT /B 1 +:FOUND_GHS_MULTI_DIR + +SET AZRTOS_GHS_MULTI_MULTI=%AZRTOS_GHS_MULTI_DIR%\multi.exe +IF NOT EXIST %AZRTOS_GHS_MULTI_MULTI% ( + ECHO ERROR: multi.exe not found at %AZRTOS_GHS_MULTI_MULTI% + EXIT /B 1 +) ELSE ( + ECHO INFO: multi.exe found at %AZRTOS_GHS_MULTI_MULTI% +) + +ECHO INFO: GHS environment setup completed successfully! diff --git a/test/ports/azrtos_setenv_gnu.bat b/test/ports/azrtos_setenv_gnu.bat new file mode 100644 index 00000000..ef7d5af8 --- /dev/null +++ b/test/ports/azrtos_setenv_gnu.bat @@ -0,0 +1,61 @@ +@ECHO OFF + +ECHO INFO: Setting up the environment for ARM GCC... + +SET AZRTOS_GCC_DIR="%ProgramFiles(x86)%\GNU Arm Embedded Toolchain\10 2021.10\bin" +IF EXIST %AZRTOS_GCC_DIR% GOTO AZRTOS_GCC_DIR_FOUND +SET AZRTOS_GCC_DIR="%ProgramFiles(x86)%\GNU Arm Embedded Toolchain\10 2021.07\bin" +IF EXIST %AZRTOS_GCC_DIR% GOTO AZRTOS_GCC_DIR_FOUND +SET AZRTOS_GCC_DIR="%ProgramFiles(x86)%\GNU Arm Embedded Toolchain\10 2020-q4-major\bin" +IF EXIST %AZRTOS_GCC_DIR% GOTO AZRTOS_GCC_DIR_FOUND +SET AZRTOS_GCC_DIR="%ProgramFiles(x86)%\GNU Arm Embedded Toolchain\9 2020-q2-update\bin" +IF EXIST %AZRTOS_GCC_DIR% GOTO AZRTOS_GCC_DIR_FOUND +SET AZRTOS_GCC_DIR="%ProgramFiles(x86)%\GNU Arm Embedded Toolchain\9 2019-q4-update\bin" +IF EXIST %AZRTOS_GCC_DIR% GOTO AZRTOS_GCC_DIR_FOUND +SET AZRTOS_GCC_DIR="%ProgramFiles(x86)%\GNU Arm Embedded Toolchain\8 2019-q3-update\bin" +IF EXIST %AZRTOS_GCC_DIR% GOTO AZRTOS_GCC_DIR_FOUND +SET AZRTOS_GCC_DIR="%ProgramFiles(x86)%\GNU Arm Embedded Toolchain\8 2018-q4-update\bin" +IF EXIST %AZRTOS_GCC_DIR% GOTO AZRTOS_GCC_DIR_FOUND +SET AZRTOS_GCC_DIR="%ProgramFiles(x86)%\GNU Arm Embedded Toolchain\7 2018-q2-update\bin" +IF EXIST %AZRTOS_GCC_DIR% GOTO AZRTOS_GCC_DIR_FOUND +SET AZRTOS_GCC_DIR="%ProgramFiles(x86)%\GNU Arm Embedded Toolchain\7 2017-q4-update\bin" +IF EXIST %AZRTOS_GCC_DIR% GOTO AZRTOS_GCC_DIR_FOUND +SET AZRTOS_GCC_DIR="%ProgramFiles(x86)%\GNU Tools ARM Embedded\9 2020-q2-update\bin" +IF EXIST %AZRTOS_GCC_DIR% GOTO AZRTOS_GCC_DIR_FOUND +SET AZRTOS_GCC_DIR="%ProgramFiles(x86)%\GNU Tools ARM Embedded\9 2019-q4-update\bin" +IF EXIST %AZRTOS_GCC_DIR% GOTO AZRTOS_GCC_DIR_FOUND +SET AZRTOS_GCC_DIR="%ProgramFiles(x86)%\GNU Tools ARM Embedded\8 2019-q3-update\bin" +IF EXIST %AZRTOS_GCC_DIR% GOTO AZRTOS_GCC_DIR_FOUND +SET AZRTOS_GCC_DIR="%ProgramFiles(x86)%\GNU Tools ARM Embedded\8 2018-q4-update\bin" +IF EXIST %AZRTOS_GCC_DIR% GOTO AZRTOS_GCC_DIR_FOUND +SET AZRTOS_GCC_DIR="%ProgramFiles(x86)%\GNU Tools ARM Embedded\7 2018-q2-update\bin" +IF EXIST %AZRTOS_GCC_DIR% GOTO AZRTOS_GCC_DIR_FOUND +SET AZRTOS_GCC_DIR="%ProgramFiles(x86)%\GNU Tools ARM Embedded\7 2017-q4-update\bin" +IF EXIST %AZRTOS_GCC_DIR% GOTO AZRTOS_GCC_DIR_FOUND +ECHO ERROR: GCC directory not found +EXIT /B 2 + +:AZRTOS_GCC_DIR_FOUND +IF EXIST %AZRTOS_GCC_DIR%\arm-none-eabi-gcc.exe GOTO GCC_FOUND +ECHO ERROR: arm-none-eabi-gcc.exe is not found in the GCC directory: %AZRTOS_GCC_DIR% +EXIT /B 2 + +:GCC_FOUND +ECHO INFO: arm-none-eabi-gcc.exe is here %AZRTOS_GCC_DIR% + +IF DEFINED TL_PATH GOTO TL_PATH_DEFINED +SET TL_PATH=%AZRTOS_GCC_DIR:"=% + +:TL_PATH_DEFINED +ECHO INFO: TL_PATH defined as %TL_PATH% + +WHERE /Q arm-none-eabi-gcc.exe +IF %ERRORLEVEL% NEQ 0 GOTO GCC_NOT_IN_PATH +ECHO INFO: arm-none-eabi-gcc.exe is already in the path. +GOTO DONE + +:GCC_NOT_IN_PATH +SET PATH=%TL_PATH%;%PATH% + +:DONE +ECHO INFO: ARM GCC environment setup completed successfully! diff --git a/test/ports/azrtos_setenv_iar.bat b/test/ports/azrtos_setenv_iar.bat new file mode 100644 index 00000000..247fc818 --- /dev/null +++ b/test/ports/azrtos_setenv_iar.bat @@ -0,0 +1,26 @@ +@ECHO OFF + +ECHO INFO: Setting up the environment for IAR... + +IF EXIST %AZRTOS_IAR_DIR% GOTO FOUND_IAR_DIR +SET AZRTOS_IAR_DIR="C:\Program Files (x86)\IAR Systems\Embedded Workbench 8.4_2" +IF EXIST %AZRTOS_IAR_DIR% GOTO FOUND_IAR_DIR +SET AZRTOS_IAR_DIR="C:\Program Files (x86)\IAR Systems\Embedded Workbench 8.4" +IF EXIST %AZRTOS_IAR_DIR% GOTO FOUND_IAR_DIR +SET AZRTOS_IAR_DIR="C:\Program Files (x86)\IAR Systems\Embedded Workbench 8.3" +IF EXIST %AZRTOS_IAR_DIR% GOTO FOUND_IAR_DIR +SET AZRTOS_IAR_DIR="C:\Program Files (x86)\IAR Systems\Embedded Workbench 8.2" +IF EXIST %AZRTOS_IAR_DIR% GOTO FOUND_IAR_DIR +ECHO ERROR: IAR Embedded Workbench not found. +EXIT /B 2 +:FOUND_IAR_DIR + +SET AZRTOS_IAR_BUILD=%AZRTOS_IAR_DIR%\common\bin\IarBuild.exe +IF NOT EXIST %AZRTOS_IAR_BUILD% ( + ECHO ERROR: IarBuild.exe not found. + EXIT /B 2 +) ELSE ( + ECHO INFO: IarBuild.exe found at %AZRTOS_IAR_BUILD% +) + +ECHO INFO: IAR environment setup completed successfully! diff --git a/test/ports/azrtos_setenv_mdk4.bat b/test/ports/azrtos_setenv_mdk4.bat new file mode 100644 index 00000000..d90d3f90 --- /dev/null +++ b/test/ports/azrtos_setenv_mdk4.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Setting up the environment for KEIL MDK v4... + +SET AZRTOS_KEIL_DIR=C:\Keil\UV4 +IF EXIST %AZRTOS_KEIL_DIR% GOTO FOUND_KEIL_UV_DIR +ECHO ERROR: KEIL uVision directory not found +EXIT /B 1 + +:FOUND_KEIL_UV_DIR +SET AZRTOS_KEIL_UV=%AZRTOS_KEIL_DIR%\uv4.exe +IF EXIST %AZRTOS_KEIL_UV% GOTO FOUND_KEIL_UV +ECHO ERROR: uv4.exe not found +EXIT /B 1 + +:FOUND_KEIL_UV +ECHO INFO: uv4.exe found at %AZRTOS_KEIL_UV% + +ECHO INFO: KEIL uVision environment setup completed successfully! diff --git a/test/ports/azrtos_setenv_mdk5.bat b/test/ports/azrtos_setenv_mdk5.bat new file mode 100644 index 00000000..891afb95 --- /dev/null +++ b/test/ports/azrtos_setenv_mdk5.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Setting up the environment for KEIL MDK v5... + +SET AZRTOS_KEIL_DIR=C:\Keil_v5\UV4 +IF EXIST %AZRTOS_KEIL_DIR% GOTO FOUND_KEIL_UV_DIR +ECHO ERROR: KEIL uVision directory not found +EXIT /B 1 + +:FOUND_KEIL_UV_DIR +SET AZRTOS_KEIL_UV=%AZRTOS_KEIL_DIR%\uv4.exe +IF EXIST %AZRTOS_KEIL_UV% GOTO FOUND_KEIL_UV +ECHO ERROR: uv4.exe not found +EXIT /B 1 + +:FOUND_KEIL_UV +ECHO INFO: uv4.exe found at %AZRTOS_KEIL_UV% + +ECHO INFO: KEIL uVision environment setup completed successfully! diff --git a/test/ports/azrtos_test_tx_ac5_cortex_m0.bat b/test/ports/azrtos_test_tx_ac5_cortex_m0.bat new file mode 100644 index 00000000..e6a6319c --- /dev/null +++ b/test/ports/azrtos_test_tx_ac5_cortex_m0.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Starting test... + +DEL test.log > NUL + +%AZRTOS_ARM_DS_DBG% --cdb-entry "Arm FVP::MPS2_Cortex_M0::Bare Metal Debug::Bare Metal Debug::Cortex-M0" --image sample_threadx.axf --script %AZRTOS_TEST_DIR%\azrtos_test_tx_ac5_cortex_m0.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ac5_cortex_m0.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_ac5_cortex_m0.ds b/test/ports/azrtos_test_tx_ac5_cortex_m0.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_ac5_cortex_m0.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_ac5_cortex_m0.log.expected b/test/ports/azrtos_test_tx_ac5_cortex_m0.log.expected new file mode 100644 index 00000000..ab06ac04 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac5_cortex_m0.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +10 +>output thread_1_counter +33646 +>output thread_2_counter +33558 +>output thread_3_counter +23 +>output thread_4_counter +23 +>output thread_5_counter +9 +>output thread_6_counter +23 +>output thread_7_counter +23 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_ac5_cortex_m3.bat b/test/ports/azrtos_test_tx_ac5_cortex_m3.bat new file mode 100644 index 00000000..f4ec8d24 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac5_cortex_m3.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Starting test... + +DEL test.log > NUL + +%AZRTOS_ARM_DS_DBG% --cdb-entry "Arm FVP::MPS2_Cortex_M3::Bare Metal Debug::Bare Metal Debug::Cortex-M3" --image sample_threadx.axf --script %AZRTOS_TEST_DIR%\azrtos_test_tx_ac5_cortex_m3.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ac5_cortex_m3.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_ac5_cortex_m3.ds b/test/ports/azrtos_test_tx_ac5_cortex_m3.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_ac5_cortex_m3.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_ac5_cortex_m3.log.expected b/test/ports/azrtos_test_tx_ac5_cortex_m3.log.expected new file mode 100644 index 00000000..02c2069d --- /dev/null +++ b/test/ports/azrtos_test_tx_ac5_cortex_m3.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +10 +>output thread_1_counter +17765 +>output thread_2_counter +17748 +>output thread_3_counter +23 +>output thread_4_counter +23 +>output thread_5_counter +9 +>output thread_6_counter +23 +>output thread_7_counter +23 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_ac5_cortex_m4.bat b/test/ports/azrtos_test_tx_ac5_cortex_m4.bat new file mode 100644 index 00000000..b75c1f15 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac5_cortex_m4.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Starting test... + +DEL test.log > NUL + +%AZRTOS_ARM_DS_DBG% --cdb-entry "Arm FVP::MPS2_Cortex_M4::Bare Metal Debug::Bare Metal Debug::Cortex-M4" --image sample_threadx.axf --script %AZRTOS_TEST_DIR%\azrtos_test_tx_ac5_cortex_m4.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ac5_cortex_m4.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_ac5_cortex_m4.ds b/test/ports/azrtos_test_tx_ac5_cortex_m4.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_ac5_cortex_m4.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_ac5_cortex_m4.log.expected b/test/ports/azrtos_test_tx_ac5_cortex_m4.log.expected new file mode 100644 index 00000000..4157a089 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac5_cortex_m4.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +10 +>output thread_1_counter +35393 +>output thread_2_counter +35322 +>output thread_3_counter +23 +>output thread_4_counter +23 +>output thread_5_counter +9 +>output thread_6_counter +23 +>output thread_7_counter +23 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_ac5_cortex_m7.bat b/test/ports/azrtos_test_tx_ac5_cortex_m7.bat new file mode 100644 index 00000000..c76f3bda --- /dev/null +++ b/test/ports/azrtos_test_tx_ac5_cortex_m7.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +DEL test.log > NUL + +ECHO INFO: Starting test... + +%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe --cdb-entry "Arm FVP::MPS2_Cortex_M7::Bare Metal Debug::Bare Metal Debug::Cortex-M7" --image sample_threadx.axf --script %AZRTOS_TEST_DIR%\azrtos_test_tx_ac5_cortex_m7.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ac5_cortex_m7.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_ac5_cortex_m7.ds b/test/ports/azrtos_test_tx_ac5_cortex_m7.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_ac5_cortex_m7.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_ac5_cortex_m7.log.expected b/test/ports/azrtos_test_tx_ac5_cortex_m7.log.expected new file mode 100644 index 00000000..7304a4df --- /dev/null +++ b/test/ports/azrtos_test_tx_ac5_cortex_m7.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +10 +>output thread_1_counter +17543 +>output thread_2_counter +17460 +>output thread_3_counter +23 +>output thread_4_counter +23 +>output thread_5_counter +9 +>output thread_6_counter +23 +>output thread_7_counter +23 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a12.bat b/test/ports/azrtos_test_tx_ac6_cortex_a12.bat new file mode 100644 index 00000000..fc4f4e3b --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a12.bat @@ -0,0 +1,19 @@ +@echo off + +DEL test.log > NUL + +ECHO INFO: Starting test... + +%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe --cdb-entry "Arm FVP::VE_Cortex_A17x1::Bare Metal Debug::Bare Metal Debug::Cortex-A17" --image sample_threadx/Debug/sample_threadx.axf --script %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_a12.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_a12.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed without errors. diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a12.ds b/test/ports/azrtos_test_tx_ac6_cortex_a12.ds new file mode 100644 index 00000000..927280da --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a12.ds @@ -0,0 +1,11 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +log file test.log +output thread_0_counter +log file +exit \ No newline at end of file diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a12.log.expected b/test/ports/azrtos_test_tx_ac6_cortex_a12.log.expected new file mode 100644 index 00000000..bdbe88d0 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a12.log.expected @@ -0,0 +1,4 @@ +>output thread_0_counter +1 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a15.bat b/test/ports/azrtos_test_tx_ac6_cortex_a15.bat new file mode 100644 index 00000000..41e78891 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a15.bat @@ -0,0 +1,19 @@ +@echo off + +DEL test.log > NUL + +ECHO INFO: Starting test... + +%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe --cdb-entry "Arm FVP::VE_Cortex_A15x1::Bare Metal Debug::Bare Metal Debug::Cortex-A15" --image sample_threadx/Debug/sample_threadx.axf --script %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_a15.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_a15.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed without errors. diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a15.ds b/test/ports/azrtos_test_tx_ac6_cortex_a15.ds new file mode 100644 index 00000000..927280da --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a15.ds @@ -0,0 +1,11 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +log file test.log +output thread_0_counter +log file +exit \ No newline at end of file diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a15.log.expected b/test/ports/azrtos_test_tx_ac6_cortex_a15.log.expected new file mode 100644 index 00000000..bdbe88d0 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a15.log.expected @@ -0,0 +1,4 @@ +>output thread_0_counter +1 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a17.bat b/test/ports/azrtos_test_tx_ac6_cortex_a17.bat new file mode 100644 index 00000000..a9a76d56 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a17.bat @@ -0,0 +1,19 @@ +@echo off + +DEL test.log > NUL + +ECHO INFO: Starting test... + +%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe --cdb-entry "Arm FVP::VE_Cortex_A17x1::Bare Metal Debug::Bare Metal Debug::Cortex-A17" --image sample_threadx/Debug/sample_threadx.axf --script %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_a17.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_a17.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed without errors. diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a17.ds b/test/ports/azrtos_test_tx_ac6_cortex_a17.ds new file mode 100644 index 00000000..927280da --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a17.ds @@ -0,0 +1,11 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +log file test.log +output thread_0_counter +log file +exit \ No newline at end of file diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a17.log.expected b/test/ports/azrtos_test_tx_ac6_cortex_a17.log.expected new file mode 100644 index 00000000..bdbe88d0 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a17.log.expected @@ -0,0 +1,4 @@ +>output thread_0_counter +1 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a5.bat b/test/ports/azrtos_test_tx_ac6_cortex_a5.bat new file mode 100644 index 00000000..f86787bf --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a5.bat @@ -0,0 +1,19 @@ +@echo off + +DEL test.log > NUL + +ECHO INFO: Starting test... + +%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe --cdb-entry "Arm FVP::VE_Cortex_A5x1::Bare Metal Debug::Bare Metal Debug::Cortex-A5" --image sample_threadx/Debug/sample_threadx.axf --script %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_a5.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_a5.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed without errors. diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a5.ds b/test/ports/azrtos_test_tx_ac6_cortex_a5.ds new file mode 100644 index 00000000..927280da --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a5.ds @@ -0,0 +1,11 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +log file test.log +output thread_0_counter +log file +exit \ No newline at end of file diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a5.log.expected b/test/ports/azrtos_test_tx_ac6_cortex_a5.log.expected new file mode 100644 index 00000000..bdbe88d0 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a5.log.expected @@ -0,0 +1,4 @@ +>output thread_0_counter +1 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a7.bat b/test/ports/azrtos_test_tx_ac6_cortex_a7.bat new file mode 100644 index 00000000..0fa7f923 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a7.bat @@ -0,0 +1,19 @@ +@echo off + +DEL test.log > NUL + +ECHO INFO: Starting test... + +%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe --cdb-entry "Arm FVP::VE_Cortex_A7x1::Bare Metal Debug::Bare Metal Debug::Cortex-A7" --image sample_threadx/Debug/sample_threadx.axf --script %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_a7.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_a7.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed without errors. diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a7.ds b/test/ports/azrtos_test_tx_ac6_cortex_a7.ds new file mode 100644 index 00000000..927280da --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a7.ds @@ -0,0 +1,11 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +log file test.log +output thread_0_counter +log file +exit \ No newline at end of file diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a7.log.expected b/test/ports/azrtos_test_tx_ac6_cortex_a7.log.expected new file mode 100644 index 00000000..bdbe88d0 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a7.log.expected @@ -0,0 +1,4 @@ +>output thread_0_counter +1 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a8.bat b/test/ports/azrtos_test_tx_ac6_cortex_a8.bat new file mode 100644 index 00000000..fe20fbf0 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a8.bat @@ -0,0 +1,19 @@ +@echo off + +DEL test.log > NUL + +ECHO INFO: Starting test... + +%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe --cdb-entry "Arm FVP::VE_Cortex_A7x1::Bare Metal Debug::Bare Metal Debug::Cortex-A7" --image sample_threadx/Debug/sample_threadx.axf --script %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_a8.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_a8.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed without errors. diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a8.ds b/test/ports/azrtos_test_tx_ac6_cortex_a8.ds new file mode 100644 index 00000000..927280da --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a8.ds @@ -0,0 +1,11 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +log file test.log +output thread_0_counter +log file +exit \ No newline at end of file diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a8.log.expected b/test/ports/azrtos_test_tx_ac6_cortex_a8.log.expected new file mode 100644 index 00000000..bdbe88d0 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a8.log.expected @@ -0,0 +1,4 @@ +>output thread_0_counter +1 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a9.bat b/test/ports/azrtos_test_tx_ac6_cortex_a9.bat new file mode 100644 index 00000000..96927d24 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a9.bat @@ -0,0 +1,19 @@ +@echo off + +DEL test.log > NUL + +ECHO INFO: Starting test... + +%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe --cdb-entry "Arm FVP::VE_Cortex_A9x1::Bare Metal Debug::Bare Metal Debug::Cortex-A9" --image sample_threadx/Debug/sample_threadx.axf --script %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_a9.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_a9.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed without errors. diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a9.ds b/test/ports/azrtos_test_tx_ac6_cortex_a9.ds new file mode 100644 index 00000000..927280da --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a9.ds @@ -0,0 +1,11 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +log file test.log +output thread_0_counter +log file +exit \ No newline at end of file diff --git a/test/ports/azrtos_test_tx_ac6_cortex_a9.log.expected b/test/ports/azrtos_test_tx_ac6_cortex_a9.log.expected new file mode 100644 index 00000000..bdbe88d0 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_a9.log.expected @@ -0,0 +1,4 @@ +>output thread_0_counter +1 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_ac6_cortex_m0.bat b/test/ports/azrtos_test_tx_ac6_cortex_m0.bat new file mode 100644 index 00000000..f51e4792 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_m0.bat @@ -0,0 +1,19 @@ +@echo off + +DEL test.log > NUL + +ECHO INFO: Starting test... + +%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe --cdb-entry "Arm FVP::MPS2_Cortex_M0::Bare Metal Debug::Bare Metal Debug::Cortex-M0" --image sample_threadx/Debug/sample_threadx.axf --script %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_m0.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_m0.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed without errors. diff --git a/test/ports/azrtos_test_tx_ac6_cortex_m0.ds b/test/ports/azrtos_test_tx_ac6_cortex_m0.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_m0.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_ac6_cortex_m0.log.expected b/test/ports/azrtos_test_tx_ac6_cortex_m0.log.expected new file mode 100644 index 00000000..0a8cb70a --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_m0.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +10 +>output thread_1_counter +23561 +>output thread_2_counter +23539 +>output thread_3_counter +23 +>output thread_4_counter +23 +>output thread_5_counter +9 +>output thread_6_counter +23 +>output thread_7_counter +23 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_ac6_cortex_m3.bat b/test/ports/azrtos_test_tx_ac6_cortex_m3.bat new file mode 100644 index 00000000..f603dc0f --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_m3.bat @@ -0,0 +1,19 @@ +@echo off + +DEL test.log > NUL + +ECHO INFO: Starting test... + +%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe --cdb-entry "Arm FVP::MPS2_Cortex_M3::Bare Metal Debug::Bare Metal Debug::Cortex-M3" --image sample_threadx/Debug/sample_threadx.axf --script %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_m3.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_m3.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed without errors. diff --git a/test/ports/azrtos_test_tx_ac6_cortex_m3.ds b/test/ports/azrtos_test_tx_ac6_cortex_m3.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_m3.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_ac6_cortex_m3.log.expected b/test/ports/azrtos_test_tx_ac6_cortex_m3.log.expected new file mode 100644 index 00000000..27edeacb --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_m3.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +10 +>output thread_1_counter +17237 +>output thread_2_counter +17137 +>output thread_3_counter +23 +>output thread_4_counter +23 +>output thread_5_counter +9 +>output thread_6_counter +23 +>output thread_7_counter +23 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_ac6_cortex_m4.bat b/test/ports/azrtos_test_tx_ac6_cortex_m4.bat new file mode 100644 index 00000000..b6098948 --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_m4.bat @@ -0,0 +1,19 @@ +@echo off + +DEL test.log > NUL + +ECHO INFO: Starting test... + +%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe --cdb-entry "Arm FVP::MPS2_Cortex_M4::Bare Metal Debug::Bare Metal Debug::Cortex-M4" --image sample_threadx/Debug/sample_threadx.axf --script %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_m4.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_m4.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed without errors. diff --git a/test/ports/azrtos_test_tx_ac6_cortex_m4.ds b/test/ports/azrtos_test_tx_ac6_cortex_m4.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_m4.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_ac6_cortex_m4.log.expected b/test/ports/azrtos_test_tx_ac6_cortex_m4.log.expected new file mode 100644 index 00000000..27edeacb --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_m4.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +10 +>output thread_1_counter +17237 +>output thread_2_counter +17137 +>output thread_3_counter +23 +>output thread_4_counter +23 +>output thread_5_counter +9 +>output thread_6_counter +23 +>output thread_7_counter +23 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_ac6_cortex_m7.bat b/test/ports/azrtos_test_tx_ac6_cortex_m7.bat new file mode 100644 index 00000000..c56f1fec --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_m7.bat @@ -0,0 +1,19 @@ +@echo off + +DEL /Q test.log > NUL + +ECHO INFO: Starting test... + +%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe --cdb-entry "Arm FVP::MPS2_Cortex_M7::Bare Metal Debug::Bare Metal Debug::Cortex-M7" --image sample_threadx/Debug/sample_threadx.axf --script %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_m7.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ac6_cortex_m7.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed without errors. diff --git a/test/ports/azrtos_test_tx_ac6_cortex_m7.ds b/test/ports/azrtos_test_tx_ac6_cortex_m7.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_m7.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_ac6_cortex_m7.log.expected b/test/ports/azrtos_test_tx_ac6_cortex_m7.log.expected new file mode 100644 index 00000000..27edeacb --- /dev/null +++ b/test/ports/azrtos_test_tx_ac6_cortex_m7.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +10 +>output thread_1_counter +17237 +>output thread_2_counter +17137 +>output thread_3_counter +23 +>output thread_4_counter +23 +>output thread_5_counter +9 +>output thread_6_counter +23 +>output thread_7_counter +23 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_ghs_cortex_a5.bat b/test/ports/azrtos_test_tx_ghs_cortex_a5.bat new file mode 100644 index 00000000..00d5d3f3 --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_a5.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO Testing %CD%... + +DEL test.log > NUL + +%AZRTOS_GHS_MULTI_MULTI% -connectfile sample_threadx.con -connect="Simulator" -p %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_a5.rc sample_threadx +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: the test failed to run + EXIT /B 1 +) + +COMP test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_a5.valid.log /M /L /A +IF %ERRORLEVEL% NEQ 0 ( + ECHO Test results are invalid! + EXIT /B 1 +) + +ECHO Test completed sucessfully! diff --git a/test/ports/azrtos_test_tx_ghs_cortex_a5.rc b/test/ports/azrtos_test_tx_ghs_cortex_a5.rc new file mode 100644 index 00000000..d8e0d4cf --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_a5.rc @@ -0,0 +1,24 @@ +prepare_target -wait +D // delete all breakpoints +b thread_1_entry#11 // set a breakpoint in the thread_0 loop +c // continue +wait -stop // wait until stopped +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +cb @200 +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +savedebugpane cmd test.log +quit force // exit unconditionally diff --git a/test/ports/azrtos_test_tx_ghs_cortex_a7.bat b/test/ports/azrtos_test_tx_ghs_cortex_a7.bat new file mode 100644 index 00000000..efa835f7 --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_a7.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO Testing %CD%... + +DEL test.log > NUL + +%AZRTOS_GHS_MULTI_MULTI% -connectfile sample_threadx.con -connect="Simulator" -p %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_a7.rc sample_threadx +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: the test failed to run + EXIT /B 1 +) + +COMP test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_a7.valid.log /M /L /A +IF %ERRORLEVEL% NEQ 0 ( + ECHO Test results are invalid! + EXIT /B 1 +) + +ECHO Test completed sucessfully! diff --git a/test/ports/azrtos_test_tx_ghs_cortex_a7.rc b/test/ports/azrtos_test_tx_ghs_cortex_a7.rc new file mode 100644 index 00000000..d8e0d4cf --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_a7.rc @@ -0,0 +1,24 @@ +prepare_target -wait +D // delete all breakpoints +b thread_1_entry#11 // set a breakpoint in the thread_0 loop +c // continue +wait -stop // wait until stopped +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +cb @200 +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +savedebugpane cmd test.log +quit force // exit unconditionally diff --git a/test/ports/azrtos_test_tx_ghs_cortex_a8.bat b/test/ports/azrtos_test_tx_ghs_cortex_a8.bat new file mode 100644 index 00000000..9edec12d --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_a8.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO Testing %CD%... + +DEL test.log > NUL + +%AZRTOS_GHS_MULTI_MULTI% -connectfile sample_threadx.con -connect="Simulator" -p %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_a8.rc sample_threadx +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: the test failed to run + EXIT /B 1 +) + +COMP test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_a8.valid.log /M /L /A +IF %ERRORLEVEL% NEQ 0 ( + ECHO Test results are invalid! + EXIT /B 1 +) + +ECHO Test completed sucessfully! diff --git a/test/ports/azrtos_test_tx_ghs_cortex_a8.rc b/test/ports/azrtos_test_tx_ghs_cortex_a8.rc new file mode 100644 index 00000000..d8e0d4cf --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_a8.rc @@ -0,0 +1,24 @@ +prepare_target -wait +D // delete all breakpoints +b thread_1_entry#11 // set a breakpoint in the thread_0 loop +c // continue +wait -stop // wait until stopped +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +cb @200 +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +savedebugpane cmd test.log +quit force // exit unconditionally diff --git a/test/ports/azrtos_test_tx_ghs_cortex_a9.bat b/test/ports/azrtos_test_tx_ghs_cortex_a9.bat new file mode 100644 index 00000000..9d2a8e16 --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_a9.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO Testing %CD%... + +DEL test.log > NUL + +%AZRTOS_GHS_MULTI_MULTI% -connectfile sample_threadx.con -connect="Simulator" -p %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_a9.rc sample_threadx +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: the test failed to run + EXIT /B 1 +) + +COMP test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_a9.valid.log /M /L /A +IF %ERRORLEVEL% NEQ 0 ( + ECHO Test results are invalid! + EXIT /B 1 +) + +ECHO Test completed sucessfully! diff --git a/test/ports/azrtos_test_tx_ghs_cortex_a9.rc b/test/ports/azrtos_test_tx_ghs_cortex_a9.rc new file mode 100644 index 00000000..d8e0d4cf --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_a9.rc @@ -0,0 +1,24 @@ +prepare_target -wait +D // delete all breakpoints +b thread_1_entry#11 // set a breakpoint in the thread_0 loop +c // continue +wait -stop // wait until stopped +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +cb @200 +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +savedebugpane cmd test.log +quit force // exit unconditionally diff --git a/test/ports/azrtos_test_tx_ghs_cortex_m3.bat b/test/ports/azrtos_test_tx_ghs_cortex_m3.bat new file mode 100644 index 00000000..9ea97015 --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_m3.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO Testing %CD%... + +DEL test.log > NUL + +%AZRTOS_GHS_MULTI_MULTI% -connectfile sample_threadx.con -connect="Simulator" -p %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_m3.rc sample_threadx +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: the test failed to run + EXIT /B 1 +) + +COMP test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_m3.valid.log /M /L /A +IF %ERRORLEVEL% NEQ 0 ( + ECHO Test results are invalid! + EXIT /B 1 +) + +ECHO Test completed sucessfully! diff --git a/test/ports/azrtos_test_tx_ghs_cortex_m3.rc b/test/ports/azrtos_test_tx_ghs_cortex_m3.rc new file mode 100644 index 00000000..5d60bf14 --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_m3.rc @@ -0,0 +1,33 @@ +prepare_target -wait +D // delete all breakpoints +b thread_0_entry#11 // set a breakpoint in the thread_0 loop +c // continue +wait -stop // wait until stopped +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +c +wait -stop +c +wait -stop +c +wait -stop +c +wait -stop +c +wait -stop +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +savedebugpane cmd test.log +quit force // exit unconditionally diff --git a/test/ports/azrtos_test_tx_ghs_cortex_m3.valid.log b/test/ports/azrtos_test_tx_ghs_cortex_m3.valid.log new file mode 100644 index 00000000..f0f7a19d --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_m3.valid.log @@ -0,0 +1,30 @@ +Connected to target `Simulator'. +Target: Initializing `C:\ghs\comp_202014\simarm -cpu=cortexm3 -rom_use_entry'. +Target: Target cpu: Cortex-M3 +Playing back from C:\ghs\comp_202014\defaults\os_aware\txarm.rc +Target cpu: Cortex-M3 +All software breakpoints deleted + thread_0_entry#11: 0x149c count: 1 +Stopped by breakpoint +thread_0_counter = 0x00000000 +thread_1_counter = 0x00000000 +thread_2_counter = 0x00000000 +thread_3_counter = 0x00000000 +thread_4_counter = 0x00000000 +thread_5_counter = 0x00000000 +thread_6_counter = 0x00000000 +thread_7_counter = 0x00000000 +Stopped by breakpoint +Stopped by breakpoint +Stopped by breakpoint +Stopped by breakpoint +Stopped by breakpoint +thread_0_counter = 0x00000005 +thread_1_counter = 0x00003695 +thread_2_counter = 0x0000363f +thread_3_counter = 0x0000000d +thread_4_counter = 0x0000000d +thread_5_counter = 0x00000005 +thread_6_counter = 0x0000000d +thread_7_counter = 0x0000000d +MULTI> diff --git a/test/ports/azrtos_test_tx_ghs_cortex_m4.bat b/test/ports/azrtos_test_tx_ghs_cortex_m4.bat new file mode 100644 index 00000000..f6e61dae --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_m4.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO Testing %CD%... + +DEL test.log > NUL + +%AZRTOS_GHS_MULTI_MULTI% -connectfile sample_threadx.con -connect="Simulator" -p %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_m4.rc sample_threadx +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: the test failed to run + EXIT /B 1 +) + +COMP test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_m4.valid.log /M /L /A +IF %ERRORLEVEL% NEQ 0 ( + ECHO Test results are invalid! + EXIT /B 1 +) + +ECHO Test completed sucessfully! diff --git a/test/ports/azrtos_test_tx_ghs_cortex_m4.rc b/test/ports/azrtos_test_tx_ghs_cortex_m4.rc new file mode 100644 index 00000000..5d60bf14 --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_m4.rc @@ -0,0 +1,33 @@ +prepare_target -wait +D // delete all breakpoints +b thread_0_entry#11 // set a breakpoint in the thread_0 loop +c // continue +wait -stop // wait until stopped +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +c +wait -stop +c +wait -stop +c +wait -stop +c +wait -stop +c +wait -stop +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +savedebugpane cmd test.log +quit force // exit unconditionally diff --git a/test/ports/azrtos_test_tx_ghs_cortex_m7.bat b/test/ports/azrtos_test_tx_ghs_cortex_m7.bat new file mode 100644 index 00000000..16941dd1 --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_m7.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO Testing %CD%... + +DEL test.log > NUL + +%AZRTOS_GHS_MULTI_MULTI% -connectfile sample_threadx.con -connect="Simulator" -p %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_m7.rc sample_threadx +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: the test failed to run + EXIT /B 1 +) + +COMP test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_m7.valid.log /M /L /A +IF %ERRORLEVEL% NEQ 0 ( + ECHO Test results are invalid! + EXIT /B 1 +) + +ECHO Test completed sucessfully! diff --git a/test/ports/azrtos_test_tx_ghs_cortex_m7.rc b/test/ports/azrtos_test_tx_ghs_cortex_m7.rc new file mode 100644 index 00000000..5d60bf14 --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_m7.rc @@ -0,0 +1,33 @@ +prepare_target -wait +D // delete all breakpoints +b thread_0_entry#11 // set a breakpoint in the thread_0 loop +c // continue +wait -stop // wait until stopped +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +c +wait -stop +c +wait -stop +c +wait -stop +c +wait -stop +c +wait -stop +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +savedebugpane cmd test.log +quit force // exit unconditionally diff --git a/test/ports/azrtos_test_tx_ghs_cortex_r4.bat b/test/ports/azrtos_test_tx_ghs_cortex_r4.bat new file mode 100644 index 00000000..fe636275 --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_r4.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO Testing %CD%... + +DEL test.log > NUL + +%AZRTOS_GHS_MULTI_MULTI% -connectfile sample_threadx.con -connect="Simulator" -p %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_r4.rc sample_threadx +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: the test failed to run + EXIT /B 1 +) + +COMP test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_r4.valid.log /M /L /A +IF %ERRORLEVEL% NEQ 0 ( + ECHO Test results are invalid! + EXIT /B 1 +) + +ECHO Test completed sucessfully! diff --git a/test/ports/azrtos_test_tx_ghs_cortex_r4.rc b/test/ports/azrtos_test_tx_ghs_cortex_r4.rc new file mode 100644 index 00000000..d8e0d4cf --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_r4.rc @@ -0,0 +1,24 @@ +prepare_target -wait +D // delete all breakpoints +b thread_1_entry#11 // set a breakpoint in the thread_0 loop +c // continue +wait -stop // wait until stopped +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +cb @200 +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +savedebugpane cmd test.log +quit force // exit unconditionally diff --git a/test/ports/azrtos_test_tx_ghs_cortex_r5.bat b/test/ports/azrtos_test_tx_ghs_cortex_r5.bat new file mode 100644 index 00000000..b172c4fe --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_r5.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO Testing %CD%... + +DEL test.log > NUL + +%AZRTOS_GHS_MULTI_MULTI% -connectfile sample_threadx.con -connect="Simulator" -p %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_r5.rc sample_threadx +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: the test failed to run + EXIT /B 1 +) + +COMP test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_r5.valid.log /M /L /A +IF %ERRORLEVEL% NEQ 0 ( + ECHO Test results are invalid! + EXIT /B 1 +) + +ECHO Test completed sucessfully! diff --git a/test/ports/azrtos_test_tx_ghs_cortex_r5.rc b/test/ports/azrtos_test_tx_ghs_cortex_r5.rc new file mode 100644 index 00000000..d8e0d4cf --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_r5.rc @@ -0,0 +1,24 @@ +prepare_target -wait +D // delete all breakpoints +b thread_1_entry#11 // set a breakpoint in the thread_0 loop +c // continue +wait -stop // wait until stopped +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +cb @200 +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +savedebugpane cmd test.log +quit force // exit unconditionally diff --git a/test/ports/azrtos_test_tx_ghs_cortex_r7.bat b/test/ports/azrtos_test_tx_ghs_cortex_r7.bat new file mode 100644 index 00000000..575a63b7 --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_r7.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO Testing %CD%... + +DEL test.log > NUL + +%AZRTOS_GHS_MULTI_MULTI% -connectfile sample_threadx.con -connect="Simulator" -p %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_r7.rc sample_threadx +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: the test failed to run + EXIT /B 1 +) + +COMP test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_ghs_cortex_r7.valid.log /M /L /A +IF %ERRORLEVEL% NEQ 0 ( + ECHO Test results are invalid! + EXIT /B 1 +) + +ECHO Test completed sucessfully! diff --git a/test/ports/azrtos_test_tx_ghs_cortex_r7.rc b/test/ports/azrtos_test_tx_ghs_cortex_r7.rc new file mode 100644 index 00000000..d8e0d4cf --- /dev/null +++ b/test/ports/azrtos_test_tx_ghs_cortex_r7.rc @@ -0,0 +1,24 @@ +prepare_target -wait +D // delete all breakpoints +b thread_1_entry#11 // set a breakpoint in the thread_0 loop +c // continue +wait -stop // wait until stopped +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +cb @200 +p /x thread_0_counter +p /x thread_1_counter +p /x thread_2_counter +p /x thread_3_counter +p /x thread_4_counter +p /x thread_5_counter +p /x thread_6_counter +p /x thread_7_counter +savedebugpane cmd test.log +quit force // exit unconditionally diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a12.bat b/test/ports/azrtos_test_tx_gnu_cortex_a12.bat new file mode 100644 index 00000000..f4635bf4 --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a12.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Starting test... + +DEL test.log > NUL + +%AZRTOS_ARM_DS_DBG% --cdb-entry "Arm FVP::VE_Cortex_A17x1::Bare Metal Debug::Bare Metal Debug::Cortex-A17" --image sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_a12.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_a12.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a12.ds b/test/ports/azrtos_test_tx_gnu_cortex_a12.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a12.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a12.log.expected b/test/ports/azrtos_test_tx_gnu_cortex_a12.log.expected new file mode 100644 index 00000000..3d35b442 --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a12.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +2913840557 +>output thread_1_counter +2913840557 +>output thread_2_counter +2913840557 +>output thread_3_counter +2913840557 +>output thread_4_counter +2913840557 +>output thread_5_counter +2913840557 +>output thread_6_counter +2913840557 +>output thread_7_counter +2913840557 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a15.bat b/test/ports/azrtos_test_tx_gnu_cortex_a15.bat new file mode 100644 index 00000000..cddb4a50 --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a15.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Starting test... + +DEL test.log > NUL + +%AZRTOS_ARM_DS_DBG% --cdb-entry "Arm FVP::VE_Cortex_A15x1::Bare Metal Debug::Bare Metal Debug::Cortex-A15" --image sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_a15.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_a15.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a15.ds b/test/ports/azrtos_test_tx_gnu_cortex_a15.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a15.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a15.log.expected b/test/ports/azrtos_test_tx_gnu_cortex_a15.log.expected new file mode 100644 index 00000000..3d35b442 --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a15.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +2913840557 +>output thread_1_counter +2913840557 +>output thread_2_counter +2913840557 +>output thread_3_counter +2913840557 +>output thread_4_counter +2913840557 +>output thread_5_counter +2913840557 +>output thread_6_counter +2913840557 +>output thread_7_counter +2913840557 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a17.bat b/test/ports/azrtos_test_tx_gnu_cortex_a17.bat new file mode 100644 index 00000000..5adcc702 --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a17.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Starting test... + +DEL test.log > NUL + +%AZRTOS_ARM_DS_DBG% --cdb-entry "Arm FVP::VE_Cortex_A17x1::Bare Metal Debug::Bare Metal Debug::Cortex-A17" --image sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_a17.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_a17.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a17.ds b/test/ports/azrtos_test_tx_gnu_cortex_a17.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a17.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a17.log.expected b/test/ports/azrtos_test_tx_gnu_cortex_a17.log.expected new file mode 100644 index 00000000..3d35b442 --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a17.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +2913840557 +>output thread_1_counter +2913840557 +>output thread_2_counter +2913840557 +>output thread_3_counter +2913840557 +>output thread_4_counter +2913840557 +>output thread_5_counter +2913840557 +>output thread_6_counter +2913840557 +>output thread_7_counter +2913840557 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a5.bat b/test/ports/azrtos_test_tx_gnu_cortex_a5.bat new file mode 100644 index 00000000..ddf88825 --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a5.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Starting test... + +DEL test.log > NUL + +%AZRTOS_ARM_DS_DBG% --cdb-entry "Arm FVP::VE_Cortex_A5x1::Bare Metal Debug::Bare Metal Debug::Cortex-A5" --image sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_a7.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_a5.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a5.ds b/test/ports/azrtos_test_tx_gnu_cortex_a5.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a5.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a5.log.expected b/test/ports/azrtos_test_tx_gnu_cortex_a5.log.expected new file mode 100644 index 00000000..3d35b442 --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a5.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +2913840557 +>output thread_1_counter +2913840557 +>output thread_2_counter +2913840557 +>output thread_3_counter +2913840557 +>output thread_4_counter +2913840557 +>output thread_5_counter +2913840557 +>output thread_6_counter +2913840557 +>output thread_7_counter +2913840557 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a7.bat b/test/ports/azrtos_test_tx_gnu_cortex_a7.bat new file mode 100644 index 00000000..34fa8a73 --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a7.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Starting test... + +DEL test.log > NUL + +%AZRTOS_ARM_DS_DBG% --cdb-entry "Arm FVP::VE_Cortex_A7x1::Bare Metal Debug::Bare Metal Debug::Cortex-A7" --image sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_a7.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_a7.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a7.ds b/test/ports/azrtos_test_tx_gnu_cortex_a7.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a7.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a7.log.expected b/test/ports/azrtos_test_tx_gnu_cortex_a7.log.expected new file mode 100644 index 00000000..3d35b442 --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a7.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +2913840557 +>output thread_1_counter +2913840557 +>output thread_2_counter +2913840557 +>output thread_3_counter +2913840557 +>output thread_4_counter +2913840557 +>output thread_5_counter +2913840557 +>output thread_6_counter +2913840557 +>output thread_7_counter +2913840557 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a8.bat b/test/ports/azrtos_test_tx_gnu_cortex_a8.bat new file mode 100644 index 00000000..9576a318 --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a8.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Starting test... + +DEL test.log > NUL + +%AZRTOS_ARM_DS_DBG% --cdb-entry "Arm FVP::VE_Cortex_A7x1::Bare Metal Debug::Bare Metal Debug::Cortex-A7" --image sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_a8.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_a8.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a8.ds b/test/ports/azrtos_test_tx_gnu_cortex_a8.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a8.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a8.log.expected b/test/ports/azrtos_test_tx_gnu_cortex_a8.log.expected new file mode 100644 index 00000000..3d35b442 --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a8.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +2913840557 +>output thread_1_counter +2913840557 +>output thread_2_counter +2913840557 +>output thread_3_counter +2913840557 +>output thread_4_counter +2913840557 +>output thread_5_counter +2913840557 +>output thread_6_counter +2913840557 +>output thread_7_counter +2913840557 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a9.bat b/test/ports/azrtos_test_tx_gnu_cortex_a9.bat new file mode 100644 index 00000000..e770998e --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a9.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Starting test... + +DEL test.log > NUL + +%AZRTOS_ARM_DS_DBG% --cdb-entry "Arm FVP::VE_Cortex_A9x1::Bare Metal Debug::Bare Metal Debug::Cortex-A9" --image sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_a9.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_a9.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a9.ds b/test/ports/azrtos_test_tx_gnu_cortex_a9.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a9.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_gnu_cortex_a9.log.expected b/test/ports/azrtos_test_tx_gnu_cortex_a9.log.expected new file mode 100644 index 00000000..3d35b442 --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_a9.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +2913840557 +>output thread_1_counter +2913840557 +>output thread_2_counter +2913840557 +>output thread_3_counter +2913840557 +>output thread_4_counter +2913840557 +>output thread_5_counter +2913840557 +>output thread_6_counter +2913840557 +>output thread_7_counter +2913840557 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_gnu_cortex_m0.bat b/test/ports/azrtos_test_tx_gnu_cortex_m0.bat new file mode 100644 index 00000000..470dadc7 --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_m0.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Starting test... + +DEL test.log > NUL + +%AZRTOS_ARM_DS_DBG% --cdb-entry "Arm FVP::MPS2_Cortex_M0::Bare Metal Debug::Bare Metal Debug::Cortex-M0" --image sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_m0.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_m0.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_gnu_cortex_m0.ds b/test/ports/azrtos_test_tx_gnu_cortex_m0.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_m0.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_gnu_cortex_m0.log.expected b/test/ports/azrtos_test_tx_gnu_cortex_m0.log.expected new file mode 100644 index 00000000..3c356cac --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_m0.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +10 +>output thread_1_counter +17765 +>output thread_2_counter +17748 +>output thread_3_counter +23 +>output thread_4_counter +23 +>output thread_5_counter +9 +>output thread_6_counter +23 +>output thread_7_counter +22 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_gnu_cortex_m3.bat b/test/ports/azrtos_test_tx_gnu_cortex_m3.bat new file mode 100644 index 00000000..30bf88fa --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_m3.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Starting test... + +DEL test.log > NUL + +%AZRTOS_ARM_DS_DBG% --cdb-entry "Arm FVP::MPS2_Cortex_M3::Bare Metal Debug::Bare Metal Debug::Cortex-M3" --image sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_m3.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_m3.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_gnu_cortex_m3.ds b/test/ports/azrtos_test_tx_gnu_cortex_m3.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_m3.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_gnu_cortex_m3.log.expected b/test/ports/azrtos_test_tx_gnu_cortex_m3.log.expected new file mode 100644 index 00000000..d37f0d9c --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_m3.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +10 +>output thread_1_counter +17543 +>output thread_2_counter +17477 +>output thread_3_counter +23 +>output thread_4_counter +23 +>output thread_5_counter +9 +>output thread_6_counter +23 +>output thread_7_counter +23 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_gnu_cortex_m4.bat b/test/ports/azrtos_test_tx_gnu_cortex_m4.bat new file mode 100644 index 00000000..cae2e29a --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_m4.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Starting test... + +DEL test.log > NUL + +%AZRTOS_ARM_DS_DBG% --cdb-entry "Arm FVP::MPS2_Cortex_M4::Bare Metal Debug::Bare Metal Debug::Cortex-M4" --image sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_m4.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_m4.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_gnu_cortex_m4.ds b/test/ports/azrtos_test_tx_gnu_cortex_m4.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_m4.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_gnu_cortex_m4.log.expected b/test/ports/azrtos_test_tx_gnu_cortex_m4.log.expected new file mode 100644 index 00000000..02c2069d --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_m4.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +10 +>output thread_1_counter +17765 +>output thread_2_counter +17748 +>output thread_3_counter +23 +>output thread_4_counter +23 +>output thread_5_counter +9 +>output thread_6_counter +23 +>output thread_7_counter +23 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_gnu_cortex_m7.bat b/test/ports/azrtos_test_tx_gnu_cortex_m7.bat new file mode 100644 index 00000000..3b5f5f0b --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_m7.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +DEL test.log > NUL + +ECHO INFO: Starting test... + +%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe --cdb-entry "Arm FVP::MPS2_Cortex_M7::Bare Metal Debug::Bare Metal Debug::Cortex-M7" --image sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_m7.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_m7.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_gnu_cortex_m7.ds b/test/ports/azrtos_test_tx_gnu_cortex_m7.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_m7.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_gnu_cortex_m7.log.expected b/test/ports/azrtos_test_tx_gnu_cortex_m7.log.expected new file mode 100644 index 00000000..7304a4df --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_m7.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +10 +>output thread_1_counter +17543 +>output thread_2_counter +17460 +>output thread_3_counter +23 +>output thread_4_counter +23 +>output thread_5_counter +9 +>output thread_6_counter +23 +>output thread_7_counter +23 +>log file +Stopped duplicating logging output diff --git a/test/ports/azrtos_test_tx_gnu_cortex_r4.bat b/test/ports/azrtos_test_tx_gnu_cortex_r4.bat new file mode 100644 index 00000000..2560a0fa --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_r4.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +ECHO INFO: Starting test... + +DEL test.log > NUL + +%AZRTOS_ARM_DS_DBG% --cdb-entry "Arm FVP::VE_Cortex_R4::Bare Metal Debug::Bare Metal Debug::Cortex-R4" --image sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_r4.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_gnu_cortex_r4.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_gnu_cortex_r4.ds b/test/ports/azrtos_test_tx_gnu_cortex_r4.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_gnu_cortex_r4.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_iar_cortex_m3_fvp.bat b/test/ports/azrtos_test_tx_iar_cortex_m3_fvp.bat new file mode 100644 index 00000000..a4b2f97a --- /dev/null +++ b/test/ports/azrtos_test_tx_iar_cortex_m3_fvp.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +DEL test.log > NUL + +ECHO Testing %CD%... + +%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe --cdb-entry "Arm FVP::MPS2_Cortex_M3::Bare Metal Debug::Bare Metal Debug::Cortex-M3" --image Debug\Exe\sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_tx_iar_cortex_m3_fvp.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_iar_cortex_m3_fvp.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_iar_cortex_m3_fvp.ds b/test/ports/azrtos_test_tx_iar_cortex_m3_fvp.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_iar_cortex_m3_fvp.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_iar_cortex_m4.bat b/test/ports/azrtos_test_tx_iar_cortex_m4.bat new file mode 100644 index 00000000..3858aa16 --- /dev/null +++ b/test/ports/azrtos_test_tx_iar_cortex_m4.bat @@ -0,0 +1,27 @@ +@REM +@REM You can launch cspybat by typing the name of this batch file followed +@REM by the name of the debug file (usually an ELF/DWARF or UBROF file). +@REM +@REM Read about available command line parameters in the C-SPY Debugging +@REM Guide. Hints about additional command line parameters that may be +@REM useful in specific cases: +@REM --download_only Downloads a code image without starting a debug +@REM session afterwards. +@REM --silent Omits the sign-on message. +@REM --timeout Limits the maximum allowed execution time. +@REM + + +@echo off + +if not "%~1" == "" goto debugFile + +@echo on + +@REM "C:\Program Files (x86)\IAR Systems\Embedded Workbench 8.4\common\bin\cspybat" -f "C:\andres\git\AzureRTOS\threadx\ports\cortex_m4\iar\example_build\settings\sample_threadx.Debug.general.xcl" --macro unit_test.mac --backend -f "C:\andres\git\AzureRTOS\threadx\ports\cortex_m4\iar\example_build\settings\sample_threadx.Debug.driver.xcl" +"C:\Program Files (x86)\IAR Systems\Embedded Workbench 8.4\common\bin\cspybat" -f "C:\andres\git\AzureRTOS\threadx\ports\cortex_m4\iar\example_build\settings\sample_threadx.Debug.general.xcl" --backend -f "C:\andres\git\AzureRTOS\threadx\ports\cortex_m4\iar\example_build\settings\sample_threadx.Debug.driver.xcl" + +@echo off +goto end + +:end \ No newline at end of file diff --git a/test/ports/azrtos_test_tx_iar_cortex_m4_fvp.bat b/test/ports/azrtos_test_tx_iar_cortex_m4_fvp.bat new file mode 100644 index 00000000..9a7c9dec --- /dev/null +++ b/test/ports/azrtos_test_tx_iar_cortex_m4_fvp.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +DEL test.log > NUL + +ECHO Testing %CD%... + +%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe --cdb-entry "Arm FVP::MPS2_Cortex_M4::Bare Metal Debug::Bare Metal Debug::Cortex-M4" --image Debug\Exe\sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_tx_iar_cortex_m4_fvp.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_iar_cortex_m4_fvp.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_iar_cortex_m4_fvp.ds b/test/ports/azrtos_test_tx_iar_cortex_m4_fvp.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_iar_cortex_m4_fvp.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_tx_iar_cortex_m7_fvp.bat b/test/ports/azrtos_test_tx_iar_cortex_m7_fvp.bat new file mode 100644 index 00000000..1e9ac507 --- /dev/null +++ b/test/ports/azrtos_test_tx_iar_cortex_m7_fvp.bat @@ -0,0 +1,19 @@ +@ECHO OFF + +DEL test.log > NUL + +ECHO Testing %CD%... + +%AZRTOS_ARM_DS_DIR%\bin\armdbg.exe --cdb-entry "Arm FVP::MPS2_Cortex_M7::Bare Metal Debug::Bare Metal Debug::Cortex-M7" --image Debug\Exe\sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_tx_iar_cortex_m7_fvp.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_tx_iar_cortex_m7_fvp.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test completed successfully! diff --git a/test/ports/azrtos_test_tx_iar_cortex_m7_fvp.ds b/test/ports/azrtos_test_tx_iar_cortex_m7_fvp.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_tx_iar_cortex_m7_fvp.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_txm_gnu_cortex_m4.bat b/test/ports/azrtos_test_txm_gnu_cortex_m4.bat new file mode 100644 index 00000000..1d611c37 --- /dev/null +++ b/test/ports/azrtos_test_txm_gnu_cortex_m4.bat @@ -0,0 +1,20 @@ +@echo off + +ECHO INFO: Starting test... + +DEL test.log > NUL + +%AZRTOS_ARM_DS_DBG% --cdb-entry "Arm FVP::MPS2_Cortex_M4::Bare Metal Debug::Bare Metal Debug::Debug Cortex-M4" --image sample_threadx.out --script %AZRTOS_TEST_DIR%\azrtos_test_txm_gnu_cortex_m4.ds +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: test execution failed. + EXIT /B 1 +) + +COMP /A /L /M test.log %AZRTOS_TEST_DIR%\azrtos_test_txm_gnu_cortex_m4.log.expected +IF %ERRORLEVEL% NEQ 0 ( + ECHO ERROR: unexpected test results. + EXIT /B 1 +) + +ECHO INFO: Test done. +EXIT /B 0 diff --git a/test/ports/azrtos_test_txm_gnu_cortex_m4.ds b/test/ports/azrtos_test_txm_gnu_cortex_m4.ds new file mode 100644 index 00000000..f6ed968b --- /dev/null +++ b/test/ports/azrtos_test_txm_gnu_cortex_m4.ds @@ -0,0 +1,35 @@ +b main +r +wait +watch thread_0_counter +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +c +wait +log file test.log +output thread_0_counter +output thread_1_counter +output thread_2_counter +output thread_3_counter +output thread_4_counter +output thread_5_counter +output thread_6_counter +output thread_7_counter +log file +exit diff --git a/test/ports/azrtos_test_txm_gnu_cortex_m4.log.expected b/test/ports/azrtos_test_txm_gnu_cortex_m4.log.expected new file mode 100644 index 00000000..02c2069d --- /dev/null +++ b/test/ports/azrtos_test_txm_gnu_cortex_m4.log.expected @@ -0,0 +1,18 @@ +>output thread_0_counter +10 +>output thread_1_counter +17765 +>output thread_2_counter +17748 +>output thread_3_counter +23 +>output thread_4_counter +23 +>output thread_5_counter +9 +>output thread_6_counter +23 +>output thread_7_counter +23 +>log file +Stopped duplicating logging output