[nd] Don't use inline for RDMA reads. (mlnx 5666)
[mirror/winof/.git] / etc / clean-build.bat
1 @echo off\r
2 setlocal\r
3 \r
4 rem usage: clean-build {Target-OS} {target-Arch} {scan-only}\r
5 rem no args - remove build specific folders and files:\r
6 rem             *_win7_* *_wxp_* *_wnet_* *_wlh_*\r
7 rem arg1 == Target OS name: win7 | wxp | wnet | wlh | all\r
8 rem arg2 == Target Arch: x86 | x64 | ia64 | all\r
9 rem arg3 != "" - then report matched folders & files - no delete.\r
10 \r
11 set ALLOS=_win7_ _wlh_ _wnet_ _wxp_\r
12 set ALLARCH=x86 amd64 ia64\r
13 \r
14 if "%1" == "/?" (\r
15 :usage\r
16     echo usage:\r
17     echo  clean-build {OS:win7,wlh,wnet,wxp,all} {arch:x86,x64,ia64,all} {scan-only}\r
18     echo   no args - remove all OS build specific folders and files: *_OS_*\r
19     echo   otherwise 'win7 x86' only removes files * folders matching '*_win7_x86'\r
20     echo   arg3 != "" - then report matched folders and files - no delete.\r
21     exit /B 0\r
22 )\r
23 \r
24 if "%1" == "" (\r
25     set TOS=%ALLOS%\r
26     goto OK_OS\r
27 )\r
28 if "%1" == "all" (\r
29     set TOS=%ALLOS%\r
30 ) else (\r
31     if "%1" == "win7"  goto set_OS\r
32     if "%1" == "wlh"  goto set_OS\r
33     if "%1" == "wnet"  goto set_OS\r
34     if "%1" == "wxp"  goto set_OS\r
35     echo %0 - BAD OS specification '%1'?\r
36     goto usage\r
37 rem set Target OS\r
38 :set_OS\r
39     set TOS=_%1_\r
40 )\r
41 :OK_OS\r
42 \r
43 if "%2" == "" (\r
44 :all_arch\r
45     set TARCH=\r
46     goto OK_ARCH\r
47 )\r
48 if "%2" == "all" goto all_arch\r
49 \r
50 if "%2" == "x64"  (\r
51     set TARCH=amd64\r
52     goto OK_ARCH\r
53 )\r
54 if "%2" == "x86"  goto set_ARCH\r
55 if "%2" == "ia64"  goto set_ARCH\r
56 echo %0 - BAD Arch specification '%2'?\r
57 goto usage\r
58 \r
59 rem set Target OS\r
60 :set_ARCH\r
61     set TARCH=%2\r
62 \r
63 :OK_ARCH\r
64 \r
65 set T=%TEMP%\flist.txt\r
66 \r
67 rem delete OS flavor {wlh,wxp,wnet} specific build files to ensure a clean build\r
68 \r
69 rem The story behind the for loop need for the fake 'delims=,' is the need to\r
70 rem override the default delimiters of <space> & <tab>, anything but <space>\r
71 rem or <tab>. Problems occur with a folder name like\r
72 rem 'c:\svn\trunk\ulp\ipoib - copy(2)\objfre_wlh_x86' as the default delimiters\r
73 rem in for loop file read return 'c:\svn\trunk\ulp\ipoib', bad juju.\r
74 \r
75 rem check/remove directories\r
76 \r
77 for %%d in ( %TOS% ) do (\r
78         echo  Folder Scan for *%%d%TARCH%*\r
79         dir /B /S /A:D *%%d%TARCH%* > %T% 2>&1\r
80         if ERRORLEVEL 1 (\r
81                 del /Q/F %T%\r
82         ) else (\r
83                 for /f "delims=," %%f in ( %T% ) do (\r
84                         if EXIST "%%f" (\r
85                                 if "%3" == "" (\r
86                                         rmdir /S /Q "%%f" 1>nul\r
87                                 ) else (\r
88                                         echo   found "%%f"\r
89                                 )\r
90                         )\r
91                 )\r
92                 del /Q/F %T%\r
93         )\r
94 )\r
95 \r
96 rem check/remove files\r
97 \r
98 for %%d in ( %TOS% ) do (\r
99         echo  File Scan for *%%d%TARCH%*\r
100         dir /B /S *%%d%TARCH%* > %T% 2>&1\r
101         if ERRORLEVEL 1 (\r
102                 del /Q/F %T%\r
103         ) else (\r
104                 for /f "delims=," %%f in ( %T% ) do (\r
105                         if EXIST "%%f" (\r
106                                 if "%3" == "" (\r
107                                         del /F /Q "%%f" 1>nul\r
108                                 ) else (\r
109                                         echo   found %%f\r
110                                 )\r
111                         )\r
112                 )\r
113                 del /Q/F %T%\r
114         )\r
115 )\r
116 endlocal\r
117 \r