commit:     d00cfe6700229442c37df3376a5b9220bc156a63
Author:     Zoltan Puskas <zoltan <AT> sinustrom <DOT> info>
AuthorDate: Mon Apr 16 00:55:14 2018 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed May 16 09:03:07 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d00cfe67

sci-electronics/kicad: Fix configuration issue with >=CMake-3.11

KiCad had a legacy redefinition of the CHECK_CXX_SYMBOL_EXISTS macro,
that is not needed since CMake-2.8.6. Upstream fix:
https://github.com/KiCad/kicad-source-mirror/commit/2e0b75c058d676f427328506bbf3bc10079da117
Also fixed src_configure().

Partial merge of https://github.com/gentoo/gentoo/pull/8020

Closes: https://bugs.gentoo.org/652204
Closes: https://bugs.gentoo.org/652736

Package-Manager: Portage-2.3.28, Repoman-2.3.9

 .../files/kicad-cmake-checkcxxsymbolexists.patch   | 46 ++++++++++++++++++++++
 sci-electronics/kicad/kicad-4.0.5-r1.ebuild        |  8 ++--
 sci-electronics/kicad/kicad-4.0.6.ebuild           |  8 ++--
 sci-electronics/kicad/kicad-4.0.7.ebuild           |  5 ++-
 4 files changed, 59 insertions(+), 8 deletions(-)

diff --git a/sci-electronics/kicad/files/kicad-cmake-checkcxxsymbolexists.patch 
b/sci-electronics/kicad/files/kicad-cmake-checkcxxsymbolexists.patch
new file mode 100644
index 00000000000..b2a1eeb2cc4
--- /dev/null
+++ b/sci-electronics/kicad/files/kicad-cmake-checkcxxsymbolexists.patch
@@ -0,0 +1,46 @@
+diff -Naur kicad-4.0.7.orig/CMakeModules/CheckCXXSymbolExists.cmake 
kicad-4.0.7/CMakeModules/CheckCXXSymbolExists.cmake
+--- kicad-4.0.7.orig/CMakeModules/CheckCXXSymbolExists.cmake   2017-08-28 
07:31:31.000000000 -0700
++++ kicad-4.0.7/CMakeModules/CheckCXXSymbolExists.cmake        1969-12-31 
16:00:00.000000000 -0800
+@@ -1,42 +0,0 @@
+-# - Check if a symbol exists as a function, variable, or macro in C++
+-# CHECK_CXX_SYMBOL_EXISTS(<symbol> <files> <variable>)
+-#
+-# Check that the <symbol> is available after including given header
+-# <files> and store the result in a <variable>.  Specify the list
+-# of files in one argument as a semicolon-separated list.
+-# CHECK_CXX_SYMBOL_EXISTS() can be used to check in C++ files, as opposed
+-# to CHECK_SYMBOL_EXISTS(), which works only for C.
+-#
+-# If the header files define the symbol as a macro it is considered
+-# available and assumed to work.  If the header files declare the
+-# symbol as a function or variable then the symbol must also be
+-# available for linking.  If the symbol is a type or enum value
+-# it will not be recognized (consider using CheckTypeSize or
+-# CheckCSourceCompiles).
+-#
+-# The following variables may be set before calling this macro to
+-# modify the way the check is run:
+-#
+-#  CMAKE_REQUIRED_FLAGS = string of compile command line flags
+-#  CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
+-#  CMAKE_REQUIRED_INCLUDES = list of include directories
+-#  CMAKE_REQUIRED_LIBRARIES = list of libraries to link
+-
+-#=============================================================================
+-# Copyright 2003-2011 Kitware, Inc.
+-#
+-# Distributed under the OSI-approved BSD License (the "License");
+-# see accompanying file Copyright.txt for details.
+-#
+-# This software is distributed WITHOUT ANY WARRANTY; without even the
+-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+-# See the License for more information.
+-#=============================================================================
+-# (To distribute this file outside of CMake, substitute the full
+-#  License text for the above reference.)
+-
+-include(CheckSymbolExists)
+-
+-macro(CHECK_CXX_SYMBOL_EXISTS SYMBOL FILES VARIABLE)
+-  
_CHECK_SYMBOL_EXISTS("${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckSymbolExists.cxx"
 "${SYMBOL}" "${FILES}" "${VARIABLE}" )
+-endmacro()

diff --git a/sci-electronics/kicad/kicad-4.0.5-r1.ebuild 
b/sci-electronics/kicad/kicad-4.0.5-r1.ebuild
index da56b49911b..2e59e1a1d63 100644
--- a/sci-electronics/kicad/kicad-4.0.5-r1.ebuild
+++ b/sci-electronics/kicad/kicad-4.0.5-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -62,9 +62,12 @@ pkg_setup() {
 
 src_prepare() {
        xdg_src_prepare
+       cmake-utils_src_prepare
 
        # Patch to work with >=boost 1.61
        eapply "${FILESDIR}/${PN}-boost-1.61.patch"
+       # Patch to work with >=cmake 3.11
+       eapply "${FILESDIR}/${PN}-cmake-checkcxxsymbolexists.patch"
 
        # Remove cvpcb desktop file as it does nothing
        rm "resources/linux/mime/applications/cvpcb.desktop" || die
@@ -127,8 +130,6 @@ src_prepare() {
 src_configure() {
        local mycmakeargs=(
                -DKICAD_DOCS="/usr/share/doc/${PF}"
-               -DKICAD_HELP="/usr/share/doc/${PF}/help"
-               -DwxUSE_UNICODE=ON
                -DKICAD_SKIP_BOOST=ON
                -DBUILD_GITHUB_PLUGIN="$(usex github)"
                -DKICAD_SCRIPTING="$(usex python)"
@@ -138,6 +139,7 @@ src_configure() {
                -DCMAKE_CXX_FLAGS="-std=c++11"
        )
        use python && mycmakeargs+=(
+               -DwxUSE_UNICODE=ON
                -DPYTHON_DEST="$(python_get_sitedir)"
                -DPYTHON_EXECUTABLE="${PYTHON}"
                -DPYTHON_INCLUDE_DIR="$(python_get_includedir)"

diff --git a/sci-electronics/kicad/kicad-4.0.6.ebuild 
b/sci-electronics/kicad/kicad-4.0.6.ebuild
index da56b49911b..2e59e1a1d63 100644
--- a/sci-electronics/kicad/kicad-4.0.6.ebuild
+++ b/sci-electronics/kicad/kicad-4.0.6.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -62,9 +62,12 @@ pkg_setup() {
 
 src_prepare() {
        xdg_src_prepare
+       cmake-utils_src_prepare
 
        # Patch to work with >=boost 1.61
        eapply "${FILESDIR}/${PN}-boost-1.61.patch"
+       # Patch to work with >=cmake 3.11
+       eapply "${FILESDIR}/${PN}-cmake-checkcxxsymbolexists.patch"
 
        # Remove cvpcb desktop file as it does nothing
        rm "resources/linux/mime/applications/cvpcb.desktop" || die
@@ -127,8 +130,6 @@ src_prepare() {
 src_configure() {
        local mycmakeargs=(
                -DKICAD_DOCS="/usr/share/doc/${PF}"
-               -DKICAD_HELP="/usr/share/doc/${PF}/help"
-               -DwxUSE_UNICODE=ON
                -DKICAD_SKIP_BOOST=ON
                -DBUILD_GITHUB_PLUGIN="$(usex github)"
                -DKICAD_SCRIPTING="$(usex python)"
@@ -138,6 +139,7 @@ src_configure() {
                -DCMAKE_CXX_FLAGS="-std=c++11"
        )
        use python && mycmakeargs+=(
+               -DwxUSE_UNICODE=ON
                -DPYTHON_DEST="$(python_get_sitedir)"
                -DPYTHON_EXECUTABLE="${PYTHON}"
                -DPYTHON_INCLUDE_DIR="$(python_get_includedir)"

diff --git a/sci-electronics/kicad/kicad-4.0.7.ebuild 
b/sci-electronics/kicad/kicad-4.0.7.ebuild
index 5f15284ffd5..d7108063bd5 100644
--- a/sci-electronics/kicad/kicad-4.0.7.ebuild
+++ b/sci-electronics/kicad/kicad-4.0.7.ebuild
@@ -72,6 +72,8 @@ src_prepare() {
 
        # Patch to work with >=boost 1.61
        eapply "${FILESDIR}/${PN}-boost-1.61.patch"
+       # Patch to work with >=cmake 3.11
+       eapply "${FILESDIR}/${PN}-cmake-checkcxxsymbolexists.patch"
 
        # Remove cvpcb desktop file as it does nothing
        rm "resources/linux/mime/applications/cvpcb.desktop" || die
@@ -128,8 +130,6 @@ src_prepare() {
 src_configure() {
        local mycmakeargs=(
                -DKICAD_DOCS="/usr/share/doc/${PF}"
-               -DKICAD_HELP="/usr/share/doc/${PF}/help"
-               -DwxUSE_UNICODE=ON
                -DKICAD_SKIP_BOOST=ON
                -DBUILD_GITHUB_PLUGIN="$(usex github)"
                -DKICAD_SCRIPTING="$(usex python)"
@@ -139,6 +139,7 @@ src_configure() {
                -DCMAKE_CXX_FLAGS="-std=c++11"
        )
        use python && mycmakeargs+=(
+               -DwxUSE_UNICODE=ON
                -DPYTHON_DEST="$(python_get_sitedir)"
                -DPYTHON_EXECUTABLE="${PYTHON}"
                -DPYTHON_INCLUDE_DIR="$(python_get_includedir)"

Reply via email to