summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sci-electronics/pcb/Manifest1
-rw-r--r--sci-electronics/pcb/pcb-4.3.0.ebuild113
2 files changed, 114 insertions, 0 deletions
diff --git a/sci-electronics/pcb/Manifest b/sci-electronics/pcb/Manifest
index 340ef2eb2ae0..982f8701dd3f 100644
--- a/sci-electronics/pcb/Manifest
+++ b/sci-electronics/pcb/Manifest
@@ -1 +1,2 @@
DIST pcb-4.2.2.tar.gz 5182807 BLAKE2B e2a9ab7fdeb402d9d07717fbc2ad4b31594aada95693c2a7046c73364a43591ee1a537f0cbda67bf46e39d53c61a454f146963fe14a4661fe2ffbc11c2eab99f SHA512 c76fc053fbb0a8a9b7aef494a37d3587efaa2023affd32c3cce895632a7e68fbb85f8862cff8349c7d281365379c07a5471c9467c5977a7aa053a83fc6499c55
+DIST pcb-4.3.0.tar.gz 5383782 BLAKE2B 745db23f9a578b4e785ccaca2f5acccbe83fcd94bfaf34f594fd7fe3ec68d0fe4183f2d705f0a3fb32b1f07b6a4af657ab27cda7b70d652072365828e0a07289 SHA512 eaee631c7c2d0a8047e95634ac1a3892fa38d621d7fd3c8aafaaa05692cf6e6a92ea5733bf512631f9f8c2ff5b6dbeeda7f304cd35cfb771d339976842d64039
diff --git a/sci-electronics/pcb/pcb-4.3.0.ebuild b/sci-electronics/pcb/pcb-4.3.0.ebuild
new file mode 100644
index 000000000000..80f27c1fb2ba
--- /dev/null
+++ b/sci-electronics/pcb/pcb-4.3.0.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools toolchain-funcs virtualx xdg
+
+DESCRIPTION="GPL Electronic Design Automation: Printed Circuit Board editor"
+HOMEPAGE="http://pcb.geda-project.org/"
+SRC_URI="mirror://sourceforge/pcb/pcb/${P}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="dbus doc gcode gif gsvit gui jpeg m4lib-png nelma png test tk toporouter"
+# toporouter-output USE flag removed, there seems to be no result
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-libs/glib:2
+ sci-electronics/electronics-menu
+ gif? ( media-libs/gd )
+ gsvit? ( media-libs/gd[png] )
+ gui? (
+ x11-libs/gtk+:2
+ x11-libs/pango
+ dbus? ( sys-apps/dbus )
+ )
+ jpeg? ( media-libs/gd[jpeg] )
+ nelma? ( media-libs/gd[png] )
+ gcode? ( media-libs/gd[png] )
+ virtual/libintl
+ png? ( media-libs/gd[png] )
+ m4lib-png? ( media-libs/gd[png] )
+ tk? ( >=dev-lang/tk-8:0 )"
+#toporouter-output? ( x11-libs/cairo )
+
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=dev-util/intltool-0.35
+ virtual/pkgconfig
+ sys-devel/gettext
+ test? (
+ sci-electronics/gerbv
+ virtual/imagemagick-tools
+ )"
+
+PATCHES=( "${FILESDIR}"/${PN}-4.2.2-fix-autotools.patch )
+
+src_prepare() {
+ default
+ eautoreconf
+
+ # tests are unconditional, even in the known presence of missing/disabled
+ # features, so we have to remove feature tests ourselves.
+ if ! use gcode; then
+ sed -i '/^hid_gcode/d' tests/tests.list || die
+ fi
+ if ! use gsvit; then
+ sed -i '/^hid_gsvit/d' tests/tests.list || die
+ fi
+ if ! use nelma; then
+ sed -i '/^hid_nelma/d' tests/tests.list || die
+ fi
+ if ! use png; then
+ sed -i '/^hid_png/d' tests/tests.list || die
+ fi
+ if ! use gif; then
+ sed -i '/^hid_png10[[:digit:]]/d' tests/tests.list || die
+ fi
+ if ! use jpeg; then
+ sed -i '/^hid_png20[[:digit:]]/d' tests/tests.list || die
+ fi
+}
+
+src_configure() {
+ local exporters=( bom gerber ps ipcd356 )
+ if use png || use jpeg || use gif; then
+ exporters+=( png )
+ fi
+ use gcode && exporters+=( gcode )
+ use gsvit && exporters+=( gsvit )
+ use nelma && exporters+=( nelma )
+ use tk || export WISH="${EPREFIX}/bin/true"
+
+ # toporouter-output USE flag removed, seems to do nothing
+ # opengl disabled unconditionally, due to requiring EOL gtkglext
+ econf \
+ --disable-gl \
+ --disable-rpath \
+ --disable-toporouter-output \
+ --disable-update-mime-database \
+ --disable-update-desktop-database \
+ --disable-xrender \
+ --enable-nls \
+ $(use_enable doc) \
+ $(use_enable gif) \
+ $(use_enable jpeg) \
+ $(use_enable png) \
+ $(use_enable m4lib-png) \
+ $(use_enable toporouter) \
+ $(use_enable gui dbus $(usex dbus yes no)) \
+ --with-gui=$(usex gui gtk batch) \
+ --with-exporters="${exporters[*]}"
+}
+
+src_compile() {
+ emake AR="$(tc-getAR)"
+}
+
+src_test() {
+ virtx emake check
+}