mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2025-12-09 00:07:57 +03:00
sci-electronics/ngspice: drop 40
Closes: https://bugs.gentoo.org/949481 Signed-off-by: David Seifert <soap@gentoo.org>
This commit is contained in:
parent
9831c0e030
commit
a8c8890df9
@ -1,4 +1,2 @@
|
||||
DIST ngspice-40-manual.pdf 2462604 BLAKE2B a0d680cd76f8acb1be18e94953d70784aaf79e1bcc4bc3995a1221d81e27c13e577d182e7cbacb8430a068db7d86681f22ec4f3537b5704faacb8e982588617f SHA512 1a5c7828aa9a4554052fb01145641415d8a4cbd50db9885d5d937e1b6f50c7c541dfeeabf2efd6ea862036b4d74ce8265bdac1cfad0fc635f28651a0d397bfc5
|
||||
DIST ngspice-40.tar.gz 9431981 BLAKE2B e45d5d7a9e8d9d3fdae4eb076090a588680055a74cc24ba9ca3d93a7c42b95ee29073101d5791f8069cb27b3049aa1a451476f1df6460477fb156336602678fd SHA512 dab422cc8677e6f4bb92e06be0ce695a53d3e9abbe533c7bb91540d55d2a13514b0b166c8ccafcc17699799a846a35e260dddc400664c6e1137e1b18504e9954
|
||||
DIST ngspice-43-manual.pdf 2559027 BLAKE2B 71c86d4325025900db0d7ae961134111f1004490f827be64322cf1109e3781630f4ad7f70006a5e086914b6ec1b8a82bfc013219237d52838cb9dcbd4ece52bb SHA512 01bd68983c10ca8ef2a399354290032a0e9a9881159a3781459c576e662efa91af403ef191e846694ef418a8aec3e867d8e916d8a41a6d616d3169daf22be444
|
||||
DIST ngspice-43.tar.gz 10279606 BLAKE2B a866866dfe6dec238241406fe323baa22fd4145e7bda9e234cee507690fe224938663423ffc3fc37bf86093a982151ad96a5ba53fe292161f901297eef1cf892 SHA512 ad938e6ea8f9874c04d1033599bf39d3728e763fbd42ba77bd036b6c00271600695b3656f3f34547c39153382f55e7d7d5d6cb732f272d149cdbe21988c0d636
|
||||
|
||||
@ -1,215 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit autotools flag-o-matic multibuild toolchain-funcs virtualx
|
||||
|
||||
DESCRIPTION="The Next Generation Spice (Electronic Circuit Simulator)"
|
||||
HOMEPAGE="http://ngspice.sourceforge.net"
|
||||
SRC_URI="
|
||||
https://downloads.sourceforge.net/ngspice/${P}.tar.gz
|
||||
doc? ( https://downloads.sourceforge.net/ngspice/${P}-manual.pdf )
|
||||
"
|
||||
|
||||
LICENSE="BSD GPL-2 MPL-2.0"
|
||||
SLOT="0"
|
||||
IUSE="X debug deprecated doc examples fftw openmp +readline +shared tcl"
|
||||
KEYWORDS="amd64 ~arm64 ~ppc ~riscv ~sparc ~x86 ~x64-macos"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
DEPEND="
|
||||
sys-libs/ncurses:=
|
||||
X? (
|
||||
x11-libs/libXaw
|
||||
x11-libs/libXt
|
||||
x11-libs/libX11
|
||||
)
|
||||
fftw? ( sci-libs/fftw:3.0= )
|
||||
readline? ( sys-libs/readline:= )
|
||||
tcl? (
|
||||
dev-lang/tcl:=
|
||||
dev-tcltk/blt
|
||||
)
|
||||
"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
DOCS=(
|
||||
ANALYSES
|
||||
AUTHORS
|
||||
BUGS
|
||||
ChangeLog
|
||||
DEVICES
|
||||
FAQ
|
||||
NEWS
|
||||
README
|
||||
README.vdmos
|
||||
Stuarts_Poly_Notes
|
||||
)
|
||||
|
||||
pkg_pretend() {
|
||||
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
|
||||
|
||||
MULTIBUILD_VARIANTS=( "binaries" )
|
||||
use shared && MULTIBUILD_VARIANTS+=( "shared" )
|
||||
use tcl && MULTIBUILD_VARIANTS+=( "tcl" )
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if use tcl; then
|
||||
if use examples; then
|
||||
find examples/tclspice -type f -iname \*tcl -or -iname \*.sh |
|
||||
while read s
|
||||
do
|
||||
sed -i -e 's@../../../src/.libs/libspice.so@libspice.so@g' \
|
||||
-e 's@package require BLT@package require Tk\npackage require BLT@g' \
|
||||
-e "s@spice::codemodel \(.*\)/\(.*\).cm@spice::codemodel /usr/$(get_libdir)/ngspice/\2.cm@g" \
|
||||
"${s}" || die "sed failed"
|
||||
done
|
||||
fi
|
||||
fi
|
||||
|
||||
eautoreconf
|
||||
multibuild_copy_sources
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# -Werror=lto-type-mismatch
|
||||
# https://bugs.gentoo.org/862513
|
||||
# https://sourceforge.net/p/ngspice/bugs/665/
|
||||
filter-lto
|
||||
|
||||
multibuild_foreach_variant ngspice_configure
|
||||
}
|
||||
|
||||
ngspice_configure() {
|
||||
local myeconfargs
|
||||
|
||||
pushd "${BUILD_DIR}" &>/dev/null || die
|
||||
|
||||
if use debug; then
|
||||
myeconfargs=(
|
||||
--enable-debug
|
||||
--enable-ftedebug
|
||||
--enable-cpdebug
|
||||
--enable-sensdebug
|
||||
--enable-asdebug
|
||||
--enable-stepdebug
|
||||
--enable-pzdebug
|
||||
)
|
||||
else
|
||||
myeconfargs=(
|
||||
--disable-debug
|
||||
--disable-ftedebug
|
||||
--disable-cpdebug
|
||||
--disable-sensdebug
|
||||
--disable-asdebug
|
||||
--disable-stepdebug
|
||||
--disable-pzdebug
|
||||
)
|
||||
fi
|
||||
|
||||
# As of March 2021, these do not compile
|
||||
myeconfargs+=(
|
||||
--disable-blktmsdebug
|
||||
--disable-smltmsdebug
|
||||
)
|
||||
|
||||
myeconfargs+=(
|
||||
--enable-xspice
|
||||
--enable-cider
|
||||
--disable-rpath
|
||||
$(use_enable openmp)
|
||||
$(use_with fftw fftw3)
|
||||
$(use_with readline)
|
||||
)
|
||||
|
||||
if [[ "${MULTIBUILD_VARIANT}" == "shared" ]]; then
|
||||
myeconfargs+=( --with-ngshared )
|
||||
elif [[ "${MULTIBUILD_VARIANT}" == "tcl" ]]; then
|
||||
myeconfargs+=( --with-tcl="${EPREFIX}/usr/$(get_libdir)" )
|
||||
else
|
||||
myeconfargs+=(
|
||||
$(use_enable deprecated oldapps)
|
||||
$(use_with X x)
|
||||
)
|
||||
fi
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
|
||||
popd &>/dev/null || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
multibuild_foreach_variant ngspice_compile
|
||||
}
|
||||
|
||||
ngspice_compile() {
|
||||
pushd "${BUILD_DIR}" &>/dev/null || die
|
||||
default
|
||||
popd &>/dev/null || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if ! use debug; then
|
||||
# tests can be only executed for the binaries variant
|
||||
pushd "${WORKDIR}/${P}-binaries" &>/dev/null || die
|
||||
echo "set ngbehavior=mc" > "${HOME}"/.spiceinit || die "Failed to configure ${PN} for running the test suite"
|
||||
virtx default
|
||||
popd &>/dev/null || die
|
||||
else
|
||||
# https://sourceforge.net/p/ngspice/bugs/353/
|
||||
ewarn
|
||||
ewarn "Skipping tests because they are known to fail in debug mode"
|
||||
ewarn
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
multibuild_foreach_variant ngspice_install
|
||||
|
||||
# merge the installations of all variants
|
||||
local v
|
||||
for v in "${MULTIBUILD_VARIANTS[@]}" ; do
|
||||
cp -a "${ED}/tmp/${v}"/* "${ED}" || die "Failed to combine multibuild installations"
|
||||
done
|
||||
rm -rf "${ED}/tmp" || die
|
||||
|
||||
use tcl && DOCS+=( README.tcl )
|
||||
use shared && DOCS+=( README.shared-xspice )
|
||||
use doc && DOCS+=( "${DISTDIR}"/${P}-manual.pdf )
|
||||
|
||||
default
|
||||
|
||||
if use examples; then
|
||||
if ! use tcl; then
|
||||
rm -rf examples/tclspice || die
|
||||
fi
|
||||
|
||||
insinto /usr/share/${PN}
|
||||
doins -r examples
|
||||
fi
|
||||
}
|
||||
|
||||
ngspice_install() {
|
||||
pushd "${BUILD_DIR}" &>/dev/null || die
|
||||
|
||||
emake DESTDIR="${ED}/tmp/${MULTIBUILD_VARIANT}" install
|
||||
|
||||
# Strip shared-library and Tcl-module builds to the bare minimum;
|
||||
# all the support files will have been handled by the 'binaries' build.
|
||||
if [[ "${MULTIBUILD_VARIANT}" != "binaries" ]]; then
|
||||
rm -rf "${ED}/tmp/${MULTIBUILD_VARIANT}"/usr/bin{,.debug} || die
|
||||
rm -rf "${ED}/tmp/${MULTIBUILD_VARIANT}"/usr/share || die
|
||||
rm -rf "${ED}/tmp/${MULTIBUILD_VARIANT}"/usr/$(get_libdir)/*.la || die
|
||||
rm -rf "${ED}/tmp/${MULTIBUILD_VARIANT}"/usr/$(get_libdir)/ngspice/*.cm{,.debug} || die
|
||||
fi
|
||||
|
||||
popd &>/dev/null || die
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user