depends_lib, depends_build, depends_run, oh my
Ryan Schmidt
ryandesign at macports.org
Sun Aug 5 01:41:06 PDT 2007
Have various dependency questions here. I couldn't find info on this
in the new guide.
Why do we have depends_lib, depends_build and depends_run? Why not
just a single "depends"? Why does it matter which phase requires the
other software? Isn't it enough to know that the other software is
required at some point, and so MacPorts should install that other
software first?
What are these three keywords supposed to denote? I thought
"depends_lib" was for libraries a program links with (e.g. gettext),
"depends_build" was for things only the build system needs (e.g.
pkgconfig) and "depends_run" was for binaries that need to be present
at runtime (e.g. I have no idea).
To this end, I tried adding "depends_build pkgconfig" to a port that
needs it (graphviz), and then I forcibly deactivated the installed
pkgconfig to make sure that worked. Well, it didn't. "sudo port
install graphviz" proceeded to build just graphviz, without
attempting to activate the required pkgconfig first. If, on the other
hand, I completely uninstalled pkgconfig first, it then correctly
installed pkgconfig when I tried to install graphviz. Why does a
deactivated port seem to satisfy the dependency? That should not be.
Hm... could it be that the point is that it should be fine to
uninstall a build dependency later, but uninstalling a library or
runtime dependency would cause installed ports to fail? Is that the
reasoning?
MacPorts trunk (past 1.5.0), Xcode 2.4.1, Intel Core 2 Duo
More information about the macports-dev
mailing list