blob: 43ec66cd6d4708ad1239d5d0294a148e13778c77 [file] [log] [blame]
Martin Günther89be6522016-05-13 07:57:31 +02001:: Batch file for generating CMSIS pack
2:: This batch file uses:
3:: 7-Zip for packaging.
4:: goxygen for creating documentation.
5:: the generated pack file can be found in folder ../../Local_Release
6@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
25
26:: Remove previous build
27IF EXIST %RELEASE_PATH% (
28 ECHO removing %RELEASE_PATH%
29 RMDIR /Q /S %RELEASE_PATH%
30)
31
32:: Create build output directory
33MKDIR %RELEASE_PATH%
34
35:: Copy PDSC file
36COPY ..\..\ARM.CMSIS.pdsc %RELEASE_PATH%\ARM.CMSIS.pdsc
37
38:: Copy Device folder
39XCOPY /Q /S /Y ..\..\Device\*.* %RELEASE_PATH%\Device\*.*
40
41:: Copy CMSIS folder
42:: -- Core files
43XCOPY /Q /S /Y ..\..\CMSIS\Core\Include\*.* %RELEASE_PATH%\CMSIS\Include\*.*
44
45:: -- DAP files
46XCOPY /Q /S /Y ..\..\CMSIS\DAP\*.* %RELEASE_PATH%\CMSIS\DAP\*.*
47
48:: -- Driver files
49XCOPY /Q /S /Y ..\..\CMSIS\Driver\*.* %RELEASE_PATH%\CMSIS\Driver\*.*
50
51:: -- DSP files
52XCOPY /Q /S /Y ..\..\CMSIS\DSP\Include\*.* %RELEASE_PATH%\CMSIS\Include\*.*
53XCOPY /Q /S /Y ..\..\CMSIS\DSP\Source\*.* %RELEASE_PATH%\CMSIS\DSP_Lib\Source\*.*
54XCOPY /Q /S /Y ..\..\CMSIS\DSP\Examples\*.* %RELEASE_PATH%\CMSIS\DSP_Lib\Examples\*.*
55
56:: -- DSP libraries
57XCOPY /Q /S /Y ..\..\CMSIS\DSP\Lib\ARM\*.lib %RELEASE_PATH%\CMSIS\Lib\ARM\*.*
58XCOPY /Q /S /Y ..\..\CMSIS\DSP\Lib\GCC\*.a %RELEASE_PATH%\CMSIS\Lib\GCC\*.*
59
60:: -- Pack files
61XCOPY /Q /S /Y ..\..\CMSIS\Pack\Example\*.* %RELEASE_PATH%\CMSIS\Pack\Example\*.*
62XCOPY /Q /S /Y ..\..\CMSIS\Pack\Tutorials\*.* %RELEASE_PATH%\CMSIS\Pack\Tutorials\*.*
63
64:: -- RTOS files
65XCOPY /Q /S /Y ..\..\CMSIS\RTOS\Template\*.* %RELEASE_PATH%\CMSIS\RTOS\Template\*.*
66XCOPY /Q /S /Y ..\..\CMSIS\RTOS\RTX\*.* %RELEASE_PATH%\CMSIS\RTOS\RTX\*.*
67
68:: -- RTOS2 files
69XCOPY /Q /S /Y ..\..\CMSIS\RTOS2\Template\*.* %RELEASE_PATH%\CMSIS\RTOS2\Template\*.*
70
71:: -- SVD files
72XCOPY /Q /S /Y ..\..\CMSIS\Utilities\ARM_Example.* %RELEASE_PATH%\CMSIS\SVD\*.*
73
74:: -- Utilities files
75XCOPY /Q /S /Y ..\..\CMSIS\Utilities\CMSIS-SVD.xsd %RELEASE_PATH%\CMSIS\Utilities\*.*
76XCOPY /Q /S /Y ..\..\CMSIS\Utilities\PACK.xsd %RELEASE_PATH%\CMSIS\Utilities\*.*
77XCOPY /Q /S /Y ..\..\CMSIS\Utilities\PackChk.exe %RELEASE_PATH%\CMSIS\Utilities\*.*
78XCOPY /Q /S /Y ..\..\CMSIS\Utilities\SVDConv.exe %RELEASE_PATH%\CMSIS\Utilities\*.*
79XCOPY /Q /S /Y ..\..\CMSIS\Utilities\SVDConv.linux %RELEASE_PATH%\CMSIS\Utilities\*.*
80
81
82:: Generate Documentation
83:: -- Generate doxygen files
84PUSHD ..\DoxyGen
85
86:: -- Delete previous generated HTML files
87ECHO.
88ECHO Delete previous generated HTML files
89
90PUSHD ..\Documentation
91FOR %%A IN (Core, DAP, Driver, DSP, General, Pack, RTOS, RTOS2, SVD) DO IF EXIST %%A (RMDIR /S /Q %%A)
92POPD
93
94:: -- Generate HTML Files
95ECHO.
96ECHO Generate HTML Files
97
98pushd Core
99doxygen core.dxy
100popd
101
102pushd DAP
103doxygen dap.dxy
104popd
105
106pushd Driver
107doxygen Driver.dxy
108popd
109
110pushd DSP
111doxygen dsp.dxy
112popd
113
114pushd General
115doxygen general.dxy
116popd
117
118pushd Pack
119doxygen Pack.dxy
120popd
121
122pushd RTOS
123doxygen rtos.dxy
124popd
125
126pushd RTOS2
127doxygen rtos.dxy
128popd
129
130pushd SVD
131doxygen svd.dxy
132popd
133
134:: -- Copy search style sheet
135ECHO.
136ECHO Copy search style sheets
137copy /Y Doxygen_Templates\search.css ..\Documentation\CORE\html\search\.
138copy /Y Doxygen_Templates\search.css ..\Documentation\Driver\html\search\.
139REM copy /Y Doxygen_Templates\search.css ..\Documentation\General\html\search\.
140copy /Y Doxygen_Templates\search.css ..\Documentation\Pack\html\search\.
141REM copy /Y Doxygen_Templates\search.css ..\Documentation\SVD\html\search\.
142copy /Y Doxygen_Templates\search.css ..\Documentation\DSP\html\search\.
143copy /Y Doxygen_Templates\search.css ..\Documentation\DAP\html\search\.
144
145ECHO.
146POPD
147
148:: -- Copy generated doxygen files
149XCOPY /Q /S /Y ..\Documentation\*.* %RELEASE_PATH%\CMSIS\Documentation\*.*
150
151:: -- Remove generated doxygen files
152PUSHD ..\Documentation
153FOR %%A IN (Core, DAP, Driver, DSP, General, Pack, RTOS, RTOS2, SVD) DO IF EXIST %%A (RMDIR /S /Q %%A)
154POPD
155
156
157:: Checking
158PackChk.exe %RELEASE_PATH%\ARM.CMSIS.pdsc -n %RELEASE_PATH%\PackName.txt -x M353
159
160:: --Check if PackChk.exe has completed successfully
161IF %errorlevel% neq 0 GOTO ErrPackChk
162
163
164:: Packing
165PUSHD %RELEASE_PATH%
166
167:: -- Pipe Pack's Name into Variable
168set /p PackName=<PackName.txt
169del /q PackName.txt
170
171:: Pack files
1727z.exe a %PackName% -tzip
173REM MOVE %PackName% ..\
174POPD
175GOTO End
176
177
178:ErrPackChk
179ECHO PackChk.exe has encountered an error!
180EXIT /b
181
182:End
183ECHO removing temporary folders
184RMDIR /Q /S %RELEASE_PATH%\CMSIS
185RMDIR /Q /S %RELEASE_PATH%\Device
186
187ECHO PACK generation completed.