Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 1 | :: Batch file for generating CMSIS pack |
| 2 | :: This batch file uses: |
Joachim Krech | 347ff5a | 2016-05-13 08:56:15 +0200 | [diff] [blame] | 3 | :: 7-Zip for packaging |
| 4 | :: Doxygen version 1.8.2 and Mscgen version 0.20 for generating html documentation. |
| 5 | :: The generated pack and pdsc file are placed in folder %RELEASE_PATH% (../../Local_Release) |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 6 | @ECHO off |
| 7 | |
| 8 | SETLOCAL |
| 9 | |
| 10 | :: Tool path for zipping tool 7-Zip |
| 11 | SET ZIPPATH=C:\Program Files\7-Zip |
| 12 | |
| 13 | :: Tool path for doxygen |
| 14 | SET DOXYGENPATH=C:\Program Files\doxygen\bin |
| 15 | |
| 16 | :: Tool path for mscgen utility |
| 17 | SET MSCGENPATH=C:\Program Files (x86)\Mscgen |
| 18 | |
| 19 | :: These settings should be passed on to subprocesses as well |
| 20 | SET PATH=%ZIPPATH%;%DOXYGENPATH%;%MSCGENPATH%;%PATH% |
| 21 | |
| 22 | :: Pack Path (where generated pack is stored) |
| 23 | SET RELEASE_PATH=..\..\Local_Release |
| 24 | |
Joachim Krech | 347ff5a | 2016-05-13 08:56:15 +0200 | [diff] [blame] | 25 | :: !!!!!!!!!!!!!!!!! |
| 26 | :: DO NOT EDIT BELOW |
| 27 | :: !!!!!!!!!!!!!!!!! |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 28 | |
| 29 | :: Remove previous build |
| 30 | IF EXIST %RELEASE_PATH% ( |
| 31 | ECHO removing %RELEASE_PATH% |
| 32 | RMDIR /Q /S %RELEASE_PATH% |
| 33 | ) |
| 34 | |
| 35 | :: Create build output directory |
| 36 | MKDIR %RELEASE_PATH% |
| 37 | |
Joachim Krech | 347ff5a | 2016-05-13 08:56:15 +0200 | [diff] [blame] | 38 | |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 39 | :: Copy PDSC file |
| 40 | COPY ..\..\ARM.CMSIS.pdsc %RELEASE_PATH%\ARM.CMSIS.pdsc |
| 41 | |
Joachim Krech | 347ff5a | 2016-05-13 08:56:15 +0200 | [diff] [blame] | 42 | :: Copy LICENSE file |
Joachim Krech | 77988a2 | 2016-11-07 17:15:07 +0100 | [diff] [blame] | 43 | COPY ..\..\LICENSE.txt %RELEASE_PATH%\LICENSE.txt |
Joachim Krech | 347ff5a | 2016-05-13 08:56:15 +0200 | [diff] [blame] | 44 | |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 45 | :: Copy Device folder |
| 46 | XCOPY /Q /S /Y ..\..\Device\*.* %RELEASE_PATH%\Device\*.* |
| 47 | |
| 48 | :: Copy CMSIS folder |
| 49 | :: -- Core files |
Jonatan Antoni | ba9cdf3 | 2018-06-29 15:22:59 +0200 | [diff] [blame] | 50 | XCOPY /Q /S /Y ..\..\CMSIS\Core\Include\*.* %RELEASE_PATH%\CMSIS\Core\Include\*.* |
Christopher Seidl | 2e8b814 | 2016-10-25 16:29:05 +0200 | [diff] [blame] | 51 | XCOPY /Q /S /Y ..\..\CMSIS\Core\Template\ARMv8-M\*.* %RELEASE_PATH%\CMSIS\Core\Template\ARMv8-M\*.* |
brondani | b6bdb2c | 2017-03-02 16:15:52 +0100 | [diff] [blame] | 52 | XCOPY /Q /S /Y ..\..\CMSIS\Core_A\Include\*.* %RELEASE_PATH%\CMSIS\Core_A\Include\*.* |
Vladimir Umek | 4df83f8 | 2017-07-03 09:36:49 +0200 | [diff] [blame] | 53 | XCOPY /Q /S /Y ..\..\CMSIS\Core_A\Source\*.* %RELEASE_PATH%\CMSIS\Core_A\Source\*.* |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 54 | |
| 55 | :: -- DAP files |
| 56 | XCOPY /Q /S /Y ..\..\CMSIS\DAP\*.* %RELEASE_PATH%\CMSIS\DAP\*.* |
| 57 | |
| 58 | :: -- Driver files |
| 59 | XCOPY /Q /S /Y ..\..\CMSIS\Driver\*.* %RELEASE_PATH%\CMSIS\Driver\*.* |
| 60 | |
| 61 | :: -- DSP files |
Jonatan Antoni | 9feb2b2 | 2019-03-15 14:54:08 +0100 | [diff] [blame^] | 62 | XCOPY /Q /S /Y ..\..\CMSIS\DSP\Include\*.* %RELEASE_PATH%\CMSIS\DSP\Include\*.* |
| 63 | XCOPY /Q /S /Y ..\..\CMSIS\DSP\Source\*.* %RELEASE_PATH%\CMSIS\DSP\Source\*.* |
| 64 | XCOPY /Q /S /Y ..\..\CMSIS\DSP\Projects\*.* %RELEASE_PATH%\CMSIS\DSP\Projects\*.* |
| 65 | XCOPY /Q /S /Y ..\..\CMSIS\DSP\Examples\*.* %RELEASE_PATH%\CMSIS\DSP\Examples\*.* |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 66 | |
Jonatan Antoni | a67f555 | 2018-01-18 15:22:46 +0100 | [diff] [blame] | 67 | :: -- NN files |
| 68 | XCOPY /Q /S /Y ..\..\CMSIS\NN\*.* %RELEASE_PATH%\CMSIS\NN\*.* |
| 69 | |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 70 | :: -- Pack files |
Joachim Krech | 347ff5a | 2016-05-13 08:56:15 +0200 | [diff] [blame] | 71 | XCOPY /Q /S /Y ..\..\CMSIS\Pack\Example\*.* %RELEASE_PATH%\CMSIS\Pack\Example\*.* |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 72 | XCOPY /Q /S /Y ..\..\CMSIS\Pack\Tutorials\*.* %RELEASE_PATH%\CMSIS\Pack\Tutorials\*.* |
| 73 | |
| 74 | :: -- RTOS files |
| 75 | XCOPY /Q /S /Y ..\..\CMSIS\RTOS\Template\*.* %RELEASE_PATH%\CMSIS\RTOS\Template\*.* |
| 76 | XCOPY /Q /S /Y ..\..\CMSIS\RTOS\RTX\*.* %RELEASE_PATH%\CMSIS\RTOS\RTX\*.* |
| 77 | |
| 78 | :: -- RTOS2 files |
Robert Rostohar | eefdc5a | 2016-07-05 07:25:38 +0200 | [diff] [blame] | 79 | XCOPY /Q /S /Y ..\..\CMSIS\RTOS2\Include\*.* %RELEASE_PATH%\CMSIS\RTOS2\Include\*.* |
Robert Rostohar | 04fa90a | 2017-06-09 13:22:27 +0200 | [diff] [blame] | 80 | XCOPY /Q /S /Y ..\..\CMSIS\RTOS2\Source\*.* %RELEASE_PATH%\CMSIS\RTOS2\Source\*.* |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 81 | XCOPY /Q /S /Y ..\..\CMSIS\RTOS2\Template\*.* %RELEASE_PATH%\CMSIS\RTOS2\Template\*.* |
Robert Rostohar | dab42a2 | 2016-07-01 23:23:16 +0200 | [diff] [blame] | 82 | XCOPY /Q /S /Y ..\..\CMSIS\RTOS2\RTX\*.* %RELEASE_PATH%\CMSIS\RTOS2\RTX\*.* |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 83 | |
| 84 | :: -- SVD files |
| 85 | XCOPY /Q /S /Y ..\..\CMSIS\Utilities\ARM_Example.* %RELEASE_PATH%\CMSIS\SVD\*.* |
| 86 | |
| 87 | :: -- Utilities files |
Martin Günther | 9614355 | 2016-09-28 13:30:22 +0200 | [diff] [blame] | 88 | XCOPY /Q /S /Y ..\..\CMSIS\Utilities\CMSIS-SVD.xsd %RELEASE_PATH%\CMSIS\Utilities\*.* |
| 89 | XCOPY /Q /S /Y ..\..\CMSIS\Utilities\PACK.xsd %RELEASE_PATH%\CMSIS\Utilities\*.* |
Joachim Krech | c97ec68 | 2018-03-06 12:17:28 +0100 | [diff] [blame] | 90 | XCOPY /Q /S /Y ..\..\CMSIS\Utilities\PackIndex.xsd %RELEASE_PATH%\CMSIS\Utilities\*.* |
| 91 | |
Martin Günther | 9614355 | 2016-09-28 13:30:22 +0200 | [diff] [blame] | 92 | XCOPY /Q /S /Y ..\..\CMSIS\Utilities\Win32\*.* %RELEASE_PATH%\CMSIS\Utilities\Win32\*.* |
| 93 | XCOPY /Q /S /Y ..\..\CMSIS\Utilities\Linux-gcc-4.4.4\*.* %RELEASE_PATH%\CMSIS\Utilities\Linux-gcc-4.4.4\*.* |
| 94 | XCOPY /Q /S /Y ..\..\CMSIS\Utilities\Linux-gcc-4.8.3\*.* %RELEASE_PATH%\CMSIS\Utilities\Linux-gcc-4.8.3\*.* |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 95 | |
Joachim Krech | 347ff5a | 2016-05-13 08:56:15 +0200 | [diff] [blame] | 96 | :: -- index file |
Martin Günther | 9614355 | 2016-09-28 13:30:22 +0200 | [diff] [blame] | 97 | REM COPY ..\..\CMSIS\index.html %RELEASE_PATH%\CMSIS\index.html |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 98 | |
| 99 | :: Generate Documentation |
| 100 | :: -- Generate doxygen files |
| 101 | PUSHD ..\DoxyGen |
| 102 | |
| 103 | :: -- Delete previous generated HTML files |
| 104 | ECHO. |
| 105 | ECHO Delete previous generated HTML files |
| 106 | |
| 107 | PUSHD ..\Documentation |
Joachim Krech | a92f991 | 2017-03-10 17:08:23 +0100 | [diff] [blame] | 108 | FOR %%A IN (Core, Core_A, DAP, Driver, DSP, General, Pack, RTOS, RTOS2, SVD, Zone) DO IF EXIST %%A (RMDIR /S /Q %%A) |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 109 | POPD |
| 110 | |
| 111 | :: -- Generate HTML Files |
| 112 | ECHO. |
| 113 | ECHO Generate HTML Files |
| 114 | |
| 115 | pushd Core |
| 116 | doxygen core.dxy |
| 117 | popd |
| 118 | |
Joachim Krech | a92f991 | 2017-03-10 17:08:23 +0100 | [diff] [blame] | 119 | pushd Core_A |
| 120 | doxygen core_A.dxy |
| 121 | popd |
| 122 | |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 123 | pushd DAP |
| 124 | doxygen dap.dxy |
| 125 | popd |
| 126 | |
| 127 | pushd Driver |
| 128 | doxygen Driver.dxy |
| 129 | popd |
| 130 | |
| 131 | pushd DSP |
| 132 | doxygen dsp.dxy |
| 133 | popd |
| 134 | |
| 135 | pushd General |
| 136 | doxygen general.dxy |
| 137 | popd |
| 138 | |
Jonatan Antoni | a67f555 | 2018-01-18 15:22:46 +0100 | [diff] [blame] | 139 | pushd NN |
| 140 | doxygen nn.dxy |
| 141 | popd |
| 142 | |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 143 | pushd Pack |
| 144 | doxygen Pack.dxy |
| 145 | popd |
| 146 | |
| 147 | pushd RTOS |
| 148 | doxygen rtos.dxy |
| 149 | popd |
| 150 | |
| 151 | pushd RTOS2 |
| 152 | doxygen rtos.dxy |
| 153 | popd |
| 154 | |
| 155 | pushd SVD |
| 156 | doxygen svd.dxy |
| 157 | popd |
| 158 | |
Joachim Krech | a92f991 | 2017-03-10 17:08:23 +0100 | [diff] [blame] | 159 | pushd Zone |
| 160 | doxygen zone.dxy |
| 161 | popd |
| 162 | |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 163 | :: -- Copy search style sheet |
| 164 | ECHO. |
| 165 | ECHO Copy search style sheets |
| 166 | copy /Y Doxygen_Templates\search.css ..\Documentation\CORE\html\search\. |
| 167 | copy /Y Doxygen_Templates\search.css ..\Documentation\Driver\html\search\. |
| 168 | REM copy /Y Doxygen_Templates\search.css ..\Documentation\General\html\search\. |
| 169 | copy /Y Doxygen_Templates\search.css ..\Documentation\Pack\html\search\. |
| 170 | REM copy /Y Doxygen_Templates\search.css ..\Documentation\SVD\html\search\. |
| 171 | copy /Y Doxygen_Templates\search.css ..\Documentation\DSP\html\search\. |
| 172 | copy /Y Doxygen_Templates\search.css ..\Documentation\DAP\html\search\. |
Jonatan Antoni | a67f555 | 2018-01-18 15:22:46 +0100 | [diff] [blame] | 173 | copy /Y Doxygen_Templates\search.css ..\Documentation\NN\html\search\. |
Jonatan Antoni | 661ead8 | 2018-02-22 10:12:48 +0100 | [diff] [blame] | 174 | xcopy /E /I /Q /Y Zone\genmodel ..\Documentation\Zone\genmodel |
| 175 | |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 176 | ECHO. |
| 177 | POPD |
| 178 | |
| 179 | :: -- Copy generated doxygen files |
| 180 | XCOPY /Q /S /Y ..\Documentation\*.* %RELEASE_PATH%\CMSIS\Documentation\*.* |
| 181 | |
| 182 | :: -- Remove generated doxygen files |
| 183 | PUSHD ..\Documentation |
Jonatan Antoni | a67f555 | 2018-01-18 15:22:46 +0100 | [diff] [blame] | 184 | FOR %%A IN (Core, Core_A, DAP, Driver, DSP, General, NN, Pack, RTOS, RTOS2, SVD, Zone) DO IF EXIST %%A (RMDIR /S /Q %%A) |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 185 | POPD |
| 186 | |
| 187 | |
| 188 | :: Checking |
Joachim Krech | b3c26d9 | 2016-11-10 16:03:05 +0100 | [diff] [blame] | 189 | Win32\PackChk.exe %RELEASE_PATH%\ARM.CMSIS.pdsc -n %RELEASE_PATH%\PackName.txt -x M353 -x M364 |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 190 | |
| 191 | :: --Check if PackChk.exe has completed successfully |
| 192 | IF %errorlevel% neq 0 GOTO ErrPackChk |
| 193 | |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 194 | :: Packing |
| 195 | PUSHD %RELEASE_PATH% |
| 196 | |
| 197 | :: -- Pipe Pack's Name into Variable |
Joachim Krech | 347ff5a | 2016-05-13 08:56:15 +0200 | [diff] [blame] | 198 | SET /P PackName=<PackName.txt |
| 199 | DEL /Q PackName.txt |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 200 | |
| 201 | :: Pack files |
Joachim Krech | c6316a6 | 2016-11-10 09:46:05 +0100 | [diff] [blame] | 202 | ECHO Creating pack file ... |
| 203 | 7z.exe a %PackName% -tzip > zip.log |
| 204 | ECHO Packaging complete |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 205 | POPD |
| 206 | GOTO End |
| 207 | |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 208 | :ErrPackChk |
| 209 | ECHO PackChk.exe has encountered an error! |
| 210 | EXIT /b |
| 211 | |
| 212 | :End |
Joachim Krech | c6316a6 | 2016-11-10 09:46:05 +0100 | [diff] [blame] | 213 | ECHO Removing temporary files and folders |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 214 | RMDIR /Q /S %RELEASE_PATH%\CMSIS |
| 215 | RMDIR /Q /S %RELEASE_PATH%\Device |
Joachim Krech | 7e3c773 | 2016-11-07 17:16:31 +0100 | [diff] [blame] | 216 | DEL %RELEASE_PATH%\LICENSE.txt |
Joachim Krech | c6316a6 | 2016-11-10 09:46:05 +0100 | [diff] [blame] | 217 | DEL %RELEASE_PATH%\zip.log |
Martin Günther | 89be652 | 2016-05-13 07:57:31 +0200 | [diff] [blame] | 218 | |
Joachim Krech | c6316a6 | 2016-11-10 09:46:05 +0100 | [diff] [blame] | 219 | ECHO gen_pack.bat completed successfully |