Skip to Content.
Sympa Menu

sm-commit - Re: [SM-Commit] GIT changes to master grimoire by Peng Chang (Charles) (321ae4a9af4a214510d1a4f22d5f1f7a09cae17c)

sm-commit AT lists.ibiblio.org

Subject: Source Mage code commit list

List archive

Chronological Thread  
  • From: Eric Sandall <eric AT sandall.us>
  • To: sm-commit AT lists.ibiblio.org
  • Subject: Re: [SM-Commit] GIT changes to master grimoire by Peng Chang (Charles) (321ae4a9af4a214510d1a4f22d5f1f7a09cae17c)
  • Date: Tue, 20 Jul 2010 19:33:55 -0700

Quoting flux <flux AT sourcemage.org>:
Although the spells that seem to be implicitly depended on (allowably?)
come from basesystem, I don't think that should be the primary factor
determining whether it can be implicit, though it is a factor. I'm just
wondering if can describe an applicable rhubric to determine whether a
dependency can be implicit rather than explicit, and then whether it
should be implicit.

For the current case of compilers, I think implicit is better, at least
until we have a PROVIDEs for COMPILER. That way, if a true alternative
for gcc becomes available, we can allow any compiler to do the job
(pending that other things have been set up properly). The same goes for
glibc (like swapping for eglibc or some other libc in case someone
wanted to try to adapt SMGL for embedded systems). If everything
dependend explicitly on gcc/glibc/etc. now, then attempting to adapt the
system to use an alternative would require re-coding all those
dependencies for pretty much every single spell. That would be a mess.
Thus, this is one argument (though I'm welcome to someone showing me
this is wrong) for where having an implicit dependency should be done.
The case is less clear for ncurses with some spells (not all), since
some will use either ncurses or slang, or perhaps neither but will end
up depending on it if only it's installed (which it will be on all SMGL
systems, so it's hard to know otherwise). Maybe this isn't really an
issue, but I think it can at least sometimes be confusing to people who
aren't aware of it.

For dependencies, the guideline is as follows:

* (Optionally) Depend on a spell/provider *only* if your package actually uses files (libraries, binaries, etc.) from that spell, not if it is pulled in because a dependencies uses it (e.g. don't depend on libxau if your package only uses libx11 but still links against -lXau because libx11 uses it, but *do* link against libxau if the package explicitly needs libx11 and libxau).
* Do not depend on any package required in basesystem unless needed for triggers. Optional depends on these packages using the prior caveat is recommended.

Those're the general guidelines we hashed out on the mailing list long ago when we switched from explicit list everything linked against to implicit unless explicitly needed.

-sandalle

--
Eric Sandall | Source Mage GNU/Linux Developer
eric AT sandall.us PGP: 0xA8EFDD61 | http://www.sourcemage.org/
http://eric.sandall.us/ | http://counter.li.org/ #196285




Archive powered by MHonArc 2.6.24.

Top of Page