4
4
:: - > _winpack_build_sample.cmd cpp\opencv_version.cpp
5
5
:: Requires:
6
6
:: - CMake
7
- :: - MSVS 2015/2017
7
+ :: - MSVS 2015/2017/2019
8
8
:: (tools are searched on default paths or environment should be pre-configured)
9
9
@ echo off
10
10
setlocal
11
11
12
- set SCRIPTDIR = %~dp0
13
- if NOT exist " %SCRIPTDIR% \..\..\build" (
12
+ SET SCRIPT_DIR = %~dp0
13
+ SET " OPENCV_SETUPVARS_SCRIPT = setup_vars_opencv3.cmd"
14
+ SET " PACKAGE_BUILD_DIR = %SCRIPT_DIR% \..\..\build"
15
+ IF NOT EXIST " %PACKAGE_BUILD_DIR% \%OPENCV_SETUPVARS_SCRIPT% " (
16
+ :: Winpack DLDT
17
+ SET " PACKAGE_BUILD_DIR = %SCRIPT_DIR% \..\..\..\build"
18
+ )
19
+ IF NOT EXIST " %PACKAGE_BUILD_DIR% \%OPENCV_SETUPVARS_SCRIPT% " (
14
20
set " MSG = OpenCV Winpack installation is required"
15
21
goto die
16
22
)
23
+ :: normalize path
24
+ for %%i in (" %PACKAGE_BUILD_DIR% " ) do SET " PACKAGE_BUILD_DIR = %%~fi "
17
25
18
26
if [%1 ]== [] (
19
27
set " MSG = Sample path is required"
@@ -35,8 +43,8 @@ set "SRC_NAME=%~n1"
35
43
echo SRC_NAME=%SRC_NAME%
36
44
echo ================================================================================
37
45
38
- :: Path to FFMPEG binary files
39
- set " PATH = %PATH% ; %SCRIPTDIR% \..\..\build\bin\ "
46
+ :: Path to root 'bin' dir
47
+ set " PATH = %PACKAGE_BUILD_DIR% \bin; %PATH% "
40
48
41
49
:: Detect compiler
42
50
cl /? > NUL 2 > NUL < NUL
@@ -102,20 +110,39 @@ if NOT DEFINED VisualStudioVersion (
102
110
if " %VisualStudioVersion% " == " 14.0" (
103
111
set " CMAKE_GENERATOR = -G^ " Visual Studio 14 Win64^ " "
104
112
set " BUILD_DIR_SUFFIX = .vc14"
105
- set " PATH = %PATH% ;%SCRIPTDIR% \..\..\build\x64\vc14\bin\"
113
+ if EXIST " %PACKAGE_BUILD_DIR% \x64\vc14\bin" (
114
+ set " PATH = %PACKAGE_BUILD_DIR% \x64\vc14\bin;%PATH% "
115
+ )
106
116
) else (
107
117
if " %VisualStudioVersion% " == " 15.0" (
108
118
set " CMAKE_GENERATOR = -G^ " Visual Studio 15 Win64^ " "
109
119
set " BUILD_DIR_SUFFIX = .vc15"
110
120
set " PATH = %PATH% ;%SCRIPTDIR% \..\..\build\x64\vc15\bin\"
121
+ if EXIST " %PACKAGE_BUILD_DIR% \x64\vc15\bin" (
122
+ set " PATH = %PACKAGE_BUILD_DIR% \x64\vc15\bin;%PATH% "
123
+ ) else (
124
+ if EXIST " %PACKAGE_BUILD_DIR% \x64\vc14\bin" (
125
+ set " PATH = %PACKAGE_BUILD_DIR% \x64\vc14\bin;%PATH% "
126
+ )
127
+ )
111
128
) else (
112
129
if " %VisualStudioVersion% " == " 16.0" (
113
130
echo .==========================================
114
131
echo .* Note: MSVS 2019 requires CMake 3.14+ *
115
132
echo .==========================================
116
133
set " CMAKE_GENERATOR = -G^ " Visual Studio 16 2019^ " -A x64"
117
134
set " BUILD_DIR_SUFFIX = .vc16"
118
- set " PATH = %PATH% ;%SCRIPTDIR% \..\..\build\x64\vc15\bin\"
135
+ if EXIST " %PACKAGE_BUILD_DIR% \x64\vc16\bin" (
136
+ set " PATH = %PACKAGE_BUILD_DIR% \x64\vc16\bin;%PATH% "
137
+ ) else (
138
+ if EXIST " %PACKAGE_BUILD_DIR% \x64\vc15\bin" (
139
+ set " PATH = %PACKAGE_BUILD_DIR% \x64\vc15\bin;%PATH% "
140
+ ) else (
141
+ if EXIST " %PACKAGE_BUILD_DIR% \x64\vc14\bin" (
142
+ set " PATH = %PACKAGE_BUILD_DIR% \x64\vc14\bin;%PATH% "
143
+ )
144
+ )
145
+ )
119
146
) else (
120
147
set " MSG = Unsupported MSVS version. VisualStudioVersion=%VisualStudioVersion% "
121
148
goto die
@@ -128,10 +155,10 @@ call :set_title Create build directory
128
155
if NOT exist " %BUILD_DIR% " ( call :execute md " %BUILD_DIR% " )
129
156
PUSHD " %BUILD_DIR% "
130
157
if NOT exist " %BUILD_DIR% /sample" ( call :execute md " %BUILD_DIR% /sample" )
131
- call :execute copy /Y " %SCRIPTDIR % /CMakeLists.example.in" " %BUILD_DIR% /sample/CMakeLists.txt"
158
+ call :execute copy /Y " %SCRIPT_DIR % /CMakeLists.example.in" " %BUILD_DIR% /sample/CMakeLists.txt"
132
159
133
160
call :set_title Configuring via CMake
134
- call :execute cmake %CMAKE_GENERATOR% " %BUILD_DIR% \sample" -DEXAMPLE_NAME=%SRC_NAME% " -DEXAMPLE_FILE=%SRC_FILENAME% " " -DOpenCV_DIR= %SCRIPTDIR% \..\..\build "
161
+ call :execute cmake %CMAKE_GENERATOR% " %BUILD_DIR% \sample" -DEXAMPLE_NAME=%SRC_NAME% " -DEXAMPLE_FILE=%SRC_FILENAME% "
135
162
if %ERRORLEVEL% NEQ 0 (
136
163
set " MSG = CMake configuration step failed: %BUILD_DIR% "
137
164
goto die
0 commit comments