Add gdk-pixbuf support

When imaging support is required, we prefer to use gdk-pixbuf,
as it's already on things like Live CDs.
Also fix the examples building against the system libfprint.
Add udev rules to set devices to autosuspend

Most fingerprint readers can be suspended safely, so use
the udev rules to autosuspend them when they appear.

The script itself contains whitelists and blacklists.
Finish implementation of AES1610 driver

Ported to the new internal libfprint API.

https://bugzilla.redhat.com/show_bug.cgi?id=499732
Add (disabled) UPEK EikonII (TCRD4C) driver

The device driver is always disabled as it uses the same Device ID
as another working reader:
https://bugzilla.redhat.com/show_bug.cgi?id=504399#c38
upeke2: Add support for 0x2e status code

As reported working in:
http://www.mail-archive.com/fprint@reactivated.net/msg01426.html
Rework "discover" code for drivers

Check all the drivers for one that'll drive our device in
question, and prefer ones that have a discover() method that runs
successfully to a driver without such a method.

This allow drivers to both reject devices (if 2 drivers handle
the same USB IDs), or a single driver to handle variants of the
same device (through the devtype out value of the discover method).
Implement discover() methods for upeke2 and upeksonly

upeksonly handles revision 1 devices, upeke2 revision 2 devices.

https://bugzilla.redhat.com/show_bug.cgi?id=504399
Don't crash when no devices are present
Release 0.2.0
Fix a segfault if a scan was shorter than 8 lines.

This segfault was caused by proceeding to free the conversion result
without checking for an error condition in image to print
data conversion.

http://lists.reactivated.net/pipermail/fprint/2009-December/001405.html
Try to correct missing packets in image stream

If a packet goes missing, use the data from previous row
to minimize distortion, or use some neutral dummy data.

http://lists.reactivated.net/pipermail/fprint/2009-December/001404.html
Make the +2 right shift happen on image handoff.

Rather than when reading the rows. Doing it there seems a lot
more sensible and does not get in the way of minimizing the
impact of lost USB packets.

http://lists.reactivated.net/pipermail/fprint/2009-December/001404.html
Only complete scan with MIN_ROWS in print

Don't consider the scan complete unless theres at least
MIN_ROWS recorded or very long blank read occurred.

Typical problem spot: one brief touch before starting the
actual scan. Happens most commonly if scan is started from
before the first joint resulting in a gap after the inital touch.

http://lists.reactivated.net/pipermail/fprint/2009-December/001406.html
Port OpenSSL using code to NSS

As OpenSSL cannot really be used in an LGPLv2+ piece of software
without an exception.

Adapted from the example code at:
http://www.mozilla.org/projects/security/pki/nss/sample-code/sample2.html
and:
http://github.com/bagder/curl/commit/f3b77e5
Print out summary of build options

At the end of the configure run.
Make sure all sources are dist'ed

So that you can compile against ImageMagick even if the
distter doesn't.
Remove HAL fdi generation

HAL is deprecated, and the rules are broken when multiple
drivers use the same USB IDs.
Added support for UPEK TCS4C (USB ID 147e:1000)

https://bugs.freedesktop.org/show_bug.cgi?id=29719
Namespace functions and structs for 147e:2016

Inserted "_2016" in structures, enums and functions names
that are related with device 147e:2016.
Add C++ guards to take care of C++ name-mangling.

The libfprint library is generally built with C calling conventions.
Which makes it difficult to link to C++ programs as it is.

This patch adds the support for linking with C++ code - by telling the C++
compiler to use C calling conventions for libfprint functions.

Reported-by: Guus Ellenkamp <guus@activediscovery.net>
Signed-off-by: Kunal Gangakhedkar <kunal.gangakhedkar@gmail.com>