From 2e9d688fa4b08833f3c130a41d3e1369cfaf4edc Mon Sep 17 00:00:00 2001 From: Zoltan Puskas Date: Sun, 23 Sep 2018 13:59:45 +0100 Subject: sci-electronics/kicad: Add USE=occ,openmp, fix curl dependency Thanks to Fabio Rossi for the authorship of the patch. Closes: https://bugs.gentoo.org/665500 Package-Manager: Portage-2.3.48, Repoman-2.3.10 Signed-off-by: Zoltan Puskas Closes: https://github.com/gentoo/gentoo/pull/9955 Signed-off-by: Virgil Dupras --- sci-electronics/kicad/files/kicad-5.0.0-curl.patch | 23 ++++ sci-electronics/kicad/kicad-5.0.0-r1.ebuild | 133 +++++++++++++++++++++ sci-electronics/kicad/kicad-5.0.0.ebuild | 121 ------------------- sci-electronics/kicad/metadata.xml | 1 + 4 files changed, 157 insertions(+), 121 deletions(-) create mode 100644 sci-electronics/kicad/files/kicad-5.0.0-curl.patch create mode 100644 sci-electronics/kicad/kicad-5.0.0-r1.ebuild delete mode 100644 sci-electronics/kicad/kicad-5.0.0.ebuild diff --git a/sci-electronics/kicad/files/kicad-5.0.0-curl.patch b/sci-electronics/kicad/files/kicad-5.0.0-curl.patch new file mode 100644 index 000000000000..c99071c0a548 --- /dev/null +++ b/sci-electronics/kicad/files/kicad-5.0.0-curl.patch @@ -0,0 +1,23 @@ +--- a/common/CMakeLists.txt.old 2018-09-13 16:21:29.642915273 +0200 ++++ a/common/CMakeLists.txt 2018-09-13 16:23:25.146914833 +0200 +@@ -337,14 +337,17 @@ + list( APPEND COMMON_SRCS strtok_r.c ) + endif() + ++if( BUILD_GITHUB_PLUGIN ) ++ list( APPEND COMMON_SRCS ++ kicad_curl/kicad_curl.cpp ++ kicad_curl/kicad_curl_easy.cpp ++ ) ++endif() + + set( COMMON_SRCS + ${COMMON_SRCS} + system/libcontext.cpp + +- kicad_curl/kicad_curl.cpp +- kicad_curl/kicad_curl_easy.cpp +- + view/view.cpp + view/view_item.cpp + view/view_group.cpp diff --git a/sci-electronics/kicad/kicad-5.0.0-r1.ebuild b/sci-electronics/kicad/kicad-5.0.0-r1.ebuild new file mode 100644 index 000000000000..18cae5de2535 --- /dev/null +++ b/sci-electronics/kicad/kicad-5.0.0-r1.ebuild @@ -0,0 +1,133 @@ +# 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 toolchain-funcs 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 occ +oce openmp +python" + +REQUIRED_USE=" + python? ( ${PYTHON_REQUIRED_USE} ) + ?? ( occ oce ) +" + +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}] + media-libs/glew:0= + media-libs/glm + media-libs/freeglut + media-libs/mesa + ngspice? ( + sci-electronics/ngspice[shared] + ) + occ? ( >=sci-libs/opencascade-6.8.0 ) + oce? ( sci-libs/oce ) + >=x11-libs/cairo-1.8.8 + >=x11-libs/pixman-0.30" +DEPEND="${COMMON_DEPEND} + doc? ( app-doc/doxygen ) + github? ( net-misc/curl[ssl] ) + python? ( >=dev-lang/swig-3.0:0 )" +RDEPEND="${COMMON_DEPEND} + sci-electronics/electronics-menu +" +CHECKREQS_DISK_BUILD="800M" + +pkg_setup() { + use python && python-single-r1_pkg_setup + use openmp && tc-check-openmp + setup-wxwidgets + check-reqs_pkg_setup +} + +src_prepare() { + xdg_src_prepare + cmake-utils_src_prepare + + epatch "${FILESDIR}"/${P}-curl.patch + + # fix application categories in desktop files + while IFS="" read -d $'\0' -r f; do + sed -i.bkp '/Categories/s/Development;//' "${f}" + done < <(find "${S}" -type f -name "*.desktop" -print0) + +} + +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_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_LIBRARY_DIR="${CASROOT}"/lib ) + + cmake-utils_src_configure +} + +src_compile() { + cmake-utils_src_compile + if use doc; then + cmake-utils_src_compile doxygen-docs + cmake-utils_src_compile dev-docs + fi +} + +src_install() { + cmake-utils_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_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/kicad-5.0.0.ebuild b/sci-electronics/kicad/kicad-5.0.0.ebuild deleted file mode 100644 index db6476d4b962..000000000000 --- a/sci-electronics/kicad/kicad-5.0.0.ebuild +++ /dev/null @@ -1,121 +0,0 @@ -# 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_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)" - ) - 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 41cd516dac1f..6eff0d23cafb 100644 --- a/sci-electronics/kicad/metadata.xml +++ b/sci-electronics/kicad/metadata.xml @@ -14,6 +14,7 @@ Allow GUI internationalization through l10n_* use flags Build only binaries without parts library and examples Enable circuit simulation + Enable viewing 3D rendering of designs via opencascade Enable viewing 3D rendering of designs via OCE Enable python scripting support -- cgit v1.2.3-65-gdbad