[MacPorts] #64106: graphviz @2.49.3_0: language binding variants of graphviz missing build dependency on swig-go
MacPorts
noreply at macports.org
Wed Dec 1 21:47:44 UTC 2021
#64106: graphviz @2.49.3_0: language binding variants of graphviz missing build
dependency on swig-go
----------------------+----------------------
Reporter: outis | Owner: (none)
Type: defect | Status: new
Priority: Low | Milestone:
Component: ports | Version: 2.7.1
Keywords: haspatch | Port: graphviz
----------------------+----------------------
While graphviz @2.49.3_0 (note: this also affected other versions after
@2.40.1_4) will compile with the default variants (+pangocairo+x11), it
will fail during build after adding any of the language-binding variants.
(Note: I've only directly confirmed this with some combinations:
+pangocairo+x11+ocaml, +pangocairo+x11+ruby, +pangocairo+x11+tcl,
+pangocairo+x11+guile+java+lua+perl. That it will fail with any language-
binding variant is based on the error and the dependencies; more on this
below.)
Examining the build log (attached for +pangocairo+x11+tcl) reveals an
error about go.swg missing:
{{{
:info:build make[4]: Entering directory
`/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_graphviz/graphviz/work/graphviz-2.49.3/tclpkg/gv'
[...]
:info:build swig -c++ -go -intgosize 32 -o gv_go.cpp ./gv.i
:info:build :3: Error: Unable to find 'go.swg'
:info:build make[4]: *** [gv_go.cpp] Error 1
}}}
After that, the log is mostly waiting for unfinished jobs, errors & exits.
A bit of research online suggests "go.swg" should be a part of swig,
though it wasn't present in either of my local installs of the swig or
swig3 ports. I hadn't installed swig-go or swig3-go, so I did so and tried
again. graphviz then built successfully for the language binding variants
combined, with the exception of +ocaml (which had a different error).
Specifically, building graphviz
+guile+java+lua+pangocairo+perl+python27+poppler+rsvg+ruby+smyrna+tcl+x11
succeeded.
The fix would appear to be to add swig-go as a dependency to the variants
that depend on any swig-* port (see attached patch). To check, I cleaned
graphviz & rebuilt after updating the graphviz Portfile, and installing
graphviz first installed swig-go then built successfully.
As for establishing which variants were affected, I checked the
dependencies for all variants of graphviz, looking for any swig-* ports:
{{{
$ port deps graphviz
+gdk_pixbuf+glitz+guile+java+lua+ming+ocaml+pangocairo+perl+poppler+python27+r+rsvg+ruby+smyrna+tcl+x11
Full Name: graphviz
@2.49.3_0+gdk_pixbuf+glitz+guile+java+lua+ming+ocaml+pangocairo+perl+poppler+python27+r+rsvg+ruby+smyrna+tcl+x11
Build Dependencies: pkgconfig, autoconf-archive, autoconf, automake,
libtool,
swig-guile, swig-lua, swig-ocaml, swig-perl, swig-
python,
swig-ruby, swig-tcl, swig-java, swig-r
Library Dependencies: libjpeg-turbo, libpng, webp, fontconfig, freetype,
expat,
gd2, gts, libtool, zlib, gettext, guile, lua, ocaml,
perl5, python27, ruby, tcl, freeglut, gtk2,
gtkglext,
libglade2, librsvg, gtk2, glitz, ming, pango,
libLASi,
poppler, xorg-libXaw
Runtime Dependencies: urw-fonts
}}}
The swig-* dependencies all had corresponding language binding variants,
which I took as evidence that all such variants are affected.
--
Ticket URL: <https://trac.macports.org/ticket/64106>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list