Flagpoll (pkg-config inspired meta-data tool)

Daniel E. Shipton dshipton at infiscape.com
Tue Jul 25 11:53:17 PDT 2006

Hi All,

When trying to replace *-config scripts in our Open Source software 
suite VR Juggler we tried to use pkg-config.  Unfortunately pkg-config 
didn't quite handle the scope of what we were trying to use it for.  In 
the end Flagpoll was born which tries to take what is really useful in 
pkg-config and apply some broader goals. It is written in Python and 
licensed under the GPL version 2.

A quick list of what Flagpoll does in addition to what pkg-config 
currently offers:
* Able to get newest/oldest/specific versions of packages and all of its 
dependencies that work together (Note: pkg-config returns first match)
* Able to generically filter packages(one or all) from the command line 
via --require-my-var --require-all-my-var which optionally take(<,>,=)
* Able to generically get variables from packages(one or all) via
--get-my-var --get-all-my-var
* Own .fpc file format for arbitrarily named .fpc files(essential for 
parallel installs) which you specify the lookup name(or names) within 
the file.
* Able to intelligently handle 32/64(or by arch) bit compiles when 
obtaining flags from packages so you don't link against 32 bit libs when 
compiling 64 bit.

Flagpoll can be found at:

Below is the announcement that was sent about the 0.2.1 release.


I am pleased to announce the 0.2.1 release of Flagpoll available at
You can download a tarball or RPM from:

What is Flagpoll?
Flagpoll is a tool for developers to use meta-data files for storing
information on what is needed to compile their software. Think of it as
the rpm of software development. It enables developers total control
over which packages, versions, architectures, etc. that they want to use
meta-data from. Flagpoll is a multi-platform tool written in Python. It
is free software and licensed under the GPL version 2.

Changelog for 0.2.1
* Generic commandline filtering and metadata retrieval

*  Completely eliminates need for *-config scripts
* Backwards compatible with pkg-config .pc files
* Not tied to any software...completely independent
* Smart version lookup
       o Able to get newest version of a package and all of its
dependencies that work together.
       o Able to specify a release series of a package and gather
all of its dependencies that work together.
* Designed for parallel software installs(multiple versions and

If your interested in finding more information about Flagpoll check out:

Daniel E. Shipton
Software Engineer, Infiscape Corp.

More information about the pkg-config mailing list