OSDN Git Service

Updated build script and installer to better support multiple versions of Visual...
[lamexp/LameXP.git] / etc / Deployment / _paths.bat
1 @echo off
2
3 :: ------------------------------------------
4 :: Paths already initialized?
5 :: ------------------------------------------
6
7 if "%_LAMEXP_PATHS_INITIALIZED_%"=="%DATE%" (
8         goto:eof
9 )
10
11 :: ------------------------------------------
12 :: Clear Paths
13 :: ------------------------------------------
14
15 set "PATH_UPXBIN="
16 set "PATH_MKNSIS="
17 set "PATH_MSCDIR="
18 set "PATH_QTMSVC="
19 set "PATH_GNUPG1="
20 set "PATH_PANDOC="
21 set "PATH_VCTOOL="
22 set "PATH_VCPROJ="
23
24 :: ------------------------------------------
25 :: Setup BUILDENV_TXT
26 :: ------------------------------------------
27
28 set "BUILDENV_TXT=%~dp0\buildenv.txt"
29 if not "%~1"=="" (
30         set "BUILDENV_TXT=%~1"
31 )
32
33 if not exist "%BUILDENV_TXT%" (
34         "%~dp0\..\Utilities\CEcho.exe" red "\nCould not find \"buildenv.txt\" in current directory!\n\nPlease create your \"buildenv.txt\" file from 'buildenv.template.txt' first...\n"
35         pause && exit
36 )
37
38 :: ------------------------------------------
39 :: Parse paths from BUILDENV_TXT
40 :: ------------------------------------------
41
42 for /f "tokens=2,*" %%s in (%BUILDENV_TXT%) do (
43         if "%%s"=="PATH_UPXBIN" set "PATH_UPXBIN=%%~t"
44         if "%%s"=="PATH_MKNSIS" set "PATH_MKNSIS=%%~t"
45         if "%%s"=="PATH_MSCDIR" set "PATH_MSCDIR=%%~t"
46         if "%%s"=="PATH_QTMSVC" set "PATH_QTMSVC=%%~t"
47         if "%%s"=="PATH_GNUPG1" set "PATH_GNUPG1=%%~t"
48         if "%%s"=="PATH_PANDOC" set "PATH_PANDOC=%%~t"
49         if "%%s"=="PATH_VCTOOL" set "PATH_VCTOOL=%%~t"
50         if "%%s"=="PATH_VCPROJ" set "PATH_VCPROJ=%%~t"
51 )
52
53 set "BUILDENV_TXT="
54
55 :: ------------------------------------------
56 :: Print all paths
57 :: ------------------------------------------
58
59 "%~dp0\..\Utilities\CEcho.exe" yellow "\n========== BEGIN PATHS =========="
60 "%~dp0\..\Utilities\CEcho.exe" yellow "PATH_UPXBIN = \"%PATH_UPXBIN:\=\\%\""
61 "%~dp0\..\Utilities\CEcho.exe" yellow "PATH_MKNSIS = \"%PATH_MKNSIS:\=\\%\""
62 "%~dp0\..\Utilities\CEcho.exe" yellow "PATH_MSCDIR = \"%PATH_MSCDIR:\=\\%\""
63 "%~dp0\..\Utilities\CEcho.exe" yellow "PATH_QTMSVC = \"%PATH_QTMSVC:\=\\%\""
64 "%~dp0\..\Utilities\CEcho.exe" yellow "PATH_GNUPG1 = \"%PATH_GNUPG1:\=\\%\""
65 "%~dp0\..\Utilities\CEcho.exe" yellow "PATH_PANDOC = \"%PATH_PANDOC:\=\\%\""
66 "%~dp0\..\Utilities\CEcho.exe" yellow "PATH_VCTOOL = \"%PATH_VCTOOL:\=\\%\""
67 "%~dp0\..\Utilities\CEcho.exe" yellow "PATH_VCPROJ = \"%PATH_VCPROJ:\=\\%\""
68 "%~dp0\..\Utilities\CEcho.exe" yellow "=========== END PATHS ===========\n"
69
70 :: ------------------------------------------
71 :: Validate Paths
72 :: ------------------------------------------
73
74 call:validate_path PATH_UPXBIN "%PATH_UPXBIN%\upx.exe"
75 call:validate_path PATH_MKNSIS "%PATH_MKNSIS%\makensis.exe"
76 call:validate_path PATH_MSCDIR "%PATH_MSCDIR%\VC\vcvarsall.bat"
77 call:validate_path PATH_MSCDIR "%PATH_MSCDIR%\VC\bin\cl.exe"
78 call:validate_path PATH_QTMSVC "%PATH_QTMSVC%\bin\uic.exe"
79 call:validate_path PATH_QTMSVC "%PATH_QTMSVC%\bin\moc.exe"
80 call:validate_path PATH_QTMSVC "%PATH_QTMSVC%\bin\rcc.exe"
81 call:validate_path PATH_GNUPG1 "%PATH_GNUPG1%\gpg.exe"
82 call:validate_path PATH_PANDOC "%PATH_PANDOC%\pandoc.exe"
83 call:validate_path PATH_VCTOOL "%PATH_MSCDIR%\VC\redist\x86\Microsoft.VC%PATH_VCTOOL%.CRT\msvcp%PATH_VCTOOL%.dll"
84 call:validate_path PATH_VCPROJ "%~dp0\..\..\%PATH_VCPROJ%"
85
86 :: ------------------------------------------
87 :: Locate Qt Path
88 :: ------------------------------------------
89
90 if exist "%PATH_QTMSVC%\bin\qtvars.bat" goto:exit_success
91 if exist "%PATH_QTMSVC%\bin\qtenv2.bat" goto:exit_success
92
93 "%~dp0\..\Utilities\CEcho.exe" red "\nCould not find \"qtvars.bat\" or \"qtenv2.bat\" in your Qt path!\n\nPlease check your PATH_QTMSVC path variable and try again...\n"
94 pause && exit
95
96 :: ------------------------------------------
97 :: Validate Path
98 :: ------------------------------------------
99
100 :validate_path
101 if not exist "%~2" (
102         "%~dp0\..\Utilities\CEcho.exe" red "\nPath %1 could not be found!\n\nPlease check your %1 path variable and try again...\n"
103         pause && exit
104 )
105 goto:eof
106
107 :: ------------------------------------------
108 :: Completed
109 :: ------------------------------------------
110
111 :exit_success
112 set "_LAMEXP_PATHS_INITIALIZED_=%DATE%"