[oe] [meta-oe][PATCH] opencv: Fix build with gcc 6.0
Khem Raj
raj.khem at gmail.com
Fri Aug 5 16:44:41 UTC 2016
> On Aug 5, 2016, at 9:38 AM, Ricardo Ribalda Delgado <ricardo.ribalda at gmail.com> wrote:
>
> It seems like gcc 6.0 does not have the same behaviour as previous 5.x
> with regards isystem flag.
>
> Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda at gmail.com>
> ---
> .../recipes-support/opencv/opencv/fixgcc60.patch | 30 ++++++++++++++++++++++
> meta-oe/recipes-support/opencv/opencv_3.1.bb | 4 +--
> 2 files changed, 31 insertions(+), 3 deletions(-)
> create mode 100644 meta-oe/recipes-support/opencv/opencv/fixgcc60.patch
>
> diff --git a/meta-oe/recipes-support/opencv/opencv/fixgcc60.patch b/meta-oe/recipes-support/opencv/opencv/fixgcc60.patch
> new file mode 100644
> index 000000000000..5d0bf97cab63
> --- /dev/null
> +++ b/meta-oe/recipes-support/opencv/opencv/fixgcc60.patch
> @@ -0,0 +1,30 @@
> +diff --git a/cmake/OpenCVPCHSupport.cmake b/cmake/OpenCVPCHSupport.cmake
> +index 28ccc1c6be4f..b0e1cbf77287 100644
> +--- a/cmake/OpenCVPCHSupport.cmake
> ++++ b/cmake/OpenCVPCHSupport.cmake
> +@@ -19,7 +19,7 @@ IF(CMAKE_COMPILER_IS_GNUCXX)
> + ARGS ${CMAKE_CXX_COMPILER_ARG1} -dumpversion
> + OUTPUT_VARIABLE gcc_compiler_version)
> + #MESSAGE("GCC Version: ${gcc_compiler_version}")
> +- IF(gcc_compiler_version VERSION_GREATER "4.2.-1")
> ++ IF(gcc_compiler_version VERSION_GREATER "4.2.-1" AND gcc_compiler_version VERSION_LESS "6.0.0")
> + SET(PCHSupport_FOUND TRUE)
> + ENDIF()
> +
> +diff --git a/cmake/OpenCVUtils.cmake b/cmake/OpenCVUtils.cmake
> +index 3a23cd73633d..1fea1578b1d9 100644
> +--- a/cmake/OpenCVUtils.cmake
> ++++ b/cmake/OpenCVUtils.cmake
> +@@ -76,7 +76,11 @@ function(ocv_include_directories)
> + if("${__abs_dir}" MATCHES "^${OpenCV_SOURCE_DIR}" OR "${__abs_dir}" MATCHES "^${OpenCV_BINARY_DIR}")
> + list(APPEND __add_before "${dir}")
> + else()
> +- include_directories(AFTER SYSTEM "${dir}")
> ++ if (gcc_compiler_version VERSION_LESS "6.0.0")
> ++ include_directories(AFTER SYSTEM "${dir}")
> ++ else()
> ++ include_directories(AFTER "${dir}")
> ++ endif()
I would rather prefer to see if need for -isystem can be completely removed.
> + endif()
> + endforeach()
> + include_directories(BEFORE ${__add_before})
> diff --git a/meta-oe/recipes-support/opencv/opencv_3.1.bb b/meta-oe/recipes-support/opencv/opencv_3.1.bb
> index c41baec7bba8..8ab9a2b4e071 100644
> --- a/meta-oe/recipes-support/opencv/opencv_3.1.bb
> +++ b/meta-oe/recipes-support/opencv/opencv_3.1.bb
> @@ -22,6 +22,7 @@ SRC_URI = "git://github.com/Itseez/opencv.git;name=opencv \
> git://github.com/Itseez/opencv_contrib.git;destsuffix=contrib;name=contrib \
> git://github.com/Itseez/opencv_3rdparty.git;branch=ippicv/master_20151201;destsuffix=party3;name=party3 \
> file://0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch \
> + file://fixgcc60.patch \
> file://fixpkgconfig.patch"
>
> PV = "3.1+git${SRCPV}"
> @@ -145,6 +146,3 @@ do_install_append() {
> install -d ${D}${datadir}/OpenCV/samples/bin/
> cp -f bin/*-tutorial-* bin/*-example-* ${D}${datadir}/OpenCV/samples/bin/
> }
> -
> -# http://errors.yoctoproject.org/Errors/Details/68617/
> -PNBLACKLIST[opencv] ?= "BROKEN: fails to build with gcc-6"
> --
> 2.8.1
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 204 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.openembedded.org/pipermail/openembedded-devel/attachments/20160805/f3198479/attachment-0002.sig>
More information about the Openembedded-devel
mailing list