LibGGI is the central library in the GGI project, hence the name.
It provides an opaque interface to the display's acceleration functions. It was originally intended to allow user programs to interface with KGI, the GGI Kernel Graphics Interface, but other display types can be easily used by loading the appropriate "display target" (e.g. X, memory).
LibGGI consists of a main library (libggi.so) and a multitude of dynamic drivers. The library then loads the necessary "drivers" for the requested mode, taking hints from the graphics device if necessary. LibGGI can also load extension libraries, e.g. to provide enhanced 2D and 3D functions.
The branch tag for 2.0.x is branch_2_0. See the CVS documentation on how to getting it.
User visible changes since libggi 2.0.4:
If you have any fixes, don't hesitate to send them us. If you have problems, don't hesitate to report them us.
User visible changes since libggi 2.0.x:
Bugfixes (see stable tree)
removed obseleted Xlib target
added quartz target (requires MacOS X 10.2 or newer)
added wsfb target (special to OpenBSD/NetBSD), currently unuseable, help is wanted
added new GGIFLAG_TIDYBUF flag. It is intended for applications using directbuffer and having their own dirty-region management. Currently only supported by the X-target.
fbdev gammamap support
added the -fullscreen option to the X-target
added the -physz option to the ipc-target
display-auto has been added. It replaces the 5 years old linux specific target autodetection and handles it OS dependend.
works on Windows (both cygwin and mingw) w/o requiring special Makefiles.