On 2007-02-08 20:29:50 -0800 Nicola Pero
<[EMAIL PROTECTED]> wrote:
If we had gnustep-make depend on pkg-config, then you wouldn't be
able to
use GNUstep unless you installed pkg-config first.
That's not entirely correct. GNUstep can be taught how to read
pkgconfig-format-file, such as GNUstep.pc, thus eliminating the need
for
GNUstep.conf entirely,
We designed the GNUstep.conf syntax so that it can be very
efficiently read
from makefiles, shells, and C/ObjC code.
The 'pkg-config' meta-file format can not be read easily from
makefiles
without
firing off a subprocess. We'd then need to fire off an additional
subprocess
for each invocation of make, which, performance-wise, is bad.
a quick test of a makefile executing pkg-config 1000 times takes about
6 seconds..
say there are 5 invocations of pkg-config per invocation of make...
thats 200 make processes.
This is a drop in the bucket.
all that make does is execute subprocesses. And this seems to be an
argument against
-config in general.
PS: I must be missing your point completely because I don't really
understand
what you're
trying to say. Technically, you're suggesting we depend on the
gnome/gtk
config
tools (which were not designed for us, so the integration would be
massively
painful)
just for the sake of "being more similar to gnome/gtk".
pkg-config is not strictly a gnome/gtk tool (it may have originated
there i'm not sure)
it is used by many non-gnome projects openssl and xorg are not
gnome/gtk
-config files in general have been embraced by libraries in general
long before
pkg-config came about, and it saves libraries from polluting the path
with a ton of,
-config scripts and generally provides a better -config than software
creating their own.
if we want a decent -config system, we're going to reimplement
pkg-config...
on my system i have over 300 pkg-config enabled libraries... and i'm
glad I don't have
300 foo-config scripts in my $PATH.
in fact theres libxml2, openssl, cairo, libpng, libxslt, audiofile,
portaudio,
libart, freetype all possible gnustep dependencies from our howto page
all which have embraced pkg-config.
so out of the 16 potential deps listed there, more than half support
pkg-config.
But I suspect what you'd really want to discuss is how to compile
things
without
using gnustep-make. Which is a perfectly valid discussion, and in
that
context
pkg-config might make sense. If you want to build using the
autoconf/automake/pkg-config toolchain, then using pkg-config is an
interesting option.
No I believe that he is saying is that pkg-config can be a dependency
for gnustep-make
and at runtime gnustep can read the .pc file directly. and avoid a
runtime dependency
on pkg-config.
the patch I posted also only had a gnustep-make dependency on
pkg-config but since it
kept gnustep.conf if you wanted to modify gnustep.conf you also had to
modify gnustep.pc
The most obvious option is provide a gnustep-config tool that will
output the
gcc flags
for the various stages/types of compilation, and provide some basic
indication of where
to install things, then you could at least compile and install tools
and
libraries without gnustep-make. We could make it reasonably similar
to the
traditional xxx-config gnome/gtk
tools if you think that would make it easier to use. We can think
about that.
I think this would be a step in the right direction but everybody has
already been down
that road and since then switched to pkg-config.
_______________________________________________
Gnustep-dev mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/gnustep-dev