diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 243a0f9e5..ac9cd12f7 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -77,9 +77,9 @@ jobs: shell: cmd run: msbuild OpenCvSharp.sln /t:build /p:configuration=Release /p:platform=x86 -maxcpucount - #- name: Build ARM - # shell: cmd - # run: msbuild OpenCvSharp.sln /t:build /p:configuration=Release /p:platform=ARM -maxcpucount + - name: Build ARM64 + shell: cmd + run: msbuild OpenCvSharp.sln /t:build /p:configuration=Release /p:platform=ARM64 -maxcpucount - name: Install .NET uses: actions/setup-dotnet@v4 diff --git a/OpenCvSharp.sln b/OpenCvSharp.sln index 73ba676ab..0ec674e57 100644 --- a/OpenCvSharp.sln +++ b/OpenCvSharp.sln @@ -40,168 +40,170 @@ EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU - Debug|ARM = Debug|ARM + Debug|ARM64 = Debug|ARM64 Debug|x64 = Debug|x64 Debug|x86 = Debug|x86 Release|Any CPU = Release|Any CPU - Release|ARM = Release|ARM + Release|ARM64 = Release|ARM64 Release|x64 = Release|x64 Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {EB310923-197F-4E20-B123-3A3E7F1D5069}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {EB310923-197F-4E20-B123-3A3E7F1D5069}.Debug|Any CPU.Build.0 = Debug|Any CPU - {EB310923-197F-4E20-B123-3A3E7F1D5069}.Debug|ARM.ActiveCfg = Debug|Any CPU - {EB310923-197F-4E20-B123-3A3E7F1D5069}.Debug|ARM.Build.0 = Debug|Any CPU + {EB310923-197F-4E20-B123-3A3E7F1D5069}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {EB310923-197F-4E20-B123-3A3E7F1D5069}.Debug|ARM64.Build.0 = Debug|Any CPU {EB310923-197F-4E20-B123-3A3E7F1D5069}.Debug|x64.ActiveCfg = Debug|Any CPU {EB310923-197F-4E20-B123-3A3E7F1D5069}.Debug|x64.Build.0 = Debug|Any CPU {EB310923-197F-4E20-B123-3A3E7F1D5069}.Debug|x86.ActiveCfg = Debug|Any CPU {EB310923-197F-4E20-B123-3A3E7F1D5069}.Debug|x86.Build.0 = Debug|Any CPU {EB310923-197F-4E20-B123-3A3E7F1D5069}.Release|Any CPU.ActiveCfg = Release|Any CPU {EB310923-197F-4E20-B123-3A3E7F1D5069}.Release|Any CPU.Build.0 = Release|Any CPU - {EB310923-197F-4E20-B123-3A3E7F1D5069}.Release|ARM.ActiveCfg = Release|Any CPU - {EB310923-197F-4E20-B123-3A3E7F1D5069}.Release|ARM.Build.0 = Release|Any CPU + {EB310923-197F-4E20-B123-3A3E7F1D5069}.Release|ARM64.ActiveCfg = Release|Any CPU + {EB310923-197F-4E20-B123-3A3E7F1D5069}.Release|ARM64.Build.0 = Release|Any CPU {EB310923-197F-4E20-B123-3A3E7F1D5069}.Release|x64.ActiveCfg = Release|Any CPU {EB310923-197F-4E20-B123-3A3E7F1D5069}.Release|x64.Build.0 = Release|Any CPU {EB310923-197F-4E20-B123-3A3E7F1D5069}.Release|x86.ActiveCfg = Release|Any CPU {EB310923-197F-4E20-B123-3A3E7F1D5069}.Release|x86.Build.0 = Release|Any CPU {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Debug|Any CPU.Build.0 = Debug|Any CPU - {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Debug|ARM.ActiveCfg = Debug|Any CPU - {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Debug|ARM.Build.0 = Debug|Any CPU + {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Debug|ARM64.Build.0 = Debug|Any CPU {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Debug|x64.ActiveCfg = Debug|Any CPU {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Debug|x64.Build.0 = Debug|Any CPU {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Debug|x86.ActiveCfg = Debug|Any CPU {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Debug|x86.Build.0 = Debug|Any CPU {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Release|Any CPU.ActiveCfg = Release|Any CPU {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Release|Any CPU.Build.0 = Release|Any CPU - {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Release|ARM.ActiveCfg = Release|Any CPU - {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Release|ARM.Build.0 = Release|Any CPU + {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Release|ARM64.ActiveCfg = Release|Any CPU + {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Release|ARM64.Build.0 = Release|Any CPU {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Release|x64.ActiveCfg = Release|Any CPU {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Release|x64.Build.0 = Release|Any CPU {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Release|x86.ActiveCfg = Release|Any CPU {FFBBCF99-97F0-4F81-AAF6-8D851A8E1D2E}.Release|x86.Build.0 = Release|Any CPU {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Debug|Any CPU.Build.0 = Debug|Any CPU - {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Debug|ARM.ActiveCfg = Debug|Any CPU - {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Debug|ARM.Build.0 = Debug|Any CPU + {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Debug|ARM64.Build.0 = Debug|Any CPU {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Debug|x64.ActiveCfg = Debug|Any CPU {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Debug|x64.Build.0 = Debug|Any CPU {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Debug|x86.ActiveCfg = Debug|Any CPU {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Debug|x86.Build.0 = Debug|Any CPU {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Release|Any CPU.ActiveCfg = Release|Any CPU {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Release|Any CPU.Build.0 = Release|Any CPU - {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Release|ARM.ActiveCfg = Release|Any CPU - {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Release|ARM.Build.0 = Release|Any CPU + {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Release|ARM64.ActiveCfg = Release|Any CPU + {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Release|ARM64.Build.0 = Release|Any CPU {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Release|x64.ActiveCfg = Release|Any CPU {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Release|x64.Build.0 = Release|Any CPU {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Release|x86.ActiveCfg = Release|Any CPU {B4B78BB2-1B7C-4CF2-BC72-43789EEDCE00}.Release|x86.Build.0 = Release|Any CPU {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Debug|Any CPU.ActiveCfg = Debug|Win32 - {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Debug|ARM.ActiveCfg = Debug|Win32 + {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Debug|ARM64.ActiveCfg = Release|ARM64 + {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Debug|ARM64.Build.0 = Release|ARM64 {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Debug|x64.ActiveCfg = Release|x64 {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Debug|x64.Build.0 = Release|x64 {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Debug|x86.ActiveCfg = Release|Win32 {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Debug|x86.Build.0 = Release|Win32 {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Release|Any CPU.ActiveCfg = Release|x64 {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Release|Any CPU.Build.0 = Release|x64 - {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Release|ARM.ActiveCfg = Release|Win32 + {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Release|ARM64.ActiveCfg = Release|ARM64 + {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Release|ARM64.Build.0 = Release|ARM64 {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Release|x64.ActiveCfg = Release|x64 {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Release|x64.Build.0 = Release|x64 {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Release|x86.ActiveCfg = Release|Win32 {8E7279F8-F801-4672-B42F-1ED2C68B16A4}.Release|x86.Build.0 = Release|Win32 {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Debug|ARM.ActiveCfg = Debug|Any CPU - {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Debug|ARM.Build.0 = Debug|Any CPU + {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Debug|ARM64.Build.0 = Debug|Any CPU {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Debug|x64.ActiveCfg = Debug|Any CPU {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Debug|x64.Build.0 = Debug|Any CPU {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Debug|x86.ActiveCfg = Debug|Any CPU {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Debug|x86.Build.0 = Debug|Any CPU {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Release|Any CPU.ActiveCfg = Release|Any CPU {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Release|Any CPU.Build.0 = Release|Any CPU - {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Release|ARM.ActiveCfg = Release|Any CPU - {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Release|ARM.Build.0 = Release|Any CPU + {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Release|ARM64.ActiveCfg = Release|Any CPU + {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Release|ARM64.Build.0 = Release|Any CPU {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Release|x64.ActiveCfg = Release|Any CPU {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Release|x64.Build.0 = Release|Any CPU {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Release|x86.ActiveCfg = Release|Any CPU {4232CB4A-DFE3-46CA-9503-C5F1798BAED3}.Release|x86.Build.0 = Release|Any CPU {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Debug|ARM.ActiveCfg = Debug|Any CPU - {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Debug|ARM.Build.0 = Debug|Any CPU + {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Debug|ARM64.Build.0 = Debug|Any CPU {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Debug|x64.ActiveCfg = Debug|Any CPU {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Debug|x64.Build.0 = Debug|Any CPU {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Debug|x86.ActiveCfg = Debug|Any CPU {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Debug|x86.Build.0 = Debug|Any CPU {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Release|Any CPU.ActiveCfg = Release|Any CPU {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Release|Any CPU.Build.0 = Release|Any CPU - {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Release|ARM.ActiveCfg = Release|Any CPU - {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Release|ARM.Build.0 = Release|Any CPU + {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Release|ARM64.ActiveCfg = Release|Any CPU + {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Release|ARM64.Build.0 = Release|Any CPU {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Release|x64.ActiveCfg = Release|Any CPU {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Release|x64.Build.0 = Release|Any CPU {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Release|x86.ActiveCfg = Release|Any CPU {CC19F9A5-01A7-4BDF-B34C-CF56F46A474A}.Release|x86.Build.0 = Release|Any CPU {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Debug|ARM.ActiveCfg = Debug|Any CPU - {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Debug|ARM.Build.0 = Debug|Any CPU + {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Debug|ARM64.Build.0 = Debug|Any CPU {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Debug|x64.ActiveCfg = Debug|Any CPU {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Debug|x64.Build.0 = Debug|Any CPU {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Debug|x86.ActiveCfg = Debug|Any CPU {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Debug|x86.Build.0 = Debug|Any CPU {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Release|Any CPU.ActiveCfg = Release|Any CPU {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Release|Any CPU.Build.0 = Release|Any CPU - {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Release|ARM.ActiveCfg = Release|Any CPU - {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Release|ARM.Build.0 = Release|Any CPU + {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Release|ARM64.ActiveCfg = Release|Any CPU + {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Release|ARM64.Build.0 = Release|Any CPU {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Release|x64.ActiveCfg = Release|Any CPU {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Release|x64.Build.0 = Release|Any CPU {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Release|x86.ActiveCfg = Release|Any CPU {01FD66CE-F81A-4641-BE30-3CF9DE84D6D5}.Release|x86.Build.0 = Release|Any CPU {1C399497-5240-439A-879A-4ACB34C409AE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {1C399497-5240-439A-879A-4ACB34C409AE}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1C399497-5240-439A-879A-4ACB34C409AE}.Debug|ARM.ActiveCfg = Debug|Any CPU - {1C399497-5240-439A-879A-4ACB34C409AE}.Debug|ARM.Build.0 = Debug|Any CPU + {1C399497-5240-439A-879A-4ACB34C409AE}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {1C399497-5240-439A-879A-4ACB34C409AE}.Debug|ARM64.Build.0 = Debug|Any CPU {1C399497-5240-439A-879A-4ACB34C409AE}.Debug|x64.ActiveCfg = Debug|Any CPU {1C399497-5240-439A-879A-4ACB34C409AE}.Debug|x64.Build.0 = Debug|Any CPU {1C399497-5240-439A-879A-4ACB34C409AE}.Debug|x86.ActiveCfg = Debug|Any CPU {1C399497-5240-439A-879A-4ACB34C409AE}.Debug|x86.Build.0 = Debug|Any CPU {1C399497-5240-439A-879A-4ACB34C409AE}.Release|Any CPU.ActiveCfg = Release|Any CPU {1C399497-5240-439A-879A-4ACB34C409AE}.Release|Any CPU.Build.0 = Release|Any CPU - {1C399497-5240-439A-879A-4ACB34C409AE}.Release|ARM.ActiveCfg = Release|Any CPU - {1C399497-5240-439A-879A-4ACB34C409AE}.Release|ARM.Build.0 = Release|Any CPU + {1C399497-5240-439A-879A-4ACB34C409AE}.Release|ARM64.ActiveCfg = Release|Any CPU + {1C399497-5240-439A-879A-4ACB34C409AE}.Release|ARM64.Build.0 = Release|Any CPU {1C399497-5240-439A-879A-4ACB34C409AE}.Release|x64.ActiveCfg = Release|Any CPU {1C399497-5240-439A-879A-4ACB34C409AE}.Release|x64.Build.0 = Release|Any CPU {1C399497-5240-439A-879A-4ACB34C409AE}.Release|x86.ActiveCfg = Release|Any CPU {1C399497-5240-439A-879A-4ACB34C409AE}.Release|x86.Build.0 = Release|Any CPU {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Debug|Any CPU.Build.0 = Debug|Any CPU - {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Debug|ARM.ActiveCfg = Debug|Any CPU - {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Debug|ARM.Build.0 = Debug|Any CPU + {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Debug|ARM64.Build.0 = Debug|Any CPU {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Debug|x64.ActiveCfg = Debug|Any CPU {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Debug|x64.Build.0 = Debug|Any CPU {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Debug|x86.ActiveCfg = Debug|Any CPU {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Debug|x86.Build.0 = Debug|Any CPU {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Release|Any CPU.ActiveCfg = Release|Any CPU {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Release|Any CPU.Build.0 = Release|Any CPU - {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Release|ARM.ActiveCfg = Release|Any CPU - {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Release|ARM.Build.0 = Release|Any CPU + {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Release|ARM64.ActiveCfg = Release|Any CPU + {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Release|ARM64.Build.0 = Release|Any CPU {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Release|x64.ActiveCfg = Release|Any CPU {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Release|x64.Build.0 = Release|Any CPU {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Release|x86.ActiveCfg = Release|Any CPU {FFD602AA-0A08-40DD-8ACD-7F5A3BA51DEC}.Release|x86.Build.0 = Release|Any CPU {36F6A125-3633-441E-9794-97EB91E50F20}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {36F6A125-3633-441E-9794-97EB91E50F20}.Debug|Any CPU.Build.0 = Debug|Any CPU - {36F6A125-3633-441E-9794-97EB91E50F20}.Debug|ARM.ActiveCfg = Debug|Any CPU - {36F6A125-3633-441E-9794-97EB91E50F20}.Debug|ARM.Build.0 = Debug|Any CPU + {36F6A125-3633-441E-9794-97EB91E50F20}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {36F6A125-3633-441E-9794-97EB91E50F20}.Debug|ARM64.Build.0 = Debug|Any CPU {36F6A125-3633-441E-9794-97EB91E50F20}.Debug|x64.ActiveCfg = Debug|Any CPU {36F6A125-3633-441E-9794-97EB91E50F20}.Debug|x64.Build.0 = Debug|Any CPU {36F6A125-3633-441E-9794-97EB91E50F20}.Debug|x86.ActiveCfg = Debug|Any CPU {36F6A125-3633-441E-9794-97EB91E50F20}.Debug|x86.Build.0 = Debug|Any CPU {36F6A125-3633-441E-9794-97EB91E50F20}.Release|Any CPU.ActiveCfg = Release|Any CPU {36F6A125-3633-441E-9794-97EB91E50F20}.Release|Any CPU.Build.0 = Release|Any CPU - {36F6A125-3633-441E-9794-97EB91E50F20}.Release|ARM.ActiveCfg = Release|Any CPU - {36F6A125-3633-441E-9794-97EB91E50F20}.Release|ARM.Build.0 = Release|Any CPU + {36F6A125-3633-441E-9794-97EB91E50F20}.Release|ARM64.ActiveCfg = Release|Any CPU + {36F6A125-3633-441E-9794-97EB91E50F20}.Release|ARM64.Build.0 = Release|Any CPU {36F6A125-3633-441E-9794-97EB91E50F20}.Release|x64.ActiveCfg = Release|Any CPU {36F6A125-3633-441E-9794-97EB91E50F20}.Release|x64.Build.0 = Release|Any CPU {36F6A125-3633-441E-9794-97EB91E50F20}.Release|x86.ActiveCfg = Release|Any CPU diff --git a/download_opencv_windows.ps1 b/download_opencv_windows.ps1 index 9b7b038be..019f00b29 100644 --- a/download_opencv_windows.ps1 +++ b/download_opencv_windows.ps1 @@ -3,6 +3,7 @@ $version = "4100" $uriArray = @( "https://github.com/shimat/opencv_files/releases/download/${tag}/opencv${version}_win_x64.zip" "https://github.com/shimat/opencv_files/releases/download/${tag}/opencv${version}_win_x86.zip" + "https://github.com/shimat/opencv_files/releases/download/${tag}/opencv${version}_win_arm64.zip" ) function Download($uri, $outFile) { diff --git a/nuget/OpenCvSharp4.runtime.win.nuspec b/nuget/OpenCvSharp4.runtime.win.nuspec index d9cc066f2..3711358ef 100644 --- a/nuget/OpenCvSharp4.runtime.win.nuspec +++ b/nuget/OpenCvSharp4.runtime.win.nuspec @@ -27,8 +27,10 @@ - - + + + + diff --git a/src/OpenCvSharpExtern/OpenCvSharpExtern.vcxproj b/src/OpenCvSharpExtern/OpenCvSharpExtern.vcxproj index 256d31d79..b8c13bc2b 100644 --- a/src/OpenCvSharpExtern/OpenCvSharpExtern.vcxproj +++ b/src/OpenCvSharpExtern/OpenCvSharpExtern.vcxproj @@ -1,6 +1,10 @@  + + Debug + ARM64 + Debug Win32 @@ -9,6 +13,10 @@ Debug x64 + + Release + ARM64 + Release Win32 @@ -24,6 +32,7 @@ Win32Proj x86-windows-static x64-windows-static + arm64-windows-static 10.0 @@ -44,11 +53,22 @@ true v143 + + DynamicLibrary + Unicode + true + v143 + DynamicLibrary Unicode v143 + + DynamicLibrary + Unicode + v143 + @@ -61,9 +81,15 @@ + + + + + + <_ProjectFileVersion>10.0.30319.1 @@ -72,17 +98,27 @@ true $(SolutionDir)src\$(Configuration)\$(PlatformName)\ src\$(Platform)\$(Configuration)\ + $(SolutionDir)src\$(Configuration)\$(PlatformName)\ + src\$(Platform)\$(Configuration)\ true + true $(SolutionDir)src\$(Configuration)\$(PlatformName)\ src\$(Configuration)\ false $(SolutionDir)src\$(Configuration)\$(PlatformName)\ src\$(Platform)\$(Configuration)\ + $(SolutionDir)src\$(Configuration)\$(PlatformName)\ + src\$(Platform)\$(Configuration)\ false + false $(SolutionDir)\opencv_files\opencv4100_win_x64\include;$(IncludePath) + $(SolutionDir)\opencv_files\opencv4100_win_arm64\include;$(IncludePath) $(SolutionDir)\opencv_files\opencv4100_win_x64\include;$(IncludePath) + $(SolutionDir)\opencv_files\opencv4100_win_arm64\include;$(IncludePath) $(SolutionDir)\opencv_files\opencv4100_win_x64\x64\vc16\staticlib;$(LibraryPath) + $(SolutionDir)\opencv_files\opencv4100_win_arm64\ARM64\vc17\staticlib;$(LibraryPath) $(SolutionDir)\opencv_files\opencv4100_win_x64\x64\vc17\staticlib;$(SolutionDir)\tesseract_files\tesseract_vcpkg\x64-windows-static\lib;$(LibraryPath) + $(SolutionDir)\opencv_files\opencv4100_win_arm64\ARM64\vc17\staticlib;$(SolutionDir)\tesseract_files\tesseract_vcpkg\arm64-windows-static\lib;$(LibraryPath) $(SolutionDir)\opencv_files\opencv4100_win_x86\include;$(IncludePath) $(SolutionDir)\opencv_files\opencv4100_win_x86\include;$(IncludePath) $(SolutionDir)\opencv_files\opencv4100_win_x86\x86\vc17\staticlib;C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib;$(SolutionDir)\tesseract_files\tesseract_vcpkg\x86-windows-static\lib;$(LibraryPath) @@ -141,6 +177,34 @@ + + + ARM64 + + + Disabled + WIN32;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + Async + EnableFastChecks + MultiThreadedDebug + true + + + Level3 + ProgramDatabase + + + ;%(AdditionalDependencies) + true + Windows + MachineARM64 + + + + + + MaxSpeed @@ -226,6 +290,48 @@ copy "$(SolutionDir)opencv_files\opencv4100_win_x64\x64\vc17\bin\opencv_videoio_ copy "$(SolutionDir)opencv_files\opencv4100_win_x64\x64\vc17\bin\opencv_videoio_ffmpeg4100_64.dll" "$(SolutionDir)test\OpenCvSharp.Tests\dll\x64\opencv_videoio_ffmpeg4100_64.dll" + + + ARM64 + + + MaxSpeed + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;CVAPI_EXPORTS;%(PreprocessorDefinitions) + false + Sync + Default + MultiThreaded + true + + + Level3 + ProgramDatabase + false + true + 4251;4275;4819;%(DisableSpecificWarnings) + true + + + IlmImf.lib;ittnotify.lib;libopenjp2.lib;libjpeg-turbo.lib;libpng.lib;libprotobuf.lib;libtiff.lib;libwebp.lib;opencv_aruco4100.lib;opencv_bgsegm4100.lib;opencv_bioinspired4100.lib;opencv_calib3d4100.lib;opencv_ccalib4100.lib;opencv_core4100.lib;opencv_dnn4100.lib;opencv_dnn_objdetect4100.lib;opencv_dnn_superres4100.lib;opencv_dpm4100.lib;opencv_face4100.lib;opencv_features2d4100.lib;opencv_flann4100.lib;opencv_fuzzy4100.lib;opencv_hfs4100.lib;opencv_highgui4100.lib;opencv_imgcodecs4100.lib;opencv_imgproc4100.lib;opencv_img_hash4100.lib;opencv_intensity_transform4100.lib;opencv_line_descriptor4100.lib;opencv_mcc4100.lib;opencv_ml4100.lib;opencv_objdetect4100.lib;opencv_optflow4100.lib;opencv_phase_unwrapping4100.lib;opencv_photo4100.lib;opencv_plot4100.lib;opencv_quality4100.lib;opencv_rapid4100.lib;opencv_reg4100.lib;opencv_rgbd4100.lib;opencv_saliency4100.lib;opencv_shape4100.lib;opencv_stereo4100.lib;opencv_stitching4100.lib;opencv_structured_light4100.lib;opencv_superres4100.lib;opencv_surface_matching4100.lib;opencv_text4100.lib;opencv_tracking4100.lib;opencv_video4100.lib;opencv_videoio4100.lib;opencv_videostab4100.lib;opencv_wechat_qrcode4100.lib;opencv_xfeatures2d4100.lib;opencv_ximgproc4100.lib;opencv_xobjdetect4100.lib;opencv_xphoto4100.lib;zlib.lib;ws2_32.lib;tesseract53.lib;leptonica-1.83.1.lib;archive.lib;bz2.lib;charset.lib;gif.lib;iconv.lib;libcrypto.lib;libcurl.lib;libpng16.lib;libsharpyuv.lib;libssl.lib;libxml2.lib;lz4.lib;lzma.lib;tiff.lib;zstd.lib;crypt32.lib;%(AdditionalDependencies) + %(IgnoreSpecificDefaultLibraries) + true + NotSet + true + true + true + + + MachineARM64 + /IGNORE:4099 %(AdditionalOptions) + + + copy "$(LocalDebuggerCommand)" "$(SolutionDir)test\OpenCvSharp.Tests\dll\arm64\$(TargetFileName)" +copy "$(LocalDebuggerCommand)" "$(SolutionDir)test\OpenCvSharp.Tests\$(TargetFileName)" +copy "$(SolutionDir)opencv_files\opencv4100_win_arm64\ARM64\vc17\bin\opencv_videoio_ffmpeg4100_64.dll" "$(SolutionDir)test\OpenCvSharp.Tests\opencv_videoio_ffmpeg4100_64.dll" +copy "$(SolutionDir)opencv_files\opencv4100_win_arm64\ARM64\vc17\bin\opencv_videoio_ffmpeg4100_64.dll" "$(SolutionDir)test\OpenCvSharp.Tests\dll\arm64\opencv_videoio_ffmpeg4100_64.dll" + + diff --git a/test/OpenCvSharp.Tests/dll/arm64/dummy.txt b/test/OpenCvSharp.Tests/dll/arm64/dummy.txt new file mode 100644 index 000000000..5f282702b --- /dev/null +++ b/test/OpenCvSharp.Tests/dll/arm64/dummy.txt @@ -0,0 +1 @@ + \ No newline at end of file