]> begriffs open source - cmsis-freertos/blob - Utilities/gen_pack.bat
FreeRTOS Component View: corrected linked list processing
[cmsis-freertos] / Utilities / gen_pack.bat
1 :: Batch file for generating CMSIS-FreeRTOS pack
2 :: This batch file uses:
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)
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
25 :: !!!!!!!!!!!!!!!!!
26 :: DO NOT EDIT BELOW
27 :: !!!!!!!!!!!!!!!!! 
28
29 :: Remove previous build
30 IF EXIST %RELEASE_PATH% (
31   ECHO removing %RELEASE_PATH%
32   RMDIR /Q /S  %RELEASE_PATH%
33 )
34
35 :: Generate Documentation 
36 PUSHD ..\DoxyGen
37 CALL genDoc.bat
38 POPD
39
40
41 :: Create build output directory
42 MKDIR %RELEASE_PATH%
43
44 :: Copy PDSC file
45 COPY .\..\ARM.CMSIS-FreeRTOS.pdsc %RELEASE_PATH%\ARM.CMSIS-FreeRTOS.pdsc
46
47 :: Copy LICENSE file
48 XCOPY /Q /S /Y .\..\License\*.* %RELEASE_PATH%\License\*.*
49
50 :: Copy various root files
51 COPY .\..\readme.txt %RELEASE_PATH%\readme.txt
52 COPY .\..\links_to_doc_pages_for_the_demo_projects.url %RELEASE_PATH%\links_to_doc_pages_for_the_demo_projects.url
53
54 :: Copy CMSIS folder
55 XCOPY /Q /S /Y .\..\CMSIS\*.* %RELEASE_PATH%\CMSIS\*.*
56
57 :: Copy Config folder
58 XCOPY /Q /S /Y .\..\Config\*.* %RELEASE_PATH%\Config\*.*
59
60 :: Copy Demo folder
61 XCOPY /Q /S /Y .\..\Demo\*.* %RELEASE_PATH%\Demo\*.*
62
63 :: Copy Source folder
64 XCOPY /Q /S /Y .\..\Source\*.* %RELEASE_PATH%\Source\*.*
65
66 :: Remove generated doxygen files
67 RMDIR /S /Q ..\CMSIS\Documentation
68
69 :: Checking 
70 :: Silencing warnings that are irrelevant in the context (M324, M382, M363)
71 Win32\PackChk.exe %RELEASE_PATH%\ARM.CMSIS-FreeRTOS.pdsc -n %RELEASE_PATH%\PackName.txt -x M353 -x M364 -x M324 -x M382 -x M363 -x M362
72
73 :: --Check if PackChk.exe has completed successfully
74 IF %errorlevel% neq 0 GOTO ErrPackChk
75
76 :: Packing 
77 PUSHD %RELEASE_PATH%
78
79 :: -- Pipe Pack's Name into Variable
80 SET /P PackName=<PackName.txt
81 DEL /Q PackName.txt
82
83 :: Pack files
84 ECHO Creating pack file ...
85 7z.exe a %PackName% -tzip > zip.log
86 ECHO Packaging complete
87 POPD
88 GOTO End
89
90 :ErrPackChk
91 ECHO PackChk.exe has encountered an error!
92 EXIT /b
93
94 :End
95 ECHO Removing temporary files and folders
96 PUSHD %RELEASE_PATH%
97 FOR %%A IN (CMSIS Config Demo License Source) DO IF EXIST %%A (RMDIR /S /Q %%A)
98 DEL links_to_doc_pages_for_the_demo_projects.url
99 DEL readme.txt
100 DEL zip.log
101 POPD
102
103 ECHO gen_pack.bat completed successfully