Some notes from updating OpenSSL from 1.1.0j to 1.1.1b.  These notes are not
intended to be complete yet, but might become more so after a few update
rounds.  These notes apply to a 64-bit Linux host and may need to be adjusted
for others.  For updating the minor version just applying the changes
between the current and upstream should be enough, instead of steps 3 and
later.  Finish of with kmk check-openssl-mangling.

1) kmk recreate-openssl-asm needs to be run.  In the OpenSSL sub-folder?
2) kmk openssl-mangling.h should be run with VBOX_WITH_GCC_SANITIZER:= and
VBOX_NEED_EXTPACK_OPENSSL=1 set in the OpenSSL sub-folder.  Do a normal kmk
with those options in that folder first.
3) Unpack and configure an unmodified upstream OpenSSL and capture the build
output.  Configuration used:

$ ./config no-err no-dso no-camellia no-cast no-comp no-des no-ecdh no-ecdsa \
 no-engine no-idea no-rc2 no-rmd160 no-mdc2 enable-md2 no-md4 no-ssl3 \
 no-whirlpool no-poly1305

Get the list of source files built and check whether any of them are missing
in our makefiles.  E.g. for crypto:

$ names=`cat openssl.out | sed -n 's|.* crypto/\([^ ]*/[^ ]*\.[cs]$\)|\1|p'`
$ for i in $names; do
case $i in *.s) i=${i%.s}.S; esac
grep -q ${i#*/} <new VBox OpenSSL>/crypto/${i%%/*}/Makefile.kmk || echo $i
done

Check Configurations/00-base-templates.conf to see which asm source files
are needed for which modules for x86, x86_64 and no asm.

4) Check that we do not have any files in our makefiles which should not be
there:

$ for i in crypto/*/Makefile.kmk; do
 base=${i#crypto/}; folder=${base%/Makefile.kmk};
 list=$(sed -n 's;.*[\t /]\([^ /]*\.[cS]\) *\\*$;\1;p' $i | sort -u);
 for j in $list; do
  case $j in *.S) j=${j%.S}.s; esac;
  grep -q "$folder[^ ]*/$j" <original OpenSSL>/Makefile || echo $folder/$j;
 done;
done

There will be some hits for files which are not built for the current target.

5) Run diff on the generated and our opensslconf.h and bn_conf.h and dso_conf.h
and adjust as necessary.

6) Update TEMPLATE_LIBCRYPTO_DEFS from CPPFLAGS_Q in the OpenSSL generated
makefile.
