summaryrefslogtreecommitdiff
blob: 81c6e4c2d621651cdb0a5fc84ef7431b4c0b50cd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7

WX_GTK_VER="3.0"
inherit desktop flag-o-matic toolchain-funcs wxwidgets

MY_P="${PN}-v${PV}0"

DESCRIPTION="GUI frontend for Ngspice and Gnucap"
HOMEPAGE="https://sourceforge.net/projects/gspiceui/"
SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz"
S="${WORKDIR}/${MY_P}"

LICENSE="GPL-3"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE="examples schematics waveform"

DEPEND="
	x11-libs/wxGTK:${WX_GTK_VER}[X]
	sci-electronics/electronics-menu"
RDEPEND="
	${DEPEND}
	|| (
		sci-electronics/ngspice
		sci-electronics/gnucap
	)
	waveform? ( sci-electronics/gwave )
	schematics? ( sci-electronics/geda )"

PATCHES=(
	# Use Gentoo LDFLAGS and CXXFLAGS
	"${FILESDIR}"/${P}-flags.patch
)

src_prepare() {
	default

	# Adjusting the doc path at src/main/HelpTasks.cpp
	sed -i -e \
		"s:/share/gspiceui/html/User-Manual.html:/share/doc/${PF}/html/User-Manual.html:g" \
		src/main/HelpTasks.cpp || die

	# Adjusting call to gwave program
	sed -i -e "s/gwave2/gwave/g" src/TypeDefs.hpp || die
}

src_configure() {
	setup-wxwidgets

	# bug 553968
	replace-flags -O? -O1

	default
}

src_compile() {
	emake CXX="$(tc-getCXX)"
}

src_install() {
	dobin bin/gspiceui

	HTML_DOCS=( html/*.html html/*.jpg html/*.png )
	einstalldocs
	dodoc ChangeLog ReadMe ToDo release-notes-v1.1.00.txt
	doman gspiceui.1

	# installing examples and according model and symbol files
	use examples && dodoc -r lib sch

	newicon src/icons/gspiceui-48x48.xpm gspiceui.xpm
	make_desktop_entry gspiceui "GNU Spice GUI" gspiceui "Electronics"
}

pkg_postinst() {
	if use examples ; then
		elog "If you want to use the examples, copy and extract from"
		elog "${EROOT}/usr/share/doc/${PF} the sch and lib directory"
		elog "side by side to your home directory to be able"
		elog "to generate the netlists as normal user."
	fi
}