Include stddef.h always

Fixing the broken Solaris build.

(cherry picked from commit 6b9b93beaaa4e5d5a2b48d421413bf2ea06f5360)
Removed unused struct, and the openssl/rsa.h dependency from cf3.defs.h.

(cherry picked from commit 196f087985bad7dd816eff62af524172a93f81e7)
Fix detection of getline() which has been a GNU extension before POSIX.1-2008.

(cherry picked from commit 20302130d57e93a7bb097843a8d242812aa92b6e)
Fix ./configure -C on platforms without proper printf.

(cherry picked from commit 5cf3c6533dab1878fe16dd582bd53b222cf9990f)
Remove poinless type qualifier.

It makes zero difference to the compiler since the returned struct may
freely be assigned to a const or not struct. It also saves a bunch of
warnings when -Wextra is employed.

(cherry picked from commit 25d1e6ae013cd20bf783bde53e041220a7babd62)
Simplify Makefile so that it does not create cf-upgrade-*.o objects.

The side-effect is that autoconf complains that we changed user-defined
variables. That is not true, because CFLAGS, CPPFLAGS, LDFLAGS are
defined by our configure.ac, because we blatantly ignore recommendations
at:

http://www.gnu.org/software/automake/manual/html_node/Flag-Variables-Ordering.html

The proper thing would be to empty the AM_CFLAGS etc options. But we
first need to refactor our configure.ac to not replace CFLAGS, and then
adjust the rest of Makefiles,

(cherry picked from commit 705c31d6210c9d2ae1c413717878e7bf6b62e286)
Ugly code has ugly bug.

(cherry picked from commit 98541905242355578e7901ed19aa313e54352b0e)
Windows cf-upgrade: make re-execute command line construction more clear.

(cherry picked from commit 9cb071e80cb99d6dfe6c5f424e5aa2442a1d226a)
Fix order of includes.

(cherry picked from commit bb05f9b706a048b0f5a1613a35ec8d37c5668c25)
Don't emit deprecated warning for the snprintf vs system sprintf test.

(cherry picked from commit c272a41567ecacce0f9a3d5696f5e4a7fc0b23f4)
Statically link cfupgrade to libcompat.

(cherry picked from commit 53e0afea0f13187811b2e92c60f2d67c3dd2b71f)