mirror of
https://github.com/pjreddie/darknet.git
synced 2023-08-10 21:13:14 +03:00
[ci] try cuda builds on windows, skip building uselib_track if opencv does not have cuda support
This commit is contained in:
@ -19,8 +19,13 @@ endif()
|
|||||||
enable_language(C)
|
enable_language(C)
|
||||||
enable_language(CXX)
|
enable_language(CXX)
|
||||||
|
|
||||||
set(ENABLE_CUDA "TRUE" CACHE BOOL "Enable CUDA build")
|
set(CMAKE_CXX_STANDARD 11)
|
||||||
|
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake/Modules/" ${CMAKE_MODULE_PATH})
|
||||||
|
include_directories(${CMAKE_CURRENT_LIST_DIR}/include)
|
||||||
|
include_directories(${CMAKE_CURRENT_LIST_DIR}/src)
|
||||||
|
|
||||||
|
set(SKIP_USELIB_TRACK "FALSE" CACHE BOOL "Skip building uselib_track" FORCE)
|
||||||
|
set(ENABLE_CUDA "TRUE" CACHE BOOL "Enable CUDA build")
|
||||||
if(${CMAKE_VERSION} VERSION_LESS "3.8.0")
|
if(${CMAKE_VERSION} VERSION_LESS "3.8.0")
|
||||||
set(ENABLE_CUDA "FALSE" CACHE BOOL "Enable CUDA build" FORCE)
|
set(ENABLE_CUDA "FALSE" CACHE BOOL "Enable CUDA build" FORCE)
|
||||||
message(WARNING "To build with CUDA support you need CMake 3.8.0+")
|
message(WARNING "To build with CUDA support you need CMake 3.8.0+")
|
||||||
@ -34,11 +39,6 @@ else()
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(CMAKE_CXX_STANDARD 11)
|
|
||||||
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake/Modules/" ${CMAKE_MODULE_PATH})
|
|
||||||
include_directories(${CMAKE_CURRENT_LIST_DIR}/include)
|
|
||||||
include_directories(${CMAKE_CURRENT_LIST_DIR}/src)
|
|
||||||
|
|
||||||
set(CUDA_COMPUTE_MODEL_75 "75") #Compute capability for Tesla T4, RTX 2080
|
set(CUDA_COMPUTE_MODEL_75 "75") #Compute capability for Tesla T4, RTX 2080
|
||||||
set(CUDA_COMPUTE_MODEL_72 "72") #Compute capability for Jetson Xavier
|
set(CUDA_COMPUTE_MODEL_72 "72") #Compute capability for Jetson Xavier
|
||||||
set(CUDA_COMPUTE_MODEL_70 "70") #Compute capability for Tesla V100
|
set(CUDA_COMPUTE_MODEL_70 "70") #Compute capability for Tesla V100
|
||||||
@ -103,6 +103,10 @@ else()
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(OpenCV_FOUND)
|
if(OpenCV_FOUND)
|
||||||
|
if(NOT OpenCV_CUDA_VERSION)
|
||||||
|
set(SKIP_USELIB_TRACK "TRUE" CACHE BOOL "Skip building uselib_track" FORCE)
|
||||||
|
message(WARNING "The build of OpenCV does not have CUDA support, so some tools have been disabled! Please rebuild OpenCV with CUDA support to build them!")
|
||||||
|
endif()
|
||||||
add_definitions(-DOPENCV)
|
add_definitions(-DOPENCV)
|
||||||
include_directories(${OpenCV_INCLUDE_DIRS})
|
include_directories(${OpenCV_INCLUDE_DIRS})
|
||||||
endif()
|
endif()
|
||||||
@ -227,7 +231,7 @@ endif()
|
|||||||
target_compile_definitions(darklib PRIVATE LIB_EXPORTS=1)
|
target_compile_definitions(darklib PRIVATE LIB_EXPORTS=1)
|
||||||
set_target_properties(darklib PROPERTIES LINKER_LANGUAGE CXX)
|
set_target_properties(darklib PROPERTIES LINKER_LANGUAGE CXX)
|
||||||
|
|
||||||
if(OpenCV_VERSION VERSION_GREATER "3.0")
|
if(OpenCV_VERSION VERSION_GREATER "3.0" AND NOT SKIP_USELIB_TRACK)
|
||||||
add_executable(uselib_track ${CMAKE_CURRENT_LIST_DIR}/src/yolo_console_dll.cpp)
|
add_executable(uselib_track ${CMAKE_CURRENT_LIST_DIR}/src/yolo_console_dll.cpp)
|
||||||
target_compile_definitions(uselib_track PRIVATE TRACK_OPTFLOW=1)
|
target_compile_definitions(uselib_track PRIVATE TRACK_OPTFLOW=1)
|
||||||
set_target_properties(uselib_track PROPERTIES LINKER_LANGUAGE CXX)
|
set_target_properties(uselib_track PROPERTIES LINKER_LANGUAGE CXX)
|
||||||
@ -276,7 +280,7 @@ if(ENABLE_CUDA)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_link_libraries(uselib darklib)
|
target_link_libraries(uselib darklib)
|
||||||
if(OpenCV_VERSION VERSION_GREATER "3.0")
|
if(OpenCV_VERSION VERSION_GREATER "3.0" AND NOT SKIP_USELIB_TRACK)
|
||||||
target_link_libraries(uselib_track darklib)
|
target_link_libraries(uselib_track darklib)
|
||||||
install(TARGETS uselib_track DESTINATION ${CMAKE_SOURCE_DIR}/)
|
install(TARGETS uselib_track DESTINATION ${CMAKE_SOURCE_DIR}/)
|
||||||
endif()
|
endif()
|
||||||
|
14
appveyor.yml
14
appveyor.yml
@ -12,6 +12,14 @@ environment:
|
|||||||
COMPILER: vs
|
COMPILER: vs
|
||||||
VCPKG_ROOT: C:\projects\vcpkg
|
VCPKG_ROOT: C:\projects\vcpkg
|
||||||
VCPKG_DEFAULT_TRIPLET: x64-windows
|
VCPKG_DEFAULT_TRIPLET: x64-windows
|
||||||
|
USE_CUDA: yes
|
||||||
|
CUDACXX: C:\CUDA\nvcc\bin\nvcc.exe
|
||||||
|
CUDA_PATH: C:\CUDA\nvcc
|
||||||
|
- platform: Win64
|
||||||
|
COMPILER: vs
|
||||||
|
VCPKG_ROOT: C:\projects\vcpkg
|
||||||
|
VCPKG_DEFAULT_TRIPLET: x64-windows
|
||||||
|
USE_CUDA: no
|
||||||
- platform: Win64
|
- platform: Win64
|
||||||
COMPILER: vs
|
COMPILER: vs
|
||||||
USE_INTEGRATED_LIBS: yes
|
USE_INTEGRATED_LIBS: yes
|
||||||
@ -24,6 +32,9 @@ install:
|
|||||||
- if [%COMPILER%]==[cygwin] SET PATH=%PATH:C:\Program Files\Git\usr\bin;=%
|
- if [%COMPILER%]==[cygwin] SET PATH=%PATH:C:\Program Files\Git\usr\bin;=%
|
||||||
- git submodule -q update --init --recursive
|
- git submodule -q update --init --recursive
|
||||||
- cd %WORKSPACE%\
|
- cd %WORKSPACE%\
|
||||||
|
- if [%USE_CUDA%]==[yes] curl -L https://developer.nvidia.com/compute/cuda/10.0/Prod/local_installers/cuda_10.0.130_411.31_windows -o cuda_10.0.130_411.31_windows.exe
|
||||||
|
- if [%USE_CUDA%]==[yes] if NOT EXIST C:\CUDA mkdir C:\CUDA
|
||||||
|
- if [%USE_CUDA%]==[yes] 7z x cuda_10.0.130_411.31_windows.exe -oC:\CUDA nvcc/* nvrtc*/*
|
||||||
- mkdir cygwin-downloads
|
- mkdir cygwin-downloads
|
||||||
- ps: if($env:COMPILER -eq "cygwin") { Invoke-WebRequest https://cygwin.com/setup-x86_64.exe -OutFile $env:WORKSPACE\cygwin-setup.exe }
|
- ps: if($env:COMPILER -eq "cygwin") { Invoke-WebRequest https://cygwin.com/setup-x86_64.exe -OutFile $env:WORKSPACE\cygwin-setup.exe }
|
||||||
- if [%COMPILER%]==[cygwin] %WORKSPACE%\cygwin-setup.exe --quiet-mode --no-shortcuts --no-startmenu --no-desktop --upgrade-also --root C:\cygwin64 --local-package-dir %WORKSPACE%\cygwin-downloads --packages gcc-g++,cmake,libopencv-devel
|
- if [%COMPILER%]==[cygwin] %WORKSPACE%\cygwin-setup.exe --quiet-mode --no-shortcuts --no-startmenu --no-desktop --upgrade-also --root C:\cygwin64 --local-package-dir %WORKSPACE%\cygwin-downloads --packages gcc-g++,cmake,libopencv-devel
|
||||||
@ -31,7 +42,8 @@ install:
|
|||||||
- if [%COMPILER%]==[vs] if NOT [%USE_INTEGRATED_LIBS%]==[yes] cd %VCPKG_ROOT%
|
- if [%COMPILER%]==[vs] if NOT [%USE_INTEGRATED_LIBS%]==[yes] cd %VCPKG_ROOT%
|
||||||
- if [%COMPILER%]==[vs] if NOT [%USE_INTEGRATED_LIBS%]==[yes] bootstrap-vcpkg.bat
|
- if [%COMPILER%]==[vs] if NOT [%USE_INTEGRATED_LIBS%]==[yes] bootstrap-vcpkg.bat
|
||||||
- if [%COMPILER%]==[vs] if NOT [%USE_INTEGRATED_LIBS%]==[yes] vcpkg integrate install
|
- if [%COMPILER%]==[vs] if NOT [%USE_INTEGRATED_LIBS%]==[yes] vcpkg integrate install
|
||||||
- if [%COMPILER%]==[vs] if NOT [%USE_INTEGRATED_LIBS%]==[yes] vcpkg install opencv pthreads
|
- if [%COMPILER%]==[vs] if NOT [%USE_INTEGRATED_LIBS%]==[yes] if NOT [%USE_CUDA%]==[yes] vcpkg install opencv pthreads
|
||||||
|
- if [%COMPILER%]==[vs] if NOT [%USE_INTEGRATED_LIBS%]==[yes] if [%USE_CUDA%]==[yes] vcpkg install opencv[cuda] pthreads
|
||||||
- cd %WORKSPACE%\darknet\
|
- cd %WORKSPACE%\darknet\
|
||||||
- mkdir build_debug && cd build_debug
|
- mkdir build_debug && cd build_debug
|
||||||
- if [%COMPILER%]==[cygwin] %CYGSH% 'cmake .. -G "Unix Makefiles" -DCMAKE_BUILD_TYPE="Debug"'
|
- if [%COMPILER%]==[cygwin] %CYGSH% 'cmake .. -G "Unix Makefiles" -DCMAKE_BUILD_TYPE="Debug"'
|
||||||
|
Reference in New Issue
Block a user