<pre style='margin:0'>
Mark Anderson (markemer) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/7f23c081230de9c2d4e788817263ed843fc1c03e">https://github.com/macports/macports-ports/commit/7f23c081230de9c2d4e788817263ed843fc1c03e</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 7f23c081230 iverilog: update to s20250103, split documentation, add libvvp patch (#27717)
</span>7f23c081230 is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 7f23c081230de9c2d4e788817263ed843fc1c03e
</span>Author: Brian Degnan <degnan.68k@gmail.com>
AuthorDate: Thu Feb 27 22:41:32 2025 -0500
<span style='display:block; white-space:pre;color:#404040;'> iverilog: update to s20250103, split documentation, add libvvp patch (#27717)
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> - Update iverilog from version 12.0 to tag s20250103 to support libvvp integration with ngspice.
</span><span style='display:block; white-space:pre;color:#404040;'> - Split documentation into a new `iverilog-docs` port due to increased compile dependencies and source tree changes.
</span><span style='display:block; white-space:pre;color:#404040;'> - Many text files, such as `cadpli.txt`, are no longer included upstream.
</span><span style='display:block; white-space:pre;color:#404040;'> - Add patch for `libvvp.so` to ensure proper functionality.
</span>---
science/iverilog/Portfile | 80 ++++++++++++++++-------
science/iverilog/files/patch-vvp-Makefile.in.diff | 11 ++++
2 files changed, 68 insertions(+), 23 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/iverilog/Portfile b/science/iverilog/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 13d556e9ef1..f86f068bd4c 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/science/iverilog/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/science/iverilog/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,20 +1,19 @@
</span> # -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> PortSystem 1.0
PortGroup github 1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup compiler_blacklist_versions 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup steveicarus iverilog 20250103 s
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.tarball_from archive
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-github.setup steveicarus iverilog 12_0 v
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Change github.tarball_from to 'releases' or 'archive' next update
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-github.tarball_from tarball
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-version [string map {_ .} ${github.version}]
</span> revision 0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set major [lindex [split ${version} .] 0]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set major 12
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set minor 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> categories science
license GPL-2+
maintainers {keeh.net:paf @padf} openmaintainer
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> description Icarus Verilog
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> long_description Icarus Verilog is a Verilog simulation and synthesis tool. \
It operates as a compiler, compiling source code writen in \
Verilog (IEEE-1364) into some target format. For batch \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -26,18 +25,30 @@ long_description Icarus Verilog is a Verilog simulation and synthesis tool. \
</span>
homepage http://iverilog.icarus.com/
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums rmd160 56a9fa32ae1b8b5240b0770bff6dc7a72fb05f4f \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 8be4bc86aa97013dd16eb7d63c6a5bdd896eddcf760a05b309d633647b7eb2eb \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 2995764
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 41f0a34641ce8bf4955f2248ee606707deedbf92 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 eed6e7569eb9111a6384ed2088e38b51541236a1806ed469208419f41b8224ae \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 3111119
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib-append port:bzip2 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- port:readline \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- port:zlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append port:bzip2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:readline \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:zlib
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_build port:bison
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build-append port:bison \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:autoconf \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:gperf
</span>
use_autoconf yes
<span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append --enable-libvvp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.ldflags-append -Wl,-rpath,${prefix}/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append patch-vvp-Makefile.in.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platform darwin {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #under MacOS, this is needed, the library references were incorrect as-is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.cxxflags-append -fPIC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> compiler.cxx_standard 2011
if {[string match *clang* ${configure.cxx}] && ${configure.cxx_stdlib} ne ""} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -50,15 +61,38 @@ test.target check
</span> destroot.destdir prefix=${destroot}${prefix}
post-destroot {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- set docdir ${destroot}${prefix}/share/doc/${name}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -d ${docdir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- copy ${worksrcpath}/examples ${docdir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -m 644 {*}[glob ${worksrcpath}/*.txt] ${docdir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -d ${docdir}/vvp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -m 644 {*}[glob ${worksrcpath}/vvp/*.txt] ${docdir}/vvp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -m 644 -W ${worksrcpath} cadpli/cadpli.txt ivlpp/ivlpp.txt \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${docdir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[file exists ${destroot}${prefix}/lib/libvvp.so]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Fix just the library's install name
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system "install_name_tool -id ${prefix}/lib/libvvp.so ${destroot}${prefix}/lib/libvvp.so"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> }
# g++-4.2: -E, -S, -save-temps and -M options are not allowed with multiple -arch flags
universal_variant no
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${name}-docs {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description Documentation for Icarus Verilog
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long_description This subport provides the documentation for Icarus Verilog, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ including user guides and API references.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_build-append port:py312-sphinx \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:sphinx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ worksrcdir ${github.project}-${github.version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ pre-build {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|sphinx-build|sphinx-build-3.12|" ${worksrcpath}/Documentation/Makefile
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system -W ${worksrcpath}/Documentation "make html"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</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;'>+ set docdir ${destroot}${prefix}/share/doc/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${docdir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system "cp -R ${worksrcpath}/Documentation/_build/html/* ${docdir}/"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/iverilog/files/patch-vvp-Makefile.in.diff b/science/iverilog/files/patch-vvp-Makefile.in.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..64581b8c4f1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/science/iverilog/files/patch-vvp-Makefile.in.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- vvp/Makefile.in.orig 2025-02-19 14:26:54
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ vvp/Makefile.in 2025-02-19 14:27:14
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -159,7 +159,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $(CXX) $(LDFLAGS) -o vvp@EXEEXT@ main.o -L. -lvvp $(LIBS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libvvp.so: $O
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- $(CXX) -shared $(LDFLAGS) -o libvvp.so $O $(LIBS) $(dllib)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ $(CXX) -shared $(LDFLAGS) -install_name $(libdir)/libvvp.so -o libvvp.so $O $(LIBS) $(dllib)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ vvp@EXEEXT@: $O main.o
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $(CXX) $(LDFLAGS) -o vvp@EXEEXT@ main.o $O $(LIBS) $(dllib)
</span></pre><pre style='margin:0'>
</pre>