[asterisk-dev] Corydon76 Issue Deleted: 0006925, 04-28-06 17:49 Corydon76 Issue Deleted: 0006920

Luigi Rizzo rizzo at icir.org
Mon May 1 14:29:32 MST 2006


On Mon, May 01, 2006 at 04:00:15PM -0500, Kevin P. Fleming wrote:
> Denis Smirnov wrote:
> 
> > Simple concept attached.
> 
> Which will fail on many systems, especially those where the library is
> not installed where you expect it to be.
> 
> Again, I ask: describe the _value_ of doing this, not the mechanics of

i already mentioned programs such as ael_main.c, astman and maybe
others (e.g. people suggested format converters) that live outside the
main asterisk binary, but some of which are in the main source tree.

As much as you may say that they are special case, we still have to
maintain them (in fact, i found ael_main precious for testing
the ael parser - i think testing tools for dialplans etc are equally
precious and if we provide people an easy way to write/build them we
are doing ourselves a big favour).

Right now, we have duplicate build rules in the makefiles to link
in the required objects which are not in a library (and, at the
moment, some of these rules fail and/or require fiddling with
CPPFLAGS to include the right paths  -- e.g. in the case of ast_expr2),
and/or duplicated code in the source files (e.g. astman.c and
ael_parse.c) again to overcome problems with these object files.

> doing it. We aren't going to change the build process just because it's
> easy (or relatively so), there has to be a valid reason. Do you realize
> that changing this to install a library means that distros will likely
> have to start packaging the library and the binary in separate packages,

I don't understand why you are saying this - there are tons of
applications outside which supply both a library and an application
- in fact we use at least a couple:

	speex has libspeex.so and speexenc/speexdec
	gsm has libgsm and toast/untoast

This said, for apps that live in the main asterisk source tree (as
the ones that i mentioned at the beginning of this email) would
have zero problems because they know where the library is independently
of where it is installed (if it is a static library) or they
know the install path (for shared lib).

For apps outside the main source tree: first, it's their business
to adapt - and second, they will do the same as asterisk does with speex and
third-party libraries: hunt the correct install place through some
standard technique.

	cheers
	luigi



More information about the asterisk-dev mailing list