summaryrefslogtreecommitdiff
path: root/sci-electronics/kicad
diff options
context:
space:
mode:
Diffstat (limited to 'sci-electronics/kicad')
-rw-r--r--sci-electronics/kicad/Manifest11
-rw-r--r--sci-electronics/kicad/files/kicad-4.0.4-boost-context.patch107
-rw-r--r--sci-electronics/kicad/kicad-4.0.4.ebuild204
-rw-r--r--sci-electronics/kicad/kicad-5.0.0.ebuild123
-rw-r--r--sci-electronics/kicad/metadata.xml2
5 files changed, 128 insertions, 319 deletions
diff --git a/sci-electronics/kicad/Manifest b/sci-electronics/kicad/Manifest
index 3e0e609c1051..749fd14c0c94 100644
--- a/sci-electronics/kicad/Manifest
+++ b/sci-electronics/kicad/Manifest
@@ -1,16 +1,11 @@
-AUX kicad-4.0.4-boost-context.patch 3859 BLAKE2B 9a96afb2bcde041d26af382827a95bead2b8da6e7202c74cdbe5f879d27dc37b4868c5158f5ab5484e2cb8c298e3041dc8100b0920eab25d8fbd3dd89a585786 SHA512 187777139b2c07408ee0fcf62380add34347c56b843d4d6d87fa5934c85b026b7905206fee26c24a6b7607238539fa9c05956970557757876544924ac51e9e22
AUX kicad-boost-1.61.patch 9565 BLAKE2B edfafc5a9ef70ace413f7b1fb1c0a47fb4abc4bd52f0ec085d5449b5dc7bea454f16e809ea0c12a274f809bd52549507aefee6e34c9f32bf341449e6de2c87cf SHA512 a960117a4c08144de5111e76a33f208a9b3fe702d10ec2546afc57faf3de3fccfe19b5a5c62b527953d55687e644ed67c9b560cd3baf8b678d127977f3f30cee
AUX kicad-cmake-checkcxxsymbolexists.patch 2353 BLAKE2B 38d173c8c47c623b1c2f62b58367fe8536d9349ac1a6c64368b481921b1477d73a126e2be6806b0a5f4404a586a318ca685a67ecac30ebc1a402c518d65680da SHA512 3d11ebd04dcd3b4f08de3b8c2f3e2d5b5022421caea4ca69ab22f45865f6ead5196bb5bc423761679f9259030cc2c8958cc27d9309a8485c69f5ef7393e330cc
AUX kicad-footprints-cmakelists.txt 449 BLAKE2B d9bdcead011c5ece55c503bd6314de6daa107501152d4e3bc6f7f38dfd99405cf11da67df923df415657b84d50d4ef4f608307b2de23cc7458d8abc4cc03b9d8 SHA512 d101e28f8f5f00946a23839193bf83379da121d36bcf67f25b14b02cb5c2a4ff9a392db5b3676687bd26c0d61453313ce704192dd1e4e73834eb9930a07ee822
-DIST kicad-4.0.4-i18n.tar.gz 2409039 BLAKE2B 95e0e8c8b001957df1f244ba5fef5b36658c75b3c903b495faab8c8ccb524d02dbb79b0197fa0485fc5f93a5a0088861bada57cd85d7982191437bdf8f7b1f3c SHA512 5fcbf54aeff92c142652908dda9e727e8b076aec4531f2bb4d27aa9fd946e92621141a9709a9469c133010cca019e4e6bc9731366e8c1adbe38078f5a6fcaedf
-DIST kicad-4.0.4.tar.xz 10672424 BLAKE2B 16bef2545e697757be270eeff6820e75b1a79a37528f264e127587131c519cbdf67a774a4a9a8ff32c90b236279746ffd2164cb4d8885dc68d2664ef3dd178de SHA512 230eb10d42e004c51d790db0d21dc08653944ca6cc4b728ad34b506f1a2b009c23369ddae417c8fafd420cb8045900dd4145cd1071867c759ab406dd12be3242
DIST kicad-4.0.7-i18n.tar.gz 2578242 BLAKE2B 610f580d9584cf9ef96686c3d7b7081d4c3a0d2c670482eaa2ef32720a7e71630670845a6050bae8e51df7ac41e30f73d3d11be65ea477ad9efd9fbb5176e2df SHA512 4880705fd7e95c939b7f5e2b7730fd37c426be10596f4cfa80d7df102d9e67232621900395d45f4e735986054f74fb215ae2002a2818faae32b1c75e3cb7e10a
DIST kicad-4.0.7.tar.xz 10678656 BLAKE2B 54be9a3f5ae6378ac05cb327c28b1a358d895e736a116e1bf5151f021973b9510eab4671a67f222c3be2ef67929954b9576c5c28ef2b6a14708f8c019729969b SHA512 7b2acd9efadf5d48565f71bd0df2474ecc8fc04145953c13ac27363d48dbe6b0de091e311713635f603aed89ce0759a1d623abb37a139e2c87184ca4e717145b
-DIST kicad-footprints-4.0.4.tar.gz 1400434 BLAKE2B eaf81e977a3d65305034f60eff18f6955cf6b805c2a28a2019c4bb2bd8de9868906a0f9e5ac17810c4779940c6b78e06472661966775cfb196b8cd8fc1ae4083 SHA512 7d42eea2c7c84961e05e0e61d6380e3d294d696e1321bb4406391125379fd6a3dc2b38e7ff8be51b684786bed892738452218f4c5a95c547319f1eaafc0cea6e
+DIST kicad-5.0.0.tar.xz 14284708 BLAKE2B 9f4414c4476aca8f2da1d7171b53f56d5ea216f11fc025695a228f93ec05e2f271cbab8429ed39445602a3a0707a31d44cce83eae0ad651167c471f52f3867cd SHA512 79d4d34e8eaa5b6e4c7baac39a76f86af89adbaf3f9181b8cd846ed3a8db1b4c6dd7a36efefda3394d33ef828917909ad3bd8bb22435af9c6f671efbff125b42
DIST kicad-footprints-4.0.7.tar.gz 4758012 BLAKE2B ca7ddcad3d1ca658d0d5b7c0a4a0e9a3906619bdbf14195b3bd14c528c01b6e9c1f185036ad495fc88a33a53040ae4d338230d8b2bbb598a69a1c07ddfec3cce SHA512 9ba08f528d4b3fa6f165a20333ad2e0f6bc4165b51da77bdb080ad2c8cc12c029927ddb2f6aa669b4dac5fac52b8bdbec803d1b7b3fc639e9481bb866b8e3d6f
-DIST kicad-libcontext.tar.gz 25599 BLAKE2B b8871ab552745dfe29504b97c3c3e23f9e63100ef108c5a116512029f4973791e3d2bca240877319ee177f0a28da4a7946ae5cfaf18eaca0f5b0b1660335a520 SHA512 3b469dcf0e0f4e23f304d0068468a99516e89588d8f36a821af10e751f919cb8a9077d52109fdd43c1c2a443e026b38d0d3aa4774823d05755c9db35742d32d9
-DIST kicad-library-4.0.4.tar.gz 87947075 BLAKE2B b9176ad7ba05f32a5ed42012818a7636fd0f8993630627480557c3d8ab99884b31090f66f438a86dbc842677629cca629333be1d7b05f06a3c12373e57622954 SHA512 57f905277cf581cfda6ca574d87bbdd3a870cd240a151b2c8faedc7ecbfa2cc122b67937cbdbf028be77727cdf4fac9cdc3512ce5bfe80d0f6cbb4f444ccfd6c
DIST kicad-library-4.0.7.tar.gz 475804416 BLAKE2B 0d6df1df7a72258e896552551996ff13e985976e03b6aafbe900dcc04c9b8eb6e5c1abc242ae5020c1bd20b51e9cc1e60f520b478954edcb6368db7f9ee46df0 SHA512 c5365e18e806102aace785895259deca708a61e0ce37262f5ee2482a8a1f86bc9ce1d37e0fb63cb0661bd5c71064ac36ca2260c9c02ed9790744eedd0a5b5360
-EBUILD kicad-4.0.4.ebuild 7381 BLAKE2B a0368f595f54dcaf15d4053be3be8cfdbba40b4729f5e68700e2e970792eeba8b50e8eadd2c2e84de3fd6831f5d0a004ee8128c06809851c11bd6eea8fbb49a8 SHA512 c7784cab7473803eb7c51b62fe09c48d38b1f27dc9b33382cd5a7194fc08572f2024aa8d4564ff2f51eb1b1e651eadf6e389ee25b7d01eb2953ca04bc7a2d3c4
EBUILD kicad-4.0.7.ebuild 6655 BLAKE2B d5b54ce74ca3028d62c6d4ebf52992c7bf12eb2f5c519ed487914d1763ab3589f3cfd831f79f3080d95b85c157296c85aea78990e44f497656208431a3b6d3f0 SHA512 16f19bcb4fd206a24ab06f049b86aa6f1724bd8d0bfdebd804cc1eb50109f00b7ad7b9327d20abefb3527ff962e76c46640854d6bb2c393317c876e9d9e64625
-MISC metadata.xml 971 BLAKE2B 7f048f2b1d87a7590f0d2bee633f18913e735253b5c6bf209e95ed250c3b0071032860ada3482d52140acf249958b0266748c3367cf71b3ce7a8e1f0148deb54 SHA512 17e95b02c75fb0b36ef3e9f4ab4cc04e98bfb42481cc45f6860f8767cdc56941a140b2f0a417fde62e4644e386439eccc9d04f652914f01701d6c6e4ee86795f
+EBUILD kicad-5.0.0.ebuild 2897 BLAKE2B 14f9126db3e5e7ffa1d359e487548406eabb5bc6ac99b87a8c5ab44fc54afa995b278dc6541ffb2efaca9a690bade7c7a8766af6111a15149fe593fa45d10966 SHA512 5f94dc6ddea07feb318e9399d5ef26bbf2e45c7f673341dc80565eae66e92d451f801c62b9e0f03de7635efe0bf5243284cbcd0a83c7d28eebc837a21c5c45da
+MISC metadata.xml 1100 BLAKE2B 07817b27f0ef057df1374ea3e480c934585c4fe284e5bd24e33551e8ac6ce44c6937704f13645838f27e8693123439cc25cf873b4d53f11342ef1dc820876ccb SHA512 45d21ce8f297512d6b48a750851b03a9ab306bc72c49cd2b367fea7471fdba28f9261ad279e96c32167298dddab77f4c93ea2288c24458281186f75177078226
diff --git a/sci-electronics/kicad/files/kicad-4.0.4-boost-context.patch b/sci-electronics/kicad/files/kicad-4.0.4-boost-context.patch
deleted file mode 100644
index 529a82c018f9..000000000000
--- a/sci-electronics/kicad/files/kicad-4.0.4-boost-context.patch
+++ /dev/null
@@ -1,107 +0,0 @@
-diff -Naur kicad-4.0.2-orig/common/system/libcontext.cpp kicad-4.0.2/common/system/libcontext.cpp
---- kicad-4.0.2-orig/common/system/libcontext.cpp 2016-06-16 22:30:58.000000000 -0700
-+++ kicad-4.0.2/common/system/libcontext.cpp 2016-06-16 22:35:46.654719468 -0700
-@@ -13,7 +13,7 @@
- http://www.boost.org/LICENSE_1_0.txt)
-
- */
--#include "libcontext.h"
-+#include <system/libcontext.h>
- #if defined(LIBCONTEXT_PLATFORM_windows_i386) && defined(LIBCONTEXT_COMPILER_gcc)
- __asm (
- ".text\n"
-diff -Naur kicad-4.0.2-orig/CMakeLists.txt kicad-4.0.2/CMakeLists.txt
---- kicad-4.0.2-orig/CMakeLists.txt 2016-02-13 13:14:42.000000000 -0800
-+++ kicad-4.0.2/CMakeLists.txt 2016-06-11 01:11:25.623484908 -0700
-@@ -561,7 +561,7 @@
- # Download boost and possibly build parts of it
- #################################################
- if( KICAD_SKIP_BOOST )
-- find_package( Boost 1.54.0 REQUIRED COMPONENTS context date_time filesystem iostreams locale
-+ find_package( Boost 1.54.0 REQUIRED COMPONENTS date_time filesystem iostreams locale
- program_options regex system thread )
-
- if( NOT Boost_FOUND )
-diff -Naur kicad-4.0.2-orig/common/CMakeLists.txt kicad-4.0.2/common/CMakeLists.txt
---- kicad-4.0.2-orig/common/CMakeLists.txt 2016-02-13 13:14:42.000000000 -0800
-+++ kicad-4.0.2/common/CMakeLists.txt 2016-06-11 01:10:04.886830434 -0700
-@@ -256,6 +256,8 @@
- view/view_item.cpp
- view/view_group.cpp
-
-+ system/libcontext.cpp
-+
- math/math_util.cpp
-
- tool/tool_action.cpp
-diff -Naur kicad-4.0.2-orig/include/tool/coroutine.h kicad-4.0.2/include/tool/coroutine.h
---- kicad-4.0.2-orig/include/tool/coroutine.h 2016-02-13 13:14:42.000000000 -0800
-+++ kicad-4.0.2/include/tool/coroutine.h 2016-06-11 01:07:06.035378422 -0700
-@@ -27,8 +27,7 @@
-
- #include <cstdlib>
-
--#include <boost/context/fcontext.hpp>
--#include <boost/version.hpp>
-+#include <system/libcontext.h>
-
- #include "delegate.h"
-
-@@ -92,10 +91,8 @@
- if( m_saved )
- delete m_saved;
-
--#if BOOST_VERSION >= 105600
- if( m_self )
- delete m_self;
--#endif
-
- if( m_stack )
- free( m_stack );
-@@ -156,13 +153,9 @@
- assert( m_saved == NULL );
-
- m_args = &aArgs;
--#if BOOST_VERSION >= 105600
-- m_self = new boost::context::fcontext_t();
-- *m_self = boost::context::make_fcontext( sp, m_stackSize, callerStub );
--#else
-- m_self = boost::context::make_fcontext( sp, m_stackSize, callerStub );
--#endif
-- m_saved = new boost::context::fcontext_t();
-+ m_self = new fcontext_t();
-+ *m_self = make_fcontext( sp, m_stackSize, callerStub );
-+ m_saved = new fcontext_t();
-
- m_running = true;
- // off we go!
-@@ -222,14 +215,10 @@
- }
-
- ///> Wrapper for jump_fcontext to assure compatibility between different boost versions
-- static inline intptr_t jump(boost::context::fcontext_t* aOld, boost::context::fcontext_t* aNew,
-+ static inline intptr_t jump(fcontext_t* aOld, fcontext_t* aNew,
- intptr_t aP, bool aPreserveFPU = true )
- {
--#if BOOST_VERSION >= 105600
-- return boost::context::jump_fcontext( aOld, *aNew, aP, aPreserveFPU );
--#else
-- return boost::context::jump_fcontext( aOld, aNew, aP, aPreserveFPU );
--#endif
-+ return jump_fcontext( aOld, *aNew, aP, aPreserveFPU );
- }
-
- template <typename T>
-@@ -252,10 +241,10 @@
- ReturnType m_retVal;
-
- ///< saved caller context
-- boost::context::fcontext_t* m_saved;
-+ fcontext_t* m_saved;
-
- ///< saved coroutine context
-- boost::context::fcontext_t* m_self;
-+ fcontext_t* m_self;
-
- ///< coroutine stack
- void* m_stack;
diff --git a/sci-electronics/kicad/kicad-4.0.4.ebuild b/sci-electronics/kicad/kicad-4.0.4.ebuild
deleted file mode 100644
index 6c75dc7aba9b..000000000000
--- a/sci-electronics/kicad/kicad-4.0.4.ebuild
+++ /dev/null
@@ -1,204 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-PYTHON_COMPAT=( python2_7 )
-
-WX_GTK_VER="3.0"
-
-inherit cmake-utils eutils flag-o-matic gnome2-utils python-single-r1 wxwidgets vcs-snapshot versionator xdg
-
-DESCRIPTION="Electronic Schematic and PCB design tools."
-HOMEPAGE="http://www.kicad-pcb.org"
-LIBCONTEXT_COMMIT="3d92a1a50f4749b5a92131a957c9615473be85b4"
-
-SERIES=$(get_version_component_range 1-2)
-
-SRC_URI="https://launchpad.net/${PN}/${SERIES}/${PV}/+download/${P}.tar.xz
- !minimal? (
- http://downloads.kicad-pcb.org/libraries/${PN}-footprints-${PV}.tar.gz
- http://downloads.kicad-pcb.org/libraries/kicad-library-${PV}.tar.gz
- )
- i18n? ( https://github.com/KiCad/${PN}-i18n/archive/${PV}.tar.gz -> ${P}-i18n.tar.gz )
- https://github.com/twlostow/libcontext/archive/${LIBCONTEXT_COMMIT}.tar.gz -> ${PN}-libcontext.tar.gz"
-
-LICENSE="GPL-2+ GPL-3+ Boost-1.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="debug doc examples github i18n libressl minimal +python"
-LANGS="bg ca cs de el es fi fr hu it ja ko nl pl pt ru sk sl sv zh-CN"
-for lang in ${LANGS} ; do
- IUSE="${IUSE} l10n_${lang}"
-done
-unset lang
-
-REQUIRED_USE="
- python? ( ${PYTHON_REQUIRED_USE} )"
-
-COMMON_DEPEND="x11-libs/wxGTK:${WX_GTK_VER}[X,opengl]
- python? (
- dev-python/wxpython:${WX_GTK_VER}[opengl,${PYTHON_USEDEP}]
- ${PYTHON_DEPS}
- )
- >=dev-libs/boost-1.56[nls,threads,python?]
- github? (
- libressl? ( dev-libs/libressl:0 )
- !libressl? ( dev-libs/openssl:0 )
- )
- media-libs/glew:0=
- media-libs/freeglut
- media-libs/mesa
- sys-libs/zlib
- x11-libs/cairo"
-DEPEND="${COMMON_DEPEND}
- doc? ( app-doc/doxygen )
- i18n? ( virtual/libintl )
- python? ( dev-lang/swig:0 )"
-RDEPEND="${COMMON_DEPEND}
- sci-electronics/electronics-menu"
-
-pkg_setup() {
- python-single-r1_pkg_setup
-}
-
-src_prepare() {
- xdg_src_prepare
-
- # Add separated out libcontext files and patch source to use them
- mkdir -p "${S}/common/system/" || die
- mkdir -p "${S}/include/system/" || die
- cp "${WORKDIR}/${PN}-libcontext/libcontext.cpp" "${S}/common/system/libcontext.cpp" || die
- cp "${WORKDIR}/${PN}-libcontext/libcontext.h" "${S}/include/system/libcontext.h" || die
- # Path source to use new "built in" libcontext. Also patch libcontext.cpp to have correct include file.
- # Path must be applied after new libcontext files have been copied to the kicad source directory.
- epatch "${FILESDIR}/${P}-boost-context.patch"
-
- # remove all the non unix file endings
- edos2unix $(find "${S}" -type f -name "*.desktop")
-
- # Remove cvpcb desktop file while it does nothing
- rm "${WORKDIR}/${P}/resources/linux/mime/applications/cvpcb.desktop" || die
-
- # Handle optional minimal install.
- if use minimal; then
- # remove templates as they are not needed to run binaries
- sed -e '/add_subdirectory( template )/d' -i CMakeLists.txt || die
- else
- # create a link to the parts library in the main project folder
- ln -s "${WORKDIR}/kicad-library-${PV}" "${S}/${PN}-library" || die
- # create a link to the footprints library and add cmake build rule for it
- ln -s "${WORKDIR}/${PN}-footprints-${PV}" "${S}/${PN}-footprints" || die
- cp "${FILESDIR}/${PN}-footprints-cmakelists.txt" "${WORKDIR}/${PN}-footprints-${PV}/CMakeLists.txt" || die
- # add the libraries directory to cmake as a subproject to build
- sed "/add_subdirectory( bitmaps_png )/a add_subdirectory( ${PN}-library )" -i CMakeLists.txt || die
- # add the footprints directory to cmake as a subproject to build
- sed "/add_subdirectory( ${PN}-library )/a add_subdirectory( ${PN}-footprints )" -i CMakeLists.txt || die
- # remove duplicate uninstall directions for the library module
- sed '/make uninstall/,/# /d' -i ${PN}-library/CMakeLists.txt || die
- fi
-
- # Add internationalization for the GUI
- if use i18n; then
- # create a link to the translations library in the main project folder
- ln -s "${WORKDIR}/${P}-i18n" "${S}/${PN}-i18n" || die
- # Remove unused languages. Project generates only languages specified in the
- # file in LINGUAS in the subproject folder. By default all languages are added
- # so we sed out the unused ones based on the user l10n_* settings.
- local lang
- for lang in ${LANGS}; do
- if ! use l10n_${lang}; then
- lang="${lang//-/_}"
- sed "/${lang}/d" -i ${PN}-i18n/LINGUAS || die
- fi
- done
- # cmakelists does not respect our build dir variables, so make it point to the right location
- sed "s|\${CMAKE_BINARY_DIR}|${WORKDIR}/${P}_build|g" -i ${PN}-i18n/CMakeLists.txt || die
- # we also make from the master project so the source dir is understood incorretly, replace that too
- sed "s|\${CMAKE_SOURCE_DIR}/\${LANG}|\${CMAKE_SOURCE_DIR}/${PN}-i18n/\${LANG}|g" -i ${PN}-i18n/CMakeLists.txt || die
- # add the translations directory to cmake as a subproject to build
- sed "/add_subdirectory( bitmaps_png )/a add_subdirectory( ${PN}-i18n )" -i CMakeLists.txt || die
- # remove duplicate uninstall directions for the translation module
- sed '/make uninstall/,$d' -i ${PN}-i18n/CMakeLists.txt || die
- fi
-
- # Install examples in the right place if requested
- if use examples; then
- # install demos into the examples folder too
- sed -e 's:${KICAD_DATA}/demos:${KICAD_DOCS}/examples:' -i CMakeLists.txt || die
- else
- # remove additional demos/examples as its not strictly required to run the binaries
- sed -e '/add_subdirectory( demos )/d' -i CMakeLists.txt || die
- fi
-
- # Add important missing doc files
- sed -e 's/INSTALL.txt/AUTHORS.txt CHANGELOG.txt README.txt TODO.txt/' -i CMakeLists.txt || die
-}
-
-src_configure() {
- local mycmakeargs=(
- -DPYTHON_DEST="$(python_get_sitedir)"
- -DPYTHON_EXECUTABLE="${PYTHON}"
- -DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
- -DPYTHON_LIBRARY="$(python_get_library_path)"
- -DKICAD_DOCS="/usr/share/doc/${PF}"
- -DKICAD_HELP="/usr/share/doc/${PF}/help"
- -DKICAD_REPO_NAME="stable"
- -DKICAD_BUILD_VERSION="${PV}"
- -DwxUSE_UNICODE=ON
- -DKICAD_SKIP_BOOST=ON
- $(cmake-utils_use github BUILD_GITHUB_PLUGIN)
- $(cmake-utils_use python KICAD_SCRIPTING)
- $(cmake-utils_use python KICAD_SCRIPTING_MODULES)
- $(cmake-utils_use python KICAD_SCRIPTING_WXPYTHON)
- $(usex i18n "-DKICAD_I18N_UNIX_STRICT_PATH=1" "")
- )
- if use debug; then
- append-cxxflags "-DDEBUG"
- append-cflags "-DDEBUG"
- fi
- cmake-utils_src_configure
-}
-
-src_compile() {
- cmake-utils_src_compile
- if use doc; then
- doxygen Doxyfile || die
- fi
-}
-
-src_install() {
- cmake-utils_src_install
- use python && python_optimize
- if use doc ; then
- dodoc uncrustify.cfg
- cd Documentation || die
- dodoc -r GUI_Translation_HOWTO.pdf guidelines/UIpolicies.txt doxygen/.
- fi
-}
-
-pkg_preinst() {
- xdg_pkg_preinst
- gnome2_icon_savelist
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
- gnome2_icon_cache_update
-
- if use minimal ; then
- ewarn "If the schematic and/or board editors complain about missing libraries when you"
- ewarn "open old projects, you will have to take one or more of the following actions :"
- ewarn "- Install the missing libraries manually."
- ewarn "- Remove the libraries from the 'Libs and Dir' preferences."
- ewarn "- Fix the libraries' locations in the 'Libs and Dir' preferences."
- ewarn "- Emerge ${PN} without the 'minimal' USE flag."
- fi
- elog ""
- elog "You may want to emerge media-gfx/wings if you want to create 3D models of components."
- elog "For help and extended documentation emerge app-doc/kicad-doc."
-}
-
-pkg_postrm() {
- xdg_pkg_postrm
- gnome2_icon_cache_update
-}
diff --git a/sci-electronics/kicad/kicad-5.0.0.ebuild b/sci-electronics/kicad/kicad-5.0.0.ebuild
new file mode 100644
index 000000000000..d1a689a120a4
--- /dev/null
+++ b/sci-electronics/kicad/kicad-5.0.0.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 )
+
+WX_GTK_VER="3.0"
+
+inherit check-reqs cmake-utils eapi7-ver eutils gnome2-utils python-single-r1 wxwidgets xdg
+
+DESCRIPTION="Electronic Schematic and PCB design tools"
+HOMEPAGE="http://www.kicad-pcb.org"
+SRC_URI="https://launchpad.net/${PN}/$(ver_cut 1-2)/${PV}/+download/${P}.tar.xz"
+
+LICENSE="GPL-2+ GPL-3+ Boost-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="doc examples github +ngspice +oce +python"
+
+REQUIRED_USE="
+ python? ( ${PYTHON_REQUIRED_USE} )
+"
+
+COMMON_DEPEND=">=x11-libs/wxGTK-3.0.2:${WX_GTK_VER}[X,opengl]
+ python? (
+ dev-python/wxpython:${WX_GTK_VER}[opengl,${PYTHON_USEDEP}]
+ ${PYTHON_DEPS}
+ )
+ >=dev-libs/boost-1.61[context,nls,threads,python?,${PYTHON_USEDEP}]
+ github? (
+ net-misc/curl[ssl]
+ )
+ media-libs/glew:0=
+ media-libs/glm
+ media-libs/freeglut
+ media-libs/mesa
+ ngspice? (
+ sci-electronics/ngspice[shared]
+ )
+ oce? (
+ sci-libs/oce
+ )
+ x11-libs/cairo"
+DEPEND="${COMMON_DEPEND}
+ doc? ( app-doc/doxygen )
+ python? ( dev-lang/swig:0 )"
+RDEPEND="${COMMON_DEPEND}
+ sci-electronics/electronics-menu
+"
+CHECKREQS_DISK_BUILD="800M"
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+ setup-wxwidgets
+ check-reqs_pkg_setup
+}
+
+src_prepare() {
+ xdg_src_prepare
+ cmake-utils_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DKICAD_DOCS="/usr/share/doc/${PF}"
+ -DBUILD_GITHUB_PLUGIN="$(usex github)"
+ -DKICAD_SCRIPTING="$(usex python)"
+ -DKICAD_SCRIPTING_MODULES="$(usex python)"
+ -DKICAD_SCRIPTING_WXPYTHON="$(usex python)"
+ -DKICAD_SPICE="$(usex ngspice)"
+ -DKICAD_USE_OCC=OFF
+ -DKICAD_INSTALL_DEMOS="$(usex examples)"
+ )
+ use python && mycmakeargs+=(
+ -DPYTHON_DEST="$(python_get_sitedir)"
+ -DPYTHON_EXECUTABLE="${PYTHON}"
+ -DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
+ -DPYTHON_LIBRARY="$(python_get_library_path)"
+ )
+ use amd64 && use oce && mycmakeargs+=(
+ -DKICAD_USE_OCE=ON
+ )
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+ if use doc; then
+ doxygen Doxyfile || die
+ fi
+}
+
+src_install() {
+ cmake-utils_src_install
+ use python && python_optimize
+ if use doc ; then
+ dodoc uncrustify.cfg
+ cd Documentation || die
+ dodoc -r doxygen/.
+ fi
+}
+
+pkg_preinst() {
+ xdg_pkg_preinst
+}
+
+pkg_postinst() {
+ optfeature "Component symbols library" sci-electronics/kicad-symbols
+ optfeature "Component footprints library" sci-electronics/kicad-footprints
+ optfeature "3D models of components " sci-electronics/kicad-packages3d
+ optfeature "Project templates" sci-electronics/kicad-templates
+ optfeature "Different languages for GUI" sci-electronics/kicad-i18n
+ optfeature "Extended documentation" app-doc/kicad-doc
+ optfeature "Creating 3D models of components" media-gfx/wings
+
+ xdg_pkg_postinst
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ gnome2_icon_cache_update
+}
diff --git a/sci-electronics/kicad/metadata.xml b/sci-electronics/kicad/metadata.xml
index ded38be1bdb8..41cd516dac1f 100644
--- a/sci-electronics/kicad/metadata.xml
+++ b/sci-electronics/kicad/metadata.xml
@@ -13,6 +13,8 @@
<flag name="github">Add github support into PCB editor</flag>
<flag name="i18n">Allow GUI internationalization through l10n_* use flags</flag>
<flag name="minimal">Build only binaries without parts library and examples</flag>
+ <flag name="ngspice">Enable circuit simulation</flag>
+ <flag name="oce">Enable viewing 3D rendering of designs via OCE</flag>
<flag name="python">Enable python scripting support</flag>
</use>
<longdescription>