summaryrefslogtreecommitdiff
path: root/sci-electronics/kicad
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2020-01-15 15:51:32 +0000
committerV3n3RiX <venerix@redcorelinux.org>2020-01-15 15:51:32 +0000
commit21435953e16cda318a82334ddbadb3b5c36d9ea7 (patch)
treee1810a4b135afce04b34862ef0fab2bfaeb8aeca /sci-electronics/kicad
parent7bc9c63c9da678a7e6fceb095d56c634afd22c56 (diff)
gentoo resync : 15.01.2020
Diffstat (limited to 'sci-electronics/kicad')
-rw-r--r--sci-electronics/kicad/Manifest9
-rw-r--r--sci-electronics/kicad/files/kicad-5.1.5-help.patch117
-rw-r--r--sci-electronics/kicad/files/kicad-5.1.5-ninja-build.patch45
-rw-r--r--sci-electronics/kicad/files/ldflags.patch17
-rw-r--r--sci-electronics/kicad/kicad-5.1.2-r1.ebuild4
-rw-r--r--sci-electronics/kicad/kicad-5.1.4.ebuild4
-rw-r--r--sci-electronics/kicad/kicad-5.1.5.ebuild134
7 files changed, 324 insertions, 6 deletions
diff --git a/sci-electronics/kicad/Manifest b/sci-electronics/kicad/Manifest
index d408984514a3..72e81b6ce0a1 100644
--- a/sci-electronics/kicad/Manifest
+++ b/sci-electronics/kicad/Manifest
@@ -2,20 +2,25 @@ AUX kicad-5.0.0-curl.patch 568 BLAKE2B 6a6d4d382f014fa57a5af8af27e6090f4c9e7b8c9
AUX kicad-5.0.0-help.patch 4683 BLAKE2B 6b3e3d3567e0f554346ad2eb30b3af9e7ab07e77da2675513dd040e85011f6e711701c0cf3909399f4fe2298d7d59e71727583240d3e06701c18b4c2f59090ef SHA512 570fb711ffb18c7201e7a75791d1cc370493975d19e125de1ff6a78107b5fb70868975efd7d2a8ec921190484f7f91f723cca52337ec2e36f860b73dcedc3e7b
AUX kicad-5.1.0-help.patch 4690 BLAKE2B 5459e3e7fde22590f4357ec3981c9bc2d784f533cc0370befb6851fb01954923722c815aaafa4dcd37f15c74bc31fd3b711ac106301abeb195dedc8086965c47 SHA512 ed5c70b0157ff4db152e2374df669210b194147655c7c5083ffb2f5ce56358c30c4cb2aaff2368f3a34757e5a5021b335ce169727eaaf511b12d1ceb3fb9a350
AUX kicad-5.1.0-swig-4.0.0.patch 623 BLAKE2B 66d3974741793b84a192d9223e739deddc544c230a8618aa78db1fe48bec1a632cb07bfcdb0b01137c1b1e4cb7d5fda4330c7cb717ea894d6279660752056e7b SHA512 c43552d6da296cbc11232f565a9525fc707304e9a823e4e003d998f4ef013d82708c7b17b4bcef82c661e0f53e849d372c089a077a356b006db3523ffe82892a
+AUX kicad-5.1.5-help.patch 4660 BLAKE2B c0521bea600748605dd581c34d63b6d084225d339f035167c3d0f0801f396ddfbbee22d843be53f81440b199c307604c98f08509fe9ec55efab6c297a7175947 SHA512 704fb0cc60bc18610bd410028c5c6302548bac646b0653ba32355b03fadbe4d8366dbad18469d5fd49d1d86e70497a13cbc2748c9e4b139d3a640c46bce50a36
+AUX kicad-5.1.5-ninja-build.patch 2143 BLAKE2B 0bc1cab18ac65652a14f105214ef526bb589b3dc71073c75c415f722bda231e55f74c6b1e0132523d2bfc2375424bd58ba03437f1a020e49a495fd68bc826d38 SHA512 d54a0aa7382ccef8bfc3be0df87fb72761c4467a425268aa8a6f37b2968ca18ac9f0fc41b7b4e4ea2285e724c643a9bae5c26df13ea3db2d2fbdd4f08ffe7732
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
+AUX ldflags.patch 890 BLAKE2B 2c5436fccb50886faacd84102ba7bfefa84986a5d65ea70965d2f0ded81e746e544f774bdfc0c539114dbafa3de7340bc41ea5af7a5db8a54b706221cafee7ee SHA512 4fda20a73499df81614dd920d18767d901269375d17749982d2c51cf595c873531379ac8ef57b1fc7adc1f4f028907002135f2e0fccaf4ee753184298e7cf8fd
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-5.0.1.tar.xz 14241544 BLAKE2B 47b6f8f4443e547dc1251e609b53fc998006c6a9302442a232767c6db79bcd94340afba694d99b6dfad5cf457a524d3dbce7a5971a9dcd13424ccb2b6f8f1de7 SHA512 36f591fe82c2c2da21581ec9425cf3c179839b20ea9db9e2d406220406e9daef6052d29202b4f0fe4fdab73434009626f66ce803e81e7a7dae4df9ea93ed896d
DIST kicad-5.1.0.tar.xz 14191708 BLAKE2B 182b2e2d3ddef3d8cae1552b869427b5d63082aeaa1d3bd15d977c5421084fa6134f8d244a3024b46aa56c98c8412d3f1ba8f72b40c73ab9bfebea7535a8a4ad SHA512 644865932d7e18e446c222cd85e969bb3462bca7fbf6c411e955cd460f5df45ed5221c0948ecd34262a2f5355e586c8fe04c1cb28fa51e4fd09d6f3f78c54761
DIST kicad-5.1.2.tar.xz 14191500 BLAKE2B f25de921a8f412dd52ad7afe31c95e3db5d497126925cb024ba31519b1bc1acdc573c4465aaee0b4acf73002100361bb95e4ca325b5199717f1827480d7e1f6e SHA512 5280be13d82d675aecab208f6d05ac8ac31a8f4d620c541748a1c519f8587b0250f189d8c5cdc0d7fa19b52780e5c68bb3e1956a3f303bb183bfb4c59062be1b
DIST kicad-5.1.4.tar.xz 14198672 BLAKE2B 99d317df6f2446611614c8d4294b4f8ff81082d2d74d701b616225c5667f96dd5a5bc47511e1af869351af3707244a6d660ff6a3257fe70e1e15df67c8d9fa3b SHA512 ce0efb740686eafdbbdf8cda68ad800a70c8991302f984be3db4bbdb3bfafe1634871ec6ea26bb6854a417db6336880e5a043dc022ef8126c0e98abc90671337
+DIST kicad-5.1.5.tar.xz 14203632 BLAKE2B cda7bf95c8edbddd36489f299dca9393ee51658e828f7e9f37bfa56955924785186908b0d8c91ae3e895f15cdba50c7579cf7a450e525f4a2ba215a721df26dd SHA512 5ca19e219da07a906f13e236849eb4497c9f827726a5cd13aceffe1d8c7dee480823bf3e949527f59a805eb3b8176fad51576ae663dd07b10e2822f2b37866a5
DIST kicad-footprints-4.0.7.tar.gz 4758012 BLAKE2B ca7ddcad3d1ca658d0d5b7c0a4a0e9a3906619bdbf14195b3bd14c528c01b6e9c1f185036ad495fc88a33a53040ae4d338230d8b2bbb598a69a1c07ddfec3cce SHA512 9ba08f528d4b3fa6f165a20333ad2e0f6bc4165b51da77bdb080ad2c8cc12c029927ddb2f6aa669b4dac5fac52b8bdbec803d1b7b3fc639e9481bb866b8e3d6f
DIST kicad-library-4.0.7.tar.gz 475804416 BLAKE2B 0d6df1df7a72258e896552551996ff13e985976e03b6aafbe900dcc04c9b8eb6e5c1abc242ae5020c1bd20b51e9cc1e60f520b478954edcb6368db7f9ee46df0 SHA512 c5365e18e806102aace785895259deca708a61e0ce37262f5ee2482a8a1f86bc9ce1d37e0fb63cb0661bd5c71064ac36ca2260c9c02ed9790744eedd0a5b5360
EBUILD kicad-4.0.7.ebuild 6660 BLAKE2B 01d74a7d0953864d95605db9646457ed92a68552bec80ef5d8ada67800dedf5b7c49c467d75897eee4b05ab5ea37cb13c5dbf88f9cc31195963c65ae9d22b9d5 SHA512 944610406b0f01930142fb8cdc7aa6a9e2aa0d733db9b2cc7a7e8a0eee3acbfc165a462c88efe2146c0e6192ef4a8a6560bc4786306da94d5731f06607ac3754
EBUILD kicad-5.0.1.ebuild 3470 BLAKE2B ba72236bf9f3cc2b54d88bde68d529f9ee826f78aee2a8c2f5ad234d18bab2d36c76f7f51a6192dd63b2925081a614ba94d29155e280e91a9ecfb4063392a682 SHA512 5b8070be9d7fca9f95a138dc81b2ec5eabee8c970da129c5efcf61806310e235e2fc3339a0ecd8108e8b030af09aff5970894893c49a3414f76d5dd3784ffbe3
EBUILD kicad-5.1.0-r1.ebuild 3547 BLAKE2B f8fe35fce1d7a6f27d807483e96eb2986dc79601313762fc5f340bb32e9841572f4fa27fb9152b41f77db72b724b815dd2c32775b734995e987b7eea7bba15af SHA512 6c7205cdbd66bf6f52aea0906ff9f22884154b3499c95aae28eb9fd3b004ec2b62584ead6a4c0a4c73ca6bc161551516b6af311a67640a339ec2b120319c36a0
-EBUILD kicad-5.1.2-r1.ebuild 3625 BLAKE2B 55c3de33fe5beb35de8a52fad781edab0186ce0fb8c4719f9b659252d86e8727ac3290ef067f359f992aa488a331ea159b463685046645196e3de9ced28aff9e SHA512 3586dabb3021678fcd860470273f37c9a2e6162b953ddb78d3b9402c75001605165e459aab0a9af633c1f09a68cbc64ac1149e92992eb10b5250ae3a444f74b2
-EBUILD kicad-5.1.4.ebuild 3589 BLAKE2B 24a73c88b047f52fb8810f1485533f1c4e32766400b3aeb83b6a2e4a170f297872b75b1e0d507f4fec0197a67ac06b0ce121fc3a814e0d97784dbe5219dd9cd0 SHA512 07a5e837891f56a0448e4507cc71a667a8c6297c6606e7649204bb2aec4aaa4e31b87d7bbfcff53c44420d2fd7e60fd0f43f2e67571c550f3006eaaabb67fae7
+EBUILD kicad-5.1.2-r1.ebuild 3623 BLAKE2B 76621467d79af219a63784e9147fcb76ff474bafd79d958e22a80e747e9a48845844df626fd3f34acc46a25ac498a4f7884a5a513a10156e8975a532531868ec SHA512 67cc9e308c5535da54b6e765be5e77c8dd0fcf7501887a04fbf649bd46b07a3dcf5b8beef916ff1e9649475d7169d1c2cfa1e2c6db870215b3002071519d6acc
+EBUILD kicad-5.1.4.ebuild 3587 BLAKE2B 1acd2ae60530e70c734bcaf97a831d4ccf5d9270f7818974939a32f69c44e752a7d3b0a09bdf3210f4f3f6e5ef1c4d568500f7783fbe6e123d1a5772fd4bfafd SHA512 0c5be7637cc9383f61a080bf91de4c5babda0b11658cbd7e43d0fb936f8105b344346f95ab2fc4a190702aa34eec49a63e6435c8514b67d469c4a2c379934c95
+EBUILD kicad-5.1.5.ebuild 3558 BLAKE2B 7a8680f1cdf6ac6d740c8045e9d2ba5e149ba75a39bb2bc3d35e53b4d528da2aee6c1c3cf8caf38835b602f547eee766ea02472d7b958bee06534d6b03a1b089 SHA512 933e6571e81f07ba3c3bbe20bc1990e9b587f8f9ead8541fe0c40356ee7580a9b9f19f9537043d70accb5f4a627b8781865cb44f948bdf429953382e42b2be0e
MISC metadata.xml 1181 BLAKE2B dadb380f3a2c422a93f349ede59cd4a6bf03dac69306357df08ef88931f76329669e5713f741507ce37ec4bb10445351ed293ed13174ed38de6c284e2234e2f8 SHA512 60c76ec7d665f273fb538c10e4993ac6d30c567d9cb8c0c862175c63a59d45cc9fdeacbb2ba6a3cff12e722124ef6c7466828ea792ddd405c587bd0bac65472c
diff --git a/sci-electronics/kicad/files/kicad-5.1.5-help.patch b/sci-electronics/kicad/files/kicad-5.1.5-help.patch
new file mode 100644
index 000000000000..1b37e3013c1e
--- /dev/null
+++ b/sci-electronics/kicad/files/kicad-5.1.5-help.patch
@@ -0,0 +1,117 @@
+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-ninja-build.patch b/sci-electronics/kicad/files/kicad-5.1.5-ninja-build.patch
new file mode 100644
index 000000000000..3aac927b5bd2
--- /dev/null
+++ b/sci-electronics/kicad/files/kicad-5.1.5-ninja-build.patch
@@ -0,0 +1,45 @@
+diff -Naur kicad-5.1.5-orig/pcbnew/CMakeLists.txt kicad-5.1.5/pcbnew/CMakeLists.txt
+--- kicad-5.1.5-orig/pcbnew/CMakeLists.txt 2019-11-14 09:09:45.000000000 -0800
++++ kicad-5.1.5/pcbnew/CMakeLists.txt 2019-12-15 03:47:03.479894245 -0800
+@@ -808,11 +808,7 @@
+ add_dependencies( ScriptingModulesPcbnewSoCopy ScriptingWxpythonCopy )
+ set( PYMOD_EXT "so" )
+ else() # only linux remains among supported platforms
+- add_library( pcbnew_python MODULE $<TARGET_OBJECTS:pcbnew_kiface_objects> )
+- target_link_libraries( pcbnew_python ${PCBNEW_KIFACE_LIBRARIES} )
+- set_target_properties( pcbnew_python PROPERTIES OUTPUT_NAME pcbnew PREFIX "_" SUFFIX ".so" )
+- install( TARGETS pcbnew_python DESTINATION ${PYTHON_DEST} COMPONENT binary )
+-
++ install( FILES ${CMAKE_CURRENT_BINARY_DIR}/_pcbnew.kiface DESTINATION ${PYTHON_DEST} COMPONENT binary RENAME "_pcbnew.so" )
+ set( PYMOD_EXT "so" )
+ endif()
+
+@@ -827,18 +823,16 @@
+ DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/_pcbnew.${PYMOD_EXT}
+ )
+ else()
+-
+-
+- # For phase 1, copy _pcbnew.kiface to the python module.
+- add_custom_command( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/_pcbnew.${PYMOD_EXT}
+- DEPENDS pcbnew_kiface
+- COMMAND ${CMAKE_COMMAND} -E copy _pcbnew.kiface _pcbnew.${PYMOD_EXT}
+- COMMENT "Creating python's pcbnew native module _pcbnew.${PYMOD_EXT} for command line use."
+- )
+- add_custom_target(
+- pcbnew_python_module ALL
+- DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/_pcbnew.${PYMOD_EXT}
+- )
++ # For phase 1, copy _pcbnew.kiface to the python module.
++ add_custom_command( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/_pcbnew.${PYMOD_EXT}
++ DEPENDS pcbnew_kiface
++ COMMAND ${CMAKE_COMMAND} -E copy _pcbnew.kiface _pcbnew.${PYMOD_EXT}
++ COMMENT "Creating python's pcbnew native module _pcbnew.${PYMOD_EXT} for command line use."
++ )
++ add_custom_target(
++ pcbnew_python_module ALL
++ DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/_pcbnew.${PYMOD_EXT}
++ )
+ endif()
+
+ endif()
diff --git a/sci-electronics/kicad/files/ldflags.patch b/sci-electronics/kicad/files/ldflags.patch
new file mode 100644
index 000000000000..1495037b1b72
--- /dev/null
+++ b/sci-electronics/kicad/files/ldflags.patch
@@ -0,0 +1,17 @@
+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/kicad-5.1.2-r1.ebuild b/sci-electronics/kicad/kicad-5.1.2-r1.ebuild
index 440ad979830f..eaf36e9596e6 100644
--- a/sci-electronics/kicad/kicad-5.1.2-r1.ebuild
+++ b/sci-electronics/kicad/kicad-5.1.2-r1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Can switch to EAPI=7 when wxwidgets eclass also supports it
EAPI=6
-PYTHON_COMPAT=( python3_{5,6,7} )
+PYTHON_COMPAT=( python3_{6,7} )
WX_GTK_VER="3.0-gtk3"
diff --git a/sci-electronics/kicad/kicad-5.1.4.ebuild b/sci-electronics/kicad/kicad-5.1.4.ebuild
index 773db8d09c95..b442e402be32 100644
--- a/sci-electronics/kicad/kicad-5.1.4.ebuild
+++ b/sci-electronics/kicad/kicad-5.1.4.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Can switch to EAPI=7 when wxwidgets eclass also supports it
EAPI=6
-PYTHON_COMPAT=( python3_{5,6,7} )
+PYTHON_COMPAT=( python3_{6,7} )
WX_GTK_VER="3.0-gtk3"
diff --git a/sci-electronics/kicad/kicad-5.1.5.ebuild b/sci-electronics/kicad/kicad-5.1.5.ebuild
new file mode 100644
index 000000000000..46baaff613c7
--- /dev/null
+++ b/sci-electronics/kicad/kicad-5.1.5.ebuild
@@ -0,0 +1,134 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7} )
+
+WX_GTK_VER="3.0-gtk3"
+
+inherit check-reqs cmake eutils python-single-r1 toolchain-funcs wxwidgets xdg-utils
+
+DESCRIPTION="Electronic Schematic and PCB design tools"
+HOMEPAGE="https://www.kicad-pcb.org"
+SRC_URI="https://launchpad.net/${PN}/5.0/${PV}/+download/${P}.tar.xz"
+
+LICENSE="GPL-2+ GPL-3+ Boost-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc examples github +ngspice occ +oce openmp +python"
+
+REQUIRED_USE="
+ python? ( ${PYTHON_REQUIRED_USE} )
+ ?? ( occ oce )
+"
+
+COMMON_DEPEND="
+ >=dev-libs/boost-1.61:=[context,nls,threads,python?,${PYTHON_USEDEP}]
+ 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[shared]
+ )
+ occ? ( >=sci-libs/opencascade-6.8.0:= )
+ oce? ( sci-libs/oce )
+ python? (
+ 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-ninja-build.patch"
+ "${FILESDIR}"/"ldflags.patch"
+)
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+ use openmp && tc-check-openmp
+ setup-wxwidgets
+ check-reqs_pkg_setup
+}
+
+src_configure() {
+ xdg_environment_reset
+
+ local mycmakeargs=(
+ -DKICAD_DOCS="${EPREFIX}/usr/share/doc/${P}"
+ -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_USE_OCE="$(usex oce)"
+ -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 occ && mycmakeargs+=(
+ -DOCC_INCLUDE_DIR="${CASROOT}"/include/opencascade
+ -DOCC_LIBRARY_DIR="${CASROOT}"/lib
+ )
+
+ 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
+}
+
+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
+}