diff options
Diffstat (limited to 'sci-electronics')
-rw-r--r-- | sci-electronics/ngspice/ngspice-31-r1.ebuild (renamed from sci-electronics/ngspice/ngspice-31.ebuild) | 122 |
1 files changed, 69 insertions, 53 deletions
diff --git a/sci-electronics/ngspice/ngspice-31.ebuild b/sci-electronics/ngspice/ngspice-31-r1.ebuild index d51fbae4f135..e5e3414ba86b 100644 --- a/sci-electronics/ngspice/ngspice-31.ebuild +++ b/sci-electronics/ngspice/ngspice-31-r1.ebuild @@ -48,6 +48,8 @@ pkg_setup() { } src_prepare() { + default + if use tcl; then if use examples; then find examples/tclspice -type f -iname \*tcl -or -iname \*.sh | @@ -61,7 +63,6 @@ src_prepare() { fi fi - eapply_user eautoreconf multibuild_copy_sources } @@ -71,53 +72,62 @@ src_configure() { } ngspice_configure() { - pushd "${BUILD_DIR}" + local myeconfargs + + pushd "${BUILD_DIR}" &>/dev/null || die - local myconf if use debug; then - myconf="--enable-debug \ - --enable-ftedebug \ - --enable-cpdebug \ - --enable-sensdebug \ - --enable-asdebug \ - --enable-stepdebug \ - --enable-pzdebug" + myeconfargs=( + --enable-debug + --enable-ftedebug + --enable-cpdebug + --enable-sensdebug + --enable-asdebug + --enable-stepdebug + --enable-pzdebug + ) else - myconf="--disable-debug \ - --disable-ftedebug \ - --disable-cpdebug \ - --disable-sensdebug \ - --disable-asdebug \ - --disable-stepdebug \ - --disable-pzdebug" + myeconfargs=( + --disable-debug + --disable-ftedebug + --disable-cpdebug + --disable-sensdebug + --disable-asdebug + --disable-stepdebug + --disable-pzdebug + ) fi + # As of December 2017, these do not compile - myconf="${myconf} \ - --disable-blktmsdebug \ - --disable-smltmsdebug" - - myconf="${myconf} \ - --enable-xspice \ - --enable-cider \ - --disable-dependency-tracking \ - --disable-rpath \ - $(use_enable openmp) \ - $(use_with fftw fftw3) \ - $(use_with readline)" - - if [ "${MULTIBUILD_VARIANT}" == "shared" ]; then - myconf="${myconf} \ - --with-ngshared" - elif [ "${MULTIBUILD_VARIANT}" == "tcl" ]; then - myconf="${myconf} \ - --with-tcl" + myeconfargs+=( + --disable-blktmsdebug + --disable-smltmsdebug + ) + + myeconfargs+=( + --enable-xspice + --enable-cider + --disable-dependency-tracking + --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 - myconf="${myconf} \ - $(use_enable deprecated oldapps) \ - $(use_with X x)" + myeconfargs+=( + $(use_enable deprecated oldapps) + $(use_with X x) + ) fi - econf ${myconf} + econf "${myeconfargs[@]}" + + popd &>/dev/null || die } src_compile() { @@ -125,18 +135,20 @@ src_compile() { } ngspice_compile() { - pushd "${BUILD_DIR}" + pushd "${BUILD_DIR}" &>/dev/null || die default + popd &>/dev/null || die } src_install() { multibuild_foreach_variant ngspice_install # merge the installations of all variants + local v for v in "${MULTIBUILD_VARIANTS[@]}" ; do - cp -a "${D}_${v}"/* "${D}" || die "Failed to combine multibuild installations" - rm -rf "${D}_${v}" + 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 ) @@ -145,7 +157,9 @@ src_install() { default if use examples; then - use tcl || rm -rf examples/tclspice + if ! use tcl; then + rm -rf examples/tclspice || die + fi insinto /usr/share/${PN} doins -r examples @@ -153,26 +167,28 @@ src_install() { } ngspice_install() { - pushd "${BUILD_DIR}" + pushd "${BUILD_DIR}" &>/dev/null || die - emake DESTDIR="${D}_${MULTIBUILD_VARIANT}" install + 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 "${D}_${MULTIBUILD_VARIANT}"/usr/bin{,.debug} - rm -rf "${D}_${MULTIBUILD_VARIANT}"/usr/share - rm -rf "${D}_${MULTIBUILD_VARIANT}"/usr/$(get_libdir)/*.la - rm -rf "${D}_${MULTIBUILD_VARIANT}"/usr/$(get_libdir)/ngspice/*.cm{,.debug} + 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 } src_test() { if ! use debug; then # tests can be only executed for the binaries variant - pushd "${WORKDIR}/${P}-binaries" + pushd "${WORKDIR}/${P}-binaries" &>/dev/null || die virtx default - popd + popd &>/dev/null || die else # https://sourceforge.net/p/ngspice/bugs/353/ ewarn |