svn commit: r389642 - in head/graphics: opencv opencv-core opencv-java py-opencv
Jason E. Hale
jhale at FreeBSD.org
Sun Jun 14 15:28:05 UTC 2015
Author: jhale
Date: Sun Jun 14 15:28:03 2015
New Revision: 389642
URL: https://svnweb.freebsd.org/changeset/ports/389642
Log:
- Add SIMD option to specifically disable CPU optimizations and prevent crashes
with ffmpeg on processors that do not support SSE instructions. OFF by
default for package building, ON with autodetect for ports to keep with
POLA. [1][2]
- Bump PORTREVISION on all opencv ports
PR: 199715 [1], 200234 [2]
Submitted by: Randy Westlund <rwestlun at gmail.com> [1], sasamotikomi at gmail.com [2]
Modified:
head/graphics/opencv-core/Makefile
head/graphics/opencv-java/Makefile
head/graphics/opencv/Makefile
head/graphics/py-opencv/Makefile
Modified: head/graphics/opencv-core/Makefile
==============================================================================
--- head/graphics/opencv-core/Makefile Sun Jun 14 15:15:42 2015 (r389641)
+++ head/graphics/opencv-core/Makefile Sun Jun 14 15:28:03 2015 (r389642)
@@ -1,7 +1,7 @@
# Created by: Martin Matuska <mm at FreeBSD.org>
# $FreeBSD$
-PORTREVISION= 2
+PORTREVISION= 3
PKGNAMESUFFIX= -${OCV_SLAVE}
COMMENT= OpenCV core libraries
Modified: head/graphics/opencv-java/Makefile
==============================================================================
--- head/graphics/opencv-java/Makefile Sun Jun 14 15:15:42 2015 (r389641)
+++ head/graphics/opencv-java/Makefile Sun Jun 14 15:28:03 2015 (r389642)
@@ -1,6 +1,6 @@
# $FreeBSD$
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= graphics java
PKGNAMESUFFIX= -${OCV_SLAVE}
Modified: head/graphics/opencv/Makefile
==============================================================================
--- head/graphics/opencv/Makefile Sun Jun 14 15:15:42 2015 (r389641)
+++ head/graphics/opencv/Makefile Sun Jun 14 15:28:03 2015 (r389642)
@@ -3,7 +3,7 @@
PORTNAME?= opencv
PORTVERSION= 2.4.9
-PORTREVISION?= 4
+PORTREVISION?= 5
CATEGORIES= graphics
MASTER_SITES= SF/${PORTNAME}library/${PORTNAME}-unix/${PORTVERSION}
@@ -42,7 +42,7 @@ OCV_NONFREE_MODS= nonfree
OCV_JAVA_MODS= java
OCV_PYTHON_MODS= python
-OPTIONS_DEFINE= DC1394 EXAMPLES NONFREE OPENGL
+OPTIONS_DEFINE= DC1394 EXAMPLES NONFREE OPENGL SIMD
OPTIONS_GROUP= IMAGE PERFORMANCE VIDEO
OPTIONS_GROUP_IMAGE= JASPER JPEG OPENEXR PNG TIFF
OPTIONS_GROUP_PERFORMANCE= EIGEN3 TBB
@@ -50,6 +50,9 @@ OPTIONS_GROUP_VIDEO= FFMPEG GSTREAMER V4
OPTIONS_RADIO= GUI
OPTIONS_RADIO_GUI= GTK2 QT4
OPTIONS_DEFAULT= EIGEN3 JASPER JPEG PNG TIFF V4L
+.if !defined(PACKAGE_BUILDING)
+OPTIONS_DEFAULT= SIMD
+.endif
OPTIONS_SUB= yes
.if defined(OCV_CORE)
OPTIONS_EXCLUDE= DC1394 EXAMPLES GTK2 QT4 JASPER JPEG NONFREE OPENEXR \
@@ -161,6 +164,35 @@ USE_QT4+= opengl
CMAKE_ARGS+= -DWITH_QT:BOOL=Off
.endif
+.if ${PORT_OPTIONS:MSIMD}
+. if ${MACHINE_CPU:Msse}
+CMAKE_ARGS+= -DENABLE_SSE:BOOL=On
+. else
+CMAKE_ARGS+= -DENABLE_SSE:BOOL=Off
+. endif
+. if ${MACHINE_CPU:Msse2}
+CMAKE_ARGS+= -DENABLE_SSE2:BOOL=On
+. else
+CMAKE_ARGS+= -DENABLE_SSE2:BOOL=Off
+. endif
+. if ${MACHINE_CPU:Msse3}
+CMAKE_ARGS+= -DENABLE_SSE3:BOOL=On
+. else
+CMAKE_ARGS+= -DENABLE_SSE3:BOOL=Off
+. endif
+# TODO: Add support for instructions above SSE3 (upstream has them off by default)
+CMAKE_ARGS+= -DENABLE_SSSE3:BOOL=Off \
+ -DENABLE_SSE41:BOOL=Off \
+ -DENABLE_SSE42:BOOL=Off
+.else
+CMAKE_ARGS+= -DENABLE_SSE:BOOL=Off \
+ -DENABLE_SSE2:BOOL=Off \
+ -DENABLE_SSE3:BOOL=Off \
+ -DENABLE_SSSE3:BOOL=Off \
+ -DENABLE_SSE41:BOOL=Off \
+ -DENABLE_SSE42:BOOL=Off
+.endif
+
.if ${PORT_OPTIONS:MTBB}
LIB_DEPENDS+= libtbb.so:${PORTSDIR}/devel/tbb
CMAKE_ARGS+= -DWITH_TBB:BOOL=On \
Modified: head/graphics/py-opencv/Makefile
==============================================================================
--- head/graphics/py-opencv/Makefile Sun Jun 14 15:15:42 2015 (r389641)
+++ head/graphics/py-opencv/Makefile Sun Jun 14 15:28:03 2015 (r389642)
@@ -1,7 +1,7 @@
# Created by: Martin Matuska <mm at FreeBSD.org>
# $FreeBSD$
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= graphics python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
More information about the svn-ports-all
mailing list