mirror of https://github.com/AlexeyAB/darknet.git
update cuda to 12.6 (#8922)
* update cuda to 12.6 * remove cuda from opencv2 and opencv3
This commit is contained in:
parent
d02cc3a816
commit
d17ec15a06
|
@ -147,7 +147,7 @@ jobs:
|
||||||
path: ${{ github.workspace }}/uselib*
|
path: ${{ github.workspace }}/uselib*
|
||||||
|
|
||||||
|
|
||||||
ubuntu-vcpkg-opencv3-cuda:
|
ubuntu-vcpkg-opencv3:
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
|
@ -161,16 +161,6 @@ jobs:
|
||||||
- name: Clean downloads
|
- name: Clean downloads
|
||||||
run: sudo apt-get clean
|
run: sudo apt-get clean
|
||||||
|
|
||||||
- name: 'Install CUDA'
|
|
||||||
run: ${{ github.workspace }}/scripts/deploy-cuda.sh
|
|
||||||
|
|
||||||
- name: 'Create softlinks for CUDA'
|
|
||||||
run: |
|
|
||||||
source ${{ github.workspace }}/scripts/requested_cuda_version.sh
|
|
||||||
sudo ln -s /usr/local/cuda-${CUDA_VERSION}/lib64/stubs/libcuda.so /usr/local/cuda-${CUDA_VERSION}/lib64/stubs/libcuda.so.1
|
|
||||||
sudo ln -s /usr/local/cuda-${CUDA_VERSION}/lib64/stubs/libcuda.so /usr/local/cuda-${CUDA_VERSION}/lib64/libcuda.so.1
|
|
||||||
sudo ln -s /usr/local/cuda-${CUDA_VERSION}/lib64/stubs/libcuda.so /usr/local/cuda-${CUDA_VERSION}/lib64/libcuda.so
|
|
||||||
|
|
||||||
- name: 'Setup vcpkg and NuGet artifacts backend'
|
- name: 'Setup vcpkg and NuGet artifacts backend'
|
||||||
shell: bash
|
shell: bash
|
||||||
run: >
|
run: >
|
||||||
|
@ -192,15 +182,10 @@ jobs:
|
||||||
|
|
||||||
- name: 'Build'
|
- name: 'Build'
|
||||||
shell: pwsh
|
shell: pwsh
|
||||||
env:
|
run: ${{ github.workspace }}/build.ps1 -UseVCPKG -DoNotUpdateVCPKG -EnableOPENCV -ForceOpenCVVersion 3 -DisableInteractive -DoNotUpdateTOOL
|
||||||
CUDACXX: "/usr/local/cuda/bin/nvcc"
|
|
||||||
CUDA_PATH: "/usr/local/cuda"
|
|
||||||
CUDA_TOOLKIT_ROOT_DIR: "/usr/local/cuda"
|
|
||||||
LD_LIBRARY_PATH: "/usr/local/cuda/lib64:/usr/local/cuda/lib64/stubs:$LD_LIBRARY_PATH"
|
|
||||||
run: ${{ github.workspace }}/build.ps1 -UseVCPKG -DoNotUpdateVCPKG -EnableOPENCV -EnableCUDA -EnableCUDNN -ForceOpenCVVersion 3 -DisableInteractive -DoNotUpdateTOOL
|
|
||||||
|
|
||||||
|
|
||||||
ubuntu-vcpkg-opencv2-cuda:
|
ubuntu-vcpkg-opencv2:
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
|
@ -214,16 +199,6 @@ jobs:
|
||||||
- name: Clean downloads
|
- name: Clean downloads
|
||||||
run: sudo apt-get clean
|
run: sudo apt-get clean
|
||||||
|
|
||||||
- name: 'Install CUDA'
|
|
||||||
run: ${{ github.workspace }}/scripts/deploy-cuda.sh
|
|
||||||
|
|
||||||
- name: 'Create softlinks for CUDA'
|
|
||||||
run: |
|
|
||||||
source ${{ github.workspace }}/scripts/requested_cuda_version.sh
|
|
||||||
sudo ln -s /usr/local/cuda-${CUDA_VERSION}/lib64/stubs/libcuda.so /usr/local/cuda-${CUDA_VERSION}/lib64/stubs/libcuda.so.1
|
|
||||||
sudo ln -s /usr/local/cuda-${CUDA_VERSION}/lib64/stubs/libcuda.so /usr/local/cuda-${CUDA_VERSION}/lib64/libcuda.so.1
|
|
||||||
sudo ln -s /usr/local/cuda-${CUDA_VERSION}/lib64/stubs/libcuda.so /usr/local/cuda-${CUDA_VERSION}/lib64/libcuda.so
|
|
||||||
|
|
||||||
- name: 'Setup vcpkg and NuGet artifacts backend'
|
- name: 'Setup vcpkg and NuGet artifacts backend'
|
||||||
shell: bash
|
shell: bash
|
||||||
run: >
|
run: >
|
||||||
|
@ -245,12 +220,7 @@ jobs:
|
||||||
|
|
||||||
- name: 'Build'
|
- name: 'Build'
|
||||||
shell: pwsh
|
shell: pwsh
|
||||||
env:
|
run: ${{ github.workspace }}/build.ps1 -UseVCPKG -DoNotUpdateVCPKG -EnableOPENCV -ForceOpenCVVersion 2 -DisableInteractive -DoNotUpdateTOOL
|
||||||
CUDACXX: "/usr/local/cuda/bin/nvcc"
|
|
||||||
CUDA_PATH: "/usr/local/cuda"
|
|
||||||
CUDA_TOOLKIT_ROOT_DIR: "/usr/local/cuda"
|
|
||||||
LD_LIBRARY_PATH: "/usr/local/cuda/lib64:/usr/local/cuda/lib64/stubs:$LD_LIBRARY_PATH"
|
|
||||||
run: ${{ github.workspace }}/build.ps1 -UseVCPKG -DoNotUpdateVCPKG -EnableOPENCV -EnableCUDA -EnableCUDNN -ForceOpenCVVersion 2 -DisableInteractive -DoNotUpdateTOOL
|
|
||||||
|
|
||||||
|
|
||||||
ubuntu:
|
ubuntu:
|
||||||
|
@ -693,9 +663,9 @@ jobs:
|
||||||
|
|
||||||
- name: 'Build'
|
- name: 'Build'
|
||||||
env:
|
env:
|
||||||
CUDA_PATH: "C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v12.2"
|
CUDA_PATH: "C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v12.6"
|
||||||
CUDA_TOOLKIT_ROOT_DIR: "C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v12.2"
|
CUDA_TOOLKIT_ROOT_DIR: "C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v12.6"
|
||||||
CUDACXX: "C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v12.2\\bin\\nvcc.exe"
|
CUDACXX: "C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v12.6\\bin\\nvcc.exe"
|
||||||
shell: pwsh
|
shell: pwsh
|
||||||
run: ${{ github.workspace }}/build.ps1 -EnableCUDA -DisableInteractive -DoNotUpdateTOOL
|
run: ${{ github.workspace }}/build.ps1 -EnableCUDA -DisableInteractive -DoNotUpdateTOOL
|
||||||
|
|
||||||
|
|
|
@ -106,7 +106,7 @@ jobs:
|
||||||
run: ${{ github.workspace }}/build.ps1 -UseVCPKG -DoNotUpdateVCPKG -EnableOPENCV -EnableCUDA -EnableCUDNN -DisableInteractive -DoNotUpdateTOOL
|
run: ${{ github.workspace }}/build.ps1 -UseVCPKG -DoNotUpdateVCPKG -EnableOPENCV -EnableCUDA -EnableCUDNN -DisableInteractive -DoNotUpdateTOOL
|
||||||
|
|
||||||
|
|
||||||
ubuntu-vcpkg-opencv3-cuda:
|
ubuntu-vcpkg-opencv3:
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
|
@ -120,16 +120,6 @@ jobs:
|
||||||
- name: Clean downloads
|
- name: Clean downloads
|
||||||
run: sudo apt-get clean
|
run: sudo apt-get clean
|
||||||
|
|
||||||
- name: 'Install CUDA'
|
|
||||||
run: ${{ github.workspace }}/scripts/deploy-cuda.sh
|
|
||||||
|
|
||||||
- name: 'Create softlinks for CUDA'
|
|
||||||
run: |
|
|
||||||
source ${{ github.workspace }}/scripts/requested_cuda_version.sh
|
|
||||||
sudo ln -s /usr/local/cuda-${CUDA_VERSION}/lib64/stubs/libcuda.so /usr/local/cuda-${CUDA_VERSION}/lib64/stubs/libcuda.so.1
|
|
||||||
sudo ln -s /usr/local/cuda-${CUDA_VERSION}/lib64/stubs/libcuda.so /usr/local/cuda-${CUDA_VERSION}/lib64/libcuda.so.1
|
|
||||||
sudo ln -s /usr/local/cuda-${CUDA_VERSION}/lib64/stubs/libcuda.so /usr/local/cuda-${CUDA_VERSION}/lib64/libcuda.so
|
|
||||||
|
|
||||||
- name: 'Setup vcpkg and NuGet artifacts backend'
|
- name: 'Setup vcpkg and NuGet artifacts backend'
|
||||||
shell: bash
|
shell: bash
|
||||||
run: >
|
run: >
|
||||||
|
@ -141,15 +131,10 @@ jobs:
|
||||||
|
|
||||||
- name: 'Build'
|
- name: 'Build'
|
||||||
shell: pwsh
|
shell: pwsh
|
||||||
env:
|
run: ${{ github.workspace }}/build.ps1 -UseVCPKG -DoNotUpdateVCPKG -EnableOPENCV -ForceOpenCVVersion 3 -DisableInteractive -DoNotUpdateTOOL
|
||||||
CUDACXX: "/usr/local/cuda/bin/nvcc"
|
|
||||||
CUDA_PATH: "/usr/local/cuda"
|
|
||||||
CUDA_TOOLKIT_ROOT_DIR: "/usr/local/cuda"
|
|
||||||
LD_LIBRARY_PATH: "/usr/local/cuda/lib64:/usr/local/cuda/lib64/stubs:$LD_LIBRARY_PATH"
|
|
||||||
run: ${{ github.workspace }}/build.ps1 -UseVCPKG -DoNotUpdateVCPKG -EnableOPENCV -EnableCUDA -EnableCUDNN -ForceOpenCVVersion 3 -DisableInteractive -DoNotUpdateTOOL
|
|
||||||
|
|
||||||
|
|
||||||
ubuntu-vcpkg-opencv2-cuda:
|
ubuntu-vcpkg-opencv2:
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
|
@ -163,16 +148,6 @@ jobs:
|
||||||
- name: Clean downloads
|
- name: Clean downloads
|
||||||
run: sudo apt-get clean
|
run: sudo apt-get clean
|
||||||
|
|
||||||
- name: 'Install CUDA'
|
|
||||||
run: ${{ github.workspace }}/scripts/deploy-cuda.sh
|
|
||||||
|
|
||||||
- name: 'Create softlinks for CUDA'
|
|
||||||
run: |
|
|
||||||
source ${{ github.workspace }}/scripts/requested_cuda_version.sh
|
|
||||||
sudo ln -s /usr/local/cuda-${CUDA_VERSION}/lib64/stubs/libcuda.so /usr/local/cuda-${CUDA_VERSION}/lib64/stubs/libcuda.so.1
|
|
||||||
sudo ln -s /usr/local/cuda-${CUDA_VERSION}/lib64/stubs/libcuda.so /usr/local/cuda-${CUDA_VERSION}/lib64/libcuda.so.1
|
|
||||||
sudo ln -s /usr/local/cuda-${CUDA_VERSION}/lib64/stubs/libcuda.so /usr/local/cuda-${CUDA_VERSION}/lib64/libcuda.so
|
|
||||||
|
|
||||||
- name: 'Setup vcpkg and NuGet artifacts backend'
|
- name: 'Setup vcpkg and NuGet artifacts backend'
|
||||||
shell: bash
|
shell: bash
|
||||||
run: >
|
run: >
|
||||||
|
@ -184,12 +159,7 @@ jobs:
|
||||||
|
|
||||||
- name: 'Build'
|
- name: 'Build'
|
||||||
shell: pwsh
|
shell: pwsh
|
||||||
env:
|
run: ${{ github.workspace }}/build.ps1 -UseVCPKG -DoNotUpdateVCPKG -EnableOPENCV -ForceOpenCVVersion 2 -DisableInteractive -DoNotUpdateTOOL
|
||||||
CUDACXX: "/usr/local/cuda/bin/nvcc"
|
|
||||||
CUDA_PATH: "/usr/local/cuda"
|
|
||||||
CUDA_TOOLKIT_ROOT_DIR: "/usr/local/cuda"
|
|
||||||
LD_LIBRARY_PATH: "/usr/local/cuda/lib64:/usr/local/cuda/lib64/stubs:$LD_LIBRARY_PATH"
|
|
||||||
run: ${{ github.workspace }}/build.ps1 -UseVCPKG -DoNotUpdateVCPKG -EnableOPENCV -EnableCUDA -EnableCUDNN -ForceOpenCVVersion 2 -DisableInteractive -DoNotUpdateTOOL
|
|
||||||
|
|
||||||
|
|
||||||
ubuntu:
|
ubuntu:
|
||||||
|
@ -435,9 +405,9 @@ jobs:
|
||||||
|
|
||||||
- name: 'Build'
|
- name: 'Build'
|
||||||
env:
|
env:
|
||||||
CUDA_PATH: "C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v12.2"
|
CUDA_PATH: "C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v12.6"
|
||||||
CUDA_TOOLKIT_ROOT_DIR: "C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v12.2"
|
CUDA_TOOLKIT_ROOT_DIR: "C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v12.6"
|
||||||
CUDACXX: "C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v12.2\\bin\\nvcc.exe"
|
CUDACXX: "C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v12.6\\bin\\nvcc.exe"
|
||||||
shell: pwsh
|
shell: pwsh
|
||||||
run: ${{ github.workspace }}/build.ps1 -EnableCUDA -DisableInteractive -DoNotUpdateTOOL
|
run: ${{ github.workspace }}/build.ps1 -EnableCUDA -DisableInteractive -DoNotUpdateTOOL
|
||||||
|
|
||||||
|
|
|
@ -41,6 +41,8 @@ build/detect_cuda_compute_capabilities.cu
|
||||||
build/.ninja_deps
|
build/.ninja_deps
|
||||||
build/.ninja_log
|
build/.ninja_log
|
||||||
build/Makefile
|
build/Makefile
|
||||||
|
CMakeFiles/
|
||||||
|
CMakeCache.txt
|
||||||
*/vcpkg-manifest-install.log
|
*/vcpkg-manifest-install.log
|
||||||
build.log
|
build.log
|
||||||
__pycache__/
|
__pycache__/
|
||||||
|
|
|
@ -52,17 +52,17 @@ if(ENABLE_OPENCV)
|
||||||
if(VCPKG_USE_OPENCV4)
|
if(VCPKG_USE_OPENCV4)
|
||||||
list(APPEND VCPKG_MANIFEST_FEATURES "opencv-cuda")
|
list(APPEND VCPKG_MANIFEST_FEATURES "opencv-cuda")
|
||||||
elseif(VCPKG_USE_OPENCV3)
|
elseif(VCPKG_USE_OPENCV3)
|
||||||
list(APPEND VCPKG_MANIFEST_FEATURES "opencv3-cuda")
|
list(APPEND VCPKG_MANIFEST_FEATURES "opencv3")
|
||||||
elseif(VCPKG_USE_OPENCV2)
|
elseif(VCPKG_USE_OPENCV2)
|
||||||
list(APPEND VCPKG_MANIFEST_FEATURES "opencv2-cuda")
|
list(APPEND VCPKG_MANIFEST_FEATURES "opencv2")
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
if(VCPKG_USE_OPENCV4)
|
if(VCPKG_USE_OPENCV4)
|
||||||
list(APPEND VCPKG_MANIFEST_FEATURES "opencv-base")
|
list(APPEND VCPKG_MANIFEST_FEATURES "opencv-base")
|
||||||
elseif(VCPKG_USE_OPENCV3)
|
elseif(VCPKG_USE_OPENCV3)
|
||||||
list(APPEND VCPKG_MANIFEST_FEATURES "opencv3-base")
|
list(APPEND VCPKG_MANIFEST_FEATURES "opencv3")
|
||||||
elseif(VCPKG_USE_OPENCV2)
|
elseif(VCPKG_USE_OPENCV2)
|
||||||
list(APPEND VCPKG_MANIFEST_FEATURES "opencv2-base")
|
list(APPEND VCPKG_MANIFEST_FEATURES "opencv2")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
12
build.ps1
12
build.ps1
|
@ -907,21 +907,14 @@ if ($BuildInstaller) {
|
||||||
|
|
||||||
if (($ForceOpenCVVersion -eq 2) -and $UseVCPKG) {
|
if (($ForceOpenCVVersion -eq 2) -and $UseVCPKG) {
|
||||||
Write-Host "You requested OpenCV version 2, so vcpkg will install that version" -ForegroundColor Yellow
|
Write-Host "You requested OpenCV version 2, so vcpkg will install that version" -ForegroundColor Yellow
|
||||||
Write-Host "This requires using vcpkg.json.opencv23 as manifest file" -ForegroundColor Yellow
|
|
||||||
$AdditionalBuildSetup = $AdditionalBuildSetup + " -DVCPKG_USE_OPENCV4=OFF -DVCPKG_USE_OPENCV2=ON"
|
$AdditionalBuildSetup = $AdditionalBuildSetup + " -DVCPKG_USE_OPENCV4=OFF -DVCPKG_USE_OPENCV2=ON"
|
||||||
}
|
}
|
||||||
|
|
||||||
if (($ForceOpenCVVersion -eq 3) -and $UseVCPKG) {
|
if (($ForceOpenCVVersion -eq 3) -and $UseVCPKG) {
|
||||||
Write-Host "You requested OpenCV version 3, so vcpkg will install that version" -ForegroundColor Yellow
|
Write-Host "You requested OpenCV version 3, so vcpkg will install that version" -ForegroundColor Yellow
|
||||||
Write-Host "This requires using vcpkg.json.opencv23 as manifest file" -ForegroundColor Yellow
|
|
||||||
$AdditionalBuildSetup = $AdditionalBuildSetup + " -DVCPKG_USE_OPENCV4=OFF -DVCPKG_USE_OPENCV3=ON"
|
$AdditionalBuildSetup = $AdditionalBuildSetup + " -DVCPKG_USE_OPENCV4=OFF -DVCPKG_USE_OPENCV3=ON"
|
||||||
}
|
}
|
||||||
|
|
||||||
if($ForceOpenCVVersion -gt 0) {
|
|
||||||
Move-Item $PSCustomScriptRoot/vcpkg.json $PSCustomScriptRoot/vcpkg.json.bak
|
|
||||||
Move-Item $PSCustomScriptRoot/vcpkg.json.opencv23 $PSCustomScriptRoot/vcpkg.json
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($UseVCPKG -and $ForceVCPKGCacheRemoval) {
|
if ($UseVCPKG -and $ForceVCPKGCacheRemoval) {
|
||||||
if ($IsWindows -or $IsWindowsPowerShell) {
|
if ($IsWindows -or $IsWindowsPowerShell) {
|
||||||
$vcpkgbinarycachepath = "$env:LOCALAPPDATA/vcpkg/archive"
|
$vcpkgbinarycachepath = "$env:LOCALAPPDATA/vcpkg/archive"
|
||||||
|
@ -1175,11 +1168,6 @@ if ($vcpkg_host_triplet_set_by_this_script) {
|
||||||
$env:VCPKG_DEFAULT_HOST_TRIPLET = $null
|
$env:VCPKG_DEFAULT_HOST_TRIPLET = $null
|
||||||
}
|
}
|
||||||
|
|
||||||
if($ForceOpenCVVersion -gt 0) {
|
|
||||||
Move-Item $PSCustomScriptRoot/vcpkg.json $PSCustomScriptRoot/vcpkg.json.opencv23
|
|
||||||
Move-Item $PSCustomScriptRoot/vcpkg.json.bak $PSCustomScriptRoot/vcpkg.json
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($vcpkg_branch_set_by_this_script) {
|
if ($vcpkg_branch_set_by_this_script) {
|
||||||
Push-Location $vcpkg_path
|
Push-Location $vcpkg_path
|
||||||
$git_args = "checkout -"
|
$git_args = "checkout -"
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
export CUDA_VERSION="12.2"
|
export CUDA_VERSION="12.6"
|
||||||
export CUDA_VERSION_DASHED="${CUDA_VERSION//./-}"
|
export CUDA_VERSION_DASHED="${CUDA_VERSION//./-}"
|
||||||
|
|
|
@ -22,7 +22,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
SOFTWARE.
|
SOFTWARE.
|
||||||
#>
|
#>
|
||||||
|
|
||||||
$utils_psm1_version = "1.2.3"
|
$utils_psm1_version = "1.4.1"
|
||||||
$IsWindowsPowerShell = switch ( $PSVersionTable.PSVersion.Major ) {
|
$IsWindowsPowerShell = switch ( $PSVersionTable.PSVersion.Major ) {
|
||||||
5 { $true }
|
5 { $true }
|
||||||
4 { $true }
|
4 { $true }
|
||||||
|
@ -38,6 +38,31 @@ if ($IsWindowsPowerShell -or $IsWindows) {
|
||||||
|
|
||||||
$64bitPwsh = $([Environment]::Is64BitProcess)
|
$64bitPwsh = $([Environment]::Is64BitProcess)
|
||||||
$64bitOS = $([Environment]::Is64BitOperatingSystem)
|
$64bitOS = $([Environment]::Is64BitOperatingSystem)
|
||||||
|
$osArchitecture = [System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture
|
||||||
|
switch ($osArchitecture) {
|
||||||
|
"X86" {
|
||||||
|
$vcpkgArchitecture = "x86"
|
||||||
|
$vsArchitecture = "Win32"
|
||||||
|
}
|
||||||
|
"X64" {
|
||||||
|
$vcpkgArchitecture = "x64"
|
||||||
|
$vsArchitecture = "x64"
|
||||||
|
}
|
||||||
|
"Arm" {
|
||||||
|
$vcpkgArchitecture = "arm"
|
||||||
|
$vsArchitecture = "arm"
|
||||||
|
}
|
||||||
|
"Arm64" {
|
||||||
|
$vcpkgArchitecture = "arm64"
|
||||||
|
$vsArchitecture = "arm64"
|
||||||
|
}
|
||||||
|
default {
|
||||||
|
$vcpkgArchitecture = "x64"
|
||||||
|
$vsArchitecture = "x64"
|
||||||
|
Write-Output "Unknown architecture. Trying x64"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
Push-Location $PSScriptRoot
|
Push-Location $PSScriptRoot
|
||||||
$GIT_EXE = Get-Command "git" -ErrorAction SilentlyContinue | Select-Object -ExpandProperty Definition
|
$GIT_EXE = Get-Command "git" -ErrorAction SilentlyContinue | Select-Object -ExpandProperty Definition
|
||||||
|
@ -55,11 +80,36 @@ else {
|
||||||
}
|
}
|
||||||
Pop-Location
|
Pop-Location
|
||||||
|
|
||||||
$cuda_version_full = "12.2.0"
|
$cuda_version_full = "12.6.2"
|
||||||
$cuda_version_short = "12.2"
|
$cuda_version_short = "12.6"
|
||||||
$cuda_version_full_dashed = $cuda_version_full.replace('.', '-')
|
$cuda_version_full_dashed = $cuda_version_full.replace('.', '-')
|
||||||
$cuda_version_short_dashed = $cuda_version_short.replace('.', '-')
|
$cuda_version_short_dashed = $cuda_version_short.replace('.', '-')
|
||||||
|
|
||||||
|
function activateVenv([string]$VenvPath) {
|
||||||
|
if ($IsWindowsPowerShell -or $IsWindows) {
|
||||||
|
$activate_script = "$VenvPath/Scripts/Activate.ps1"
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$activate_script = "$VenvPath/bin/Activate.ps1"
|
||||||
|
}
|
||||||
|
|
||||||
|
$activate_script = Resolve-Path $activate_script
|
||||||
|
$VenvPath = Resolve-Path $VenvPath
|
||||||
|
|
||||||
|
if ($env:VIRTUAL_ENV -eq $VenvPath) {
|
||||||
|
Write-Host "Venv already activated"
|
||||||
|
return
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
Write-Host "Activating venv"
|
||||||
|
if (-Not (Test-Path $activate_script)) {
|
||||||
|
MyThrow("Could not find activate script at $activate_script")
|
||||||
|
}
|
||||||
|
& $activate_script
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
function getProgramFiles32bit() {
|
function getProgramFiles32bit() {
|
||||||
$out = ${env:PROGRAMFILES(X86)}
|
$out = ${env:PROGRAMFILES(X86)}
|
||||||
if ($null -eq $out) {
|
if ($null -eq $out) {
|
||||||
|
@ -167,21 +217,34 @@ function getLatestVisualStudioWithDesktopWorkloadVersion([bool]$required = $true
|
||||||
return $installationVersion
|
return $installationVersion
|
||||||
}
|
}
|
||||||
|
|
||||||
function setupVisualStudio([bool]$required = $true) {
|
function setupVisualStudio([bool]$required = $true, [bool]$enable_clang = $false) {
|
||||||
$CL_EXE = Get-Command "cl" -ErrorAction SilentlyContinue | Select-Object -ExpandProperty Definition
|
$CL_EXE = Get-Command "cl" -ErrorAction SilentlyContinue | Select-Object -ExpandProperty Definition
|
||||||
if ((-Not $CL_EXE) -or ($CL_EXE -match "HostX86\\x86") -or ($CL_EXE -match "HostX64\\x86")) {
|
if (-Not $CL_EXE) {
|
||||||
$vsfound = getLatestVisualStudioWithDesktopWorkloadPath
|
$vsfound = getLatestVisualStudioWithDesktopWorkloadPath($required)
|
||||||
Write-Host "Found VS in ${vsfound}"
|
if (-Not $vsfound) {
|
||||||
Push-Location "${vsfound}/Common7/Tools"
|
if ($required) {
|
||||||
cmd.exe /c "VsDevCmd.bat -arch=x64 & set" |
|
MyThrow("Could not locate any installation of Visual Studio")
|
||||||
ForEach-Object {
|
}
|
||||||
if ($_ -match "=") {
|
else {
|
||||||
$v = $_.split("="); Set-Item -force -path "ENV:\$($v[0])" -value "$($v[1])"
|
Write-Host "Could not locate any installation of Visual Studio" -ForegroundColor Red
|
||||||
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Pop-Location
|
else {
|
||||||
$env:PATH = "${vsfound}/VC/Tools/Llvm/x64/bin;$env:PATH"
|
Write-Host "Found VS in ${vsfound}"
|
||||||
Write-Host "Visual Studio Command Prompt variables set"
|
Push-Location "${vsfound}/Common7/Tools"
|
||||||
|
cmd.exe /c "VsDevCmd.bat -arch=${vsArchitecture} & set" |
|
||||||
|
ForEach-Object {
|
||||||
|
if ($_ -match "=") {
|
||||||
|
$v = $_.split("="); Set-Item -force -path "ENV:\$($v[0])" -value "$($v[1])"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Pop-Location
|
||||||
|
if ($enable_clang) {
|
||||||
|
$env:PATH = "${vsfound}/VC/Tools/Llvm/${vsArchitecture}/bin;$env:PATH"
|
||||||
|
}
|
||||||
|
Write-Host "Visual Studio Command Prompt variables set"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -190,13 +253,13 @@ function DownloadNinja() {
|
||||||
Remove-Item -Force -Recurse -ErrorAction SilentlyContinue ninja
|
Remove-Item -Force -Recurse -ErrorAction SilentlyContinue ninja
|
||||||
Remove-Item -Force -ErrorAction SilentlyContinue ninja.zip
|
Remove-Item -Force -ErrorAction SilentlyContinue ninja.zip
|
||||||
if ($IsWindows -or $IsWindowsPowerShell) {
|
if ($IsWindows -or $IsWindowsPowerShell) {
|
||||||
$url = "https://github.com/ninja-build/ninja/releases/download/v1.10.2/ninja-win.zip"
|
$url = "https://github.com/ninja-build/ninja/releases/download/v1.12.1/ninja-win.zip"
|
||||||
}
|
}
|
||||||
elseif ($IsLinux) {
|
elseif ($IsLinux) {
|
||||||
$url = "https://github.com/ninja-build/ninja/releases/download/v1.10.2/ninja-linux.zip"
|
$url = "https://github.com/ninja-build/ninja/releases/download/v1.12.1/ninja-linux.zip"
|
||||||
}
|
}
|
||||||
elseif ($IsMacOS) {
|
elseif ($IsMacOS) {
|
||||||
$url = "https://github.com/ninja-build/ninja/releases/download/v1.10.2/ninja-mac.zip"
|
$url = "https://github.com/ninja-build/ninja/releases/download/v1.12.1/ninja-mac.zip"
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
MyThrow("Unknown OS, unsupported")
|
MyThrow("Unknown OS, unsupported")
|
||||||
|
@ -247,7 +310,7 @@ function DownloadAria2() {
|
||||||
}
|
}
|
||||||
|
|
||||||
function DownloadLicencpp() {
|
function DownloadLicencpp() {
|
||||||
$licencpp_version = "0.2.1"
|
$licencpp_version = "0.2.5"
|
||||||
Write-Host "Downloading a portable version of licencpp v${licencpp_version}" -ForegroundColor Yellow
|
Write-Host "Downloading a portable version of licencpp v${licencpp_version}" -ForegroundColor Yellow
|
||||||
if ($IsWindows -or $IsWindowsPowerShell) {
|
if ($IsWindows -or $IsWindowsPowerShell) {
|
||||||
$basename = "licencpp-Windows"
|
$basename = "licencpp-Windows"
|
||||||
|
@ -433,6 +496,11 @@ Export-ModuleMember -Variable cuda_version_full
|
||||||
Export-ModuleMember -Variable cuda_version_short
|
Export-ModuleMember -Variable cuda_version_short
|
||||||
Export-ModuleMember -Variable cuda_version_full_dashed
|
Export-ModuleMember -Variable cuda_version_full_dashed
|
||||||
Export-ModuleMember -Variable cuda_version_short_dashed
|
Export-ModuleMember -Variable cuda_version_short_dashed
|
||||||
|
Export-ModuleMember -Variable osArchitecture
|
||||||
|
Export-ModuleMember -Variable vcpkgArchitecture
|
||||||
|
Export-ModuleMember -Variable vsArchitecture
|
||||||
|
Export-ModuleMember -Variable ExecutableSuffix
|
||||||
|
Export-ModuleMember -Function activateVenv
|
||||||
Export-ModuleMember -Function getProgramFiles32bit
|
Export-ModuleMember -Function getProgramFiles32bit
|
||||||
Export-ModuleMember -Function getLatestVisualStudioWithDesktopWorkloadPath
|
Export-ModuleMember -Function getLatestVisualStudioWithDesktopWorkloadPath
|
||||||
Export-ModuleMember -Function getLatestVisualStudioWithDesktopWorkloadVersion
|
Export-ModuleMember -Function getLatestVisualStudioWithDesktopWorkloadVersion
|
||||||
|
|
46
vcpkg.json
46
vcpkg.json
|
@ -73,54 +73,16 @@
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"opencv2-base": {
|
"opencv2": {
|
||||||
"description": "Build darknet with support for OpenCV2",
|
"description": "Build darknet with support for OpenCV2",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
{
|
"opencv2"
|
||||||
"name": "opencv2",
|
|
||||||
"features": [
|
|
||||||
"ffmpeg"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"opencv2-cuda": {
|
"opencv3": {
|
||||||
"description": "Build darknet with support for CUDA-enabled OpenCV2",
|
|
||||||
"dependencies": [
|
|
||||||
{
|
|
||||||
"name": "opencv2",
|
|
||||||
"features": [
|
|
||||||
"cuda",
|
|
||||||
"ffmpeg"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"opencv3-base": {
|
|
||||||
"description": "Build darknet with support for OpenCV3",
|
"description": "Build darknet with support for OpenCV3",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
{
|
"opencv3"
|
||||||
"name": "opencv3",
|
|
||||||
"features": [
|
|
||||||
"contrib",
|
|
||||||
"dnn",
|
|
||||||
"ffmpeg"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"opencv3-cuda": {
|
|
||||||
"description": "Build darknet with support for CUDA-enabled OpenCV3",
|
|
||||||
"dependencies": [
|
|
||||||
{
|
|
||||||
"name": "opencv3",
|
|
||||||
"features": [
|
|
||||||
"contrib",
|
|
||||||
"cuda",
|
|
||||||
"dnn",
|
|
||||||
"ffmpeg"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,126 +0,0 @@
|
||||||
{
|
|
||||||
"name": "darknet",
|
|
||||||
"version": "0.2.5.7",
|
|
||||||
"description": "Darknet is an open source neural network framework written in C and CUDA. You only look once (YOLO) is a state-of-the-art, real-time object detection system, best example of darknet functionalities.",
|
|
||||||
"homepage": "https://github.com/alexeyab/darknet",
|
|
||||||
"dependencies": [
|
|
||||||
{
|
|
||||||
"name": "getopt",
|
|
||||||
"platform": "windows & !mingw"
|
|
||||||
},
|
|
||||||
"pthreads",
|
|
||||||
"stb"
|
|
||||||
],
|
|
||||||
"features": {
|
|
||||||
"cuda": {
|
|
||||||
"description": "Build darknet with support for CUDA",
|
|
||||||
"dependencies": [
|
|
||||||
"cuda"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"cudnn": {
|
|
||||||
"description": "Build darknet with support for cuDNN",
|
|
||||||
"dependencies": [
|
|
||||||
"cuda",
|
|
||||||
"cudnn"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"full": {
|
|
||||||
"description": "Build darknet fully featured",
|
|
||||||
"dependencies": [
|
|
||||||
{
|
|
||||||
"name": "darknet",
|
|
||||||
"features": [
|
|
||||||
"cuda",
|
|
||||||
"cudnn",
|
|
||||||
"opencv-cuda"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"opencv-base": {
|
|
||||||
"description": "Build darknet with support for latest version of OpenCV",
|
|
||||||
"dependencies": [
|
|
||||||
{
|
|
||||||
"name": "opencv",
|
|
||||||
"features": [
|
|
||||||
"contrib",
|
|
||||||
"dnn",
|
|
||||||
"ffmpeg"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"opencv-cuda": {
|
|
||||||
"description": "Build darknet with support for latest version of CUDA-enabled OpenCV",
|
|
||||||
"dependencies": [
|
|
||||||
{
|
|
||||||
"name": "opencv",
|
|
||||||
"features": [
|
|
||||||
"contrib",
|
|
||||||
"cuda",
|
|
||||||
"dnn",
|
|
||||||
"ffmpeg"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"opencv2-base": {
|
|
||||||
"description": "Build darknet with support for OpenCV2",
|
|
||||||
"dependencies": [
|
|
||||||
{
|
|
||||||
"name": "opencv2",
|
|
||||||
"features": [
|
|
||||||
"ffmpeg"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"opencv2-cuda": {
|
|
||||||
"description": "Build darknet with support for CUDA-enabled OpenCV2",
|
|
||||||
"dependencies": [
|
|
||||||
{
|
|
||||||
"name": "opencv2",
|
|
||||||
"features": [
|
|
||||||
"cuda",
|
|
||||||
"ffmpeg"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"opencv3-base": {
|
|
||||||
"description": "Build darknet with support for OpenCV3",
|
|
||||||
"dependencies": [
|
|
||||||
{
|
|
||||||
"name": "opencv3",
|
|
||||||
"features": [
|
|
||||||
"contrib",
|
|
||||||
"dnn",
|
|
||||||
"ffmpeg"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"opencv3-cuda": {
|
|
||||||
"description": "Build darknet with support for CUDA-enabled OpenCV3",
|
|
||||||
"dependencies": [
|
|
||||||
{
|
|
||||||
"name": "opencv3",
|
|
||||||
"features": [
|
|
||||||
"contrib",
|
|
||||||
"cuda",
|
|
||||||
"dnn",
|
|
||||||
"ffmpeg"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"overrides": [
|
|
||||||
{
|
|
||||||
"name": "ffmpeg",
|
|
||||||
"version": "4.4.3"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"builtin-baseline": "54cc53c43430c73f489e52af5fadd032c1aced16"
|
|
||||||
}
|
|
Loading…
Reference in New Issue