You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/sci-electronics/pcb/pcb-20110918.ebuild

148 lines
4.1 KiB

# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sci-electronics/pcb/pcb-20110918.ebuild,v 1.6 2013/01/02 13:24:19 ago Exp $
EAPI="3"
inherit autotools eutils fdo-mime gnome2-utils
DESCRIPTION="GPL Electronic Design Automation: Printed Circuit Board editor"
HOMEPAGE="http://www.gpleda.org/"
SRC_URI="mirror://sourceforge/pcb/pcb/${P}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ~ppc x86 ~x86-macos"
IUSE="dbus debug doc gcode gif gtk jpeg m4lib-png motif nelma opengl png
test tk toporouter xrender"
# toporouter-output USE flag removed, there seems to be no result
CDEPEND="gif? ( >=media-libs/gd-2.0.23 )
gtk? ( x11-libs/gtk+:2 x11-libs/pango
x11-libs/gtkglext
dbus? ( sys-apps/dbus ) )
jpeg? ( >=media-libs/gd-2.0.23[jpeg] )
motif? ( !gtk? (
>=x11-libs/motif-2.3:0
dbus? ( sys-apps/dbus )
xrender? ( >=x11-libs/libXrender-0.9 ) ) )
nelma? ( >=media-libs/gd-2.0.23 )
opengl? ( virtual/opengl )
gcode? ( >=media-libs/gd-2.0.23 )
virtual/libintl
png? ( >=media-libs/gd-2.0.23[png] )
m4lib-png? ( >=media-libs/gd-2.0.23[png] )
tk? ( >=dev-lang/tk-8 )"
#toporouter-output? ( x11-libs/cairo )
DEPEND="${CDEPEND}
test? (
|| ( media-gfx/graphicsmagick[imagemagick] media-gfx/imagemagick )
sci-electronics/gerbv
)
>=dev-util/intltool-0.35
virtual/pkgconfig
sys-devel/gettext"
RDEPEND="${CDEPEND}
sci-electronics/electronics-menu"
pkg_setup() {
if use gtk && use motif; then
elog "Can only build for GTK+ or Motif/Lesstif GUI. GTK+ has priority."
fi
if !(use gtk || use motif); then
elog "Building without GUI, make sure you know what you are doing."
fi
if use dbus && !(use gtk || use motif); then
elog "dbus needs GTK or Motif/Lesstif GUI. Try USE=-dbus or USE=gtk or USE=motif."
fi
if use opengl && !(use gtk); then
elog "GL drawing needs GTK"
fi
if (use gtk || (! use gtk && ! use motif)) && (use xrender); then
elog "The XRender extension is only usable with the Motif/Lesstif GUI."
fi
}
src_prepare() {
if use test; then
# adapt the list of tests to run according to USE flag settings
if ! use png; then
sed -i '/^hid_png/d' tests/tests.list || die
fi
if ! use gcode; then
sed -i '/^hid_gcode/d' tests/tests.list || die
fi
fi
# Backport from upstream
# http://git.geda-project.org/pcb/commit/?id=a34b40add60310a51780f359cc90d9c5ee75752c
# (do not install static GTS library)
sed -i -e 's/lib_LIBRARIES/noinst_LIBRARIES/' -e 's/include_HEADERS/noinst_HEADERS/' gts/Makefile.am || die
# fix bad syntax in Makefile.am and configure.ac before running eautoreconf
sed -i -e 's/:=/=/' Makefile.am || die
epatch "${FILESDIR}"/${P}-fix-config.diff
eautoreconf
}
src_configure() {
local myconf
if use gtk ; then
myconf="--with-gui=gtk $(use_enable dbus) $(use_enable opengl gl) --disable-xrender"
elif use motif ; then
myconf="--with-gui=lesstif $(use_enable dbus) $(use_enable xrender)"
else
myconf="--with-gui=batch --disable-xrender --disable-dbus"
fi
local exporters="bom gerber ps"
if (use png || use jpeg || use gif) ; then
exporters="${exporters} png"
fi
use nelma && exporters="${exporters} nelma"
use gcode && exporters="${exporters} gcode"
use tk || export WISH="${EPREFIX}/bin/true"
econf \
${myconf} \
$(use_enable doc) \
$(use_enable gif) \
$(use_enable jpeg) \
$(use_enable png) \
$(use_enable m4lib-png) \
$(use_enable toporouter) \
$(use_enable debug) \
--enable-nls \
--disable-toporouter-output \
--with-exporters="${exporters}" \
--disable-dependency-tracking \
--disable-rpath \
--disable-update-mime-database \
--disable-update-desktop-database \
--docdir="${EPREFIX}/usr/share/doc/${PF}"
}
# toporouter-output USE flag removed, there seems to be no result
# $(use_enable toporouter-output) \
src_install() {
emake DESTDIR="${D}" install || die "install failed"
dodoc AUTHORS README NEWS ChangeLog
}
pkg_preinst() {
gnome2_icon_savelist
}
pkg_postinst() {
fdo-mime_desktop_database_update
fdo-mime_mime_database_update
gnome2_icon_cache_update
}
pkg_postrm() {
fdo-mime_desktop_database_update
fdo-mime_mime_database_update
gnome2_icon_cache_update
}