sm-discuss AT lists.ibiblio.org
Subject: Public SourceMage Discussion List
List archive
[SM-Discuss] Warning to spell-writers: dependencies
- From: Vlad Glagolev <stealth AT tiberian.ru>
- To: Source Mage Discussion <sm-discuss AT lists.ibiblio.org>
- Subject: [SM-Discuss] Warning to spell-writers: dependencies
- Date: Wed, 15 Apr 2015 19:24:21 +0300
Hi!
I'm writing this, because the situation with forced dependencies is
still sad even after several years of therapy.
If you add/update a spell, please take 10 more minutes to inspect its
core dependencies: laziness of not doing so hurts our quality as a
distro A LOT! It breaks updates (especially when it's a spell like
libffi), forces to install up to one hundred more spells for no reason!
Remember: when you force anything for no real reason it does always
look like you're doing this:
# cd /var/lib/sorcery/codex/stable
# echo "depends firefox" >> kernels/linux/DEPENDS
please stop.
1a. for autotools-based spells there are configure.ac and configure.in
files to check for optional/required dependencies
1b. for cmake/scons/whatever build systems you can find according
"control" files
2. there are README/INSTALL files to read too
3. there's almost always official documentation on the
project/github/whatever page with detailed instructions and
dependencies: optional and not optional
4. there are still distros with respect of dependencies -- some of
them use optional (like Gentoo, FreeBSD) and forced (Arch, Slackware,
OpenBSD) -- inspect their package databases to compare with what have
you just done.
5. use ldd/readelf and grep .h/.c source files to find #if's, #ifdef's
and other selectors to detect optionality of dependencies.
6. always separate dependency classes: required, optional, runtime,
suggest as carefully as possible -- use the power of Sorcery!
thanks!
--
Vlad Glagolev <stealth AT tiberian.ru>
Attachment:
pgpsvYiE4bLcB.pgp
Description: PGP signature
- [SM-Discuss] Warning to spell-writers: dependencies, Vlad Glagolev, 04/15/2015
Archive powered by MHonArc 2.6.24.