ocaml: Remove *.annot files when doing 'make clean'.

Commit fd70cdc3c58a9f240ef8dbbef73ed13054917220 passes the -annot flag
to the compiler, generating *.annot files (containing type information
used by emacs and IDEs).  Remove these files when doing 'make clean'.

(cherry picked from commit f421c7cae8bf574bc43c1c185be7d638a0502e04)
v2v: Rename source field 's_dom_type' to 's_hypervisor'.

Also the source hypervisor cannot be "kvm".  Choose another example
for the comment.

For disks, set the source hypervisor string to "unknown".

(cherry picked from commit 5920f7a56879d8d4ae2f13ba1978fb5235213a8b)
v2v: Make source s.hypervisor field type-safe.

(cherry picked from commit a5bb1a4ccbe82ab4939b5d240877009d1762d49c)
v2v: Comment change.

(cherry picked from commit e02b261e48863191f755be4ff65bc54d5ba1c874)
v2v: Simplify calculation of Mbps in verbose output.

(cherry picked from commit 40cd76eb79cb64ff412847cd43b1b2f1f5427429)
Fix minor typo in release notes (RHBZ#1164697).

(cherry picked from commit 88f2bc1a7bf769424fc219dae925a70a04b19294)
Fix description of 'set_append' and 'get_append' APIs (RHBZ#1164732).

These should refer to the libguestfs appliance kernel command
line, not the guest kernel command line.

Thanks: Lingfei Kong
(cherry picked from commit 6dd371f913332a840b34ad00d52e9fa52711fb0e)
inspection: Get icons from RHEL and CentOS 7 (RHBZ#1164619).

(cherry picked from commit c8a608ecf8576bb754749db982714fa35cedfbe4)
inspection: Allow /etc/favicon.png to be a symbolic link (RHBZ#1164619).

If /etc/favicon.png is a symbolic link, follow it.

Unfortunately RHEL 7 and Fedora have crappy 16x16 /etc/favicon.png
symlinks in the base distro.  It would be nice to ignore this symlink,
but it's almost impossible to determine if the symlink is part of the
base distro or was added by the user.  (This is a bug in those
distros.)  virt-inspector and virt-mananger both ignore favicons.

(cherry picked from commit 42391913287d935e582b0c67571a17e657aa8e2e)
inspection: rpm: Return Epoch field of RPMs in application data.

Bug found by: Nikos Skalkotos

(cherry picked from commit e260460a8f608cb30093d7512b12f6ee11841456)
v2v: -i ova: XML is case-sensitive, so replace 'InstanceId' with 'InstanceID'.

(cherry picked from commit 78f6d3aff59ab0a539b8f2a90b88a2b6f7c994f6)
v2v: Don't use <target dev> attribute, use <target bus> instead.

The <target dev> attribute in libvirt isn't very informative.  What we
really want to know is whether the source disk used IDE or SCSI, as
that allows us to remap block devices accurately during conversion.
For example, if the source was IDE and RHEL 5, and after conversion
virtio will be supported, then we know that we need to remap
"/dev/hda" to "/dev/vda".

Drop the s_target_dev and s_removable_target_dev fields and replace
them with s_controller and s_removable_controller.

For -i libvirt, use the <target bus> attribute to get this information.

For -i ova, use the OVF disk controller's ResourceType.
(http://blogs.vmware.com/vapp/2009/11/virtual-hardware-in-ovf-part-1.html)

(cherry picked from commit 9ebc12572317efe5c1ae83fcb61c7767dec40203)
v2v: Don't change Augeas device entries unless the value has changed.

When remapping block devices, don't change an entry unless its value
has changed.  This avoids unnecessary Augeas writes.

(cherry picked from commit 4c7026fb7a7514838a01771abb4c7e62a4e4485f)
v2v: linux: Print block device map in verbose mode.

Very useful for debugging device mapping problems.

(cherry picked from commit e25f68c47efaab886ada330b7ab596681705b02b)
v2v: linux: Always match partition number in regexp.

Change the rex_device_p regular expression to always include a
partition number.

There should be no functional change here.

(cherry picked from commit b1053150a2da121b3cb8ddc197d0d8e49d930130)
v2v: linux: Refactor device replacement code.

No functional change.  This should be equivalent to previously.

(cherry picked from commit 467bbf72f74527ca00678cfea80b1785868cd842)
inspection: deb: Seperate epoch field from version

Return it in the app2_epoch field of the guestfs_application2 struct

Signed-off-by: Nikos Skalkotos <skalkoto@gmail.com>
(cherry picked from commit 6aaff1fffaa7d62bf75d55cd99ed291d7a143ed3)
v2v: linux: In verbose mode, add dracut --verbose parameter.

So we can see exactly what dracut is doing in the debug output.

(cherry picked from commit 171e6383a217b9f575316929047300d5c8ab4948)
v2v: linux: Remap device names in /boot/grub2/device.map (RHBZ#1165975).

Thanks: Junquin Zhou
(cherry picked from commit 7b8c6e762e10033b174f8554145d48489718b8b5)
v2v: linux: Delete the LVM cache which may reference old devices (RHBZ#1164853).

Thanks: Bryn M. Reeves
(cherry picked from commit 63d67ac8ac6ae609514c995704a4dbd6f5ff5647)