diff options
Diffstat (limited to 'sci-electronics/kicad')
18 files changed, 1035 insertions, 457 deletions
diff --git a/sci-electronics/kicad/Manifest b/sci-electronics/kicad/Manifest index 011976182930..10997a18105d 100644 --- a/sci-electronics/kicad/Manifest +++ b/sci-electronics/kicad/Manifest @@ -1,2 +1,6 @@ -DIST kicad-5.1.12.tar.bz2 18581842 BLAKE2B f04369fecded6fb07376efa209ddf5fcc693e73018ed728003529cdd0e6ef4a059c28106db1acf18834d938c3fbe4b9df5b5c8e0874989d35f74cf67414e6c76 SHA512 c0e5ad5b360ef788b427755aa71eeaec1a19b7520a00bb94fafba47e291f6ba067c598004efd515287800cd41f7da399d0389121e53e9669026c62f21b0a65ea -DIST kicad-6.0.6.tar.gz 45086249 BLAKE2B fbf1f11cbf4838186e1ecb42127f7b182d3cd13b4af147211c85244d361cbf83387f5d102efdc80a63cfff36e343e6c4e07fef7f95dac4c6666844c5bc9d0ec2 SHA512 c472a6b81e3065e0499cad8467527d3531dc4d5861f50079ecb2ae6fccaf2c4d24fbeae8e9fe0cdde5ef548458fcef9615d6539426abe391a629dd539406065a +DIST kicad-7.0.10.tar.bz2 43991960 BLAKE2B 3e21f575e41a6036ff2a9c3ab17472e51c73612ddadbf88631717b43024e604a8607fff013828823ff4db4d4263ac8e3bcc3b069e3efdfdc66fdb627f60f192a SHA512 f8005e6cb685c4cdc3982eec644f6d4a115138eaa19ca0bd2e6ae07613eac9c98fd7cdc181dd83e6c6d3c4b73ff6a54261ac5448a2a9c53298bc611c1bf408e1 +DIST kicad-7.0.11.tar.bz2 44083805 BLAKE2B d923581f49b3cf48776de56ba12ddc99e942269c0c14950bb6b3413fb616af74a1b4e7095fc746e20125096f7d2e4c7a9f271dd58918b22fa53e8ce7b78fa6f6 SHA512 28d5560ead989dcfb6d3b07e37443de3bf1883bd56604ae20f70c0a068504fd8745f7011507d417f487b86071cec130ac8eb7bda7513d096e78dcc3dc98585aa +DIST kicad-7.0.7.tar.bz2 44055973 BLAKE2B 4169e111b8d2086572aa2979f09a8119dbc9caf34790ec5e5f3e0972d0a2e93dab6a1c814dc35ae40d5962e7ba93bad83d5930e9dba9b9f2e52f307378519714 SHA512 82eff4a16847c657ae3102af7914539bf7404e8856ca8c94557533a3ddd7b40ff4571b351dab48349d503d413cf293880245a97238516add83e79890325f1067 +DIST kicad-8.0.0.tar.bz2 72430414 BLAKE2B 52bad016249563d9668f08da2103e47c7db706e6749e23ff5c59fd423673db614a1c8681cd0e7927571fe157644e142929891647964c48f45b219e72166c3ebc SHA512 52e605c10fbac0a3c6208f92ab9e567de9074e41495db9619631765a0f20e2da23a2d45610bd367d943e8b4a2d72edf33456007aabcc1f7672b0bb1a93101ce0 +DIST kicad-8.0.1.tar.bz2 72453098 BLAKE2B 67c6b69256566a176ae10affa7ac65879db71f5017dc24312eba904724b2b28caa56f6c82c697d27b34d94f9a8f5448307948e17f17c9750693b192afa3ffab9 SHA512 b6509bb4bfd1cbe87a2f409b70a8ba037a44fb039aaacd9d62868b43925382c0d3aab4c4f7e4bbd646b6ea7cf35fd7318f620a1c8c250c09251349357f2caf11 +DIST kicad-8.0.2.tar.bz2 72713030 BLAKE2B ba47a16b5c435970a45aef9988a5f6d218df043a5ce3547a191991ef63620125989e6218e97266a62c76ece604248bdf0652a10d423346fe3648c8ba240651c4 SHA512 192bcd494f00eccc430ddf9e9034f252bae177f06da81e730fb82f000a58bac9201d49ecba93c3bd17608b6df6a944beea85849050e306e11c1abfbd0028ff4a diff --git a/sci-electronics/kicad/files/kicad-5.1.5-help.patch b/sci-electronics/kicad/files/kicad-5.1.5-help.patch deleted file mode 100644 index 1b37e3013c1e..000000000000 --- a/sci-electronics/kicad/files/kicad-5.1.5-help.patch +++ /dev/null @@ -1,117 +0,0 @@ -diff -Naur kicad-5.1.5-orig/CMakeLists.txt kicad-5.1.5/CMakeLists.txt ---- kicad-5.1.5-orig/CMakeLists.txt 2019-11-14 09:09:45.000000000 -0800 -+++ kicad-5.1.5/CMakeLists.txt 2019-12-15 03:41:57.574995996 -0800 -@@ -442,6 +442,10 @@ - set( KIFACE_PREFIX "_" ) - #message( STATUS "KIFACE_SUFFIX:${KIFACE_SUFFIX} KIFACE_PREFIX:${KIFACE_PREFIX}" ) - -+# KICAD_HELP is the location of the help files accessed from the UI -+# (usually provided via kicad-doc package) -+set ( KICAD_HELP share/doc/kicad -+ CACHE PATH "Alternative location of KiCad help files.") - - #================================================ - # Locations for install targets. -diff -Naur kicad-5.1.5-orig/CMakeModules/config.h.cmake kicad-5.1.5/CMakeModules/config.h.cmake ---- kicad-5.1.5-orig/CMakeModules/config.h.cmake 2019-11-14 09:09:45.000000000 -0800 -+++ kicad-5.1.5/CMakeModules/config.h.cmake 2019-12-15 03:42:00.368013375 -0800 -@@ -59,6 +59,10 @@ - /// The install prefix defined during CMake configuration or fall back to CMAKE_INSTALL_PREFIX. - #define DEFAULT_INSTALL_PATH "@DEFAULT_INSTALL_PATH@" - -+/// KiCad help files path can be different on some systems allow adding alternative, -+/// search path for them. Defaults to CMAKE_INSTALL_PREFIX/share/doc/kicad -+#define KICAD_HELP "@KICAD_HELP@" -+ - /// The wxPython version found during configuration. - #if defined( KICAD_SCRIPTING_WXPYTHON ) - #define WXPYTHON_VERSION "@WXPYTHON_VERSION@" -diff -Naur kicad-5.1.5-orig/common/searchhelpfilefullpath.cpp kicad-5.1.5/common/searchhelpfilefullpath.cpp ---- kicad-5.1.5-orig/common/searchhelpfilefullpath.cpp 2019-11-14 09:09:45.000000000 -0800 -+++ kicad-5.1.5/common/searchhelpfilefullpath.cpp 2019-12-15 03:42:03.168030796 -0800 -@@ -25,7 +25,7 @@ - - #include <pgm_base.h> - #include <common.h> --#include <config.h> // to define DEFAULT_INSTALL_PATH -+#include <config.h> // to define DEFAULT_INSTALL_PATH and KICAD_HELP - #include <macros.h> - #include <trace_helpers.h> - -@@ -69,6 +69,10 @@ - wxArrayString subdirs; - wxArrayString altsubdirs; - SEARCH_STACK ss = aSStack; -+#if ! defined(__WXMAC__) // && defined(__linux__) -+ SEARCH_STACK altss; -+ wxArrayString moresubdirs; -+#endif - - // It might already be in aSStack, but why depend on other code - // far away when it's so easy to add it again (to our copy) as the first place to look. -@@ -76,6 +80,7 @@ - // This is CMAKE_INSTALL_PREFIX unless DEFAULT_INSTALL_PATH was defined during - // build configuration: - ss.AddPaths( wxT( DEFAULT_INSTALL_PATH ), 0 ); -+ altss.AddPaths( wxT( KICAD_HELP ), 0 ); - - #if defined(__WXMAC__) - ss.AddPaths( GetOSXKicadMachineDataDir() ); -@@ -104,16 +109,17 @@ - - // Based on kicad-doc.bzr/CMakeLists.txt, line 20, the help files are - // installed into "<CMAKE_INSTALL_PREFIX>/share/doc/kicad/help" for linux. -- // This is ${KICAD_HELP} var in that CMakeLists.txt file. - // Below we account for an international subdirectory. - subdirs.Add( "share" ); - subdirs.Add( "doc" ); - subdirs.Add( "kicad" ); - subdirs.Add( "help" ); - -+ // For custom help path installations via ${KICAD_HELP} -+ moresubdirs.Add( "help" ); -+ - // Based on kicad-doc.bzr/CMakeLists.txt, line 35, the help files are - // installed into "<CMAKE_INSTALL_PREFIX>/doc/help" for Windows. -- // This is ${KICAD_HELP} var in that CMakeLists.txt file. - // Below we account for an international subdirectory. - altsubdirs.Add( "doc" ); - altsubdirs.Add( "help" ); -@@ -159,6 +165,9 @@ - { - subdirs.Add( locale_name_dirs[ii] ); - altsubdirs.Add( locale_name_dirs[ii] ); -+#if ! defined(__WXMAC__) // && defined(__linux__) -+ moresubdirs.Add( locale_name_dirs[ii] ); -+#endif - - fn = FindFileInSearchPaths( ss, aBaseName + wxT( ".html" ), &altsubdirs ); - -@@ -188,8 +197,27 @@ - if( !fn.IsEmpty() ) - break; - -+#if ! defined(__WXMAC__) // && defined(__linux__) -+ fn = FindFileInSearchPaths( altss, aBaseName + wxT( ".html" ), &moresubdirs ); -+ -+ if( !fn.IsEmpty() ) -+ { -+ // Prepend URI protocol since we will open in a browser -+ fn = wxT( "file://" ) + fn; -+ break; -+ } -+ -+ fn = FindFileInSearchPaths( altss, aBaseName + wxT( ".pdf" ), &moresubdirs ); -+ -+ if( !fn.IsEmpty() ) -+ break; -+#endif -+ - subdirs.RemoveAt( subdirs.GetCount() - 1 ); - altsubdirs.RemoveAt( altsubdirs.GetCount() - 1 ); -+#if ! defined(__WXMAC__) // && defined(__linux__) -+ moresubdirs.RemoveAt( altsubdirs.GetCount() - 1 ); -+#endif - } - - return fn; diff --git a/sci-electronics/kicad/files/kicad-5.1.5-ldflags.patch b/sci-electronics/kicad/files/kicad-5.1.5-ldflags.patch deleted file mode 100644 index 1495037b1b72..000000000000 --- a/sci-electronics/kicad/files/kicad-5.1.5-ldflags.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -Naur kicad-5.1.5-orig/CMakeLists.txt kicad-5.1.5/CMakeLists.txt ---- kicad-5.1.5-orig/CMakeLists.txt 2019-11-14 09:09:45.000000000 -0800 -+++ kicad-5.1.5/CMakeLists.txt 2019-11-19 02:08:32.309282631 -0800 -@@ -355,10 +355,10 @@ - - elseif( NOT APPLE ) - # Thou shalt not link vaporware and tell us it's a valid DSO (apple ld doesn't support it) -- set( CMAKE_SHARED_LINKER_FLAGS "-Wl,--no-undefined" ) -- set( CMAKE_MODULE_LINKER_FLAGS "-Wl,--no-undefined" ) -+ set( CMAKE_SHARED_LINKER_FLAGS "$ENV{LDFLAGS} -Wl,--no-undefined" ) -+ set( CMAKE_MODULE_LINKER_FLAGS "$ENV{LDFLAGS} -Wl,--no-undefined" ) - -- set( CMAKE_EXE_LINKER_FLAGS_RELEASE "-s" ) -+ set( CMAKE_EXE_LINKER_FLAGS_RELEASE "$ENV{LDFLAGS} -s" ) - - # Defeat ELF's ability to use the GOT to replace locally implemented functions - # with ones from another module. diff --git a/sci-electronics/kicad/files/kicad-5.1.5-strict-aliasing.patch b/sci-electronics/kicad/files/kicad-5.1.5-strict-aliasing.patch deleted file mode 100644 index b01a6b7d79f6..000000000000 --- a/sci-electronics/kicad/files/kicad-5.1.5-strict-aliasing.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff --git a/eeschema/dialogs/dialog_spice_model.cpp b/eeschema/dialogs/dialog_spice_model.cpp -index b265e2363..eb1187d86 100644 ---- a/eeschema/dialogs/dialog_spice_model.cpp -+++ b/eeschema/dialogs/dialog_spice_model.cpp -@@ -34,6 +34,7 @@ - #include <wx/wupdlock.h> - - #include <cctype> -+#include <cstring> - - // Helper function to shorten conditions - static bool empty( const wxTextCtrl* aCtrl ) -@@ -804,9 +804,11 @@ bool DIALOG_SPICE_MODEL::addPwlValue( const wxString& aTime, const wxString& aVa - float timeF; - m_pwlTime->GetValue().ToDouble( &timeD ); - timeF = timeD; -+ long data; -+ std::memcpy( &data, &timeF, sizeof( timeF ) ); - - // Store the time value, so the entries can be sorted -- m_pwlValList->SetItemData( idx, *reinterpret_cast<long*>( &timeF ) ); -+ m_pwlValList->SetItemData( idx, data ); - - // Sort items by timestamp - m_pwlValList->SortItems( comparePwlValues, -1 ); diff --git a/sci-electronics/kicad/files/kicad-5.1.6-metainfo.patch b/sci-electronics/kicad/files/kicad-5.1.6-metainfo.patch deleted file mode 100644 index 675ff749de8d..000000000000 --- a/sci-electronics/kicad/files/kicad-5.1.6-metainfo.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -Naur kicad-5.1.6-orig/CMakeLists.txt kicad-5.1.6/CMakeLists.txt ---- kicad-5.1.6-orig/CMakeLists.txt 2020-05-11 11:27:08.000000000 -0700 -+++ kicad-5.1.6/CMakeLists.txt 2020-05-25 20:45:57.199559075 -0700 -@@ -929,7 +929,7 @@ - set( UNIX_MIME_FILES ${UNIX_MIME_DIR}/mime ) - set( UNIX_ICON_FILES ${UNIX_MIME_DIR}/icons ) - set( UNIX_APPLICATIONS_FILES ${UNIX_MIME_DIR}/applications ) -- set( UNIX_APPDATA_FILES ${PROJECT_BINARY_DIR}/resources/linux/appdata ) -+ set( UNIX_APPDATA_FILES ${PROJECT_BINARY_DIR}/resources/linux/metainfo ) - - # Install Mime directory - install( DIRECTORY ${UNIX_ICON_FILES} -diff -Naur kicad-5.1.6-orig/CMakeModules/WritePlatformMetadata_linux.cmake kicad-5.1.6/CMakeModules/WritePlatformMetadata_linux.cmake ---- kicad-5.1.6-orig/CMakeModules/WritePlatformMetadata_linux.cmake 2020-05-11 11:27:08.000000000 -0700 -+++ kicad-5.1.6/CMakeModules/WritePlatformMetadata_linux.cmake 2020-05-25 20:54:51.927438936 -0700 -@@ -36,11 +36,11 @@ - string( TIMESTAMP KICAD_CONFIG_TIMESTAMP "%Y-%m-%d" ) - - # Configure the KiCad appdata file --configure_file( ${PROJECT_SOURCE_DIR}/resources/linux/appdata/kicad.appdata.xml.in -- ${PROJECT_BINARY_DIR}/resources/linux/appdata/kicad.appdata.xml -+configure_file( ${PROJECT_SOURCE_DIR}/resources/linux/metainfo/kicad.appdata.xml.in -+ ${PROJECT_BINARY_DIR}/resources/linux/metainfo/kicad.appdata.xml - @ONLY ) - - # Ensure the file was configured successfully --if( NOT EXISTS ${PROJECT_BINARY_DIR}/resources/linux/appdata/kicad.appdata.xml ) -+if( NOT EXISTS ${PROJECT_BINARY_DIR}/resources/linux/metainfo/kicad.appdata.xml ) - message( FATAL_ERROR "Configuration failed to write file kicad.appdata.xml." ) - endif() diff --git a/sci-electronics/kicad/files/kicad-6.0.6-unitialized-variable-fix.patch b/sci-electronics/kicad/files/kicad-6.0.6-unitialized-variable-fix.patch deleted file mode 100644 index cce508c1e888..000000000000 --- a/sci-electronics/kicad/files/kicad-6.0.6-unitialized-variable-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur kicad-6.0.6/common/tool/tool_manager.cpp kicad-6.0.6-new/common/tool/tool_manager.cpp ---- kicad-6.0.6/common/tool/tool_manager.cpp 2022-06-17 18:11:16.000000000 -0700 -+++ kicad-6.0.6-new/common/tool/tool_manager.cpp 2022-06-20 00:17:13.548239632 -0700 -@@ -902,7 +902,7 @@ - m_menuOwner = -1; - - // Restore cursor settings -- for( auto cursorSetting : m_cursorSettings ) -+ for( auto const& cursorSetting : m_cursorSettings ) - { - auto it = m_toolIdIndex.find( cursorSetting.first ); - wxASSERT( it != m_toolIdIndex.end() ); diff --git a/sci-electronics/kicad/files/kicad-7.0.0-werror.patch b/sci-electronics/kicad/files/kicad-7.0.0-werror.patch new file mode 100644 index 000000000000..b5fa3b1ae15d --- /dev/null +++ b/sci-electronics/kicad/files/kicad-7.0.0-werror.patch @@ -0,0 +1,21 @@ +From 04fc6081bd3d6575d00589f71150ab796778a9c9 Mon Sep 17 00:00:00 2001 +From: Matthew Smith <matthew@gentoo.org> +Date: Mon, 20 Feb 2023 17:53:50 +0000 +Subject: [PATCH] build: Remove Werror flag from clipper2 + +Bug: https://bugs.gentoo.org/895014 + +--- a/thirdparty/clipper2/CMakeLists.txt ++++ b/thirdparty/clipper2/CMakeLists.txt +@@ -27,7 +27,7 @@ target_compile_definitions(clipper2 PUBLIC USINGZ) + if (MSVC) + target_compile_options(clipper2 PRIVATE /W4 /WX) + else() +- target_compile_options(clipper2 PRIVATE -Wall -Wextra -Wpedantic -Werror) ++ target_compile_options(clipper2 PRIVATE -Wall -Wextra -Wpedantic) + target_link_libraries(clipper2 PUBLIC -lm) + endif() + +-- +2.39.2 + diff --git a/sci-electronics/kicad/files/kicad-8.0.1-libgit2.patch b/sci-electronics/kicad/files/kicad-8.0.1-libgit2.patch new file mode 100644 index 000000000000..d2523993e6fe --- /dev/null +++ b/sci-electronics/kicad/files/kicad-8.0.1-libgit2.patch @@ -0,0 +1,36 @@ +From: Huang Rui <vowstar@gmail.com> +Date: Fri, 22 Mar 2024 18:18:40 +0800 +Subject: [PATCH] libgit2-1.8.0 compatibility: adjusted parent pointer type + +- Adjusted parent pointer type in git_commit_create call for compatibility + with libgit2 1.8.0 and above. +- Included preprocessor checks to maintain support for versions older than + 1.8.0. +- Ensures consistent function behavior across different libgit2 versions. + +Fixes https://gitlab.com/kicad/code/kicad/-/issues/17536 +Signed-off-by: Huang Rui <vowstar@gmail.com> +--- + kicad/project_tree_pane.cpp | 7 +++++++ + 1 file changed, 7 insertions(+) + +--- a/kicad/project_tree_pane.cpp ++++ b/kicad/project_tree_pane.cpp +@@ -2233,7 +2233,14 @@ void PROJECT_TREE_PANE::onGitCommit( wxCommandEvent& aEvent ) + } + + git_oid oid; ++ // Check if the libgit2 library version is 1.8.0 or higher ++#if ( LIBGIT2_VER_MAJOR > 1 ) || ( LIBGIT2_VER_MAJOR == 1 && LIBGIT2_VER_MINOR >= 8 ) ++ // For libgit2 version 1.8.0 and above ++ git_commit* const parents[1] = { parent }; ++#else ++ // For libgit2 versions older than 1.8.0 + const git_commit* parents[1] = { parent }; ++#endif + + if( git_commit_create( &oid, repo, "HEAD", author, author, nullptr, commit_msg.mb_str(), tree, + 1, parents ) != 0 ) +-- +2.44.0 + diff --git a/sci-electronics/kicad/files/kicad-scripts-install-fix.patch b/sci-electronics/kicad/files/kicad-scripts-install-fix.patch deleted file mode 100644 index d52a05d3bcf5..000000000000 --- a/sci-electronics/kicad/files/kicad-scripts-install-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur kicad-6.0.2-orig/CMakeLists.txt kicad-6.0.2/CMakeLists.txt ---- kicad-6.0.2-orig/CMakeLists.txt 2022-02-10 16:29:07.000000000 -0800 -+++ kicad-6.0.2/CMakeLists.txt 2022-02-13 20:09:37.244713966 -0800 -@@ -950,7 +950,7 @@ - ### - if( UNIX AND NOT APPLE ) - install( DIRECTORY scripts -- DESTINATION ${KICAD_DOCS} -+ DESTINATION ${KICAD_BIN}/scripts - COMPONENT resources - PATTERN "*.bat" EXCLUDE - ) diff --git a/sci-electronics/kicad/kicad-5.1.12-r3.ebuild b/sci-electronics/kicad/kicad-5.1.12-r3.ebuild deleted file mode 100644 index 2f202db0313a..000000000000 --- a/sci-electronics/kicad/kicad-5.1.12-r3.ebuild +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{8,9} ) - -WX_GTK_VER="3.0-gtk3" - -inherit check-reqs cmake optfeature python-single-r1 toolchain-funcs wxwidgets xdg-utils - -DESCRIPTION="Electronic Schematic and PCB design tools" -HOMEPAGE="https://www.kicad.org" -SRC_URI="https://gitlab.com/kicad/code/${PN}/-/archive/${PV}/${P}.tar.bz2" - -LICENSE="GPL-2+ GPL-3+ Boost-1.0" -SLOT="0" -KEYWORDS="~amd64 ~arm64 ~x86" -IUSE="doc examples github +ngspice +occ openmp +python" - -REQUIRED_USE=" - python? ( ${PYTHON_REQUIRED_USE} ) -" -# Depend on opencascade:0 to get unslotted variant (so we know path to it), bug #833301 -COMMON_DEPEND=" - >=dev-libs/boost-1.61:=[context,nls,threads(+)] - media-libs/freeglut - media-libs/glew:0= - >=media-libs/glm-0.9.9.1 - media-libs/mesa[X(+)] - >=x11-libs/cairo-1.8.8:= - >=x11-libs/pixman-0.30 - x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] - github? ( net-misc/curl:=[ssl] ) - ngspice? ( - >sci-electronics/ngspice-27[shared] - ) - occ? ( <sci-libs/opencascade-7.5.3:0=[vtk(+)] ) - python? ( - $(python_gen_cond_dep ' - >=dev-libs/boost-1.61:=[context,nls,threads(+),python,${PYTHON_USEDEP}] - dev-python/wxpython:4.0[${PYTHON_USEDEP}] - ') - ${PYTHON_DEPS} - ) -" -DEPEND="${COMMON_DEPEND} - python? ( >=dev-lang/swig-3.0:0 )" -RDEPEND="${COMMON_DEPEND} - sci-electronics/electronics-menu -" -BDEPEND="doc? ( app-doc/doxygen )" -CHECKREQS_DISK_BUILD="800M" - -PATCHES=( - "${FILESDIR}/${PN}-5.1.5-help.patch" - "${FILESDIR}/${PN}-5.1.5-strict-aliasing.patch" - "${FILESDIR}/${PN}-5.1.6-metainfo.patch" - "${FILESDIR}/${PN}-5.1.5-ldflags.patch" -) - -pkg_pretend() { - [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp -} - -pkg_setup() { - [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp - - use python && python-single-r1_pkg_setup - setup-wxwidgets - check-reqs_pkg_setup -} - -src_unpack() { - default_src_unpack - # For the metainfo patch to work the kicad.appdata.xml has to be moved to - # avoid QA issue. This is needed because /usr/share/appdata location is - # deprecated, it should not be used anymore by new software. - # Appdata/Metainfo files should be installed into /usr/share/metainfo - # directory. as per - # https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html - mv "${S}/resources/linux/appdata" "${S}/resources/linux/metainfo" || die "Appdata move failed" -} - -src_prepare() { - # Fix OpenCASCADE lookup - sed -e 's|/usr/include/opencascade|${CASROOT}/include/opencascade|' \ - -e 's|/usr/lib|${CASROOT}/'$(get_libdir)' NO_DEFAULT_PATH|' \ - -i CMakeModules/FindOpenCASCADE.cmake || die - - cmake_src_prepare -} - -src_configure() { - xdg_environment_reset - - local mycmakeargs=( - -DKICAD_DOCS="${EPREFIX}/usr/share/doc/${PF}" - -DKICAD_HELP="${EPREFIX}/usr/share/doc/${PN}-doc-${PV}" - -DBUILD_GITHUB_PLUGIN="$(usex github)" - -DKICAD_SCRIPTING="$(usex python)" - -DKICAD_SCRIPTING_MODULES="$(usex python)" - -DKICAD_SCRIPTING_WXPYTHON="$(usex python)" - -DKICAD_SCRIPTING_WXPYTHON_PHOENIX="$(usex python)" - -DKICAD_SCRIPTING_PYTHON3="$(usex python)" - -DKICAD_SCRIPTING_ACTION_MENU="$(usex python)" - -DKICAD_SPICE="$(usex ngspice)" - -DKICAD_USE_OCC="$(usex occ)" - -DKICAD_INSTALL_DEMOS="$(usex examples)" - -DCMAKE_SKIP_RPATH="ON" - ) - use python && mycmakeargs+=( - -DPYTHON_DEST="$(python_get_sitedir)" - -DPYTHON_EXECUTABLE="${PYTHON}" - -DPYTHON_INCLUDE_DIR="$(python_get_includedir)" - -DPYTHON_LIBRARY="$(python_get_library_path)" - ) - if use occ; then - mycmakeargs+=( - -DOCC_INCLUDE_DIR="${CASROOT}"/include/opencascade - -DOCC_LIBRARY_DIR="${CASROOT}"/$(get_libdir)/opencascade - ) - fi - - cmake_src_configure -} - -src_compile() { - cmake_src_compile - if use doc; then - cmake_src_compile dev-docs doxygen-docs - fi -} - -src_install() { - cmake_src_install - use python && python_optimize - if use doc ; then - dodoc uncrustify.cfg - cd Documentation || die - dodoc -r *.txt kicad_doxygen_logo.png notes_about_pcbnew_new_file_format.odt doxygen/. development/doxygen/. - fi -} - -src_test() { - # Test cannot find library in Portage's sandbox. Let's create a link so test can run. - ln -s "${S}_build/eeschema/_eeschema.kiface" "${S}_build/qa/eeschema/_eeschema.kiface" || die - - default -} - -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_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 -} diff --git a/sci-electronics/kicad/kicad-7.0.10.ebuild b/sci-electronics/kicad/kicad-7.0.10.ebuild new file mode 100644 index 000000000000..01d0cff6c0d7 --- /dev/null +++ b/sci-electronics/kicad/kicad-7.0.10.ebuild @@ -0,0 +1,176 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..11} ) +WX_GTK_VER="3.2-gtk3" + +inherit check-reqs cmake 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 -> ${P}.tar.bz2" + S="${WORKDIR}/${PN}-${MY_PV}" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="amd64 ~arm64 ~riscv ~x86" + fi +fi + +# BSD for bundled pybind +LICENSE="GPL-2+ GPL-3+ Boost-1.0 BSD" +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 +COMMON_DEPEND=" + dev-db/unixODBC + dev-libs/boost:=[context,nls] + 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.3.0:0= + <sci-libs/opencascade-7.8.0:0= + >=x11-libs/cairo-1.8.8:= + >=x11-libs/pixman-0.30 + >sci-electronics/ngspice-27[shared] + sys-libs/zlib + >=x11-libs/wxGTK-3.2.2.1-r3:${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=">=dev-lang/swig-4.0 + doc? ( app-text/doxygen )" + +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" + +PATCHES=( + "${FILESDIR}"/${PN}-7.0.0-werror.patch +) + +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_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)" + -DCMAKE_SKIP_RPATH="ON" + + -DOCC_INCLUDE_DIR="${CASROOT}"/include/opencascade + -DOCC_LIBRARY_DIR="${CASROOT}"/$(get_libdir)/opencascade + + -DKICAD_BUILD_QA_TESTS="$(usex test)" + ) + + 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 + dosym "${BUILD_DIR}/eeschema/_eeschema.kiface" "${BUILD_DIR}/qa/eeschema/_eeschema.kiface" || die + + # LD_LIBRARY_PATH is there to help it pick up the just-built libraries + LD_LIBRARY_PATH="${BUILD_DIR}/3d-viewer/3d_cache/sg:${LD_LIBRARY_PATH}" 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 +} diff --git a/sci-electronics/kicad/kicad-6.0.6.ebuild b/sci-electronics/kicad/kicad-7.0.11.ebuild index c152b8099cd1..6048013c238d 100644 --- a/sci-electronics/kicad/kicad-6.0.6.ebuild +++ b/sci-electronics/kicad/kicad-7.0.11.ebuild @@ -1,10 +1,10 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PYTHON_COMPAT=( python3_{8..10} ) -WX_GTK_VER="3.0-gtk3" +PYTHON_COMPAT=( python3_{10..11} ) +WX_GTK_VER="3.2-gtk3" inherit check-reqs cmake optfeature python-single-r1 toolchain-funcs wxwidgets xdg-utils @@ -17,7 +17,7 @@ if [[ ${PV} == 9999 ]]; then 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.gz -> ${P}.tar.gz" + SRC_URI="https://gitlab.com/kicad/code/${PN}/-/archive/${MY_PV}/${MY_P}.tar.bz2 -> ${P}.tar.bz2" S="${WORKDIR}/${PN}-${MY_PV}" if [[ ${PV} != *_rc* ]] ; then @@ -28,55 +28,59 @@ fi # BSD for bundled pybind LICENSE="GPL-2+ GPL-3+ Boost-1.0 BSD" SLOT="0" -IUSE="doc examples +ngspice nls openmp +occ +pcm" +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 COMMON_DEPEND=" - !sci-electronics/kicad-i18n - >=dev-libs/boost-1.61:=[context,nls] + dev-db/unixODBC + dev-libs/boost:=[context,nls] 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.3.0:0= + <sci-libs/opencascade-7.8.0:0= >=x11-libs/cairo-1.8.8:= >=x11-libs/pixman-0.30 - x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] + >sci-electronics/ngspice-27[shared] + sys-libs/zlib + >=x11-libs/wxGTK-3.2.2.1-r3:${WX_GTK_VER}[X,opengl] $(python_gen_cond_dep ' - >=dev-libs/boost-1.61:=[context,nls,python,${PYTHON_USEDEP}] - dev-python/wxpython:4.0[${PYTHON_USEDEP}] + dev-libs/boost:=[context,nls,python,${PYTHON_USEDEP}] + >=dev-python/wxpython-4.2.0:*[${PYTHON_USEDEP}] ') ${PYTHON_DEPS} - ngspice? ( - >sci-electronics/ngspice-27[shared] - ) nls? ( sys-devel/gettext ) - occ? ( - >=sci-libs/opencascade-7.3.0:0= + test? ( + media-gfx/cairosvg ) " DEPEND="${COMMON_DEPEND}" RDEPEND="${COMMON_DEPEND} sci-electronics/electronics-menu " -BDEPEND=">=dev-lang/swig-3.0 - doc? ( app-doc/doxygen )" +BDEPEND=">=dev-lang/swig-4.0 + doc? ( app-text/doxygen )" if [[ ${PV} == 9999 ]] ; then # x11-misc-util/macros only required on live ebuilds BDEPEND+=" >=x11-misc/util-macros-1.18" fi -CHECKREQS_DISK_BUILD="900M" +CHECKREQS_DISK_BUILD="1500M" PATCHES=( - "${FILESDIR}/${PN}-scripts-install-fix.patch" - "${FILESDIR}/${P}-unitialized-variable-fix.patch" + "${FILESDIR}"/${PN}-7.0.0-werror.patch ) pkg_setup() { @@ -102,8 +106,8 @@ src_configure() { -DKICAD_DOCS="${EPREFIX}/usr/share/doc/${PN}-doc-${PV}" -DKICAD_SCRIPTING_WXPYTHON=ON + -DKICAD_USE_EGL=OFF - # Merged from separate -i18n package, bug #830274 -DKICAD_BUILD_I18N="$(usex nls)" -DKICAD_I18N_UNIX_STRICT_PATH="$(usex nls)" @@ -112,17 +116,13 @@ src_configure() { -DPYTHON_INCLUDE_DIR="$(python_get_includedir)" -DPYTHON_LIBRARY="$(python_get_library_path)" - -DKICAD_SPICE="$(usex ngspice)" - -DKICAD_PCM="$(usex pcm)" - - -DKICAD_USE_OCC="$(usex occ)" -DKICAD_INSTALL_DEMOS="$(usex examples)" -DCMAKE_SKIP_RPATH="ON" - ) - use occ && mycmakeargs+=( -DOCC_INCLUDE_DIR="${CASROOT}"/include/opencascade -DOCC_LIBRARY_DIR="${CASROOT}"/$(get_libdir)/opencascade + + -DKICAD_BUILD_QA_TESTS="$(usex test)" ) cmake_src_configure @@ -137,7 +137,8 @@ src_compile() { src_test() { # Test cannot find library in Portage's sandbox. Let's create a link so test can run. - ln -s "${BUILD_DIR}/eeschema/_eeschema.kiface" "${BUILD_DIR}/qa/eeschema/_eeschema.kiface" || die + mkdir -p "${BUILD_DIR}/qa/eeschema/" || die + dosym "${BUILD_DIR}/eeschema/_eeschema.kiface" "${BUILD_DIR}/qa/eeschema/_eeschema.kiface" || die # LD_LIBRARY_PATH is there to help it pick up the just-built libraries LD_LIBRARY_PATH="${BUILD_DIR}/3d-viewer/3d_cache/sg:${LD_LIBRARY_PATH}" cmake_src_test @@ -147,10 +148,11 @@ src_install() { cmake_src_install python_optimize + dodoc doxygen/eagle-plugin-notes.txt + if use doc ; then - dodoc uncrustify.cfg - cd Documentation || die - dodoc -r *.txt kicad_doxygen_logo.png notes_about_pcbnew_new_file_format.odt doxygen/. + cd doxygen || die + dodoc -r out/html/. fi } @@ -159,7 +161,6 @@ pkg_postinst() { 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 diff --git a/sci-electronics/kicad/kicad-7.0.7.ebuild b/sci-electronics/kicad/kicad-7.0.7.ebuild new file mode 100644 index 000000000000..66c7ff8dd513 --- /dev/null +++ b/sci-electronics/kicad/kicad-7.0.7.ebuild @@ -0,0 +1,174 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..11} ) +WX_GTK_VER="3.2-gtk3" + +inherit check-reqs cmake 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 -> ${P}.tar.bz2" + S="${WORKDIR}/${PN}-${MY_PV}" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="amd64 ~arm64 ~riscv ~x86" + fi +fi + +# BSD for bundled pybind +LICENSE="GPL-2+ GPL-3+ Boost-1.0 BSD" +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 +COMMON_DEPEND=" + dev-db/unixODBC + dev-libs/boost:=[context,nls] + 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.3.0:0= + <sci-libs/opencascade-7.8.0:0= + >=x11-libs/cairo-1.8.8:= + >=x11-libs/pixman-0.30 + >sci-electronics/ngspice-27[shared] + sys-libs/zlib + >=x11-libs/wxGTK-3.2.2.1-r3:${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=">=dev-lang/swig-4.0 + doc? ( app-text/doxygen )" + +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" + +PATCHES=( + "${FILESDIR}"/${PN}-7.0.0-werror.patch +) + +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_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)" + -DCMAKE_SKIP_RPATH="ON" + + -DOCC_INCLUDE_DIR="${CASROOT}"/include/opencascade + -DOCC_LIBRARY_DIR="${CASROOT}"/$(get_libdir)/opencascade + ) + + 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 + dosym "${BUILD_DIR}/eeschema/_eeschema.kiface" "${BUILD_DIR}/qa/eeschema/_eeschema.kiface" || die + + # LD_LIBRARY_PATH is there to help it pick up the just-built libraries + LD_LIBRARY_PATH="${BUILD_DIR}/3d-viewer/3d_cache/sg:${LD_LIBRARY_PATH}" 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 +} diff --git a/sci-electronics/kicad/kicad-8.0.0.ebuild b/sci-electronics/kicad/kicad-8.0.0.ebuild new file mode 100644 index 000000000000..96b4a708d332 --- /dev/null +++ b/sci-electronics/kicad/kicad-8.0.0.ebuild @@ -0,0 +1,181 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..11} ) +WX_GTK_VER="3.2-gtk3" + +inherit check-reqs cmake 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 -> ${P}.tar.bz2" + S="${WORKDIR}/${PN}-${MY_PV}" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~amd64 ~arm64 ~riscv ~x86" + fi +fi + +# BSD for bundled pybind +LICENSE="GPL-2+ GPL-3+ Boost-1.0 BSD" +SLOT="0" +IUSE="doc examples nls openmp telemetry 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 +COMMON_DEPEND=" + app-crypt/libsecret + dev-db/unixODBC + dev-libs/boost:=[context,nls] + dev-libs/libgit2:= + 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= + <sci-libs/opencascade-7.8.0:0= + >=x11-libs/cairo-1.8.8:= + >=x11-libs/pixman-0.30 + >sci-electronics/ngspice-27[shared] + sys-libs/zlib + >=x11-libs/wxGTK-3.2.2.1-r3:${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=">=dev-lang/swig-4.0 + doc? ( app-text/doxygen )" + +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" + +PATCHES=( + "${FILESDIR}"/${PN}-8.0.1-libgit2.patch +) + +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_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)" + -DCMAKE_SKIP_RPATH="ON" + + -DOCC_INCLUDE_DIR="${CASROOT}"/include/opencascade + -DOCC_LIBRARY_DIR="${CASROOT}"/$(get_libdir)/opencascade + + -DKICAD_USE_SENTRY="$(usex telemetry)" + + -DKICAD_SPICE_QA="$(usex test)" + -DKICAD_BUILD_QA_TESTS="$(usex test)" + ) + + 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 + dosym "${BUILD_DIR}/eeschema/_eeschema.kiface" "${BUILD_DIR}/qa/eeschema/_eeschema.kiface" || die + + # LD_LIBRARY_PATH is there to help it pick up the just-built libraries + LD_LIBRARY_PATH="${BUILD_DIR}/3d-viewer/3d_cache/sg:${LD_LIBRARY_PATH}" 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 +} diff --git a/sci-electronics/kicad/kicad-8.0.1.ebuild b/sci-electronics/kicad/kicad-8.0.1.ebuild new file mode 100644 index 000000000000..96b4a708d332 --- /dev/null +++ b/sci-electronics/kicad/kicad-8.0.1.ebuild @@ -0,0 +1,181 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..11} ) +WX_GTK_VER="3.2-gtk3" + +inherit check-reqs cmake 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 -> ${P}.tar.bz2" + S="${WORKDIR}/${PN}-${MY_PV}" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~amd64 ~arm64 ~riscv ~x86" + fi +fi + +# BSD for bundled pybind +LICENSE="GPL-2+ GPL-3+ Boost-1.0 BSD" +SLOT="0" +IUSE="doc examples nls openmp telemetry 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 +COMMON_DEPEND=" + app-crypt/libsecret + dev-db/unixODBC + dev-libs/boost:=[context,nls] + dev-libs/libgit2:= + 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= + <sci-libs/opencascade-7.8.0:0= + >=x11-libs/cairo-1.8.8:= + >=x11-libs/pixman-0.30 + >sci-electronics/ngspice-27[shared] + sys-libs/zlib + >=x11-libs/wxGTK-3.2.2.1-r3:${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=">=dev-lang/swig-4.0 + doc? ( app-text/doxygen )" + +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" + +PATCHES=( + "${FILESDIR}"/${PN}-8.0.1-libgit2.patch +) + +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_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)" + -DCMAKE_SKIP_RPATH="ON" + + -DOCC_INCLUDE_DIR="${CASROOT}"/include/opencascade + -DOCC_LIBRARY_DIR="${CASROOT}"/$(get_libdir)/opencascade + + -DKICAD_USE_SENTRY="$(usex telemetry)" + + -DKICAD_SPICE_QA="$(usex test)" + -DKICAD_BUILD_QA_TESTS="$(usex test)" + ) + + 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 + dosym "${BUILD_DIR}/eeschema/_eeschema.kiface" "${BUILD_DIR}/qa/eeschema/_eeschema.kiface" || die + + # LD_LIBRARY_PATH is there to help it pick up the just-built libraries + LD_LIBRARY_PATH="${BUILD_DIR}/3d-viewer/3d_cache/sg:${LD_LIBRARY_PATH}" 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 +} diff --git a/sci-electronics/kicad/kicad-8.0.2-r1.ebuild b/sci-electronics/kicad/kicad-8.0.2-r1.ebuild new file mode 100644 index 000000000000..83bf7ead3a08 --- /dev/null +++ b/sci-electronics/kicad/kicad-8.0.2-r1.ebuild @@ -0,0 +1,180 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..11} ) +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 -> ${P}.tar.bz2" + S="${WORKDIR}/${PN}-${MY_PV}" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~amd64 ~arm64 ~riscv ~x86" + fi +fi + +# BSD for bundled pybind +LICENSE="GPL-2+ GPL-3+ Boost-1.0 BSD" +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 +COMMON_DEPEND=" + app-crypt/libsecret + dev-db/unixODBC + dev-libs/boost:=[context,nls] + dev-libs/libgit2:= + 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] + sys-libs/zlib + >=x11-libs/wxGTK-3.2.2.1-r3:${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=">=dev-lang/swig-4.0 + doc? ( app-text/doxygen )" + +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)" + -DCMAKE_SKIP_RPATH="ON" + + -DOCC_INCLUDE_DIR="${CASROOT}"/include/opencascade + -DOCC_LIBRARY_DIR="${CASROOT}"/$(get_libdir)/opencascade + + -DKICAD_SPICE_QA="$(usex test)" + -DKICAD_BUILD_QA_TESTS="$(usex test)" + ) + + 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 + dosym "${BUILD_DIR}/eeschema/_eeschema.kiface" "${BUILD_DIR}/qa/eeschema/_eeschema.kiface" || die + + # LD_LIBRARY_PATH is there to help it pick up the just-built libraries + LD_LIBRARY_PATH="${BUILD_DIR}/common:${BUILD_DIR}/common/gal:${BUILD_DIR}/3d-viewer/3d_cache/sg:${LD_LIBRARY_PATH}" \ + 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 +} diff --git a/sci-electronics/kicad/kicad-9999.ebuild b/sci-electronics/kicad/kicad-9999.ebuild index 2105a3f3d542..83bf7ead3a08 100644 --- a/sci-electronics/kicad/kicad-9999.ebuild +++ b/sci-electronics/kicad/kicad-9999.ebuild @@ -1,12 +1,12 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PYTHON_COMPAT=( python3_{8..10} ) -WX_GTK_VER="3.0-gtk3" +PYTHON_COMPAT=( python3_{10..11} ) +WX_GTK_VER="3.2-gtk3" -inherit check-reqs cmake optfeature python-single-r1 toolchain-funcs wxwidgets xdg-utils +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" @@ -17,7 +17,7 @@ if [[ ${PV} == 9999 ]]; then 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.gz -> ${P}.tar.gz" + SRC_URI="https://gitlab.com/kicad/code/${PN}/-/archive/${MY_PV}/${MY_P}.tar.bz2 -> ${P}.tar.bz2" S="${WORKDIR}/${PN}-${MY_PV}" if [[ ${PV} != *_rc* ]] ; then @@ -28,51 +28,57 @@ fi # BSD for bundled pybind LICENSE="GPL-2+ GPL-3+ Boost-1.0 BSD" SLOT="0" -IUSE="doc examples +ngspice nls openmp +occ +pcm" +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 COMMON_DEPEND=" - !sci-electronics/kicad-i18n - >=dev-libs/boost-1.61:=[context,nls] + app-crypt/libsecret + dev-db/unixODBC + dev-libs/boost:=[context,nls] + dev-libs/libgit2:= 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 - x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] + >sci-electronics/ngspice-27[shared] + sys-libs/zlib + >=x11-libs/wxGTK-3.2.2.1-r3:${WX_GTK_VER}[X,opengl] $(python_gen_cond_dep ' - >=dev-libs/boost-1.61:=[context,nls,python,${PYTHON_USEDEP}] - dev-python/wxpython:4.0[${PYTHON_USEDEP}] + dev-libs/boost:=[context,nls,python,${PYTHON_USEDEP}] + >=dev-python/wxpython-4.2.0:*[${PYTHON_USEDEP}] ') ${PYTHON_DEPS} - ngspice? ( - >sci-electronics/ngspice-27[shared] - ) nls? ( sys-devel/gettext ) - occ? ( - >=sci-libs/opencascade-7.3.0:0= + test? ( + media-gfx/cairosvg ) " DEPEND="${COMMON_DEPEND}" RDEPEND="${COMMON_DEPEND} sci-electronics/electronics-menu " -BDEPEND=">=dev-lang/swig-3.0 - doc? ( app-doc/doxygen )" +BDEPEND=">=dev-lang/swig-4.0 + doc? ( app-text/doxygen )" if [[ ${PV} == 9999 ]] ; then # x11-misc-util/macros only required on live ebuilds BDEPEND+=" >=x11-misc/util-macros-1.18" fi -CHECKREQS_DISK_BUILD="900M" +CHECKREQS_DISK_BUILD="1500M" pkg_setup() { [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp @@ -90,6 +96,11 @@ src_unpack() { fi } +src_prepare() { + filter-lto # Bug 927482 + cmake_src_prepare +} + src_configure() { xdg_environment_reset @@ -97,8 +108,8 @@ src_configure() { -DKICAD_DOCS="${EPREFIX}/usr/share/doc/${PN}-doc-${PV}" -DKICAD_SCRIPTING_WXPYTHON=ON + -DKICAD_USE_EGL=OFF - # Merged from separate -i18n package, bug #830274 -DKICAD_BUILD_I18N="$(usex nls)" -DKICAD_I18N_UNIX_STRICT_PATH="$(usex nls)" @@ -107,17 +118,14 @@ src_configure() { -DPYTHON_INCLUDE_DIR="$(python_get_includedir)" -DPYTHON_LIBRARY="$(python_get_library_path)" - -DKICAD_SPICE="$(usex ngspice)" - -DKICAD_PCM="$(usex pcm)" - - -DKICAD_USE_OCC="$(usex occ)" -DKICAD_INSTALL_DEMOS="$(usex examples)" -DCMAKE_SKIP_RPATH="ON" - ) - use occ && mycmakeargs+=( -DOCC_INCLUDE_DIR="${CASROOT}"/include/opencascade -DOCC_LIBRARY_DIR="${CASROOT}"/$(get_libdir)/opencascade + + -DKICAD_SPICE_QA="$(usex test)" + -DKICAD_BUILD_QA_TESTS="$(usex test)" ) cmake_src_configure @@ -132,20 +140,23 @@ src_compile() { src_test() { # Test cannot find library in Portage's sandbox. Let's create a link so test can run. - ln -s "${BUILD_DIR}/eeschema/_eeschema.kiface" "${BUILD_DIR}/qa/eeschema/_eeschema.kiface" || die + mkdir -p "${BUILD_DIR}/qa/eeschema/" || die + dosym "${BUILD_DIR}/eeschema/_eeschema.kiface" "${BUILD_DIR}/qa/eeschema/_eeschema.kiface" || die # LD_LIBRARY_PATH is there to help it pick up the just-built libraries - LD_LIBRARY_PATH="${BUILD_DIR}/3d-viewer/3d_cache/sg:${LD_LIBRARY_PATH}" cmake_src_test + LD_LIBRARY_PATH="${BUILD_DIR}/common:${BUILD_DIR}/common/gal:${BUILD_DIR}/3d-viewer/3d_cache/sg:${LD_LIBRARY_PATH}" \ + cmake_src_test } src_install() { cmake_src_install python_optimize + dodoc doxygen/eagle-plugin-notes.txt + if use doc ; then - dodoc uncrustify.cfg - cd Documentation || die - dodoc -r *.txt kicad_doxygen_logo.png notes_about_pcbnew_new_file_format.odt doxygen/. + cd doxygen || die + dodoc -r out/html/. fi } @@ -154,7 +165,6 @@ pkg_postinst() { 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 diff --git a/sci-electronics/kicad/metadata.xml b/sci-electronics/kicad/metadata.xml index cd956ca81c5d..07c75b4303e6 100644 --- a/sci-electronics/kicad/metadata.xml +++ b/sci-electronics/kicad/metadata.xml @@ -5,23 +5,20 @@ <email>zoltan@sinustrom.info</email> <name>Zoltan Puskas</name> </maintainer> + <maintainer type="person" proxied="yes"> + <email>vowstar@gmail.com</email> + <name>Huang Rui</name> + </maintainer> <maintainer type="project" proxied="proxy"> <email>proxy-maint@gentoo.org</email> <name>Proxy Maintainers</name> </maintainer> - <use> - <flag name="github">Add github support into PCB editor</flag> - <flag name="ngspice">Enable circuit simulation</flag> - <flag name="occ">Enable viewing 3D rendering of designs via <pkg>sci-libs/opencascade</pkg></flag> - <flag name="python">Enable python scripting support</flag> - <flag name="pcm">Enable plugin content manager</flag> - </use> <longdescription> Kicad is an open source (GPL) software for the creation of electronic schematic diagrams and printed circuit board artwork. </longdescription> <upstream> - <remote-id type="github">KiCad/kicad-i18n</remote-id> + <remote-id type="gitlab">kicad/code/kicad</remote-id> <remote-id type="launchpad">kicad</remote-id> </upstream> </pkgmetadata> |