mirror of https://github.com/emgucv/emgucv.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
256 lines
8.1 KiB
256 lines
8.1 KiB
REM @echo off
|
|
pushd %~p0
|
|
cd ..\..
|
|
IF "%1%"=="64" ECHO "BUILDING 64bit solution"
|
|
IF NOT "%1%"=="64" ECHO "BUILDING 32bit solution"
|
|
|
|
SET NETFX_CORE=""
|
|
IF "%3%"=="WindowsPhoneDevice" SET NETFX_CORE="TRUE"
|
|
IF "%3%"=="WindowsPhoneEmulator" SET NETFX_CORE="TRUE"
|
|
IF "%3%"=="WindowsStore" SET NETFX_CORE="TRUE"
|
|
|
|
SET OS_MODE=
|
|
IF "%1%"=="64" SET OS_MODE= Win64
|
|
IF "%3%"=="WindowsPhoneDevice" SET OS_MODE= ARM
|
|
REM IF "%3%"=="WindowsPhoneEmulator" SET OS_MODE= 32
|
|
SET PROGRAMFILES_DIR_X86=%programfiles(x86)%
|
|
if NOT EXIST "%PROGRAMFILES_DIR_X86%" SET PROGRAMFILES_DIR_X86=%programfiles%
|
|
SET PROGRAMFILES_DIR=%programfiles%
|
|
|
|
REM Find CMake
|
|
SET CMAKE="cmake.exe"
|
|
IF EXIST "%PROGRAMFILES_DIR_X86%\CMake 2.8\bin\cmake.exe" SET CMAKE="%PROGRAMFILES_DIR_X86%\CMake 2.8\bin\cmake.exe"
|
|
IF EXIST "%PROGRAMFILES_DIR_X86%\CMake\bin\cmake.exe" SET CMAKE="%PROGRAMFILES_DIR_X86%\CMake\bin\cmake.exe"
|
|
|
|
IF EXIST "CMakeCache.txt" del CMakeCache.txt
|
|
|
|
REM Find Visual Studio or Msbuild
|
|
SET VS2005="%VS80COMNTOOLS%..\IDE\devenv.exe"
|
|
SET VS2008="%VS90COMNTOOLS%..\IDE\devenv.exe"
|
|
SET VS2010="%VS100COMNTOOLS%..\IDE\devenv.exe"
|
|
SET VS2012="%VS110COMNTOOLS%..\IDE\devenv.exe"
|
|
SET VS2013="%VS120COMNTOOLS%..\IDE\devenv.exe"
|
|
SET MSBUILD35="%windir%\Microsoft.NET\Framework\v3.5\MSBuild.exe"
|
|
|
|
IF EXIST %MSBUILD35% SET DEVENV=%MSBUILD35%
|
|
IF EXIST %VS2005% SET DEVENV=%VS2005%
|
|
IF EXIST %VS2008% SET DEVENV=%VS2008%
|
|
IF EXIST %VS2010% SET DEVENV=%VS2010%
|
|
IF "%4%"=="openni" GOTO SET_BUILD_TYPE
|
|
IF EXIST %VS2012% SET DEVENV=%VS2012%
|
|
REM IF "%2%"=="gpu" GOTO SET_BUILD_TYPE
|
|
IF EXIST %VS2013% SET DEVENV=%VS2013%
|
|
|
|
:SET_BUILD_TYPE
|
|
IF %DEVENV%==%MSBUILD35% SET BUILD_TYPE=/property:Configuration=Release
|
|
IF %DEVENV%==%VS2005% SET BUILD_TYPE=/Build Release
|
|
IF %DEVENV%==%VS2008% SET BUILD_TYPE=/Build Release
|
|
IF %DEVENV%==%VS2010% SET BUILD_TYPE=/Build Release
|
|
IF %DEVENV%==%VS2012% SET BUILD_TYPE=/Build Release
|
|
IF %DEVENV%==%VS2013% SET BUILD_TYPE=/Build Release
|
|
|
|
IF %DEVENV%==%MSBUILD35% SET CMAKE_CONF="Visual Studio 8 2005%OS_MODE%"
|
|
IF %DEVENV%==%VS2005% SET CMAKE_CONF="Visual Studio 8 2005%OS_MODE%"
|
|
IF %DEVENV%==%VS2008% SET CMAKE_CONF="Visual Studio 9 2008%OS_MODE%"
|
|
IF %DEVENV%==%VS2010% SET CMAKE_CONF="Visual Studio 10%OS_MODE%"
|
|
IF %DEVENV%==%VS2012% SET CMAKE_CONF="Visual Studio 11%OS_MODE%"
|
|
IF %DEVENV%==%VS2013% SET CMAKE_CONF="Visual Studio 12%OS_MODE%"
|
|
|
|
SET IPP_BUILD_FLAGS=-DWITH_IPP:BOOL=FALSE
|
|
|
|
REM Setup common flags
|
|
SET CMAKE_CONF_FLAGS= -G %CMAKE_CONF% ^
|
|
-DBUILD_DOCS:BOOL=FALSE ^
|
|
-DBUILD_TESTS:BOOL=FALSE ^
|
|
-DBUILD_opencv_apps:BOOL=FALSE ^
|
|
-DBUILD_opencv_adas:BOOL=FALSE ^
|
|
-DBUILD_opencv_bioinspired:BOOL=FALSE ^
|
|
-DBUILD_opencv_python2:BOOL=FALSE ^
|
|
-DEMGU_ENABLE_SSE:BOOL=TRUE ^
|
|
-DCMAKE_INSTALL_PREFIX="%TEMP%" ^
|
|
-DBUILD_WITH_DEBUG_INFO:BOOL=FALSE ^
|
|
-DBUILD_WITH_STATIC_CRT:BOOL=FALSE ^
|
|
-DCMAKE_CONFIGURATION_TYPES=Release ^
|
|
-DWITH_OPENGL:BOOL=OFF ^
|
|
-DOPENCV_EXTRA_MODULES_PATH=opencv_contrib/modules
|
|
|
|
IF NOT "%NETFX_CORE%"=="" (
|
|
SET CMAKE_CONF_FLAGS=%CMAKE_CONF_FLAGS% ^
|
|
-DBUILD_opencv_ts:BOOL=OFF ^
|
|
-DBUILD_PERF_TESTS:BOOL=OFF
|
|
) ELSE (
|
|
SET CMAKE_CONF_FLAGS=%CMAKE_CONF_FLAGS% ^
|
|
-DBUILD_opencv_ts:BOOL=ON ^
|
|
-DBUILD_PERF_TESTS:BOOL=ON
|
|
)
|
|
|
|
IF NOT "%4%"=="openni" GOTO END_OF_OPENNI
|
|
|
|
:WITH_OPENNI
|
|
SET OPENNI_LIB_DIR=%OPEN_NI_LIB%
|
|
IF "%OS_MODE%"==" Win64" SET OPENNI_LIB_DIR=%OPEN_NI_LIB64%
|
|
SET OPENNI_PS_BIN_DIR=%OPENNI_LIB_DIR%\..\..\PrimeSense\Sensor\Bin
|
|
IF "%OS_MODE%"==" Win64" SET OPENNI_PS_BIN_DIR=%OPENNI_LIB_DIR%\..\..\PrimeSense\Sensor\Bin64
|
|
|
|
IF EXIST "%OPENNI_LIB_DIR%" SET CMAKE_CONF_FLAGS=%CMAKE_CONF_FLAGS% ^
|
|
-DWITH_OPENNI:BOOL=TRUE ^
|
|
-DOPENNI_INCLUDE_DIR="%OPEN_NI_INCLUDE:\=/%" ^
|
|
-DOPENNI_LIB_DIR="%OPENNI_LIB_DIR:\=/%" ^
|
|
-DOPENNI_PRIME_SENSOR_MODULE_BIN_DIR="%OPENNI_PS_BIN_DIR:\=/%"
|
|
:END_OF_OPENNI
|
|
|
|
|
|
IF "%5%"=="doc" ^
|
|
SET CMAKE_CONF_FLAGS=%CMAKE_CONF_FLAGS% -DEMGU_CV_DOCUMENTATION_BUILD:BOOL=TRUE
|
|
|
|
|
|
IF NOT "%2%"=="gpu" GOTO WITHOUT_GPU
|
|
REM IF %DEVENV%==%VS2012% GOTO END_OF_GPU
|
|
REM IF %DEVENV%==%VS2013% GOTO END_OF_GPU
|
|
|
|
:WITH_GPU
|
|
REM Find cuda. Use Cuda 7 for 64 bit and Cuda 6.5 for 32bit
|
|
REM We cannot use cuda 7 for 32 bit because the 32bit version of npp has been depreciated from Cuda 7
|
|
IF "%OS_MODE%"==" Win64" (
|
|
SET CUDA_SDK_DIR=%CUDA_PATH%
|
|
) ELSE (
|
|
SET CUDA_SDK_DIR=%CUDA_PATH_V6_5%
|
|
)
|
|
|
|
IF %DEVENV%==%VS2008% SET CUDA_HOST_COMPILER=%VS90COMNTOOLS%..\..\VC\bin\cl.exe
|
|
IF %DEVENV%==%VS2010% SET CUDA_HOST_COMPILER=%VS100COMNTOOLS%..\..\VC\bin\cl.exe
|
|
IF %DEVENV%==%VS2012% SET CUDA_HOST_COMPILER=%VS110COMNTOOLS%..\..\VC\bin\cl.exe
|
|
IF %DEVENV%==%VS2013% SET CUDA_HOST_COMPILER=%VS120COMNTOOLS%..\..\VC\bin\cl.exe
|
|
REM SET CUDA_HOST_COMPILER=%DEVENV%
|
|
|
|
IF "%OS_MODE%"==" Win64" (
|
|
SET CUDA_64_MODE=-DCUDA_64_BIT_DEVICE_CODE:BOOL=TRUE
|
|
) ELSE (
|
|
SET CUDA_64_MODE=-DCUDA_64_BIT_DEVICE_CODE:BOOL=FALSE
|
|
)
|
|
IF EXIST "%CUDA_SDK_DIR%" SET CMAKE_CONF_FLAGS=%CMAKE_CONF_FLAGS% ^
|
|
%CUDA_64_MODE% ^
|
|
-DWITH_CUDA:BOOL=TRUE ^
|
|
-DCUDA_VERBOSE_BUILD:BOOL=TRUE ^
|
|
-DCUDA_TOOLKIT_ROOT_DIR="%CUDA_SDK_DIR:\=/%" ^
|
|
-DCUDA_SDK_ROOT_DIR="%CUDA_SDK_DIR:\=/%" ^
|
|
-DWITH_CUBLAS:BOOL=TRUE ^
|
|
-DCUDA_HOST_COMPILER="%CUDA_HOST_COMPILER%" ^
|
|
-DBUILD_SHARED_LIBS=TRUE
|
|
|
|
IF NOT "%7%"=="" (
|
|
SET CMAKE_CONF_FLAGS=%CMAKE_CONF_FLAGS% -DCUDA_ARCH_BIN:STRING="%7%"
|
|
) ELSE (
|
|
IF EXIST "%CUDA_SDK_DIR%" SET CMAKE_CONF_FLAGS=%CMAKE_CONF_FLAGS% -DCUDA_ARCH_BIN:STRING="2.0 2.1(2.0) 3.0 3.5 5.0 5.2"
|
|
)
|
|
|
|
GOTO END_OF_GPU
|
|
|
|
:WITHOUT_GPU
|
|
SET CMAKE_CONF_FLAGS=%CMAKE_CONF_FLAGS% ^
|
|
-DWITH_CUDA:BOOL=FALSE ^
|
|
-DBUILD_SHARED_LIBS=FALSE
|
|
|
|
:END_OF_GPU
|
|
|
|
SET BUILD_PROJECT=
|
|
IF "%6%"=="package" SET BUILD_PROJECT= /project PACKAGE
|
|
|
|
IF "%3%"=="intel" GOTO INTEL_COMPILER
|
|
|
|
REM SET CMAKE_CONF_FLAGS=%CMAKE_CONF_FLAGS% -DWITH_IPP:BOOL=FALSE
|
|
GOTO VISUAL_STUDIO
|
|
|
|
:INTEL_COMPILER
|
|
REM Find Intel Compiler
|
|
SET INTEL_DIR=%ICPP_COMPILER15%bin
|
|
SET INTEL_ENV=%INTEL_DIR%\iclvars.bat
|
|
SET INTEL_ICL=%INTEL_DIR%\ia32\icl.exe
|
|
IF "%OS_MODE%"==" Win64" SET INTEL_ICL=%INTEL_DIR%\intel64\icl.exe
|
|
SET INTEL_TBB=%ICPP_COMPILER15%tbb\include
|
|
REM IF "%OS_MODE%"==" Win64" SET INTEL_IPP=%ICPP_COMPILER15%redist\intel64\ipp
|
|
REM SET ICPROJCONVERT=%PROGRAMFILES_DIR_X86%\Common Files\Intel\shared files\ia32\Bin\ICProjConvert121.exe
|
|
|
|
REM initiate the compiler enviroment
|
|
@echo on
|
|
|
|
IF EXIST "%INTEL_DIR%" SET IPP_BUILD_FLAGS=-DWITH_IPP:BOOL=TRUE
|
|
IF EXIST "%INTEL_DIR%" SET CMAKE_CONF_FLAGS=^
|
|
-DWITH_TBB:BOOL=TRUE ^
|
|
-DTBB_INCLUDE_DIR="%INTEL_TBB:\=/%" ^
|
|
-DENABLE_PRECOMPILED_HEADERS:BOOL=FALSE ^
|
|
-DCV_ICC:BOOL=TRUE ^
|
|
%CMAKE_CONF_FLAGS%
|
|
|
|
IF NOT "%2%"=="gpu" GOTO END_OF_INTEL_GPU
|
|
|
|
REM SET CUDA_HOST_COMPILER=%VS110COMNTOOLS%..\..\VC\bin
|
|
REM IF "%OS_MODE%"==" Win64" SET CUDA_HOST_COMPILER=%CUDA_HOST_COMPILER%\amd64
|
|
REM IF EXIST %VS2012% SET CMAKE_CONF_FLAGS=^
|
|
REM -DCUDA_HOST_COMPILER="%CUDA_HOST_COMPILER%" ^
|
|
REM %CMAKE_CONF_FLAGS%
|
|
REM IF "%OS_MODE%"==" Win64" SET CMAKE_CONF_FLAGS=^
|
|
REM -DCUDA_64_BIT_DEVICE_CODE:BOOL=ON ^
|
|
REM %CMAKE_CONF_FLAGS%
|
|
|
|
:END_OF_INTEL_GPU
|
|
|
|
SET CMAKE_CONF_FLAGS=%CMAKE_CONF_FLAGS% %IPP_BUILD_FLAGS% -DWITH_OPENCL:BOOL=TRUE
|
|
|
|
REM create visual studio project
|
|
%CMAKE% %CMAKE_CONF_FLAGS%
|
|
|
|
GOTO BUILD
|
|
|
|
:VISUAL_STUDIO
|
|
|
|
|
|
SET CMAKE_CONF_FLAGS=%CMAKE_CONF_FLAGS% %IPP_BUILD_FLAGS%
|
|
|
|
IF "%3%"=="WindowsStore" GOTO CONFIGURE_WINDOWS_STORE
|
|
IF "%3%"=="WindowsPhoneDevice" GOTO CONFIGURE_WINDOWS_PHONE
|
|
IF "%3%"=="WindowsPhoneEmulator" GOTO CONFIGURE_WINDOWS_PHONE
|
|
|
|
SET CMAKE_CONF_FLAGS=%CMAKE_CONF_FLAGS% ^
|
|
-DWITH_OPENCL:BOOL=TRUE
|
|
GOTO RUN_CMAKE
|
|
|
|
:CONFIGURE_WINDOWS_STORE
|
|
SET CMAKE_CONF_FLAGS=%CMAKE_CONF_FLAGS% -DCMAKE_SYSTEM_NAME="WindowsStore" -DCMAKE_SYSTEM_VERSION="8.1"
|
|
GOTO CONFIGURE_WINDOWS_STORE_OR_PHONE
|
|
|
|
:CONFIGURE_WINDOWS_PHONE
|
|
SET CMAKE_CONF_FLAGS=%CMAKE_CONF_FLAGS% -DCMAKE_SYSTEM_NAME="WindowsPhone" -DCMAKE_SYSTEM_VERSION="8.1"
|
|
GOTO CONFIGURE_WINDOWS_STORE_OR_PHONE
|
|
|
|
:CONFIGURE_WINDOWS_STORE_OR_PHONE
|
|
SET CMAKE_CONF_FLAGS=%CMAKE_CONF_FLAGS% ^
|
|
-DBUILD_opencv_videostab:BOOL=OFF ^
|
|
-DBUILD_opencv_text:BOOL=OFF ^
|
|
-DEMGU_CV_WITH_CVBLOB:BOOL=OFF ^
|
|
-DNETFX_CORE:BOOL=TRUE ^
|
|
-DWITH_DIRECTX:BOOL=FALSE ^
|
|
-DWITH_OPENEXR:BOOL=FALSE ^
|
|
-DWITH_TIFF:BOOL=TRUE ^
|
|
-DEMGU_CV_WITH_TIFF:BOOL=FALSE ^
|
|
-DWITH_PNG:BOOL=TRUE ^
|
|
-DWITH_WEBP:BOOL=TRUE ^
|
|
-DWITH_DSHOW:BOOL=FALSE ^
|
|
-DWITH_WIN32UI:BOOL=FALSE ^
|
|
-DWITH_VFW:BOOL=FALSE ^
|
|
-DWITH_MSMF:BOOL=FALSE ^
|
|
-DWITH_FFMPEG:BOOL=FALSE ^
|
|
-DWITH_OPENCL:BOOL=FALSE ^
|
|
-DEMGU_ENABLE_SSE:BOOL=FALSE
|
|
GOTO RUN_CMAKE
|
|
|
|
@echo on
|
|
:RUN_CMAKE
|
|
%CMAKE% %CMAKE_CONF_FLAGS%
|
|
|
|
:BUILD
|
|
|
|
REM %DEVENV% %BUILD_TYPE% emgucv.sln %BUILD_PROJECT% /out "%CD%\build.log"
|
|
|
|
:END
|
|
popd
|