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
--- /dev/null
+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()
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
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
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)"
-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)"
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
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
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)"
-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)"
# 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
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)"
-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)"