# $NetBSD: Makefile.common,v 1.11 2021/10/10 12:54:13 wiz Exp $
# used by graphics/opencv/Makefile
# used by graphics/opencv-contrib-face/Makefile
#
# DO NOT FORGET to regen graphics/opencv-contrib-face/distinfo!

OPENCV_VERSION=	3.4.16

CATEGORIES=	graphics devel
MASTER_SITES=	${MASTER_SITE_GITHUB:=opencv/}

HOMEPAGE=	https://opencv.org/
LICENSE=	modified-bsd

PATCHDIR=	${.CURDIR}/../../graphics/opencv/patches

USE_CMAKE=		yes
USE_LANGUAGES=		c c++11
USE_PKGLOCALEDIR=	yes
USE_TOOLS+=		gmake pkg-config
CONFIGURE_DIRS+=	build
CONFIGURE_ENV+=		MACHINE_ARCH=${MACHINE_ARCH}

CHECK_PORTABILITY_SKIP+=	platforms/ios/cmake/Toolchains/xcodebuild_wrapper.in

CMAKE_ARG_PATH=		${WRKSRC}
CMAKE_ARGS+=		-DBUILD_PROTOBUF=OFF
CMAKE_ARGS+=		-DCV_ENABLE_INTRINSICS=OFF # XXX: problematic
CMAKE_ARGS+=		-DENABLE_CCACHE=OFF
CMAKE_ARGS+=		-DOPENCV_GENERATE_SETUPVARS=OFF
CMAKE_ARGS+=		-DPROTOBUF_UPDATE_FILES=ON
CMAKE_ARGS+=		-DWITH_EIGEN=OFF
CMAKE_ARGS+=		-DZLIB_ROOT=${BUILDLINK_PREFIX.zlib}
CMAKE_ARGS.SunOS+=	-DENABLE_PRECOMPILED_HEADERS=OFF
CMAKE_ARGS.SunOS+=	-DOPENCV_PYTHON_SKIP_LINKER_EXCLUDE_LIBS=ON

.include "../../mk/bsd.prefs.mk"

.if ${MACHINE_ARCH} == "i386"
# Disable SSE/SSE2 to avoid build errors from missing _mm_pause.
CMAKE_ARGS+=		-DCPU_BASELINE=""
.endif

PYTHON_VERSIONS_INCOMPATIBLE=	27	# avoid Python 2.7

pre-configure:
	${MKDIR} ${WRKSRC}/build

.include "../../mk/atomic64.mk"
.include "../../lang/python/pyversion.mk"