From 7d10f6b730a73c0286ca08fafef2e3ddccfdc402 Mon Sep 17 00:00:00 2001 From: Schrijvers Luc Date: Sat, 21 Feb 2026 17:24:39 +0100 Subject: [PATCH] opencv, add package for 4.13.0 (#13753) Co-authored-by: Joachim Mairboeck moved Qt related libraries to subpackage this way base package doesn't rely on Qt --- media-libs/opencv/opencv4.13-4.13.0.recipe | 558 +++++++++++++++++++++ 1 file changed, 558 insertions(+) create mode 100644 media-libs/opencv/opencv4.13-4.13.0.recipe diff --git a/media-libs/opencv/opencv4.13-4.13.0.recipe b/media-libs/opencv/opencv4.13-4.13.0.recipe new file mode 100644 index 000000000..c0e391baa --- /dev/null +++ b/media-libs/opencv/opencv4.13-4.13.0.recipe @@ -0,0 +1,558 @@ +SUMMARY="Open Source Computer Vision Library" +DESCRIPTION="A collection of algorithms and sample code for various \ +computer vision problems." +HOMEPAGE="https://opencv.org/" +COPYRIGHT="2000-2020, Intel Corporation + 2009-2011, Willow Garage Inc. + 2009-2016, NVIDIA Corporation + 2010-2013, Advanced Micro Devices, Inc. + 2015-2016, OpenCV Foundation + 2015-2016, Itseez Inc. + 2019-2020, Xperience AI" +LICENSE="BSD (3-clause)" +REVISION="1" +SOURCE_URI="https://github.com/opencv/opencv/archive/$portVersion.tar.gz" +SOURCE_FILENAME="opencv-$portVersion.tar.gz" +CHECKSUM_SHA256="1d40ca017ea51c533cf9fd5cbde5b5fe7ae248291ddf2af99d4c17cf8e13017d" +SOURCE_URI_2="https://github.com/opencv/opencv_contrib/archive/refs/tags/$portVersion.tar.gz" +SOURCE_FILENAME_2="opencv_contrib-$portVersion.tar.gz" +CHECKSUM_SHA256_2="1e0077a4fd2960a7d2f4c9e49d6ba7bb891cac2d1be36d7e8e47aa97a9d1039b" +SOURCE_DIR="opencv-$portVersion" + +ARCHITECTURES="all !x86_gcc2" +SECONDARY_ARCHITECTURES="?x86" + +# On x86_gcc2 we don't want to install the commands in bin//, but in bin/. +commandSuffix=$secondaryArchSuffix +commandBinDir=$binDir +if [ "$targetArchitecture" = x86_gcc2 ]; then + commandSuffix= + commandBinDir=$prefix/bin +fi + +pythonModuleEnabled=true + +# Building the python bindings fails on beta5 32 bits with an OOM error. +# Try re-enabling it after beta6 (new allocator might fix things). +if [ "$targetArchitecture" = x86_gcc2 ]; then + pythonModuleEnabled=false +fi + +portVersionCompat="$portVersion compat >= ${portVersion%%.*}" +libVersion="$portVersion" +libVersionCompat="$libVersion compat >= ${libVersion%.*}" + +PROVIDES=" + opencv4.13$secondaryArchSuffix = $portVersionCompat + lib:libopencv_alphamat$secondaryArchSuffix = $libVersionCompat + lib:libopencv_aruco$secondaryArchSuffix = $libVersionCompat + lib:libopencv_bgsegm$secondaryArchSuffix = $libVersionCompat + lib:libopencv_bioinspired$secondaryArchSuffix = $libVersionCompat + lib:libopencv_calib3d$secondaryArchSuffix = $libVersionCompat + lib:libopencv_core$secondaryArchSuffix = $libVersionCompat + lib:libopencv_datasets$secondaryArchSuffix = $libVersionCompat + lib:libopencv_dnn_objdetect$secondaryArchSuffix = $libVersionCompat + lib:libopencv_dnn_superres$secondaryArchSuffix = $libVersionCompat + lib:libopencv_dnn$secondaryArchSuffix = $libVersionCompat + lib:libopencv_dpm$secondaryArchSuffix = $libVersionCompat + lib:libopencv_face$secondaryArchSuffix = $libVersionCompat + lib:libopencv_features2d$secondaryArchSuffix = $libVersionCompat + lib:libopencv_flann$secondaryArchSuffix = $libVersionCompat + lib:libopencv_freetype$secondaryArchSuffix = $libVersionCompat + lib:libopencv_fuzzy$secondaryArchSuffix = $libVersionCompat + lib:libopencv_gapi$secondaryArchSuffix = $libVersionCompat + lib:libopencv_hdf$secondaryArchSuffix = $libVersionCompat + lib:libopencv_hfs$secondaryArchSuffix = $libVersionCompat + lib:libopencv_img_hash$secondaryArchSuffix = $libVersionCompat + lib:libopencv_imgcodecs$secondaryArchSuffix = $libVersionCompat + lib:libopencv_imgproc$secondaryArchSuffix = $libVersionCompat + lib:libopencv_intensity_transform$secondaryArchSuffix = $libVersionCompat + lib:libopencv_line_descriptor$secondaryArchSuffix = $libVersionCompat + lib:libopencv_mcc$secondaryArchSuffix = $libVersionCompat + lib:libopencv_ml$secondaryArchSuffix = $libVersionCompat + lib:libopencv_objdetect$secondaryArchSuffix = $libVersionCompat + lib:libopencv_optflow$secondaryArchSuffix = $libVersionCompat + lib:libopencv_phase_unwrapping$secondaryArchSuffix = $libVersionCompat + lib:libopencv_photo$secondaryArchSuffix = $libVersionCompat + lib:libopencv_plot$secondaryArchSuffix = $libVersionCompat + lib:libopencv_quality$secondaryArchSuffix = $libVersionCompat + lib:libopencv_rapid$secondaryArchSuffix = $libVersionCompat + lib:libopencv_reg$secondaryArchSuffix = $libVersionCompat + lib:libopencv_rgbd$secondaryArchSuffix = $libVersionCompat + lib:libopencv_saliency$secondaryArchSuffix = $libVersionCompat + lib:libopencv_shape$secondaryArchSuffix = $libVersionCompat + lib:libopencv_signal$secondaryArchSuffix = $libVersionCompat + lib:libopencv_stereo$secondaryArchSuffix = $libVersionCompat + lib:libopencv_stitching$secondaryArchSuffix = $libVersionCompat + lib:libopencv_structured_light$secondaryArchSuffix = $libVersionCompat + lib:libopencv_superres$secondaryArchSuffix = $libVersionCompat + lib:libopencv_surface_matching$secondaryArchSuffix = $libVersionCompat + lib:libopencv_text$secondaryArchSuffix = $libVersionCompat + lib:libopencv_tracking$secondaryArchSuffix = $libVersionCompat + lib:libopencv_video$secondaryArchSuffix = $libVersionCompat + lib:libopencv_videoio$secondaryArchSuffix = $libVersionCompat + lib:libopencv_videostab$secondaryArchSuffix = $libVersionCompat + lib:libopencv_xfeatures2d$secondaryArchSuffix = $libVersionCompat + lib:libopencv_ximgproc$secondaryArchSuffix = $libVersionCompat + lib:libopencv_xobjdetect$secondaryArchSuffix = $libVersionCompat + lib:libopencv_xphoto$secondaryArchSuffix = $libVersionCompat + lib:libopencv_wechat_qrcode$secondaryArchSuffix = $libVersionCompat + " +REQUIRES=" + haiku$secondaryArchSuffix + lib:libavcodec$secondaryArchSuffix + lib:libavdevice$secondaryArchSuffix + lib:libavformat$secondaryArchSuffix + lib:libavif$secondaryArchSuffix + lib:libavutil$secondaryArchSuffix +# lib:libceres$secondaryArchSuffix + lib:libfreetype$secondaryArchSuffix + lib:libgdal$secondaryArchSuffix + lib:libGL$secondaryArchSuffix + lib:libglib_2.0$secondaryArchSuffix + lib:libglog$secondaryArchSuffix + lib:libGLU$secondaryArchSuffix + lib:libgphoto2$secondaryArchSuffix + lib:libgstapp_1.0$secondaryArchSuffix + lib:libgstreamer_1.0$secondaryArchSuffix + lib:libgstvideo_1.0$secondaryArchSuffix + lib:libharfbuzz$secondaryArchSuffix + lib:libhdf5$secondaryArchSuffix + lib:libiconv$secondaryArchSuffix +# lib:libilmimf$secondaryArchSuffix #openexr + lib:libintl$secondaryArchSuffix + lib:libjasper$secondaryArchSuffix + lib:libjpeg$secondaryArchSuffix +# lib:liblapack$secondaryArchSuffix + lib:libopenblas$secondaryArchSuffix + lib:libopenjp2$secondaryArchSuffix + lib:libpng16$secondaryArchSuffix + lib:libswscale$secondaryArchSuffix + lib:libtesseract$secondaryArchSuffix + lib:libtiff$secondaryArchSuffix + lib:libwebp$secondaryArchSuffix + lib:libz$secondaryArchSuffix + " + +PROVIDES_highgui=" + opencv4.13${secondaryArchSuffix}_highgui = $portVersionCompat + lib:libopencv_ccalib$secondaryArchSuffix = $libVersionCompat + lib:libopencv_cvv$secondaryArchSuffix = $libVersionCompat + lib:libopencv_highgui$secondaryArchSuffix = $libVersionCompat + " +REQUIRES_highgui=" + opencv4.13$secondaryArchSuffix == $portVersion base + haiku$secondaryArchSuffix + lib:libQt6Core$secondaryArchSuffix + lib:libQt6Gui$secondaryArchSuffix + lib:libQt6Test$secondaryArchSuffix + lib:libQt6Widgets$secondaryArchSuffix + " + +PROVIDES_highgui_devel=" + opencv4.13${secondaryArchSuffix}_highgui_devel = $portVersionCompat + devel:libopencv_ccalib$secondaryArchSuffix = $libVersionCompat + devel:libopencv_cvv$secondaryArchSuffix = $libVersionCompat + devel:libopencv_highgui$secondaryArchSuffix = $libVersionCompat + " +REQUIRES_highgui_devel=" + opencv4.13${secondaryArchSuffix}_highgui + opencv4.13${secondaryArchSuffix}_devel + " + +PROVIDES_devel=" + opencv4.13${secondaryArchSuffix}_devel = $portVersionCompat + devel:libopencv_alphamat$secondaryArchSuffix = $libVersionCompat + devel:libopencv_aruco$secondaryArchSuffix = $libVersionCompat + devel:libopencv_bgsegm$secondaryArchSuffix = $libVersionCompat + devel:libopencv_bioinspired$secondaryArchSuffix = $libVersionCompat + devel:libopencv_calib3d$secondaryArchSuffix = $libVersionCompat + devel:libopencv_core$secondaryArchSuffix = $libVersionCompat + devel:libopencv_datasets$secondaryArchSuffix = $libVersionCompat + devel:libopencv_dnn_objdetect$secondaryArchSuffix = $libVersionCompat + devel:libopencv_dnn_superres$secondaryArchSuffix = $libVersionCompat + devel:libopencv_dnn$secondaryArchSuffix = $libVersionCompat + devel:libopencv_dpm$secondaryArchSuffix = $libVersionCompat + devel:libopencv_face$secondaryArchSuffix = $libVersionCompat + devel:libopencv_features2d$secondaryArchSuffix = $libVersionCompat + devel:libopencv_flann$secondaryArchSuffix = $libVersionCompat + devel:libopencv_freetype$secondaryArchSuffix = $libVersionCompat + devel:libopencv_fuzzy$secondaryArchSuffix = $libVersionCompat + devel:libopencv_gapi$secondaryArchSuffix = $libVersionCompat + devel:libopencv_hdf$secondaryArchSuffix = $libVersionCompat + devel:libopencv_hfs$secondaryArchSuffix = $libVersionCompat + devel:libopencv_img_hash$secondaryArchSuffix = $libVersionCompat + devel:libopencv_imgcodecs$secondaryArchSuffix = $libVersionCompat + devel:libopencv_imgproc$secondaryArchSuffix = $libVersionCompat + devel:libopencv_intensity_transform$secondaryArchSuffix = $libVersionCompat + devel:libopencv_line_descriptor$secondaryArchSuffix = $libVersionCompat + devel:libopencv_mcc$secondaryArchSuffix = $libVersionCompat + devel:libopencv_ml$secondaryArchSuffix = $libVersionCompat + devel:libopencv_objdetect$secondaryArchSuffix = $libVersionCompat + devel:libopencv_optflow$secondaryArchSuffix = $libVersionCompat + devel:libopencv_phase_unwrapping$secondaryArchSuffix = $libVersionCompat + devel:libopencv_photo$secondaryArchSuffix = $libVersionCompat + devel:libopencv_plot$secondaryArchSuffix = $libVersionCompat + devel:libopencv_quality$secondaryArchSuffix = $libVersionCompat + devel:libopencv_rapid$secondaryArchSuffix = $libVersionCompat + devel:libopencv_reg$secondaryArchSuffix = $libVersionCompat + devel:libopencv_rgbd$secondaryArchSuffix = $libVersionCompat + devel:libopencv_saliency$secondaryArchSuffix = $libVersionCompat + devel:libopencv_shape$secondaryArchSuffix = $libVersionCompat + devel:libopencv_signal$secondaryArchSuffix = $libVersionCompat + devel:libopencv_stereo$secondaryArchSuffix = $libVersionCompat + devel:libopencv_stitching$secondaryArchSuffix = $libVersionCompat + devel:libopencv_structured_light$secondaryArchSuffix = $libVersionCompat + devel:libopencv_superres$secondaryArchSuffix = $libVersionCompat + devel:libopencv_surface_matching$secondaryArchSuffix = $libVersionCompat + devel:libopencv_text$secondaryArchSuffix = $libVersionCompat + devel:libopencv_tracking$secondaryArchSuffix = $libVersionCompat + devel:libopencv_video$secondaryArchSuffix = $libVersionCompat + devel:libopencv_videoio$secondaryArchSuffix = $libVersionCompat + devel:libopencv_videostab$secondaryArchSuffix = $libVersionCompat + devel:libopencv_xfeatures2d$secondaryArchSuffix = $libVersionCompat + devel:libopencv_ximgproc$secondaryArchSuffix = $libVersionCompat + devel:libopencv_xobjdetect$secondaryArchSuffix = $libVersionCompat + devel:libopencv_xphoto$secondaryArchSuffix = $libVersionCompat + devel:libopencv_wechat_qrcode$secondaryArchSuffix = $libVersionCompat + " +REQUIRES_devel=" + opencv4.13$secondaryArchSuffix == $portVersion base + " +CONFLICTS_devel=" + opencv${secondaryArchSuffix}_devel + " + +pythonVersion=3.10 +pythonPackage=python${pythonVersion//.} + +if $pythonModuleEnabled; then + # Allows using dot in sub-package names (eg: "_python3.10" vs "_python310"): + eval "PACKAGE_NAME_$pythonPackage=\"${portName}_python$pythonVersion\"" + + eval "PROVIDES_$pythonPackage=\" + ${portName}_python$pythonVersion = $portVersionCompat + \"" + + if [ -n "$secondaryArchSuffix" ]; then + eval "PROVIDES_${pythonPackage}+=\" + ${portBaseName}_python$pythonVersion= $portVersionCompat + \"" + fi + + eval "REQUIRES_$pythonPackage=\" + haiku$secondaryArchSuffix + ${portName}$secondaryArchSuffix == $portVersion base + numpy_$pythonPackage + cmd:python$pythonVersion + \"" + + eval "CONFLICTS_$pythonPackage=\" + opencv_python$pythonVersion + \"" +fi + + +PROVIDES_tools=" + opencv4.13${secondaryArchSuffix}_tools = $portVersionCompat + cmd:opencv_annotation$commandSuffix = $portVersion + cmd:opencv_interactive_calibration$commandSuffix = $portVersion + cmd:opencv_model_diagnostics$commandSuffix = $portVersion + cmd:opencv_version$commandSuffix = $portVersion + cmd:opencv_visualisation$commandSuffix = $portVersion + cmd:opencv_waldboost_detector$commandSuffix = $portVersion + cmd:setup_vars_opencv4.sh$commandSuffix = $portVersion + " +REQUIRES_tools=" + haiku$secondaryArchSuffix + opencv4.13$secondaryArchSuffix == $portVersion base + opencv4.13${secondaryArchSuffix}_highgui + numpy${secondaryArchSuffix}_python310 + cmd:python3 + " +CONFLICTS_tools=" + opencv${secondaryArchSuffix}_tools + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + devel:cblas$secondaryArchSuffix + devel:eigen$secondaryArchSuffix + devel:libavcodec$secondaryArchSuffix >= 60 + devel:libavdevice$secondaryArchSuffix >= 60 + devel:libavif$secondaryArchSuffix + devel:libavformat$secondaryArchSuffix >= 60 + devel:libavutil$secondaryArchSuffix >= 58 +# devel:libcaffe$secondaryArchSuffix +# devel:libceres$secondaryArchSuffix + devel:libexif$secondaryArchSuffix + devel:libfreetype$secondaryArchSuffix + devel:libgdal$secondaryArchSuffix >= 30 +# devel:libgflags$secondaryArchSuffix + devel:libGL$secondaryArchSuffix + devel:libglib_2.0$secondaryArchSuffix + devel:libglog$secondaryArchSuffix + devel:libGLU$secondaryArchSuffix + devel:libgphoto2$secondaryArchSuffix + devel:libgstapp_1.0$secondaryArchSuffix + devel:libgstreamer_1.0$secondaryArchSuffix + devel:libgstvideo_1.0$secondaryArchSuffix + devel:libharfbuzz$secondaryArchSuffix + devel:libhdf5$secondaryArchSuffix + devel:libiconv$secondaryArchSuffix +# devel:libilmimf$secondaryArchSuffix #openexr + devel:libintl$secondaryArchSuffix + devel:libjasper$secondaryArchSuffix + devel:libjpeg$secondaryArchSuffix + devel:liblept$secondaryArchSuffix + devel:libopenblas$secondaryArchSuffix + devel:libopencl_headers$secondaryArchSuffix + devel:libopenjp2$secondaryArchSuffix + devel:liborc_0.4$secondaryArchSuffix + devel:libpng16$secondaryArchSuffix +# devel:libprotobuf$secondaryArchSuffix + devel:libQt6Core$secondaryArchSuffix + devel:libQt6Core5Compat$secondaryArchSuffix + devel:libQt6Gui$secondaryArchSuffix + devel:libQt6Test$secondaryArchSuffix + devel:libQt6Widgets$secondaryArchSuffix + devel:libswscale$secondaryArchSuffix >= 7 + devel:libtesseract$secondaryArchSuffix + devel:libtiff$secondaryArchSuffix + devel:libwebp$secondaryArchSuffix + devel:libz$secondaryArchSuffix + " +BUILD_PREREQUIRES=" +# cmd:ant + cmd:cmake + cmd:doxygen + cmd:gcc$secondaryArchSuffix +# cmd:javac +# cmd:jni + cmd:ld$secondaryArchSuffix + cmd:make +# cmd:matlab # maybe later + cmd:pkg_config$secondaryArchSuffix + " +if $pythonModuleEnabled; then + BUILD_PREREQUIRES+=" + numpy_$pythonPackage + cmd:python$pythonVersion + " +fi + +defineDebugInfoPackage opencv4.13$secondaryArchSuffix \ + $libDir/libopencv_alphamat.so.$libVersion \ + $libDir/libopencv_aruco.so.$libVersion \ + $libDir/libopencv_bgsegm.so.$libVersion \ + $libDir/libopencv_bioinspired.so.$libVersion \ + $libDir/libopencv_calib3d.so.$libVersion \ + $(getPackagePrefix highgui)/$relativeLibDir/libopencv_ccalib.so.$libVersion \ + $libDir/libopencv_core.so.$libVersion \ + $(getPackagePrefix highgui)/$relativeLibDir/libopencv_cvv.so.$libVersion \ + $libDir/libopencv_datasets.so.$libVersion \ + $libDir/libopencv_dnn_objdetect.so.$libVersion \ + $libDir/libopencv_dnn_superres.so.$libVersion \ + $libDir/libopencv_dnn.so.$libVersion \ + $libDir/libopencv_dpm.so.$libVersion \ + $libDir/libopencv_face.so.$libVersion \ + $libDir/libopencv_features2d.so.$libVersion \ + $libDir/libopencv_flann.so.$libVersion \ + $libDir/libopencv_freetype.so.$libVersion \ + $libDir/libopencv_fuzzy.so.$libVersion \ + $libDir/libopencv_gapi.so.$libVersion \ + $libDir/libopencv_hdf.so.$libVersion \ + $libDir/libopencv_hfs.so.$libVersion \ + $(getPackagePrefix highgui)/$relativeLibDir/libopencv_highgui.so.$libVersion \ + $libDir/libopencv_img_hash.so.$libVersion \ + $libDir/libopencv_imgcodecs.so.$libVersion \ + $libDir/libopencv_imgproc.so.$libVersion \ + $libDir/libopencv_intensity_transform.so.$libVersion \ + $libDir/libopencv_line_descriptor.so.$libVersion \ + $libDir/libopencv_mcc.so.$libVersion \ + $libDir/libopencv_ml.so.$libVersion \ + $libDir/libopencv_objdetect.so.$libVersion \ + $libDir/libopencv_optflow.so.$libVersion \ + $libDir/libopencv_phase_unwrapping.so.$libVersion \ + $libDir/libopencv_photo.so.$libVersion \ + $libDir/libopencv_plot.so.$libVersion \ + $libDir/libopencv_quality.so.$libVersion \ + $libDir/libopencv_rapid.so.$libVersion \ + $libDir/libopencv_reg.so.$libVersion \ + $libDir/libopencv_rgbd.so.$libVersion \ + $libDir/libopencv_saliency.so.$libVersion \ + $libDir/libopencv_shape.so.$libVersion \ + $libDir/libopencv_signal.so.$libVersion \ + $libDir/libopencv_stereo.so.$libVersion \ + $libDir/libopencv_stitching.so.$libVersion \ + $libDir/libopencv_structured_light.so.$libVersion \ + $libDir/libopencv_superres.so.$libVersion \ + $libDir/libopencv_surface_matching.so.$libVersion \ + $libDir/libopencv_text.so.$libVersion \ + $libDir/libopencv_tracking.so.$libVersion \ + $libDir/libopencv_video.so.$libVersion \ + $libDir/libopencv_videoio.so.$libVersion \ + $libDir/libopencv_videostab.so.$libVersion \ + $libDir/libopencv_xfeatures2d.so.$libVersion \ + $libDir/libopencv_ximgproc.so.$libVersion \ + $libDir/libopencv_xobjdetect.so.$libVersion \ + $libDir/libopencv_xphoto.so.$libVersion \ + $libDir/libopencv_wechat_qrcode.so.$libVersion + +BUILD() +{ + withPythonBindings= + if $pythonModuleEnabled; then + withPythonBindings=" + -DBUILD_opencv_python3=ON \ + -DBUILD_opencv_python_bindings_generator=ON \ + -DBUILD_opencv_python_tests=OFF + -DOPENCV_PYTHON3_INSTALL_PATH="$prefix/lib/python$pythonVersion/vendor-packages" \ + -DPYTHON3_NUMPY_INCLUDE_DIRS:PATH="`finddir B_SYSTEM_LIB_DIRECTORY`/python$pythonVersion/vendor-packages/numpy/_core/include" \ + " + else + withPythonBindings=" + -DBUILD_opencv_python3=OFF \ + -DBUILD_opencv_python_bindings_generator=OFF \ + -DBUILD_opencv_python_tests=OFF + " + fi + + mkdir -p build_haiku && cd build_haiku + + cmake .. \ + -DCMAKE_BUILD_TYPE=RelwithDebInfo \ + $cmakeDirArgs \ + -DBUILD_TESTS=OFF \ + -DBUILD_PERF_TESTS=OFF \ + -DCMAKE_INSTALL_BINDIR=$commandBinDir \ + -DCMAKE_INSTALL_LIBEXECDIR=$libDir \ + -DWITH_GDAL=ON \ + -DWITH_IPP=OFF \ + -DWITH_OPENGL=OFF \ + -DWITH_QT=ON \ + -DWITH_EIGEN=ON \ + -DWITH_OPENEXR=ON \ + -DWITH_FFMPEG=ON \ + -DCMAKE_SKIP_RPATH=ON \ + -DENABLE_PIC=OFF \ + -DOPENCV_GENERATE_PKGCONFIG=YES \ + -DCMAKE_INSTALL_PREFIX:PATH="$prefix" \ + -DOPENCV_OTHER_INSTALL_PATH:PATH="$dataDir" \ + -DOpenBLAS_INCLUDE_DIR="$portPackageLinksDir/devel~libopenblas$secondaryArchSuffix/$relativeIncludeDir" \ + -DOpenBLAS_LIB="$portPackageLinksDir/devel~libopenblas$secondaryArchSuffix/$relativeDevelopLibDir" \ + -DOPENCV_EXTRA_MODULES_PATH="$sourceDir2/opencv_contrib-$portVersion/modules" \ + -DEigen3_DIR=`finddir B_SYSTEM_DATA_DIRECTORY`/eigen3/cmake \ + $withPythonBindings \ + -Wno-dev + + make $jobArgs +} + +INSTALL() +{ + cd build_haiku + + make install + + prepareInstalledDevelLibs libopencv_alphamat \ + libopencv_aruco \ + libopencv_bgsegm \ + libopencv_bioinspired \ + libopencv_calib3d \ + libopencv_ccalib \ + libopencv_core \ + libopencv_cvv \ + libopencv_datasets \ + libopencv_dnn_objdetect \ + libopencv_dnn_superres \ + libopencv_dnn \ + libopencv_dpm \ + libopencv_face \ + libopencv_features2d \ + libopencv_flann \ + libopencv_freetype \ + libopencv_fuzzy \ + libopencv_gapi \ + libopencv_hdf \ + libopencv_hfs \ + libopencv_highgui \ + libopencv_img_hash \ + libopencv_imgcodecs \ + libopencv_imgproc \ + libopencv_intensity_transform \ + libopencv_line_descriptor \ + libopencv_mcc \ + libopencv_ml \ + libopencv_objdetect \ + libopencv_optflow \ + libopencv_phase_unwrapping \ + libopencv_photo \ + libopencv_plot \ + libopencv_quality \ + libopencv_rapid \ + libopencv_reg \ + libopencv_rgbd \ + libopencv_saliency \ + libopencv_shape \ + libopencv_signal \ + libopencv_stereo \ + libopencv_stitching \ + libopencv_structured_light \ + libopencv_superres \ + libopencv_surface_matching \ + libopencv_text \ + libopencv_tracking \ + libopencv_video \ + libopencv_videoio \ + libopencv_videostab \ + libopencv_xfeatures2d \ + libopencv_ximgproc \ + libopencv_xobjdetect \ + libopencv_xphoto \ + libopencv_wechat_qrcode + + # fixCmake + sed -i 's,\/include,/'${relativeIncludeDir}',g' \ + $libDir/cmake/opencv4/OpenCVConfig.cmake + + fixPkgconfig + + # fixPkgconfig + sed -i "s,\/headers$secondaryArchSubDir,\/headers$secondaryArchSubDir/opencv4,g" \ + $developLibDir/pkgconfig/opencv4.pc + + # highgui package + packageEntries highgui \ + $libDir/libopencv_ccalib* \ + $libDir/libopencv_cvv* \ + $libDir/libopencv_highgui* \ + + # highgui_devel package + packageEntries highgui_devel \ + $developLibDir/libopencv_ccalib* \ + $developLibDir/libopencv_cvv* \ + $developLibDir/libopencv_highgui* + + # devel package + packageEntries devel \ + $developDir \ + $libDir/cmake + + # python package + if $pythonModuleEnabled; then + packageEntries $pythonPackage \ + $prefix/lib/python* + fi + + # tools package + packageEntries tools \ + $commandBinDir \ + $dataDir +} + +TEST() +{ + LIBRARY_PATH="$sourceDir/build_haiku/lib${LIBRARY_PATH:+:$LIBRARY_PATH}" \ + make -C build_haiku test $jobArgs +}