commit:     7dc6f77c8ffee9d7903a2f002e9adef8b121b497
Author:     Zoltan Puskas <zoltan <AT> sinustrom <DOT> info>
AuthorDate: Wed Dec  3 11:22:27 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Dec  4 08:59:09 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7dc6f77c

sci-electronics/kicad: add 9.0.6

Signed-off-by: Zoltan Puskas <zoltan <AT> sinustrom.info>
Part-of: https://github.com/gentoo/gentoo/pull/44887
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sci-electronics/kicad/Manifest           |   1 +
 sci-electronics/kicad/kicad-9.0.6.ebuild | 216 +++++++++++++++++++++++++++++++
 2 files changed, 217 insertions(+)

diff --git a/sci-electronics/kicad/Manifest b/sci-electronics/kicad/Manifest
index 52d08ac4d75a..687b07dabbd1 100644
--- a/sci-electronics/kicad/Manifest
+++ b/sci-electronics/kicad/Manifest
@@ -2,3 +2,4 @@ DIST kicad-8.0.9.tar.bz2 73236341 BLAKE2B 
707dd199f0232a383eb70ee565b32fc8f24691
 DIST kicad-9.0.0-protobuf-30.patch 1054 BLAKE2B 
64d084b9ed97a283e3a9cb32721ce0c90fc13555a71c07dcfd0878a20f43660a00e17fd45d2250b1cf421acd43214de6b8c4906f90726652ebd46254e8db06b2
 SHA512 
0453efd6b94ba5dee94b3aed3d5108ed1bed342f549225caceb236de418f426f24784728c3c81eb46182bf8ff9e20e4dc7dd6c95b09cc7a199c51d383bde010d
 DIST kicad-9.0.0.tar.bz2 128194997 BLAKE2B 
b5083fbe6bd219711c0ddf1204c283ac588829a24cc46c9e4e93300f046c6a3d890a2924cda803ae41920b74bbc5f16804317a8babc68d6c3b191b5d8cd23b42
 SHA512 
3b6d346d9a8d42c0ed9185427a99d78fbd9d789170aed6b9a7c6983eb58e69a1c20a7ea1b98769aa3d8121f641ca05cd8540e67f33448da2f6202f4abbc6de16
 DIST kicad-9.0.5.tar.bz2 127656010 BLAKE2B 
9a9eb1829d837ec4232a501b8fe634ff62e24cb2dbe66531103c0d970e6796ff80a2a78a9a1af6c9fdfcb00c9b95768506e24965e30ad7ec963c8942b6f09e45
 SHA512 
bc300169bcf04237f8eb034ba08477a39d7494b2825f832d19994d6e1daab5253b3468fcee739b73c57a5e005a70a214e530294f67bf8e89590caceae93132fa
+DIST kicad-9.0.6.tar.bz2 127707066 BLAKE2B 
8f058e12b1d78eff64fd2bfbae5345cdc9da05c7ac8cf8ffa816e04df8a7198fab34cd6ec0eb6ba846f3bcacefacc7e9f1aa6505eb5fa9191c2f09bf39f22eb8
 SHA512 
1ca320a04c65067e05d02c525596af4b5de360fdcbe179b45086bf6033e2c6159e5a21bc21e2cf05bd149331c00eb6699579dffcb780683df24d721f2079ade4

diff --git a/sci-electronics/kicad/kicad-9.0.6.ebuild 
b/sci-electronics/kicad/kicad-9.0.6.ebuild
new file mode 100644
index 000000000000..da17111144cc
--- /dev/null
+++ b/sci-electronics/kicad/kicad-9.0.6.ebuild
@@ -0,0 +1,216 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..13} )
+WX_GTK_VER="3.2-gtk3"
+
+inherit check-reqs cmake flag-o-matic optfeature python-single-r1 
toolchain-funcs wxwidgets xdg-utils
+
+DESCRIPTION="Electronic Schematic and PCB design tools"
+HOMEPAGE="https://www.kicad.org";
+
+if [[ ${PV} == *9999* ]]; then
+       EGIT_REPO_URI="https://gitlab.com/kicad/code/kicad.git";
+       inherit git-r3
+else
+       MY_PV="${PV/_rc/-rc}"
+       MY_P="${PN}-${MY_PV}"
+       
SRC_URI="https://gitlab.com/kicad/code/${PN}/-/archive/${MY_PV}/${MY_P}.tar.bz2";
+       S="${WORKDIR}/${MY_P}"
+
+       if [[ ${PV} != *_rc* ]] ; then
+               KEYWORDS="~amd64 ~riscv"
+       fi
+fi
+
+# KiCAD is licensed under GPLv3 or later
+# As per LICENSES.README some components are under different, but GPL 
compatible license:
+# Licensed under Apache License, Version 2.0: portions of code in 
libs/kimath/include/math/util.h
+# Licensed under BOOSTv1: clipper, clipper2, libcontext, pegtl, picosha2, 
turtle
+# Licensed under ISC: portions of code in 
include/geometry/polygon_triangulation.h
+# Licensed under MIT: argparse, compoundfilereader, delaunator, fmt, 
json_schema_validator, magic_enum nanodbc,
+#                     nlohmann/json, nlohmann/fifo_map, 
pboettch/json-schema-validator, picoSHA2, rectpack2d,
+#                     sentry-native, thread-pool, tinyspline_lib
+# Licensed under MIT and BSD: glew
+# Licensed under BSD: pybind11
+# Licensed under BSD2: gzip-hpp
+# Licensed under GPLv2 (or later): dxflib, math_for_graphics, potrace,
+#                                  SutherlandHodgmanClipPoly in 
thirdparty/other_math
+# Licensed under ZLib: nanosvg
+# Licensed in the public domain: lemon
+# Licensed under CC BY-SA 4.0: all the demo files provided in demos/*
+# Licensed under clause-3 BSD: ibis/kibis files in eeschema/sim/kibis
+# Licensed under CC0: uopamp.lib.spice in some directories in 
qa/data/eeschema/spice_netlists/
+LICENSE="GPL-2+ GPL-3+ Boost-1.0 BSD BSD-2 Apache-2.0 ISC MIT ZLIB 
CC-BY-SA-4.0 CC0-1.0"
+SLOT="0"
+IUSE="doc examples nls openmp test"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RESTRICT="!test? ( test )"
+
+# Contains bundled pybind but it's patched for wx
+# See 
https://gitlab.com/kicad/code/kicad/-/commit/74e4370a9b146b21883d6a2d1df46c7a10bd0424
+# Depend on opencascade:0 to get unslotted variant (so we know path to it), 
bug #833301
+# Depend wxGTK version needs to be limited due to switch from EGL to GLX, bug 
#911120
+# Depends on abseil-cpp via protobuf targets
+COMMON_DEPEND="
+       app-crypt/libsecret
+       dev-cpp/abseil-cpp:=
+       dev-db/unixODBC
+       dev-libs/boost:=[context,nls]
+       dev-libs/libgit2:=
+       >=dev-libs/protobuf-27.2:=[protobuf,protoc]
+       >=dev-libs/nng-1.10.0:=
+       media-libs/freeglut
+       media-libs/glew:0=
+       >=media-libs/glm-0.9.9.1
+       media-libs/mesa[X(+)]
+       net-misc/curl
+       >=sci-libs/opencascade-7.5.0:0=
+       >=x11-libs/cairo-1.8.8:=
+       >=x11-libs/pixman-0.30
+       >sci-electronics/ngspice-27[shared]
+       virtual/zlib:=
+       x11-libs/wxGTK:${WX_GTK_VER}=[X,opengl]
+       $(python_gen_cond_dep '
+               dev-libs/boost:=[context,nls,python,${PYTHON_USEDEP}]
+               >=dev-python/wxpython-4.2.0:*[${PYTHON_USEDEP}]
+       ')
+       ${PYTHON_DEPS}
+       nls? (
+               sys-devel/gettext
+       )
+       test? (
+               media-gfx/cairosvg
+       )
+"
+
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}
+       sci-electronics/electronics-menu
+"
+BDEPEND="app-alternatives/ninja
+       >=dev-lang/swig-4.0
+       doc? ( app-text/doxygen )
+       test? ( $(python_gen_cond_dep 'dev-python/pytest[${PYTHON_USEDEP}]') )"
+
+if [[ ${PV} == 9999 ]] ; then
+       # x11-misc-util/macros only required on live ebuilds
+       BDEPEND+=" >=x11-misc/util-macros-1.18"
+fi
+
+CHECKREQS_DISK_BUILD="1500M"
+
+pkg_setup() {
+       [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+
+       python-single-r1_pkg_setup
+       setup-wxwidgets
+       check-reqs_pkg_setup
+}
+
+src_unpack() {
+       if [[ ${PV} == 9999 ]]; then
+               git-r3_src_unpack
+       else
+               default_src_unpack
+       fi
+}
+
+src_prepare() {
+       filter-lto # Bug 927482
+       cmake_src_prepare
+}
+
+src_configure() {
+       xdg_environment_reset
+
+       local mycmakeargs=(
+               -DKICAD_DOCS="${EPREFIX}/usr/share/doc/${PN}-doc-${PV}"
+
+               -DKICAD_SCRIPTING_WXPYTHON=ON
+               -DKICAD_USE_EGL=OFF
+
+               -DKICAD_BUILD_I18N="$(usex nls)"
+               -DKICAD_I18N_UNIX_STRICT_PATH="$(usex nls)"
+
+               -DPYTHON_DEST="$(python_get_sitedir)"
+               -DPYTHON_EXECUTABLE="${PYTHON}"
+               -DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
+               -DPYTHON_LIBRARY="$(python_get_library_path)"
+
+               -DKICAD_INSTALL_DEMOS="$(usex examples)"
+
+               -DOCC_INCLUDE_DIR="${CASROOT}"/include/opencascade
+               -DOCC_LIBRARY_DIR="${CASROOT}"/$(get_libdir)/opencascade
+
+               -DKICAD_SPICE_QA="$(usex test)"
+               -DKICAD_BUILD_QA_TESTS="$(usex test)"
+       )
+
+       if ! [[ ${PV} == *9999* ]]; then
+               mycmakeargs+=(
+                       -DCMAKE_POLICY_DEFAULT_CMP0167="OLD"
+
+                       # 939141
+                       -DCMAKE_DISABLE_FIND_PACKAGE_Git="yes"
+                       -DKICAD_VERSION="${PVR}"
+               )
+       fi
+
+       cmake_src_configure
+}
+
+src_compile() {
+       cmake_src_compile
+       if use doc; then
+               cmake_src_compile doxygen-docs
+       fi
+}
+
+src_test() {
+       # Test cannot find library in Portage's sandbox. Let's create a link so 
test can run.
+       mkdir -p "${BUILD_DIR}/qa/eeschema/" || die
+       ln -s "${BUILD_DIR}/eeschema/_eeschema.kiface" 
"${BUILD_DIR}/qa/eeschema/_eeschema.kiface" || die
+
+       export CMAKE_SKIP_TESTS=(
+               qa_pcbnew
+               qa_cli
+       )
+
+       cmake_src_test
+}
+
+src_install() {
+       cmake_src_install
+       python_optimize
+
+       dodoc doxygen/eagle-plugin-notes.txt
+
+       if use doc ; then
+               cd doxygen || die
+               dodoc -r out/html/.
+       fi
+}
+
+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 "Extended documentation" app-doc/kicad-doc
+       optfeature "Creating 3D models of components" media-gfx/wings
+
+       xdg_desktop_database_update
+       xdg_mimeinfo_database_update
+       xdg_icon_cache_update
+}
+
+pkg_postrm() {
+       xdg_desktop_database_update
+       xdg_mimeinfo_database_update
+       xdg_icon_cache_update
+}

Reply via email to