autoconf and pkg-config support for argus-client libraries

Carter Bullard carter at qosient.com
Wed Jan 26 15:12:34 EST 2011


Gentle people,
argus-clients-3.0.4 is coming out soon (fingers crossed), and there are two specific
new additions for the libraries; new autoconf and pkg-config support, both designed to
make building new argus data processing programs easier.  

We now have full autoconf support,  where we supply configure.ac, rather than configure.in.
We are also using autoconf's support for AC_CONFIG_HEADERS, which adds a new
set of files in the ./include directory to hold a lot of configuration data.  This ultimately
means that the compile line options to compile something in argus is now much shorter,
and you can have simple mechanisms to find all the configuration data.

The result is that you don't have to do anything differently when making client programs.
Still, ./configure and make.  But if you are writing your own argus clients, this is preferred.

Full automake support, where we provide Makefile.am, rather than Makefile.in is scheduled
for argus-clients-3.0.6.

For machines that support it, pkg-config is a helper tool when compiling applications
and libraries. We are using it to provide ways to find the compiler options,  library
paths and linker flags needed to compile programs that use the client libraries.
 
   http://pkg-config.freedesktop.org/wiki/

In the argus client install, we put pkgconfig support files in /usr/local/lib/pkgconfig,
which is the standard pkgconfig home.

After installation, you use pkg-config to query things like cflags and linker options.
On my Mac OS X system, this works:

   % pkg-config --cflags --libs argus-clients
   -DHAVE_CONFIG_H -I/usr/local/include/argus -I/usr/local/include  /usr/local/lib/argus_parse.a /usr/local/lib/argus_common.a /usr/local/lib/argus_client.a -L/opt/local/lib -L/usr/local/lib -lz -lGeoIP  

Packages that process argus data, such as the TieT system, can/should/would/could
use pkg-config in its compile options, or its Makefiles to make life easier.
And TieT is the best client library user to date, so use it as a complex example.

   http://sourceforge.net/projects/tiet/

If you have any opinions/suggestions/comments/attitude/whatever, don't hesitate to
send it to the email list.

Carter
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 3815 bytes
Desc: not available
URL: <https://pairlist1.pair.net/pipermail/argus/attachments/20110126/799fca5d/attachment.bin>


More information about the argus mailing list