File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / curl / projects / checksrc.bat
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Wed Jun 3 10:01:14 2020 UTC (5 years ago) by misho
Branches: curl, MAIN
CVS tags: v7_70_0p4, HEAD
curl

    1: @echo off
    2: rem ***************************************************************************
    3: rem *                                  _   _ ____  _
    4: rem *  Project                     ___| | | |  _ \| |
    5: rem *                             / __| | | | |_) | |
    6: rem *                            | (__| |_| |  _ <| |___
    7: rem *                             \___|\___/|_| \_\_____|
    8: rem *
    9: rem * Copyright (C) 2014 - 2020, Steve Holme, <steve_holme@hotmail.com>.
   10: rem *
   11: rem * This software is licensed as described in the file COPYING, which
   12: rem * you should have received as part of this distribution. The terms
   13: rem * are also available at https://curl.haxx.se/docs/copyright.html.
   14: rem *
   15: rem * You may opt to use, copy, modify, merge, publish, distribute and/or sell
   16: rem * copies of the Software, and permit persons to whom the Software is
   17: rem * furnished to do so, under the terms of the COPYING file.
   18: rem *
   19: rem * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
   20: rem * KIND, either express or implied.
   21: rem *
   22: rem ***************************************************************************
   23: 
   24: :begin
   25:   rem Check we are running on a Windows NT derived OS
   26:   if not "%OS%" == "Windows_NT" goto nodos
   27: 
   28:   rem Set our variables
   29:   setlocal
   30:   set CHECK_LIB=TRUE
   31:   set CHECK_SRC=TRUE
   32:   set CHECK_TESTS=TRUE
   33:   set CHECK_EXAMPLES=TRUE
   34:   set SRC_DIR=
   35:   set CUR_DIR=%cd%
   36:   set ARG0_DIR=%~dp0
   37: 
   38: :parseArgs
   39:   if "%~1" == "" goto prerequisites
   40: 
   41:   if /i "%~1" == "-?" (
   42:     goto syntax
   43:   ) else if /i "%~1" == "-h" (
   44:     goto syntax
   45:   ) else if /i "%~1" == "-help" (
   46:     goto syntax
   47:   ) else if /i "%~1" == "lib" (
   48:     set CHECK_LIB=TRUE
   49:     set CHECK_SRC=FALSE
   50:     set CHECK_TESTS=FALSE
   51:     set CHECK_EXAMPLES=FALSE
   52:   ) else if /i "%~1" == "src" (
   53:     set CHECK_LIB=FALSE
   54:     set CHECK_SRC=TRUE
   55:     set CHECK_TESTS=FALSE
   56:     set CHECK_EXAMPLES=FALSE
   57:   ) else if /i "%~1" == "tests" (
   58:     set CHECK_LIB=FALSE
   59:     set CHECK_SRC=FALSE
   60:     set CHECK_TESTS=TRUE
   61:     set CHECK_EXAMPLES=FALSE
   62:   ) else if /i "%~1" == "examples" (
   63:     set CHECK_LIB=FALSE
   64:     set CHECK_SRC=FALSE
   65:     set CHECK_TESTS=FALSE
   66:     set CHECK_EXAMPLES=TRUE
   67:   ) else (
   68:     if not defined SRC_DIR (
   69:       set SRC_DIR=%~1%
   70:     ) else (
   71:       goto unknown
   72:     )
   73:   )
   74: 
   75:   shift & goto parseArgs
   76: 
   77: :prerequisites
   78:   rem Check we have Perl in our path
   79:   perl --version <NUL 1>NUL 2>&1
   80:   if errorlevel 1 (
   81:     rem It isn't so check we have it installed and set the path if it is
   82:     if exist "%SystemDrive%\Perl" (
   83:       set "PATH=%SystemDrive%\Perl\bin;%PATH%"
   84:     ) else (
   85:       if exist "%SystemDrive%\Perl64" (
   86:         set "PATH=%SystemDrive%\Perl64\bin;%PATH%"
   87:       ) else (
   88:         goto noperl
   89:       )
   90:     )
   91:   )
   92: 
   93: :configure
   94:   if "%SRC_DIR%" == "" (
   95:     rem Are we being executed from the "projects" or main directory?
   96:     if "%CUR_DIR%\" == "%ARG0_DIR%" (
   97:       set SRC_DIR=..
   98:     ) else if exist projects (
   99:       if exist docs (
  100:         if exist lib (
  101:           if exist src (
  102:             if exist tests (
  103:               set SRC_DIR=.
  104:             )
  105:           )
  106:         )
  107:       )
  108:     )
  109:   )
  110:   if not exist "%SRC_DIR%" goto nosrc
  111: 
  112: :start
  113:   if "%CHECK_SRC%" == "TRUE" (
  114:     rem Check the src directory
  115:     if exist %SRC_DIR%\src (
  116:       for /f "delims=" %%i in ('dir "%SRC_DIR%\src\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\src" -Wtool_hugehelp.c "%%i"
  117:       for /f "delims=" %%i in ('dir "%SRC_DIR%\src\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\src" "%%i"
  118:     )
  119:   )
  120: 
  121:   if "%CHECK_LIB%" == "TRUE" (
  122:     rem Check the lib directory
  123:     if exist %SRC_DIR%\lib (
  124:       for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib" "%%i"
  125:       for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib" -Wcurl_config.h.cmake -Wcurl_config.h.in -Wcurl_config.h "%%i"
  126:     )
  127: 
  128:     rem Check the lib\vauth directory
  129:     if exist %SRC_DIR%\lib\vauth (
  130:       for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vauth\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vauth" "%%i"
  131:       for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vauth\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vauth" "%%i"
  132:     )
  133: 
  134:     rem Check the lib\vquic directory
  135:     if exist %SRC_DIR%\lib\vquic (
  136:       for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vquic\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vquic" "%%i"
  137:       for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vquic\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vquic" "%%i"
  138:     )
  139: 
  140:     rem Check the lib\vssh directory
  141:     if exist %SRC_DIR%\lib\vssh (
  142:       for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vssh\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vssh" "%%i"
  143:       for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vssh\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vssh" "%%i"
  144:     )
  145: 
  146:     rem Check the lib\vtls directory
  147:     if exist %SRC_DIR%\lib\vtls (
  148:       for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vtls\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vtls" "%%i"
  149:       for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vtls\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vtls" "%%i"
  150:     )
  151:   )
  152: 
  153:   if "%CHECK_TESTS%" == "TRUE" (
  154:     rem Check the tests\libtest directory
  155:     if exist %SRC_DIR%\tests\libtest (
  156:       for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\libtest\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\libtest" "%%i"
  157:       for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\libtest\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\libtest" "%%i"
  158:     )
  159: 
  160:     rem Check the tests\unit directory
  161:     if exist %SRC_DIR%\tests\unit (
  162:       for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\unit\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\unit" "%%i"
  163:       for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\unit\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\unit" "%%i"
  164:     )
  165: 
  166:     rem Check the tests\server directory
  167:     if exist %SRC_DIR%\tests\server (
  168:       for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\server\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\server" "%%i"
  169:       for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\server\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\server" "%%i"
  170:     )
  171:   )
  172: 
  173:   if "%CHECK_EXAMPLES%" == "TRUE" (
  174:     rem Check the docs\examples directory
  175:     if exist %SRC_DIR%\docs\examples (
  176:       for /f "delims=" %%i in ('dir "%SRC_DIR%\docs\examples\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\docs\examples" -ASNPRINTF "%%i"
  177:     )
  178:   )
  179: 
  180:   goto success
  181: 
  182: :syntax
  183:   rem Display the help
  184:   echo.
  185:   echo Usage: checksrc [what] [directory]
  186:   echo.
  187:   echo What to scan:
  188:   echo.
  189:   echo lib       - Scan the libcurl source
  190:   echo src       - Scan the command-line tool source
  191:   echo tests     - Scan the library tests and unit tests
  192:   echo examples  - Scan the examples
  193:   echo.
  194:   echo directory - Specifies the curl source directory
  195:   goto success
  196: 
  197: :unknown
  198:   echo.
  199:   echo Error: Unknown argument '%1'
  200:   goto error
  201: 
  202: :nodos
  203:   echo.
  204:   echo Error: Only a Windows NT based Operating System is supported
  205:   goto error
  206: 
  207: :noperl
  208:   echo.
  209:   echo Error: Perl is not installed
  210:   goto error
  211: 
  212: :nosrc
  213:   echo.
  214:   echo Error: "%SRC_DIR%" does not exist
  215:   goto error
  216: 
  217: :error
  218:   if "%OS%" == "Windows_NT" endlocal
  219:   exit /B 1
  220: 
  221: :success
  222:   endlocal
  223:   exit /B 0

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>