<pre style='margin:0'>
ra1nb0w (ra1nb0w) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/a30fc031da3d27ca5e8f43705b8ee297fe324a63">https://github.com/macports/macports-ports/commit/a30fc031da3d27ca5e8f43705b8ee297fe324a63</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit a30fc031da3d27ca5e8f43705b8ee297fe324a63
</span>Author: Davide Gerhard <ra1nb0w@macports.org>
AuthorDate: Thu Dec 30 16:36:08 2021 +0100
<span style='display:block; white-space:pre;color:#404040;'> ngspice: update version to 35 and new ngspice-lib subport
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Unfortunately, shared library and the binary are mutually exclusive.
</span><span style='display:block; white-space:pre;color:#404040;'> Since I haven't found a viable way to patch this behavior I create a
</span><span style='display:block; white-space:pre;color:#404040;'> subport to build and install the dynamic library.
</span><span style='display:block; white-space:pre;color:#404040;'> The other way, is to build two times the same source with different
</span><span style='display:block; white-space:pre;color:#404040;'> flags but this is generally not macports compliant.
</span>---
science/ngspice/Portfile | 66 ++++++++++++++++++++++++++++++++++++++++--------
1 file changed, 55 insertions(+), 11 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/ngspice/Portfile b/science/ngspice/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index ce82823931a..ff7f63045b9 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/science/ngspice/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/science/ngspice/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -3,7 +3,7 @@
</span> PortSystem 1.0
name ngspice
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version 33
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 35
</span> revision 0
license BSD
categories science cad
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -19,9 +19,9 @@ long_description \
</span> homepage http://ngspice.sourceforge.net/
master_sites sourceforge:project/ngspice/ng-spice-rework/${version}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums rmd160 b9a5183c85c017b2746fd4eae5a7f6b3fda23881 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 b99db66cc1c57c44e9af1ef6ccb1dcbc8ae1df3e35acf570af578f606f8541f1 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 7760956
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 93155ca4b10c15efa616a234368e9e0cb3500224 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 c1b7f5c276db579acb3f0a7afb64afdeb4362289a6cab502d4ca302d6e5279ec \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 8050668
</span>
set docdir ${prefix}/share/doc/${name}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -40,7 +40,8 @@ if {${name} eq ${subport}} {
</span> port:xorg-libXaw \
port:xorg-libXext \
port:xorg-libXmu \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- port:xorg-libXt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:xorg-libXt \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:fftw-3
</span>
configure.args --enable-cider \
--enable-xspice \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -69,6 +70,10 @@ if {${name} eq ${subport}} {
</span> variant manual description {Legacy compatibility variant} {
depends_run-append port:ngspice-docs
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ variant lib description {Enable dynamic lib} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_run-append port:ngspice-lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span>
variant openmp description {Add OpenMP support variant} {
# ngspice does not specify what openmp version they require
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -77,7 +82,7 @@ if {${name} eq ${subport}} {
</span> configure.args-append --enable-openmp
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- default_variants +openmp +manual
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_variants +openmp +manual +lib
</span>
livecheck.regex ${name}-(\[0-9.\]+)${extract.suffix}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -99,11 +104,11 @@ subport ngspice-docs {
</span> distname ${name}-${version}-manual.pdf
extract.suffix
extract.only
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- checksums rmd160 edcf2718e69e04d5c29748dfb83756ad9a41faf7 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 0c97dee66db3207b2f5578fbfd4227765dc04d2a43d60753f88223394c3eef3e \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 2205893
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ checksums rmd160 cee372233f2a28a0d811381d83b3b1f1fe19e0eb \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 2e2e26bc38e698dd27d0827ca6a136edbad42bda41d3a2bc04eda2e3172e07f5 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 2347261
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> use_configure no
build {}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -113,3 +118,42 @@ subport ngspice-docs {
</span> xinstall -m 644 ${distpath}/${distname} ${destroot}${docdir}
}
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ngspice-lib {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description ngspice dynamic library
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long_description ${description}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # freetype2 headers are not found by default
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # we could fix the header path in configure.ac, but then need autorecconf, etc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.cppflags-prepend -I${prefix}/include/freetype2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # TASK_BASIC_INFO_COUNT and friends were renamed in 10.8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append patch-ngspice-older-MACH-defines.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:libedit \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:fftw-3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args --enable-cider \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-pss \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-editline \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-debug=no \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-silent-rules \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-ngshared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${prefix}/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 755 -W ${worksrcpath}/src/.libs \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libngspice.0.dylib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ln -s ${prefix}/lib/libngspice.0.dylib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/lib/libngspice.dylib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${prefix}/lib/pkgconfig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 644 -W ${worksrcpath} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ngspice.pc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/lib/pkgconfig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${prefix}/include/ngspice
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 644 -W ${worksrcpath} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src/include/ngspice/sharedspice.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/include/ngspice
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span></pre><pre style='margin:0'>
</pre>