mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-22 03:30:05 +02:00
opencv, revbump, drop lapack dependency (#13291)
also drop old recipe/patchset
This commit is contained in:
@@ -10,7 +10,7 @@ COPYRIGHT="2000-2020, Intel Corporation
|
||||
2015-2016, Itseez Inc.
|
||||
2019-2020, Xperience AI"
|
||||
LICENSE="BSD (3-clause)"
|
||||
REVISION="4"
|
||||
REVISION="5"
|
||||
SOURCE_URI="https://github.com/opencv/opencv/archive/$portVersion.tar.gz"
|
||||
SOURCE_FILENAME="opencv-$portVersion.tar.gz"
|
||||
CHECKSUM_SHA256="cbf47ecc336d2bff36b0dcd7d6c179a9bb59e805136af6b9670ca944aef889bd"
|
||||
@@ -123,7 +123,6 @@ REQUIRES="
|
||||
lib:libintl$secondaryArchSuffix
|
||||
lib:libjasper$secondaryArchSuffix
|
||||
lib:libjpeg$secondaryArchSuffix
|
||||
lib:liblapack$secondaryArchSuffix
|
||||
lib:libopenblas$secondaryArchSuffix
|
||||
lib:libopenjp2$secondaryArchSuffix
|
||||
lib:libpng16$secondaryArchSuffix
|
||||
@@ -271,7 +270,6 @@ BUILD_REQUIRES="
|
||||
devel:libintl$secondaryArchSuffix
|
||||
devel:libjasper$secondaryArchSuffix
|
||||
devel:libjpeg$secondaryArchSuffix
|
||||
devel:liblapack$secondaryArchSuffix
|
||||
devel:liblept$secondaryArchSuffix
|
||||
devel:libopenblas$secondaryArchSuffix
|
||||
devel:libopencl_headers$secondaryArchSuffix
|
||||
|
||||
@@ -1,258 +0,0 @@
|
||||
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-2016, 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."
|
||||
LICENSE="BSD (3-clause)"
|
||||
REVISION="17"
|
||||
SOURCE_URI="https://github.com/opencv/opencv/archive/$portVersion.tar.gz"
|
||||
SOURCE_FILENAME="opencv-$portVersion.tar.gz"
|
||||
CHECKSUM_SHA256="4eef85759d5450b183459ff216b4c0fa43e87a4f6aa92c8af649f89336f002ec"
|
||||
SOURCE_DIR="opencv-$portVersion"
|
||||
PATCHES="opencv3-$portVersion.patchset"
|
||||
|
||||
ARCHITECTURES="all !x86_gcc2"
|
||||
SECONDARY_ARCHITECTURES="x86"
|
||||
|
||||
# On x86_gcc2 we don't want to install the commands in bin/<arch>/, but in bin/.
|
||||
commandSuffix=$secondaryArchSuffix
|
||||
if [ "$targetArchitecture" = x86_gcc2 ]; then
|
||||
commandSuffix=
|
||||
fi
|
||||
|
||||
portVersionCompat="$portVersion compat >= ${portVersion%%.*}"
|
||||
libVersion="$portVersion"
|
||||
libVersionCompat="$libVersion compat >= ${libVersion%.*}"
|
||||
|
||||
# pythonVersion="3.10"
|
||||
|
||||
PROVIDES="
|
||||
opencv3$secondaryArchSuffix = $portVersionCompat
|
||||
lib:libopencv_calib3d$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libopencv_core$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libopencv_dnn$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libopencv_features2d$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libopencv_flann$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libopencv_highgui$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libopencv_imgcodecs$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libopencv_imgproc$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libopencv_ml$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libopencv_objdetect$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libopencv_photo$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libopencv_shape$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libopencv_stitching$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libopencv_superres$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libopencv_video$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libopencv_videoio$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libopencv_videostab$secondaryArchSuffix = $libVersionCompat
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
lib:libavcodec$secondaryArchSuffix
|
||||
lib:libavformat$secondaryArchSuffix
|
||||
lib:libavutil$secondaryArchSuffix
|
||||
lib:libfreetype$secondaryArchSuffix
|
||||
lib:libgdal$secondaryArchSuffix
|
||||
lib:libGL$secondaryArchSuffix
|
||||
lib:libglib_2.0$secondaryArchSuffix
|
||||
lib:libGLU$secondaryArchSuffix
|
||||
lib:libgphoto2$secondaryArchSuffix
|
||||
lib:libgstapp_1.0$secondaryArchSuffix
|
||||
lib:libgstreamer_1.0$secondaryArchSuffix
|
||||
lib:libgstvideo_1.0$secondaryArchSuffix
|
||||
lib:libhalf_2_4$secondaryArchSuffix
|
||||
lib:libharfbuzz$secondaryArchSuffix
|
||||
lib:libhdf5$secondaryArchSuffix
|
||||
lib:libiex_2_4$secondaryArchSuffix
|
||||
lib:libilmimf_2_4$secondaryArchSuffix
|
||||
lib:libilmthread_2_4$secondaryArchSuffix
|
||||
lib:libimath_2_4$secondaryArchSuffix
|
||||
lib:libintl$secondaryArchSuffix
|
||||
lib:libjasper$secondaryArchSuffix
|
||||
lib:libjpeg$secondaryArchSuffix
|
||||
lib:liblapack$secondaryArchSuffix
|
||||
lib:libopenblas$secondaryArchSuffix
|
||||
lib:libpng16$secondaryArchSuffix
|
||||
lib:libQt5Concurrent$secondaryArchSuffix
|
||||
lib:libQt5Core$secondaryArchSuffix
|
||||
lib:libQt5Gui$secondaryArchSuffix
|
||||
lib:libQt5Test$secondaryArchSuffix
|
||||
lib:libQt5Widgets$secondaryArchSuffix
|
||||
lib:libswscale$secondaryArchSuffix
|
||||
lib:libswresample$secondaryArchSuffix
|
||||
lib:libtiff$secondaryArchSuffix
|
||||
lib:libwebp$secondaryArchSuffix
|
||||
lib:libz$secondaryArchSuffix
|
||||
"
|
||||
|
||||
PROVIDES_tools="
|
||||
opencv3${secondaryArchSuffix}_tools = $portVersionCompat
|
||||
cmd:opencv_annotation$commandSuffix = $portVersion
|
||||
cmd:opencv_createsamples$commandSuffix = $portVersion
|
||||
cmd:opencv_interactive_calibration$commandSuffix = $portVersion
|
||||
cmd:opencv_traincascade$commandSuffix = $portVersion
|
||||
cmd:opencv_version$commandSuffix = $portVersion
|
||||
cmd:opencv_visualisation$commandSuffix = $portVersion
|
||||
cmd:opencv_waldboost_detector$commandSuffix = $portVersion
|
||||
"
|
||||
REQUIRES_tools="
|
||||
haiku$secondaryArchSuffix
|
||||
opencv3$secondaryArchSuffix == $portVersion base
|
||||
"
|
||||
|
||||
BUILD_REQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
devel:cblas$secondaryArchSuffix
|
||||
devel:eigen$secondaryArchSuffix
|
||||
ffmpeg${secondaryArchSuffix}_devel
|
||||
# devel:libavcodec$secondaryArchSuffix >= 58
|
||||
# devel:libavformat$secondaryArchSuffix >= 58
|
||||
# devel:libavutil$secondaryArchSuffix >= 56
|
||||
# devel:libcaffe$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:libilmimf_2_4$secondaryArchSuffix
|
||||
devel:libintl$secondaryArchSuffix
|
||||
devel:libjasper$secondaryArchSuffix
|
||||
devel:libjpeg$secondaryArchSuffix
|
||||
devel:liblapack$secondaryArchSuffix
|
||||
devel:libopenblas$secondaryArchSuffix
|
||||
devel:libopencl_headers$secondaryArchSuffix
|
||||
devel:liborc_0.4$secondaryArchSuffix
|
||||
devel:libpng16$secondaryArchSuffix
|
||||
# devel:libprotobuf$secondaryArchSuffix
|
||||
devel:libQt5Concurrent$secondaryArchSuffix
|
||||
devel:libQt5Core$secondaryArchSuffix
|
||||
devel:libQt5Gui$secondaryArchSuffix
|
||||
devel:libQt5Test$secondaryArchSuffix
|
||||
devel:libQt5Widgets$secondaryArchSuffix
|
||||
# devel:libswscale$secondaryArchSuffix >= 5
|
||||
# devel:libswresample$secondaryArchSuffix >= 3
|
||||
# devel:libtesseract$secondaryArchSuffix
|
||||
devel:libtiff$secondaryArchSuffix
|
||||
devel:libwebp$secondaryArchSuffix >= 7
|
||||
devel:libz$secondaryArchSuffix
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
# cmd:ant
|
||||
cmd:cmake
|
||||
cmd:doxygen
|
||||
# cmd:f2py${pythonVersion}
|
||||
cmd:gcc$secondaryArchSuffix
|
||||
# cmd:javac
|
||||
# cmd:jni
|
||||
cmd:ld$secondaryArchSuffix
|
||||
cmd:make
|
||||
# cmd:matlab # maybe later
|
||||
cmd:pkg_config$secondaryArchSuffix
|
||||
# cmd:python${pythonVersion}
|
||||
"
|
||||
|
||||
defineDebugInfoPackage opencv3$secondaryArchSuffix \
|
||||
$libDir/libopencv_calib3d.so.$libVersion \
|
||||
$libDir/libopencv_core.so.$libVersion \
|
||||
$libDir/libopencv_dnn.so.$libVersion \
|
||||
$libDir/libopencv_features2d.so.$libVersion \
|
||||
$libDir/libopencv_flann.so.$libVersion \
|
||||
$libDir/libopencv_highgui.so.$libVersion \
|
||||
$libDir/libopencv_imgcodecs.so.$libVersion \
|
||||
$libDir/libopencv_imgproc.so.$libVersion \
|
||||
$libDir/libopencv_ml.so.$libVersion \
|
||||
$libDir/libopencv_objdetect.so.$libVersion \
|
||||
$libDir/libopencv_photo.so.$libVersion \
|
||||
$libDir/libopencv_shape.so.$libVersion \
|
||||
$libDir/libopencv_stitching.so.$libVersion \
|
||||
$libDir/libopencv_superres.so.$libVersion \
|
||||
$libDir/libopencv_video.so.$libVersion \
|
||||
$libDir/libopencv_videoio.so.$libVersion \
|
||||
$libDir/libopencv_videostab.so.$libVersion
|
||||
|
||||
BUILD()
|
||||
{
|
||||
mkdir -p build_haiku && cd build_haiku
|
||||
|
||||
local ARCH_SUBDIR=
|
||||
if [ -n "$secondaryArchSuffix" ]; then
|
||||
ARCH_SUBDIR="$secondaryArchSuffix/"
|
||||
fi
|
||||
|
||||
cmake .. \
|
||||
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
||||
-DCMAKE_INSTALL_PREFIX:PATH="$prefix" \
|
||||
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
|
||||
-DWITH_GDAL=ON \
|
||||
-DWITH_IPP=OFF \
|
||||
-DWITH_LAPACK=OFF \
|
||||
-DWITH_OPENGL=OFF \
|
||||
-DWITH_QT=ON \
|
||||
-DWITH_EIGEN=ON \
|
||||
-DCMAKE_SKIP_RPATH=ON \
|
||||
-DENABLE_PIC=OFF \
|
||||
-DOPENCV_ENABLE_NONFREE=ON \
|
||||
-DOPENCV_WARNINGS_ARE_ERRORS=OFF \
|
||||
-DOPENCV_OTHER_INSTALL_PATH:PATH="$dataDir" \
|
||||
-DOpenBLAS_INCLUDE_DIR="$portPackageLinksDir/openblas${secondaryArchSuffix}_devel/develop/headers/$ARCH_SUBDIR" \
|
||||
-DOpenBLAS_LIB="$portPackageLinksDir/openblas${secondaryArchSuffix}_devel/develop/lib/$ARCH_SUBDIR" \
|
||||
-DBUILD_TESTS=OFF \
|
||||
-Wno-dev
|
||||
|
||||
export DISABLE_ASLR=1
|
||||
|
||||
make $jobArgs
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
cd build_haiku
|
||||
|
||||
make install
|
||||
|
||||
if [ -n "$secondaryArchSuffix" ]; then
|
||||
mkdir -p $libDir
|
||||
mv $prefix/lib/*.so* $libDir
|
||||
fi
|
||||
|
||||
prepareInstalledDevelLibs libopencv_calib3d \
|
||||
libopencv_core \
|
||||
libopencv_dnn \
|
||||
libopencv_features2d \
|
||||
libopencv_flann \
|
||||
libopencv_highgui \
|
||||
libopencv_imgcodecs \
|
||||
libopencv_imgproc \
|
||||
libopencv_ml \
|
||||
libopencv_objdetect \
|
||||
libopencv_photo \
|
||||
libopencv_shape \
|
||||
libopencv_stitching \
|
||||
libopencv_superres \
|
||||
libopencv_video \
|
||||
libopencv_videoio \
|
||||
libopencv_videostab
|
||||
|
||||
rm -rf $prefix/{share,include}
|
||||
rm -rf $dataDir/OpenCV
|
||||
rm -rf $prefix/lib/pkgconfig
|
||||
rm -rf $libDir/cmake $developDir
|
||||
|
||||
# tools package
|
||||
packageEntries tools \
|
||||
$prefix/bin
|
||||
}
|
||||
@@ -1,87 +0,0 @@
|
||||
From 5638939c5c2ec82c4b2a6d5b89f1e37c5c894962 Mon Sep 17 00:00:00 2001
|
||||
From: Begasus <begasus@gmail.com>
|
||||
Date: Sat, 24 Feb 2024 09:42:21 +0100
|
||||
Subject: Disable warnings/werror filling the screen output/failing the build
|
||||
|
||||
|
||||
diff --git a/cmake/OpenCVCompilerOptions.cmake b/cmake/OpenCVCompilerOptions.cmake
|
||||
index 30e4a00..ac22f23 100644
|
||||
--- a/cmake/OpenCVCompilerOptions.cmake
|
||||
+++ b/cmake/OpenCVCompilerOptions.cmake
|
||||
@@ -83,7 +83,7 @@ if(CV_ICC AND NOT ENABLE_FAST_MATH)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
-if(CV_GCC OR CV_CLANG)
|
||||
+if(CV_GCC OR CV_CLANG AND NOT HAIKU)
|
||||
# High level of warnings.
|
||||
add_extra_compiler_option(-W)
|
||||
add_extra_compiler_option(-Wall)
|
||||
@@ -110,6 +110,9 @@ if(CV_GCC OR CV_CLANG)
|
||||
add_extra_compiler_option(-Winconsistent-missing-override)
|
||||
endif()
|
||||
endif()
|
||||
+ if(HAIKU)
|
||||
+ add_definitions(-Wno-deprecated-copy)
|
||||
+ endif(HAIKU)
|
||||
|
||||
if(ENABLE_NOISY_WARNINGS)
|
||||
add_extra_compiler_option(-Wcast-align)
|
||||
--
|
||||
2.50.1
|
||||
|
||||
|
||||
From be436bf9aaef3f1c86d06f6d7c3e4d2454040256 Mon Sep 17 00:00:00 2001
|
||||
From: Schrijvers Luc <begasus@gmail.com>
|
||||
Date: Wed, 8 Jan 2025 15:17:38 +0100
|
||||
Subject: import upstream patch
|
||||
|
||||
|
||||
diff --git a/modules/imgcodecs/src/grfmt_jpeg2000.cpp b/modules/imgcodecs/src/grfmt_jpeg2000.cpp
|
||||
index b8b70fe..d03ce2e 100644
|
||||
--- a/modules/imgcodecs/src/grfmt_jpeg2000.cpp
|
||||
+++ b/modules/imgcodecs/src/grfmt_jpeg2000.cpp
|
||||
@@ -337,7 +337,7 @@ bool Jpeg2KDecoder::readComponent8u( uchar *data, void *_buffer,
|
||||
|
||||
for( y = 0; y < yend - ystart; )
|
||||
{
|
||||
- jas_seqent_t* pix_row = &jas_matrix_get( buffer, y / ystep, 0 );
|
||||
+ jas_seqent_t* pix_row = jas_matrix_getref( buffer, y / ystep, 0 );
|
||||
uchar* dst = data + (y - yoffset) * step - xoffset;
|
||||
|
||||
if( xstep == 1 )
|
||||
@@ -401,7 +401,7 @@ bool Jpeg2KDecoder::readComponent16u( unsigned short *data, void *_buffer,
|
||||
|
||||
for( y = 0; y < yend - ystart; )
|
||||
{
|
||||
- jas_seqent_t* pix_row = &jas_matrix_get( buffer, y / ystep, 0 );
|
||||
+ jas_seqent_t* pix_row = jas_matrix_getref( buffer, y / ystep, 0 );
|
||||
ushort* dst = data + (y - yoffset) * step - xoffset;
|
||||
|
||||
if( xstep == 1 )
|
||||
--
|
||||
2.50.1
|
||||
|
||||
|
||||
From ae15d1619a818d56ccebfd7ebe38081bbf1ee8d5 Mon Sep 17 00:00:00 2001
|
||||
From: Luc Schrijvers <begasus@gmail.com>
|
||||
Date: Sun, 5 Oct 2025 11:09:32 +0200
|
||||
Subject: Fix build for cmake >= 4
|
||||
|
||||
|
||||
diff --git a/cmake/OpenCVGenPkgconfig.cmake b/cmake/OpenCVGenPkgconfig.cmake
|
||||
index 425c0fa..9642a4b 100644
|
||||
--- a/cmake/OpenCVGenPkgconfig.cmake
|
||||
+++ b/cmake/OpenCVGenPkgconfig.cmake
|
||||
@@ -110,7 +110,7 @@ endif()
|
||||
# =============================================================================
|
||||
else() # DEFINED CMAKE_HELPER_SCRIPT
|
||||
|
||||
-cmake_minimum_required(VERSION 2.8.12.2)
|
||||
+cmake_minimum_required(VERSION 3.5)
|
||||
cmake_policy(SET CMP0012 NEW)
|
||||
include("${CMAKE_HELPER_SCRIPT}")
|
||||
include("${OpenCV_SOURCE_DIR}/cmake/OpenCVUtils.cmake")
|
||||
--
|
||||
2.50.1
|
||||
|
||||
Reference in New Issue
Block a user