typo fixed
compilation failure on Windows

VS doesn't like #ifdefs inside a macro expansion. move them outside.
additionally, convert the ULONG variable (with values like "for zlib,
2 for lz3, 3 for lzo") to an enum.