Skip to Content.
Sympa Menu

sm-commit - Re: [SM-Commit] GIT changes to master grimoire by Florian Franzmann (1c0e490e07bb463f4bd190d607d5291198644366)

sm-commit AT lists.ibiblio.org

Subject: Source Mage code commit list

List archive

Chronological Thread  
  • From: Vlad Glagolev <stealth AT sourcemage.org>
  • To: sm-commit AT lists.ibiblio.org, Florian Franzmann <siflfran AT hawo.stw.uni-erlangen.de>
  • Cc: Source Mage Discussion <sm-discuss AT lists.ibiblio.org>
  • Subject: Re: [SM-Commit] GIT changes to master grimoire by Florian Franzmann (1c0e490e07bb463f4bd190d607d5291198644366)
  • Date: Mon, 31 Dec 2012 15:08:27 +0400

Well,

that wasn't a real review, just the first look, which made my eyes
bleed :)

> Should I remove dependencies that are already mentioned
> in basesystem?

no, only if we're talking about pure shared objects (libraries), like
zlib and friends, which would require proper triggerring.

> I got the information via objdump -p, which only shows libraries that
> are actually used directly.

that's not really correct.

if you have 582587058092528758728 spells installed, it's really hard to
detect correct optional dependencies. why? because of developers. yes.
upstream developers. they're not always smart and sometimes are also
lazy like many people.

that's why I keep my systems (especially development ones) highly
minimal (if I can call >650_spells-system minimal enough, heh).

before adding strictly _required_ dependencies you *must* double-check
several places for something about them.

mostly they're:

- official website section how to build from source
- README, INSTALL, HOWTO files and/or ./doc dir
- ./configure --help
- ./configure.ac
- ./configure.in
- all m4 files in source directory
- ./configure script itself
- cmakelists.txt files for cmake / sconscript file for scons / waf
script / etc. (for non-autotools build system)
- C/C++ sources (yes, sometimes shit happens even only by this way)

Smart developers put everything in configure flags/options to prevent
linking by mistake if this library is installed.
For example look at 'shadow' spell. it tracks acl and attr dependencies
via configure flags (thanks to flux for adding them for this spell
though).
Now look at my recent commits for gnome-vfs2. You won't find any sane
info about usage of acl/attr and theirs C functions anywhere by this
spell. But I've found there's some mentioning in configure script and
the worst part is: this script automatically adds '-lacl' to LDFLAGS.
See the problem now?

So there's no real proper way of handling such dependencies without
dirty hacking of upstream configure scripts, except _forcing_ these
dependencies if the spells were _already_ installed, so our triggers
would work correctly:

...
if spell_ok foo; then
depends foo
else
optional_depends foo "" "" "for bar"
fi &&
...

We must check a lot of spells to fix that. Especially those,
optional_depends foo "" "" "for bar".

Finally please, my advice will be: check this way I described above all
dependencies you've mass-added in the last two weeks, and fix them if
required.

> My mistake, FAM is already there as an optional dependency, I
> overlooked that. Fixed in bdee10f6e3f53881a7e266e77a22ab63c4cd5197.

Thanks.

> No, that should be unconditional. Fixed in
> 1613c2f1881a481ac9f5060d1ebf15538539a40e.

Thank you.

--
Dont wait to die to find paradise...
--
Cheerz,
Vlad "Stealth" Glagolev

Attachment: pgpBZF_FqnFGs.pgp
Description: PGP signature




Archive powered by MHonArc 2.6.24.

Top of Page