blob: 38898a868545f512c2acd065bb132b1681b50752 [file] [log] [blame]
Martin Günther89be6522016-05-13 07:57:31 +02001:: Batch file for generating CMSIS pack
2:: This batch file uses:
Joachim Krech347ff5a2016-05-13 08:56:15 +02003:: 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ünther89be6522016-05-13 07:57:31 +02006@ECHO off
7
8SETLOCAL
9
10:: Tool path for zipping tool 7-Zip
11SET ZIPPATH=C:\Program Files\7-Zip
12
13:: Tool path for doxygen
14SET DOXYGENPATH=C:\Program Files\doxygen\bin
15
16:: Tool path for mscgen utility
17SET MSCGENPATH=C:\Program Files (x86)\Mscgen
18
19:: These settings should be passed on to subprocesses as well
20SET PATH=%ZIPPATH%;%DOXYGENPATH%;%MSCGENPATH%;%PATH%
21
22:: Pack Path (where generated pack is stored)
23SET RELEASE_PATH=..\..\Local_Release
24
Joachim Krech347ff5a2016-05-13 08:56:15 +020025:: !!!!!!!!!!!!!!!!!
26:: DO NOT EDIT BELOW
27:: !!!!!!!!!!!!!!!!!
Martin Günther89be6522016-05-13 07:57:31 +020028
29:: Remove previous build
30IF EXIST %RELEASE_PATH% (
31 ECHO removing %RELEASE_PATH%
32 RMDIR /Q /S %RELEASE_PATH%
33)
34
35:: Create build output directory
36MKDIR %RELEASE_PATH%
37
Joachim Krech347ff5a2016-05-13 08:56:15 +020038
Martin Günther89be6522016-05-13 07:57:31 +020039:: Copy PDSC file
40COPY ..\..\ARM.CMSIS.pdsc %RELEASE_PATH%\ARM.CMSIS.pdsc
41
Joachim Krech347ff5a2016-05-13 08:56:15 +020042:: Copy LICENSE file
43COPY ..\..\LICENSE %RELEASE_PATH%\LICENSE
44
Martin Günther89be6522016-05-13 07:57:31 +020045:: Copy Device folder
46XCOPY /Q /S /Y ..\..\Device\*.* %RELEASE_PATH%\Device\*.*
47
48:: Copy CMSIS folder
49:: -- Core files
50XCOPY /Q /S /Y ..\..\CMSIS\Core\Include\*.* %RELEASE_PATH%\CMSIS\Include\*.*
51
52:: -- DAP files
53XCOPY /Q /S /Y ..\..\CMSIS\DAP\*.* %RELEASE_PATH%\CMSIS\DAP\*.*
54
55:: -- Driver files
56XCOPY /Q /S /Y ..\..\CMSIS\Driver\*.* %RELEASE_PATH%\CMSIS\Driver\*.*
57
58:: -- DSP files
59XCOPY /Q /S /Y ..\..\CMSIS\DSP\Include\*.* %RELEASE_PATH%\CMSIS\Include\*.*
60XCOPY /Q /S /Y ..\..\CMSIS\DSP\Source\*.* %RELEASE_PATH%\CMSIS\DSP_Lib\Source\*.*
Martin Günther10babd82016-06-14 14:10:36 +020061XCOPY /Q /S /Y ..\..\CMSIS\DSP\Projects\*.* %RELEASE_PATH%\CMSIS\DSP_Lib\Source\*.*
Martin Günther89be6522016-05-13 07:57:31 +020062XCOPY /Q /S /Y ..\..\CMSIS\DSP\Examples\*.* %RELEASE_PATH%\CMSIS\DSP_Lib\Examples\*.*
63
64:: -- DSP libraries
Martin Günther10babd82016-06-14 14:10:36 +020065XCOPY /Q /S /Y ..\..\CMSIS\Lib\ARM\*.lib %RELEASE_PATH%\CMSIS\Lib\ARM\*.*
66XCOPY /Q /S /Y ..\..\CMSIS\Lib\GCC\*.a %RELEASE_PATH%\CMSIS\Lib\GCC\*.*
Martin Günther89be6522016-05-13 07:57:31 +020067
68:: -- Pack files
Joachim Krech347ff5a2016-05-13 08:56:15 +020069XCOPY /Q /S /Y ..\..\CMSIS\Pack\Example\*.* %RELEASE_PATH%\CMSIS\Pack\Example\*.*
Martin Günther89be6522016-05-13 07:57:31 +020070XCOPY /Q /S /Y ..\..\CMSIS\Pack\Tutorials\*.* %RELEASE_PATH%\CMSIS\Pack\Tutorials\*.*
71
72:: -- RTOS files
73XCOPY /Q /S /Y ..\..\CMSIS\RTOS\Template\*.* %RELEASE_PATH%\CMSIS\RTOS\Template\*.*
74XCOPY /Q /S /Y ..\..\CMSIS\RTOS\RTX\*.* %RELEASE_PATH%\CMSIS\RTOS\RTX\*.*
75
76:: -- RTOS2 files
Robert Rostohareefdc5a2016-07-05 07:25:38 +020077XCOPY /Q /S /Y ..\..\CMSIS\RTOS2\Include\*.* %RELEASE_PATH%\CMSIS\RTOS2\Include\*.*
Martin Günther89be6522016-05-13 07:57:31 +020078XCOPY /Q /S /Y ..\..\CMSIS\RTOS2\Template\*.* %RELEASE_PATH%\CMSIS\RTOS2\Template\*.*
Robert Rostohardab42a22016-07-01 23:23:16 +020079XCOPY /Q /S /Y ..\..\CMSIS\RTOS2\RTX\*.* %RELEASE_PATH%\CMSIS\RTOS2\RTX\*.*
Martin Günther89be6522016-05-13 07:57:31 +020080
81:: -- SVD files
82XCOPY /Q /S /Y ..\..\CMSIS\Utilities\ARM_Example.* %RELEASE_PATH%\CMSIS\SVD\*.*
83
84:: -- Utilities files
Martin Günther96143552016-09-28 13:30:22 +020085XCOPY /Q /S /Y ..\..\CMSIS\Utilities\CMSIS-SVD.xsd %RELEASE_PATH%\CMSIS\Utilities\*.*
86XCOPY /Q /S /Y ..\..\CMSIS\Utilities\PACK.xsd %RELEASE_PATH%\CMSIS\Utilities\*.*
87XCOPY /Q /S /Y ..\..\CMSIS\Utilities\PackChk.exe %RELEASE_PATH%\CMSIS\Utilities\*.*
88XCOPY /Q /S /Y ..\..\CMSIS\Utilities\Win32\*.* %RELEASE_PATH%\CMSIS\Utilities\Win32\*.*
89XCOPY /Q /S /Y ..\..\CMSIS\Utilities\Linux-gcc-4.4.4\*.* %RELEASE_PATH%\CMSIS\Utilities\Linux-gcc-4.4.4\*.*
90XCOPY /Q /S /Y ..\..\CMSIS\Utilities\Linux-gcc-4.8.3\*.* %RELEASE_PATH%\CMSIS\Utilities\Linux-gcc-4.8.3\*.*
Martin Günther89be6522016-05-13 07:57:31 +020091
Joachim Krech347ff5a2016-05-13 08:56:15 +020092:: -- index file
Martin Günther96143552016-09-28 13:30:22 +020093REM COPY ..\..\CMSIS\index.html %RELEASE_PATH%\CMSIS\index.html
Martin Günther89be6522016-05-13 07:57:31 +020094
95:: Generate Documentation
96:: -- Generate doxygen files
97PUSHD ..\DoxyGen
98
99:: -- Delete previous generated HTML files
100ECHO.
101ECHO Delete previous generated HTML files
102
103PUSHD ..\Documentation
104FOR %%A IN (Core, DAP, Driver, DSP, General, Pack, RTOS, RTOS2, SVD) DO IF EXIST %%A (RMDIR /S /Q %%A)
105POPD
106
107:: -- Generate HTML Files
108ECHO.
109ECHO Generate HTML Files
110
111pushd Core
112doxygen core.dxy
113popd
114
115pushd DAP
116doxygen dap.dxy
117popd
118
119pushd Driver
120doxygen Driver.dxy
121popd
122
123pushd DSP
124doxygen dsp.dxy
125popd
126
127pushd General
128doxygen general.dxy
129popd
130
131pushd Pack
132doxygen Pack.dxy
133popd
134
135pushd RTOS
136doxygen rtos.dxy
137popd
138
139pushd RTOS2
140doxygen rtos.dxy
141popd
142
143pushd SVD
144doxygen svd.dxy
145popd
146
147:: -- Copy search style sheet
148ECHO.
149ECHO Copy search style sheets
150copy /Y Doxygen_Templates\search.css ..\Documentation\CORE\html\search\.
151copy /Y Doxygen_Templates\search.css ..\Documentation\Driver\html\search\.
152REM copy /Y Doxygen_Templates\search.css ..\Documentation\General\html\search\.
153copy /Y Doxygen_Templates\search.css ..\Documentation\Pack\html\search\.
154REM copy /Y Doxygen_Templates\search.css ..\Documentation\SVD\html\search\.
155copy /Y Doxygen_Templates\search.css ..\Documentation\DSP\html\search\.
156copy /Y Doxygen_Templates\search.css ..\Documentation\DAP\html\search\.
157
158ECHO.
159POPD
160
161:: -- Copy generated doxygen files
162XCOPY /Q /S /Y ..\Documentation\*.* %RELEASE_PATH%\CMSIS\Documentation\*.*
163
164:: -- Remove generated doxygen files
165PUSHD ..\Documentation
166FOR %%A IN (Core, DAP, Driver, DSP, General, Pack, RTOS, RTOS2, SVD) DO IF EXIST %%A (RMDIR /S /Q %%A)
167POPD
168
169
170:: Checking
171PackChk.exe %RELEASE_PATH%\ARM.CMSIS.pdsc -n %RELEASE_PATH%\PackName.txt -x M353
172
173:: --Check if PackChk.exe has completed successfully
174IF %errorlevel% neq 0 GOTO ErrPackChk
175
Martin Günther89be6522016-05-13 07:57:31 +0200176:: Packing
177PUSHD %RELEASE_PATH%
178
179:: -- Pipe Pack's Name into Variable
Joachim Krech347ff5a2016-05-13 08:56:15 +0200180SET /P PackName=<PackName.txt
181DEL /Q PackName.txt
Martin Günther89be6522016-05-13 07:57:31 +0200182
183:: Pack files
1847z.exe a %PackName% -tzip
Martin Günther89be6522016-05-13 07:57:31 +0200185POPD
186GOTO End
187
Martin Günther89be6522016-05-13 07:57:31 +0200188:ErrPackChk
189ECHO PackChk.exe has encountered an error!
190EXIT /b
191
192:End
193ECHO removing temporary folders
194RMDIR /Q /S %RELEASE_PATH%\CMSIS
195RMDIR /Q /S %RELEASE_PATH%\Device
Joachim Krech347ff5a2016-05-13 08:56:15 +0200196DEL %RELEASE_PATH%\LICENSE
Martin Günther89be6522016-05-13 07:57:31 +0200197
198ECHO PACK generation completed.