Juggle some internal symbols from our antique zlib (that originally came
in from kernel-pppd which is long gone) so that ZFS and DTRACE play nice.

This is a horrible hack to get freefall to compile, and is in dire need
of reconciliation.  This antique zlib-1.04 code needs to go away.
Fix build with 'crypto' and 'zfs' in the same kernel.  This was the path
of least pain I could find.
Chase down cryptodeflate.c change from r259109.
Allow (with a license warning) "options ZFS" to work in static kernels.

The 'make depend' rules have to use custom -I paths for the special compat
includes for the opensolaris/zfs headers.

This option will pull in the couple of files that are shared with dtrace,
but they appear to correctly use the MODULE_VERSION/MODULE_DEPEND rules
so loader should do the right thing, as should kldload.

Reviewed by:	pjd (glanced at)

Conflicts:
	sys/conf/files.amd64
	sys/conf/files.mips
	sys/conf/kern.pre.mk
Unbreak options ZFS after r236884.
Fix kernel build with options ZFS after r24571 (libzfs_core).

Submitted by:	Bjoern A. Zeeb <bz@FreeBSD.org>
Fix kernel build with options ZFS after r240868.
Add some more ZFS files.
In dmu_zfetch_stream_reclaim() replace division with multiplication and
move it out of the loop and lock.

(cherry picked from commit 8e1d7be31e296f665fdd2f296e636b0f48df92b9)
Include <vm/vm_param.h> for PA_LOCK_COUNT in order to fix kernel build
with options ZFS after r239065.