diff options
| -rw-r--r-- | projects/generate.bat | 182 | 
1 files changed, 137 insertions, 45 deletions
diff --git a/projects/generate.bat b/projects/generate.bat index a95cc9a36..5a3a27934 100644 --- a/projects/generate.bat +++ b/projects/generate.bat @@ -6,7 +6,7 @@ rem *                             / __| | | | |_) | |  rem *                            | (__| |_| |  _ <| |___  rem *                             \___|\___/|_| \_\_____|  rem * -rem * Copyright (C) 2014, Steve Holme, <steve_holme@hotmail.com>. +rem * Copyright (C) 2014 - 2015, Steve Holme, <steve_holme@hotmail.com>.  rem *  rem * This software is licensed as described in the file COPYING, which  rem * you should have received as part of this distribution. The terms @@ -24,7 +24,11 @@ rem ***************************************************************************  :begin    rem Check we are running on a Windows NT derived OS    if not "%OS%" == "Windows_NT" goto nodos + +  rem Set our variables    setlocal +  set VERSION=ALL +  set MODE=GENERATE    rem Display the help    if /i "%~1" == "-?" goto syntax @@ -32,85 +36,158 @@ rem ***************************************************************************    if /i "%~1" == "-help" goto syntax  :parseArgs -  if "%~1" == "" goto all +  if "%~1" == "" goto start    if /i "%~1" == "vc6" ( -    goto vc6 +    set VERSION=VC6    ) else if /i "%~1" == "vc7" ( -    goto vc7 +    set VERSION=VC7    ) else if /i "%~1" == "vc7.1" ( -    goto vc71 +    set VERSION=VC7.1    ) else if /i "%~1" == "vc8" ( -    goto vc8 +    set VERSION=VC8    ) else if /i "%~1" == "vc9" ( -    goto vc9 +    set VERSION=VC9    ) else if /i "%~1" == "vc10" ( -    goto vc10 +    set VERSION=VC10    ) else if /i "%~1" == "vc11" ( -    goto vc11 +    set VERSION=VC11    ) else if /i "%~1" == "vc12" ( -    goto vc12 +    set VERSION=VC12 +  ) else if /i "%~1" == "-clean" ( +    set MODE=CLEAN    ) else (      goto unknown    ) - -:all -  set ALL=true +  shift & goto parseArgs +  +:start +  if "%VERSION%" == "VC6" goto vc6 +  if "%VERSION%" == "VC7" goto vc7 +  if "%VERSION%" == "VC7.1" goto vc71 +  if "%VERSION%" == "VC8" goto vc8 +  if "%VERSION%" == "VC9" goto vc9 +  if "%VERSION%" == "VC10" goto vc10 +  if "%VERSION%" == "VC11" goto vc11 +  if "%VERSION%" == "VC12" goto vc12  :vc6    echo. -  echo Generating VC6 project files -  call :generate dsp Windows\VC6\src\curlsrc.tmpl Windows\VC6\src\curlsrc.dsp -  call :generate dsp Windows\VC6\lib\libcurl.tmpl Windows\VC6\lib\libcurl.dsp -  if not "%ALL%" == "true" goto success + +  if "%MODE%" == "GENERATE" ( +    echo Generating VC6 project files +    call :generate dsp Windows\VC6\src\curlsrc.tmpl Windows\VC6\src\curlsrc.dsp +    call :generate dsp Windows\VC6\lib\libcurl.tmpl Windows\VC6\lib\libcurl.dsp +  ) else ( +    echo Removing VC6 project files +    call :clean Windows\VC6\src\curlsrc.dsp +    call :clean Windows\VC6\lib\libcurl.dsp +  ) + +  if not "%VERSION%" == "ALL" goto success  :vc7    echo. -  echo Generating VC7 project files -  call :generate vcproj1 Windows\VC7\src\curlsrc.tmpl Windows\VC7\src\curlsrc.vcproj -  call :generate vcproj1 Windows\VC7\lib\libcurl.tmpl Windows\VC7\lib\libcurl.vcproj -  if not "%ALL%" == "true" goto success + +  if "%MODE%" == "GENERATE" ( +    echo Generating VC7 project files +    call :generate vcproj1 Windows\VC7\src\curlsrc.tmpl Windows\VC7\src\curlsrc.vcproj +    call :generate vcproj1 Windows\VC7\lib\libcurl.tmpl Windows\VC7\lib\libcurl.vcproj +  ) else ( +    echo Removing VC7 project files +    call :clean Windows\VC7\src\curlsrc.vcproj +    call :clean Windows\VC7\lib\libcurl.vcproj +  ) + +  if not "%VERSION%" == "ALL" goto success  :vc71    echo. -  echo Generating VC7.1 project files -  call :generate vcproj1 Windows\VC7.1\src\curlsrc.tmpl Windows\VC7.1\src\curlsrc.vcproj -  call :generate vcproj1 Windows\VC7.1\lib\libcurl.tmpl Windows\VC7.1\lib\libcurl.vcproj -  if not "%ALL%" == "true" goto success + +  if "%MODE%" == "GENERATE" ( +    echo Generating VC7.1 project files +    call :generate vcproj1 Windows\VC7.1\src\curlsrc.tmpl Windows\VC7.1\src\curlsrc.vcproj +    call :generate vcproj1 Windows\VC7.1\lib\libcurl.tmpl Windows\VC7.1\lib\libcurl.vcproj +  ) else ( +    echo Removing VC7.1 project files +    call :clean Windows\VC7.1\src\curlsrc.vcproj +    call :clean Windows\VC7.1\lib\libcurl.vcproj +  ) + +  if not "%VERSION%" == "ALL" goto success  :vc8    echo. -  echo Generating VC8 project files -  call :generate vcproj2 Windows\VC8\src\curlsrc.tmpl Windows\VC8\src\curlsrc.vcproj -  call :generate vcproj2 Windows\VC8\lib\libcurl.tmpl Windows\VC8\lib\libcurl.vcproj -  if not "%ALL%" == "true" goto success + +  if "%MODE%" == "GENERATE" ( +    echo Generating VC8 project files +    call :generate vcproj2 Windows\VC8\src\curlsrc.tmpl Windows\VC8\src\curlsrc.vcproj +    call :generate vcproj2 Windows\VC8\lib\libcurl.tmpl Windows\VC8\lib\libcurl.vcproj +  ) else ( +    echo Removing VC8 project files +    call :clean Windows\VC8\src\curlsrc.vcproj +    call :clean Windows\VC8\lib\libcurl.vcproj +  ) + +  if not "%VERSION%" == "ALL" goto success  :vc9    echo. -  echo Generating VC9 project files -  call :generate vcproj2 Windows\VC9\src\curlsrc.tmpl Windows\VC9\src\curlsrc.vcproj -  call :generate vcproj2 Windows\VC9\lib\libcurl.tmpl Windows\VC9\lib\libcurl.vcproj -  if not "%ALL%" == "true" goto success + +  if "%MODE%" == "GENERATE" ( +    echo Generating VC9 project files +    call :generate vcproj2 Windows\VC9\src\curlsrc.tmpl Windows\VC9\src\curlsrc.vcproj +    call :generate vcproj2 Windows\VC9\lib\libcurl.tmpl Windows\VC9\lib\libcurl.vcproj +  ) else ( +    echo Removing VC9 project files +    call :clean Windows\VC9\src\curlsrc.vcproj +    call :clean Windows\VC9\lib\libcurl.vcproj +  ) + +  if not "%VERSION%" == "ALL" goto success  :vc10    echo. -  echo Generating VC10 project files -  call :generate vcxproj Windows\VC10\src\curlsrc.tmpl Windows\VC10\src\curlsrc.vcxproj -  call :generate vcxproj Windows\VC10\lib\libcurl.tmpl Windows\VC10\lib\libcurl.vcxproj -  if not "%ALL%" == "true" goto success + +  if "%MODE%" == "GENERATE" ( +    echo Generating VC10 project files +    call :generate vcxproj Windows\VC10\src\curlsrc.tmpl Windows\VC10\src\curlsrc.vcxproj +    call :generate vcxproj Windows\VC10\lib\libcurl.tmpl Windows\VC10\lib\libcurl.vcxproj +  ) else ( +    echo Removing VC10 project files +    call :clean Windows\VC10\src\curlsrc.vcxproj +    call :clean Windows\VC10\lib\libcurl.vcxproj +  ) + +  if not "%VERSION%" == "ALL" goto success  :vc11    echo. -  echo Generating VC11 project files -  call :generate vcxproj Windows\VC11\src\curlsrc.tmpl Windows\VC11\src\curlsrc.vcxproj -  call :generate vcxproj Windows\VC11\lib\libcurl.tmpl Windows\VC11\lib\libcurl.vcxproj -  if not "%ALL%" == "true" goto success + +  if "%MODE%" == "GENERATE" ( +    echo Generating VC11 project files +    call :generate vcxproj Windows\VC11\src\curlsrc.tmpl Windows\VC11\src\curlsrc.vcxproj +    call :generate vcxproj Windows\VC11\lib\libcurl.tmpl Windows\VC11\lib\libcurl.vcxproj +  ) else ( +    echo Removing VC11 project files +    call :clean Windows\VC11\src\curlsrc.vcxproj +    call :clean Windows\VC11\lib\libcurl.vcxproj +  ) + +  if not "%VERSION%" == "ALL" goto success  :vc12    echo. -  echo Generating VC12 project files -  call :generate vcxproj Windows\VC12\src\curlsrc.tmpl Windows\VC12\src\curlsrc.vcxproj -  call :generate vcxproj Windows\VC12\lib\libcurl.tmpl Windows\VC12\lib\libcurl.vcxproj + +  if "%MODE%" == "GENERATE" ( +    echo Generating VC12 project files +    call :generate vcxproj Windows\VC12\src\curlsrc.tmpl Windows\VC12\src\curlsrc.vcxproj +    call :generate vcxproj Windows\VC12\lib\libcurl.tmpl Windows\VC12\lib\libcurl.vcxproj +  ) else ( +    echo Removing VC12 project files +    call :clean Windows\VC12\src\curlsrc.vcxproj +    call :clean Windows\VC12\lib\libcurl.vcxproj +  )    goto success @@ -241,10 +318,23 @@ rem    set %2=%ename%    exit /B +rem Removes the given project file. +rem +rem %1 - The filename +rem +:clean +  echo * %CD%\%1 + +  if exist %1 (   +    del %1 +  ) + +  exit /B +  :syntax    rem Display the help    echo. -  echo Usage: generate [compiler] +  echo Usage: generate [compiler] [-clean]    echo.    echo Compiler:    echo. @@ -256,6 +346,8 @@ rem    echo vc10      - Use Visual Studio 2010    echo vc11      - Use Visual Studio 2012    echo vc12      - Use Visual Studio 2013 +  echo. +  echo -clean    - Removes the project files    goto error  :unknown  | 
