Flagpoll project 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 provides developers with total control over which packages, versions, architectures, et cetera that they want to use meta-data from.
Instead of specifying other packages' cflags and ldflag manually, you can call `flagpoll mylib --cflags --ldflags` and it will retrieve the flags for its package as well as its dependencies.
gcc -o foo foo.c `flagpoll --libs --cflags gtk+-2.0`
Is a lot cleaner than:
gcc -o foo foo.c -L/usr/lib64 -lgtk-x11-2.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lm
-lgobject-2.0 -lglib-2.0 -lgmodule-2.0 -ldl -lpango-1.0
-lpangocairo-1.0 -lcairo -latk-1.0
All of the dependencies needed for compilation are kept in each packages meta-data file. The dependencies are resolved and the results are all necessary libs and includes needed for gtk+.