6 IF EXIST "%ProgramFiles%\NSIS\makensis.exe" (
7 set NSIS
="%ProgramFiles%\NSIS\makensis.exe"
8 ) ELSE IF EXIST "%ProgramFiles(x86)%\NSIS\makensis.exe" (
9 set NSIS
="%ProgramFiles(x86)%\NSIS\makensis.exe"
13 IF "%VS100COMNTOOLS%"=="" (
14 set COMPILER10
="%ProgramFiles%\Microsoft Visual Studio 10.0\Common7\IDE\VCExpress.exe"
15 ) ELSE IF EXIST "%VS100COMNTOOLS%\..\IDE\VCExpress.exe" (
16 set COMPILER10
="%VS100COMNTOOLS%\..\IDE\VCExpress.exe"
17 ) ELSE IF EXIST "%VS100COMNTOOLS%\..\IDE\devenv.exe" (
18 set COMPILER10
="%VS100COMNTOOLS%\..\IDE\devenv.exe"
24 IF EXIST "..\support\p8-usbcec-driver-installer.exe" (
25 copy "..\support\p8-usbcec-driver-installer.exe" "..\build\."
27 rem Check
for the Windows DDK
28 IF NOT EXIST "C:\WinDDK\7600.16385.1" GOTO NODDK
29 set DDK
="C:\WinDDK\7600.16385.1"
31 call create
-driver
-installer.
cmd
38 rem Skip to libCEC/x86 when we're running on win32
39 if "%PROCESSOR_ARCHITECTURE%"=="x86" if "%PROCESSOR_ARCHITEW6432%"=="" goto libcecx86
41 rem Compile libCEC and cec-client x64
42 echo. Cleaning libCEC
(x64
)
43 %COMPILER10% libcec.sln
/clean
"Release|x64"
44 echo. Compiling libCEC
(x64
)
45 %COMPILER10% libcec.sln
/build
"Release|x64" /project libcec
46 echo. Compiling cec
-client
(x64
)
47 %COMPILER10% libcec.sln
/build
"Release|x64" /project testclient
50 rem Compile libCEC and cec-client Win32
51 echo. Cleaning libCEC
(x86
)
52 %COMPILER10% libcec.sln
/clean
"Release|Win32"
53 echo. Compiling libCEC
(x86
)
54 %COMPILER10% libcec.sln
/build
"Release|Win32" /project libcec
55 echo. Compiling cec
-client
(x86
)
56 %COMPILER10% libcec.sln
/build
"Release|Win32" /project testclient
59 IF "%VS90COMNTOOLS%"=="" (
60 set COMPILER9
="%ProgramFiles%\Microsoft Visual Studio 9.0\Common7\IDE\VCExpress.exe"
61 ) ELSE IF EXIST "%VS90COMNTOOLS%\..\IDE\devenv.exe" (
62 set COMPILER9
="%VS90COMNTOOLS%\..\IDE\devenv.exe"
65 rem Skip to libCEC/x86 when we're running on win32
66 if "%PROCESSOR_ARCHITECTURE%"=="x86" if "%PROCESSOR_ARCHITEW6432%"=="" goto libcecsharpx86
68 rem Compile LibCecSharp (x64)
69 echo. Cleaning LibCecSharp
(x64
)
70 %COMPILER9% LibCecSharp.Net2.sln
/clean
"Release|x64"
71 echo. Compiling LibCecSharp
(x64
)
72 %COMPILER9% LibCecSharp.sln
/build
"Release|x64" /project LibCecSharp
73 %COMPILER9% LibCecSharp.sln
/build
"Release|x64" /project CecSharpTester
74 %COMPILER9% LibCecSharp.sln
/build
"Release|x64" /project cec
-config
-gui
76 copy ..
\build\LibCecSharp.dll ..
\build
\x64\LibCecSharp.dll
77 copy ..
\build\CecSharpTester.exe ..
\build
\x64\CecSharpTester.exe
78 copy ..
\build\cec
-config
-gui.exe ..
\build
\x64\cec
-config
-gui.exe
81 rem Compile LibCecSharp (x86)
82 echo. Cleaning LibCecSharp
(x86
)
83 %COMPILER9% LibCecSharp.sln
/clean
"Release|x86"
84 echo. Compiling LibCecSharp
(x86
)
85 %COMPILER9% LibCecSharp.sln
/build
"Release|x86" /project LibCecSharp
86 %COMPILER9% LibCecSharp.sln
/build
"Release|x86" /project CecSharpTester
87 %COMPILER9% LibCecSharp.sln
/build
"Release|x86" /project cec
-config
-gui
90 rem Clean things up before creating the installer
91 del /q
/f ..
\build\LibCecSharp.pdb
92 del /q
/f ..
\build\CecSharpTester.pdb
93 del /q
/f ..
\build\cec
-config
-gui.pdb
94 del /q
/f ..
\build\cec
-config
-gui.vshost.exe.manifest
95 del /q
/f ..
\build\cec
-config
-gui.vshost.exe
96 copy ..
\build\cec
-client.x64.exe ..
\build
\x64\cec
-client.x64.exe
97 del /q
/f ..
\build\cec
-client.x64.exe
98 copy ..
\build\libcec.x64.dll ..
\build
\x64\libcec.x64.dll
99 del /q
/f ..
\build\libcec.x64.dll
100 copy ..
\build\libcec.x64.lib ..
\build
\x64\libcec.x64.lib
101 del /q
/f ..
\build\libcec.x64.lib
103 rem Check for sign-binary.cmd, only present on the Pulse-Eight production build system
104 rem Calls signtool.exe and signs the DLLs with Pulse-Eight's code signing key
105 IF NOT EXIST "..\support\private\sign-binary.cmd" GOTO CREATEINSTALLER
106 echo. Signing all binaries
107 CALL ..\support\private\sign
-binary.
cmd ..
\build\cec
-client.exe
108 CALL ..\support\private\sign
-binary.
cmd ..
\build\CecSharpTester.exe
109 CALL ..\support\private\sign
-binary.
cmd ..
\build\libcec.dll
110 CALL ..\support\private\sign
-binary.
cmd ..
\build\LibCecSharp.dll
111 CALL ..\support\private\sign
-binary.
cmd ..
\build\cec
-config
-gui.exe
112 CALL ..\support\private\sign
-binary.
cmd ..
\build
\x64\cec
-client.x64.exe
113 CALL ..\support\private\sign
-binary.
cmd ..
\build
\x64\CecSharpTester.exe
114 CALL ..\support\private\sign
-binary.
cmd ..
\build
\x64\libcec.x64.dll
115 CALL ..\support\private\sign
-binary.
cmd ..
\build
\x64\LibCecSharp.dll
116 CALL ..\support\private\sign
-binary.
cmd ..
\build
\x64\cec
-config
-gui.exe
119 echo. Creating the installer
120 %NSIS% /V1
/X
"SetCompressor /FINAL lzma" "libCEC.nsi"
122 IF NOT EXIST "..\build\libCEC-installer.exe" GOTO :ERRORCREATINGINSTALLER
124 rem Sign the installer if sign-binary.cmd exists
125 IF EXIST "..\support\private\sign-binary.cmd" (
126 echo. Signing the installer binaries
127 CALL ..\support\private\sign
-binary.
cmd ..
\build\libCEC
-installer.exe
131 echo. The installer can be found here
: ..
\build\libCEC
-installer.exe
133 move ..
\build\libCEC
-installer.exe ..
\build\libCEC
-%1%-installer.exe
134 echo. The installer can be found here
: ..
\build\libCEC
-%1%-installer.exe
141 echo. Both Visual Studio
2010 and Visual C
++ Express
2010 were
not found on your system.
145 echo. NSIS could
not be found on your system.
149 echo. Windows DDK could
not be found on your system
152 :ERRORCREATINGINSTALLER
153 echo. The installer could
not be created. The most likely cause is that something went wrong while compiling.
156 del /q
/f ..
\build\cec
-client.exe
157 del /q
/f ..
\build\CecSharpTester.exe
158 del /q
/f ..
\build\cec
-config
-gui.exe
159 del /q
/f ..
\build\
*.dll
160 del /q
/f ..
\build\
*.lib
161 del /q
/f ..
\build\
*.exp
162 del /s
/f
/q ..
\build
\x64
167 echo. exitcode
= %EXITCODE%