diff --git a/misc/ncnn/Makefile b/misc/ncnn/Makefile index f865a8fdcfb4..31bd52064077 100644 --- a/misc/ncnn/Makefile +++ b/misc/ncnn/Makefile @@ -1,36 +1,33 @@ PORTNAME= ncnn -DISTVERSION= 20250503 +DISTVERSION= 20260113 CATEGORIES= misc # machine-learning MAINTAINER= yuri@FreeBSD.org COMMENT= High-performance neural network inference framework WWW= https://github.com/Tencent/ncnn LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.txt LIB_DEPENDS= libabsl_flags_program_name.so:devel/abseil \ libprotobuf.so:devel/protobuf -USES= cmake:testing # 2 tests fail (test_squeezenet, test_c_api), but the debug build fails due to missing absl* symbol, also see https://github.com/Tencent/ncnn/issues/4742#issuecomment-1879563662 +USES= cmake:testing USE_LDCONFIG= yes USE_GITHUB= yes GH_ACCOUNT= Tencent -#CMAKE_ON= NCNN_SHARED_LIB NCNN_ENABLE_LTO # NCNN_SHARED_LIB=ON causes variability in the shared library name, see https://github.com/Tencent/ncnn/issues/4234 -CMAKE_TESTING_ON= NCNN_BUILD_TESTS # in order to run tests please disable NCNN_SHARED_LIB above; many tests fail, see https://github.com/Tencent/ncnn/issues/4233 +CMAKE_ON= NCNN_SYSTEM_GLSLANG +CMAKE_TESTING_ON= NCNN_BUILD_TESTS OPTIONS_DEFINE= VULKAN -OPTIONS_DEFAULT= # broken: VULKAN +OPTIONS_DEFAULT= VULKAN VULKAN_DESC= Vulkan compute support -VULKAN_GH_TUPLE= KhronosGroup:glslang:88fd417:glslang/glslang -VULKAN_BUILD_DEPENDS= ${LOCALBASE}/include/vulkan/vulkan.h:graphics/vulkan-headers +VULKAN_BUILD_DEPENDS= ${LOCALBASE}/include/vulkan/vulkan.h:graphics/vulkan-headers \ + glslangValidator:graphics/glslang VULKAN_LIB_DEPENDS= libvulkan.so:graphics/vulkan-loader VULKAN_CMAKE_BOOL= NCNN_VULKAN -VULKAN_BROKEN= most tests are broken with Vulkan, see https://github.com/Tencent/ncnn/issues/4742#issuecomment-1879563662 - -# tests as of 20250503: 99% tests passed, 1 tests failed out of 135 .include diff --git a/misc/ncnn/distinfo b/misc/ncnn/distinfo index a05d19925946..df2156f2f9f7 100644 --- a/misc/ncnn/distinfo +++ b/misc/ncnn/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1746349260 -SHA256 (Tencent-ncnn-20250503_GH0.tar.gz) = 3afea4cf092ce97d06305b72c6affbcfb3530f536ae8e81a4f22007d82b729e9 -SIZE (Tencent-ncnn-20250503_GH0.tar.gz) = 13200604 +TIMESTAMP = 1769374322 +SHA256 (Tencent-ncnn-20260113_GH0.tar.gz) = 2fdc5c6e37f8552921a9daad498a1be54a6fa6edd32c1a9e3030b27fab253b47 +SIZE (Tencent-ncnn-20260113_GH0.tar.gz) = 13233848 diff --git a/misc/ncnn/files/patch-CMakeLists.txt b/misc/ncnn/files/patch-CMakeLists.txt deleted file mode 100644 index 1e7ebf6f403d..000000000000 --- a/misc/ncnn/files/patch-CMakeLists.txt +++ /dev/null @@ -1,82 +0,0 @@ -Don't try to install bundled glslang as part of ncnn - -====> Checking for pkg-plist issues (check-plist) -===> Parsing plist -===> Checking for items in STAGEDIR missing from pkg-plist -Error: Orphaned: include/glslang/Include/BaseTypes.h -Error: Orphaned: include/glslang/Include/Common.h -Error: Orphaned: include/glslang/Include/ConstantUnion.h -Error: Orphaned: include/glslang/Include/InfoSink.h -Error: Orphaned: include/glslang/Include/InitializeGlobals.h -Error: Orphaned: include/glslang/Include/PoolAlloc.h -Error: Orphaned: include/glslang/Include/ResourceLimits.h -Error: Orphaned: include/glslang/Include/ShHandle.h -Error: Orphaned: include/glslang/Include/SpirvIntrinsics.h -Error: Orphaned: include/glslang/Include/Types.h -Error: Orphaned: include/glslang/Include/arrays.h -Error: Orphaned: include/glslang/Include/glslang_c_interface.h -Error: Orphaned: include/glslang/Include/glslang_c_shader_types.h -Error: Orphaned: include/glslang/Include/intermediate.h -Error: Orphaned: include/glslang/MachineIndependent/Initialize.h -Error: Orphaned: include/glslang/MachineIndependent/LiveTraverser.h -Error: Orphaned: include/glslang/MachineIndependent/ParseHelper.h -Error: Orphaned: include/glslang/MachineIndependent/RemoveTree.h -Error: Orphaned: include/glslang/MachineIndependent/Scan.h -Error: Orphaned: include/glslang/MachineIndependent/ScanContext.h -Error: Orphaned: include/glslang/MachineIndependent/SymbolTable.h -Error: Orphaned: include/glslang/MachineIndependent/Versions.h -Error: Orphaned: include/glslang/MachineIndependent/attribute.h -Error: Orphaned: include/glslang/MachineIndependent/gl_types.h -Error: Orphaned: include/glslang/MachineIndependent/glslang_tab.cpp.h -Error: Orphaned: include/glslang/MachineIndependent/iomapper.h -Error: Orphaned: include/glslang/MachineIndependent/localintermediate.h -Error: Orphaned: include/glslang/MachineIndependent/parseVersions.h -Error: Orphaned: include/glslang/MachineIndependent/preprocessor/PpContext.h -Error: Orphaned: include/glslang/MachineIndependent/preprocessor/PpTokens.h -Error: Orphaned: include/glslang/MachineIndependent/propagateNoContraction.h -Error: Orphaned: include/glslang/MachineIndependent/reflection.h -Error: Orphaned: include/glslang/Public/ShaderLang.h -Error: Orphaned: include/glslang/SPIRV/GLSL.ext.AMD.h -Error: Orphaned: include/glslang/SPIRV/GLSL.ext.EXT.h -Error: Orphaned: include/glslang/SPIRV/GLSL.ext.KHR.h -Error: Orphaned: include/glslang/SPIRV/GLSL.ext.NV.h -Error: Orphaned: include/glslang/SPIRV/GLSL.std.450.h -Error: Orphaned: include/glslang/SPIRV/GlslangToSpv.h -Error: Orphaned: include/glslang/SPIRV/Logger.h -Error: Orphaned: include/glslang/SPIRV/NonSemanticDebugPrintf.h -Error: Orphaned: include/glslang/SPIRV/SPVRemapper.h -Error: Orphaned: include/glslang/SPIRV/SpvBuilder.h -Error: Orphaned: include/glslang/SPIRV/SpvTools.h -Error: Orphaned: include/glslang/SPIRV/bitutils.h -Error: Orphaned: include/glslang/SPIRV/disassemble.h -Error: Orphaned: include/glslang/SPIRV/doc.h -Error: Orphaned: include/glslang/SPIRV/hex_float.h -Error: Orphaned: include/glslang/SPIRV/spirv.hpp -Error: Orphaned: include/glslang/SPIRV/spvIR.h -Error: Orphaned: include/glslang/build_info.h -Error: Orphaned: lib/cmake/OGLCompilerTargets-%%CMAKE_BUILD_TYPE%%.cmake -Error: Orphaned: lib/cmake/OGLCompilerTargets.cmake -Error: Orphaned: lib/cmake/OSDependentTargets-%%CMAKE_BUILD_TYPE%%.cmake -Error: Orphaned: lib/cmake/OSDependentTargets.cmake -Error: Orphaned: lib/cmake/SPIRVTargets-%%CMAKE_BUILD_TYPE%%.cmake -Error: Orphaned: lib/cmake/SPIRVTargets.cmake -Error: Orphaned: lib/cmake/glslangTargets-%%CMAKE_BUILD_TYPE%%.cmake -Error: Orphaned: lib/cmake/glslangTargets.cmake -Error: Orphaned: lib/libGenericCodeGen.a -Error: Orphaned: lib/libMachineIndependent.a -Error: Orphaned: lib/libOGLCompiler.a -Error: Orphaned: lib/libOSDependent.a -Error: Orphaned: lib/libSPIRV.a -Error: Orphaned: lib/libglslang.a - ---- CMakeLists.txt.orig 2022-07-28 09:47:27 UTC -+++ CMakeLists.txt -@@ -513,7 +513,7 @@ if(NCNN_VULKAN) - if(NCNN_SHARED_LIB) - option(SKIP_GLSLANG_INSTALL "" ON) - endif() -- add_subdirectory(glslang) -+ add_subdirectory(glslang EXCLUDE_FROM_ALL) - if(NCNN_SHARED_LIB) - if(CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR (CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND NOT CMAKE_CXX_COMPILER_FRONTEND_VARIANT MATCHES "MSVC")) - target_compile_options(glslang PRIVATE -fvisibility=hidden -fvisibility-inlines-hidden) diff --git a/misc/ncnn/files/patch-src_layer_x86_gemm__int8.h b/misc/ncnn/files/patch-src_layer_x86_gemm__int8.h new file mode 100644 index 000000000000..b899c78ca874 --- /dev/null +++ b/misc/ncnn/files/patch-src_layer_x86_gemm__int8.h @@ -0,0 +1,9 @@ +--- src/layer/x86/gemm_int8.h.orig 2026-01-13 02:57:43 UTC ++++ src/layer/x86/gemm_int8.h +@@ -1,5 +1,6 @@ + // Copyright 2024 Tencent + // SPDX-License-Identifier: BSD-3-Clause ++#include "avx512_mathfun.h" + + #if NCNN_RUNTIME_CPU && NCNN_AVX512VNNI && __AVX512F__ && !__AVX512VNNI__ + void pack_A_tile_int8_avx512vnni(const Mat& A, Mat& AT, int i, int max_ii, int k, int max_kk); diff --git a/misc/ncnn/pkg-plist b/misc/ncnn/pkg-plist index b68b9f67e600..f313111dce87 100644 --- a/misc/ncnn/pkg-plist +++ b/misc/ncnn/pkg-plist @@ -1,43 +1,43 @@ bin/caffe2ncnn bin/darknet2ncnn bin/mxnet2ncnn bin/ncnn2int8 bin/ncnn2mem bin/ncnn2table bin/ncnnmerge bin/ncnnoptimize -bin/onnx2ncnn include/ncnn/allocator.h include/ncnn/benchmark.h include/ncnn/blob.h include/ncnn/c_api.h include/ncnn/command.h include/ncnn/cpu.h include/ncnn/datareader.h include/ncnn/expression.h include/ncnn/gpu.h include/ncnn/layer.h include/ncnn/layer_shader_type.h include/ncnn/layer_shader_type_enum.h include/ncnn/layer_type.h include/ncnn/layer_type_enum.h include/ncnn/mat.h include/ncnn/modelbin.h include/ncnn/ncnn_export.h include/ncnn/net.h include/ncnn/option.h include/ncnn/paramdict.h include/ncnn/pipeline.h include/ncnn/pipelinecache.h include/ncnn/platform.h include/ncnn/simplemath.h include/ncnn/simpleocv.h include/ncnn/simpleomp.h include/ncnn/simplestl.h include/ncnn/simplevk.h include/ncnn/vulkan_header_fix.h lib/cmake/ncnn/ncnn-%%CMAKE_BUILD_TYPE%%.cmake lib/cmake/ncnn/ncnn.cmake lib/cmake/ncnn/ncnnConfig.cmake +lib/cmake/ncnn/ncnnConfigVersion.cmake lib/libncnn.a libdata/pkgconfig/ncnn.pc