From b0d7bc2e8674e6c6029c4ba529e563042cb2416b Mon Sep 17 00:00:00 2001 From: Vinnie Falco Date: Mon, 31 Jul 2017 15:27:41 -0700 Subject: [PATCH] Add bench-zlib --- CHANGELOG.md | 1 + CMakeLists.txt | 12 +- test/CMakeLists.txt | 26 +- test/Jamfile | 19 ++ test/beast/zlib/CMakeLists.txt | 26 +- test/beast/zlib/Jamfile | 14 - test/bench/CMakeLists.txt | 1 + test/bench/Jamfile | 1 + test/bench/zlib/CMakeLists.txt | 28 ++ test/bench/zlib/Jamfile | 15 ++ test/bench/zlib/deflate_stream.cpp | 200 ++++++++++++++ test/bench/zlib/inflate_stream.cpp | 245 ++++++++++++++++++ .../zlib => extern}/zlib-1.2.11/.gitignore | 0 .../zlib-1.2.11/CMakeLists.txt | 0 .../zlib => extern}/zlib-1.2.11/ChangeLog | 0 test/{beast/zlib => extern}/zlib-1.2.11/FAQ | 0 test/{beast/zlib => extern}/zlib-1.2.11/INDEX | 0 .../zlib => extern}/zlib-1.2.11/Makefile | 0 .../zlib => extern}/zlib-1.2.11/Makefile.in | 0 .../{beast/zlib => extern}/zlib-1.2.11/README | 0 .../zlib => extern}/zlib-1.2.11/adler32.c | 0 .../zlib-1.2.11/amiga/Makefile.pup | 0 .../zlib-1.2.11/amiga/Makefile.sas | 0 .../zlib => extern}/zlib-1.2.11/compress.c | 0 .../zlib => extern}/zlib-1.2.11/configure | 0 .../zlib-1.2.11/contrib/README.contrib | 0 .../zlib-1.2.11/contrib/ada/buffer_demo.adb | 0 .../zlib-1.2.11/contrib/ada/mtest.adb | 0 .../zlib-1.2.11/contrib/ada/read.adb | 0 .../zlib-1.2.11/contrib/ada/readme.txt | 0 .../zlib-1.2.11/contrib/ada/test.adb | 0 .../zlib-1.2.11/contrib/ada/zlib-streams.adb | 0 .../zlib-1.2.11/contrib/ada/zlib-streams.ads | 0 .../zlib-1.2.11/contrib/ada/zlib-thin.adb | 0 .../zlib-1.2.11/contrib/ada/zlib-thin.ads | 0 .../zlib-1.2.11/contrib/ada/zlib.adb | 0 .../zlib-1.2.11/contrib/ada/zlib.ads | 0 .../zlib-1.2.11/contrib/ada/zlib.gpr | 0 .../zlib-1.2.11/contrib/amd64/amd64-match.S | 0 .../zlib-1.2.11/contrib/asm686/README.686 | 0 .../zlib-1.2.11/contrib/asm686/match.S | 0 .../zlib-1.2.11/contrib/blast/Makefile | 0 .../zlib-1.2.11/contrib/blast/README | 0 .../zlib-1.2.11/contrib/blast/blast.c | 0 .../zlib-1.2.11/contrib/blast/blast.h | 0 .../zlib-1.2.11/contrib/blast/test.pk | Bin .../zlib-1.2.11/contrib/blast/test.txt | 0 .../zlib-1.2.11/contrib/delphi/ZLib.pas | 0 .../zlib-1.2.11/contrib/delphi/ZLibConst.pas | 0 .../zlib-1.2.11/contrib/delphi/readme.txt | 0 .../zlib-1.2.11/contrib/delphi/zlibd32.mak | 0 .../zlib-1.2.11/contrib/dotzlib/DotZLib.build | 0 .../zlib-1.2.11/contrib/dotzlib/DotZLib.chm | Bin .../zlib-1.2.11/contrib/dotzlib/DotZLib.sln | 0 .../contrib/dotzlib/DotZLib/AssemblyInfo.cs | 0 .../contrib/dotzlib/DotZLib/ChecksumImpl.cs | 0 .../contrib/dotzlib/DotZLib/CircularBuffer.cs | 0 .../contrib/dotzlib/DotZLib/CodecBase.cs | 0 .../contrib/dotzlib/DotZLib/Deflater.cs | 0 .../contrib/dotzlib/DotZLib/DotZLib.cs | 0 .../contrib/dotzlib/DotZLib/DotZLib.csproj | 0 .../contrib/dotzlib/DotZLib/GZipStream.cs | 0 .../contrib/dotzlib/DotZLib/Inflater.cs | 0 .../contrib/dotzlib/DotZLib/UnitTests.cs | 0 .../contrib/dotzlib/LICENSE_1_0.txt | 0 .../zlib-1.2.11/contrib/dotzlib/readme.txt | 0 .../zlib-1.2.11/contrib/gcc_gvmat64/gvmat64.S | 0 .../zlib-1.2.11/contrib/infback9/README | 0 .../zlib-1.2.11/contrib/infback9/infback9.c | 0 .../zlib-1.2.11/contrib/infback9/infback9.h | 0 .../zlib-1.2.11/contrib/infback9/inffix9.h | 0 .../zlib-1.2.11/contrib/infback9/inflate9.h | 0 .../zlib-1.2.11/contrib/infback9/inftree9.c | 0 .../zlib-1.2.11/contrib/infback9/inftree9.h | 0 .../zlib-1.2.11/contrib/inflate86/inffas86.c | 0 .../zlib-1.2.11/contrib/inflate86/inffast.S | 0 .../zlib-1.2.11/contrib/iostream/test.cpp | 0 .../zlib-1.2.11/contrib/iostream/zfstream.cpp | 0 .../zlib-1.2.11/contrib/iostream/zfstream.h | 0 .../zlib-1.2.11/contrib/iostream2/zstream.h | 0 .../contrib/iostream2/zstream_test.cpp | 0 .../zlib-1.2.11/contrib/iostream3/README | 0 .../zlib-1.2.11/contrib/iostream3/TODO | 0 .../zlib-1.2.11/contrib/iostream3/test.cc | 0 .../zlib-1.2.11/contrib/iostream3/zfstream.cc | 0 .../zlib-1.2.11/contrib/iostream3/zfstream.h | 0 .../zlib-1.2.11/contrib/masmx64/bld_ml64.bat | 0 .../zlib-1.2.11/contrib/masmx64/gvmat64.asm | 0 .../zlib-1.2.11/contrib/masmx64/inffas8664.c | 0 .../zlib-1.2.11/contrib/masmx64/inffasx64.asm | 0 .../zlib-1.2.11/contrib/masmx64/readme.txt | 0 .../zlib-1.2.11/contrib/masmx86/bld_ml32.bat | 0 .../zlib-1.2.11/contrib/masmx86/inffas32.asm | 0 .../zlib-1.2.11/contrib/masmx86/match686.asm | 0 .../zlib-1.2.11/contrib/masmx86/readme.txt | 0 .../zlib-1.2.11/contrib/minizip/Makefile | 0 .../zlib-1.2.11/contrib/minizip/Makefile.am | 0 .../contrib/minizip/MiniZip64_Changes.txt | 0 .../contrib/minizip/MiniZip64_info.txt | 0 .../zlib-1.2.11/contrib/minizip/configure.ac | 0 .../zlib-1.2.11/contrib/minizip/crypt.h | 0 .../zlib-1.2.11/contrib/minizip/ioapi.c | 0 .../zlib-1.2.11/contrib/minizip/ioapi.h | 0 .../zlib-1.2.11/contrib/minizip/iowin32.c | 0 .../zlib-1.2.11/contrib/minizip/iowin32.h | 0 .../zlib-1.2.11/contrib/minizip/make_vms.com | 0 .../zlib-1.2.11/contrib/minizip/miniunz.c | 0 .../zlib-1.2.11/contrib/minizip/miniunzip.1 | 0 .../zlib-1.2.11/contrib/minizip/minizip.1 | 0 .../zlib-1.2.11/contrib/minizip/minizip.c | 0 .../zlib-1.2.11/contrib/minizip/minizip.pc.in | 0 .../zlib-1.2.11/contrib/minizip/mztools.c | 0 .../zlib-1.2.11/contrib/minizip/mztools.h | 0 .../zlib-1.2.11/contrib/minizip/unzip.c | 0 .../zlib-1.2.11/contrib/minizip/unzip.h | 0 .../zlib-1.2.11/contrib/minizip/zip.c | 0 .../zlib-1.2.11/contrib/minizip/zip.h | 0 .../zlib-1.2.11/contrib/pascal/example.pas | 0 .../zlib-1.2.11/contrib/pascal/readme.txt | 0 .../zlib-1.2.11/contrib/pascal/zlibd32.mak | 0 .../zlib-1.2.11/contrib/pascal/zlibpas.pas | 0 .../zlib-1.2.11/contrib/puff/Makefile | 0 .../zlib-1.2.11/contrib/puff/README | 0 .../zlib-1.2.11/contrib/puff/puff.c | 0 .../zlib-1.2.11/contrib/puff/puff.h | 0 .../zlib-1.2.11/contrib/puff/pufftest.c | 0 .../zlib-1.2.11/contrib/puff/zeros.raw | Bin .../zlib-1.2.11/contrib/testzlib/testzlib.c | 0 .../zlib-1.2.11/contrib/testzlib/testzlib.txt | 0 .../zlib-1.2.11/contrib/untgz/Makefile | 0 .../zlib-1.2.11/contrib/untgz/Makefile.msc | 0 .../zlib-1.2.11/contrib/untgz/untgz.c | 0 .../zlib-1.2.11/contrib/vstudio/readme.txt | 0 .../contrib/vstudio/vc10/miniunz.vcxproj | 0 .../vstudio/vc10/miniunz.vcxproj.filters | 0 .../contrib/vstudio/vc10/minizip.vcxproj | 0 .../vstudio/vc10/minizip.vcxproj.filters | 0 .../contrib/vstudio/vc10/testzlib.vcxproj | 0 .../vstudio/vc10/testzlib.vcxproj.filters | 0 .../contrib/vstudio/vc10/testzlibdll.vcxproj | 0 .../vstudio/vc10/testzlibdll.vcxproj.filters | 0 .../zlib-1.2.11/contrib/vstudio/vc10/zlib.rc | 0 .../contrib/vstudio/vc10/zlibstat.vcxproj | 0 .../vstudio/vc10/zlibstat.vcxproj.filters | 0 .../contrib/vstudio/vc10/zlibvc.def | 0 .../contrib/vstudio/vc10/zlibvc.sln | 0 .../contrib/vstudio/vc10/zlibvc.vcxproj | 0 .../vstudio/vc10/zlibvc.vcxproj.filters | 0 .../contrib/vstudio/vc11/miniunz.vcxproj | 0 .../contrib/vstudio/vc11/minizip.vcxproj | 0 .../contrib/vstudio/vc11/testzlib.vcxproj | 0 .../contrib/vstudio/vc11/testzlibdll.vcxproj | 0 .../zlib-1.2.11/contrib/vstudio/vc11/zlib.rc | 0 .../contrib/vstudio/vc11/zlibstat.vcxproj | 0 .../contrib/vstudio/vc11/zlibvc.def | 0 .../contrib/vstudio/vc11/zlibvc.sln | 0 .../contrib/vstudio/vc11/zlibvc.vcxproj | 0 .../contrib/vstudio/vc12/miniunz.vcxproj | 0 .../contrib/vstudio/vc12/minizip.vcxproj | 0 .../contrib/vstudio/vc12/testzlib.vcxproj | 0 .../contrib/vstudio/vc12/testzlibdll.vcxproj | 0 .../zlib-1.2.11/contrib/vstudio/vc12/zlib.rc | 0 .../contrib/vstudio/vc12/zlibstat.vcxproj | 0 .../contrib/vstudio/vc12/zlibvc.def | 0 .../contrib/vstudio/vc12/zlibvc.sln | 0 .../contrib/vstudio/vc12/zlibvc.vcxproj | 0 .../contrib/vstudio/vc14/miniunz.vcxproj | 0 .../contrib/vstudio/vc14/minizip.vcxproj | 0 .../contrib/vstudio/vc14/testzlib.vcxproj | 0 .../contrib/vstudio/vc14/testzlibdll.vcxproj | 0 .../zlib-1.2.11/contrib/vstudio/vc14/zlib.rc | 0 .../contrib/vstudio/vc14/zlibstat.vcxproj | 0 .../contrib/vstudio/vc14/zlibvc.def | 0 .../contrib/vstudio/vc14/zlibvc.sln | 0 .../contrib/vstudio/vc14/zlibvc.vcxproj | 0 .../contrib/vstudio/vc9/miniunz.vcproj | 0 .../contrib/vstudio/vc9/minizip.vcproj | 0 .../contrib/vstudio/vc9/testzlib.vcproj | 0 .../contrib/vstudio/vc9/testzlibdll.vcproj | 0 .../zlib-1.2.11/contrib/vstudio/vc9/zlib.rc | 0 .../contrib/vstudio/vc9/zlibstat.vcproj | 0 .../contrib/vstudio/vc9/zlibvc.def | 0 .../contrib/vstudio/vc9/zlibvc.sln | 0 .../contrib/vstudio/vc9/zlibvc.vcproj | 0 .../zlib => extern}/zlib-1.2.11/crc32.c | 0 .../zlib => extern}/zlib-1.2.11/crc32.h | 0 .../zlib => extern}/zlib-1.2.11/deflate.c | 0 .../zlib => extern}/zlib-1.2.11/deflate.h | 0 .../zlib-1.2.11/doc/algorithm.txt | 0 .../zlib-1.2.11/doc/rfc1950.txt | 0 .../zlib-1.2.11/doc/rfc1951.txt | 0 .../zlib-1.2.11/doc/rfc1952.txt | 0 .../zlib-1.2.11/doc/txtvsbin.txt | 0 .../zlib-1.2.11/examples/README.examples | 0 .../zlib-1.2.11/examples/enough.c | 0 .../zlib-1.2.11/examples/fitblk.c | 0 .../zlib-1.2.11/examples/gun.c | 0 .../zlib-1.2.11/examples/gzappend.c | 0 .../zlib-1.2.11/examples/gzjoin.c | 0 .../zlib-1.2.11/examples/gzlog.c | 0 .../zlib-1.2.11/examples/gzlog.h | 0 .../zlib-1.2.11/examples/zlib_how.html | 0 .../zlib-1.2.11/examples/zpipe.c | 0 .../zlib-1.2.11/examples/zran.c | 0 .../zlib => extern}/zlib-1.2.11/gzclose.c | 0 .../zlib => extern}/zlib-1.2.11/gzguts.h | 0 .../zlib => extern}/zlib-1.2.11/gzlib.c | 0 .../zlib => extern}/zlib-1.2.11/gzread.c | 0 .../zlib => extern}/zlib-1.2.11/gzwrite.c | 0 .../zlib => extern}/zlib-1.2.11/infback.c | 0 .../zlib => extern}/zlib-1.2.11/inffast.c | 0 .../zlib => extern}/zlib-1.2.11/inffast.h | 0 .../zlib => extern}/zlib-1.2.11/inffixed.h | 0 .../zlib => extern}/zlib-1.2.11/inflate.c | 0 .../zlib => extern}/zlib-1.2.11/inflate.h | 0 .../zlib => extern}/zlib-1.2.11/inftrees.c | 0 .../zlib => extern}/zlib-1.2.11/inftrees.h | 0 .../zlib => extern}/zlib-1.2.11/make_vms.com | 0 .../zlib-1.2.11/msdos/Makefile.bor | 0 .../zlib-1.2.11/msdos/Makefile.dj2 | 0 .../zlib-1.2.11/msdos/Makefile.emx | 0 .../zlib-1.2.11/msdos/Makefile.msc | 0 .../zlib-1.2.11/msdos/Makefile.tc | 0 .../zlib-1.2.11/nintendods/Makefile | 0 .../zlib-1.2.11/nintendods/README | 0 .../zlib-1.2.11/old/Makefile.emx | 0 .../zlib-1.2.11/old/Makefile.riscos | 0 .../zlib => extern}/zlib-1.2.11/old/README | 0 .../zlib-1.2.11/old/descrip.mms | 0 .../zlib-1.2.11/old/os2/Makefile.os2 | 0 .../zlib-1.2.11/old/os2/zlib.def | 0 .../zlib-1.2.11/old/visual-basic.txt | 0 .../zlib-1.2.11/os400/README400 | 0 .../zlib => extern}/zlib-1.2.11/os400/bndsrc | 0 .../zlib => extern}/zlib-1.2.11/os400/make.sh | 0 .../zlib-1.2.11/os400/zlib.inc | 0 .../zlib-1.2.11/qnx/package.qpg | 0 .../zlib-1.2.11/test/example.c | 0 .../zlib-1.2.11/test/infcover.c | 0 .../zlib-1.2.11/test/minigzip.c | 0 .../zlib => extern}/zlib-1.2.11/treebuild.xml | 0 .../zlib => extern}/zlib-1.2.11/trees.c | 0 .../zlib => extern}/zlib-1.2.11/trees.h | 0 .../zlib => extern}/zlib-1.2.11/uncompr.c | 0 .../zlib-1.2.11/watcom/watcom_f.mak | 0 .../zlib-1.2.11/watcom/watcom_l.mak | 0 .../zlib => extern}/zlib-1.2.11/zconf.h | 0 .../zlib-1.2.11/zconf.h.cmakein | 0 .../zlib => extern}/zlib-1.2.11/zconf.h.in | 0 .../{beast/zlib => extern}/zlib-1.2.11/zlib.3 | 0 .../zlib => extern}/zlib-1.2.11/zlib.3.pdf | Bin .../{beast/zlib => extern}/zlib-1.2.11/zlib.h | 0 .../zlib => extern}/zlib-1.2.11/zlib.map | 0 .../zlib-1.2.11/zlib.pc.cmakein | 0 .../zlib => extern}/zlib-1.2.11/zlib.pc.in | 0 .../zlib => extern}/zlib-1.2.11/zlib2ansi | 0 .../zlib => extern}/zlib-1.2.11/zutil.c | 0 .../zlib => extern}/zlib-1.2.11/zutil.h | 0 .../include/boost/beast/test/throughput.hpp | 57 ++++ 259 files changed, 600 insertions(+), 45 deletions(-) create mode 100644 test/bench/zlib/CMakeLists.txt create mode 100644 test/bench/zlib/Jamfile create mode 100644 test/bench/zlib/deflate_stream.cpp create mode 100644 test/bench/zlib/inflate_stream.cpp rename test/{beast/zlib => extern}/zlib-1.2.11/.gitignore (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/CMakeLists.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/ChangeLog (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/FAQ (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/INDEX (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/Makefile (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/Makefile.in (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/README (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/adler32.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/amiga/Makefile.pup (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/amiga/Makefile.sas (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/compress.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/configure (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/README.contrib (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/ada/buffer_demo.adb (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/ada/mtest.adb (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/ada/read.adb (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/ada/readme.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/ada/test.adb (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/ada/zlib-streams.adb (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/ada/zlib-streams.ads (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/ada/zlib-thin.adb (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/ada/zlib-thin.ads (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/ada/zlib.adb (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/ada/zlib.ads (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/ada/zlib.gpr (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/amd64/amd64-match.S (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/asm686/README.686 (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/asm686/match.S (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/blast/Makefile (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/blast/README (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/blast/blast.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/blast/blast.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/blast/test.pk (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/blast/test.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/delphi/ZLib.pas (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/delphi/ZLibConst.pas (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/delphi/readme.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/delphi/zlibd32.mak (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/dotzlib/DotZLib.build (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/dotzlib/DotZLib.chm (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/dotzlib/DotZLib.sln (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/dotzlib/DotZLib/AssemblyInfo.cs (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/dotzlib/DotZLib/ChecksumImpl.cs (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/dotzlib/DotZLib/CircularBuffer.cs (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/dotzlib/DotZLib/CodecBase.cs (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/dotzlib/DotZLib/Deflater.cs (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/dotzlib/DotZLib/DotZLib.cs (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/dotzlib/DotZLib/DotZLib.csproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/dotzlib/DotZLib/GZipStream.cs (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/dotzlib/DotZLib/Inflater.cs (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/dotzlib/DotZLib/UnitTests.cs (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/dotzlib/LICENSE_1_0.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/dotzlib/readme.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/gcc_gvmat64/gvmat64.S (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/infback9/README (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/infback9/infback9.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/infback9/infback9.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/infback9/inffix9.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/infback9/inflate9.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/infback9/inftree9.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/infback9/inftree9.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/inflate86/inffas86.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/inflate86/inffast.S (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/iostream/test.cpp (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/iostream/zfstream.cpp (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/iostream/zfstream.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/iostream2/zstream.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/iostream2/zstream_test.cpp (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/iostream3/README (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/iostream3/TODO (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/iostream3/test.cc (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/iostream3/zfstream.cc (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/iostream3/zfstream.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/masmx64/bld_ml64.bat (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/masmx64/gvmat64.asm (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/masmx64/inffas8664.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/masmx64/inffasx64.asm (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/masmx64/readme.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/masmx86/bld_ml32.bat (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/masmx86/inffas32.asm (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/masmx86/match686.asm (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/masmx86/readme.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/Makefile (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/Makefile.am (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/MiniZip64_Changes.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/MiniZip64_info.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/configure.ac (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/crypt.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/ioapi.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/ioapi.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/iowin32.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/iowin32.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/make_vms.com (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/miniunz.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/miniunzip.1 (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/minizip.1 (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/minizip.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/minizip.pc.in (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/mztools.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/mztools.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/unzip.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/unzip.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/zip.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/minizip/zip.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/pascal/example.pas (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/pascal/readme.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/pascal/zlibd32.mak (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/pascal/zlibpas.pas (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/puff/Makefile (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/puff/README (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/puff/puff.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/puff/puff.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/puff/pufftest.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/puff/zeros.raw (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/testzlib/testzlib.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/testzlib/testzlib.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/untgz/Makefile (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/untgz/Makefile.msc (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/untgz/untgz.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/readme.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc10/miniunz.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc10/miniunz.vcxproj.filters (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc10/minizip.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc10/minizip.vcxproj.filters (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc10/testzlib.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc10/testzlib.vcxproj.filters (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc10/testzlibdll.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc10/testzlibdll.vcxproj.filters (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc10/zlib.rc (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc10/zlibstat.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc10/zlibstat.vcxproj.filters (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.def (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.sln (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.vcxproj.filters (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc11/miniunz.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc11/minizip.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc11/testzlib.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc11/testzlibdll.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc11/zlib.rc (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc11/zlibstat.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc11/zlibvc.def (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc11/zlibvc.sln (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc11/zlibvc.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc12/miniunz.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc12/minizip.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc12/testzlib.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc12/testzlibdll.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc12/zlib.rc (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc12/zlibstat.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc12/zlibvc.def (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc12/zlibvc.sln (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc12/zlibvc.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc14/miniunz.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc14/minizip.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc14/testzlib.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc14/testzlibdll.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc14/zlib.rc (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc14/zlibstat.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc14/zlibvc.def (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc14/zlibvc.sln (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc14/zlibvc.vcxproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc9/miniunz.vcproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc9/minizip.vcproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc9/testzlib.vcproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc9/testzlibdll.vcproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc9/zlib.rc (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc9/zlibstat.vcproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc9/zlibvc.def (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc9/zlibvc.sln (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/contrib/vstudio/vc9/zlibvc.vcproj (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/crc32.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/crc32.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/deflate.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/deflate.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/doc/algorithm.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/doc/rfc1950.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/doc/rfc1951.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/doc/rfc1952.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/doc/txtvsbin.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/examples/README.examples (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/examples/enough.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/examples/fitblk.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/examples/gun.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/examples/gzappend.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/examples/gzjoin.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/examples/gzlog.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/examples/gzlog.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/examples/zlib_how.html (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/examples/zpipe.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/examples/zran.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/gzclose.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/gzguts.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/gzlib.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/gzread.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/gzwrite.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/infback.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/inffast.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/inffast.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/inffixed.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/inflate.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/inflate.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/inftrees.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/inftrees.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/make_vms.com (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/msdos/Makefile.bor (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/msdos/Makefile.dj2 (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/msdos/Makefile.emx (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/msdos/Makefile.msc (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/msdos/Makefile.tc (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/nintendods/Makefile (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/nintendods/README (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/old/Makefile.emx (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/old/Makefile.riscos (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/old/README (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/old/descrip.mms (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/old/os2/Makefile.os2 (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/old/os2/zlib.def (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/old/visual-basic.txt (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/os400/README400 (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/os400/bndsrc (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/os400/make.sh (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/os400/zlib.inc (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/qnx/package.qpg (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/test/example.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/test/infcover.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/test/minigzip.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/treebuild.xml (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/trees.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/trees.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/uncompr.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/watcom/watcom_f.mak (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/watcom/watcom_l.mak (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/zconf.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/zconf.h.cmakein (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/zconf.h.in (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/zlib.3 (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/zlib.3.pdf (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/zlib.h (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/zlib.map (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/zlib.pc.cmakein (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/zlib.pc.in (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/zlib2ansi (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/zutil.c (100%) rename test/{beast/zlib => extern}/zlib-1.2.11/zutil.h (100%) create mode 100644 test/extras/include/boost/beast/test/throughput.hpp diff --git a/CHANGELOG.md b/CHANGELOG.md index 8fbc9b57..fb45849e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ Version 96: * Rename wsload compile target * Fix library.json * Update boostorg links +* Add bench-zlib -------------------------------------------------------------------------------- diff --git a/CMakeLists.txt b/CMakeLists.txt index 85c51cd2..a7704324 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -112,22 +112,22 @@ endif() # #------------------------------------------------------------------------------- -function(DoGroupSources curdir rootdir folder) +function (DoGroupSources curdir rootdir folder) file (GLOB children RELATIVE ${PROJECT_SOURCE_DIR}/${curdir} ${PROJECT_SOURCE_DIR}/${curdir}/*) foreach (child ${children}) if (IS_DIRECTORY ${PROJECT_SOURCE_DIR}/${curdir}/${child}) - DoGroupSources(${curdir}/${child} ${rootdir} ${folder}) + DoGroupSources (${curdir}/${child} ${rootdir} ${folder}) elseif (${child} STREQUAL "CMakeLists.txt") source_group("" FILES ${PROJECT_SOURCE_DIR}/${curdir}/${child}) else() - string(REGEX REPLACE ^${rootdir} ${folder} groupname ${curdir}) - string(REPLACE "/" "\\" groupname ${groupname}) - source_group(${groupname} FILES ${PROJECT_SOURCE_DIR}/${curdir}/${child}) + string (REGEX REPLACE ^${rootdir} ${folder} groupname ${curdir}) + string (REPLACE "/" "\\" groupname ${groupname}) + source_group (${groupname} FILES ${PROJECT_SOURCE_DIR}/${curdir}/${child}) endif() endforeach() endfunction() -function(GroupSources curdir folder) +function (GroupSources curdir folder) DoGroupSources (${curdir} ${curdir} ${folder}) endfunction() diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 0d2377f8..f0c9ea76 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -7,7 +7,8 @@ # Official repository: https://github.com/boostorg/beast # -include_directories (extras/include) +include_directories (./extern) +include_directories (./extras/include) file (GLOB_RECURSE EXTRAS_INCLUDES ${PROJECT_SOURCE_DIR}/test/extras/include/boost/beast/*.hpp @@ -20,6 +21,29 @@ if (OPENSSL_FOUND) link_libraries (${OPENSSL_LIBRARIES}) endif() +set (ZLIB_SOURCES + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/crc32.h + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/deflate.h + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/inffast.h + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/inffixed.h + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/inflate.h + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/inftrees.h + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/trees.h + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/zlib.h + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/zutil.h + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/adler32.c + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/compress.c + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/crc32.c + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/deflate.c + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/infback.c + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/inffast.c + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/inflate.c + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/inftrees.c + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/trees.c + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/uncompr.c + ${CMAKE_CURRENT_LIST_DIR}/extern/zlib-1.2.11/zutil.c +) + add_subdirectory (beast) add_subdirectory (bench) add_subdirectory (doc) diff --git a/test/Jamfile b/test/Jamfile index 2519abd5..2a859840 100644 --- a/test/Jamfile +++ b/test/Jamfile @@ -7,6 +7,25 @@ # Official repository: https://github.com/boostorg/beast # +project test + : requirements + ./extern + ; + +path-constant ZLIB_SOURCES : + extern/zlib-1.2.11/adler32.c + extern/zlib-1.2.11/compress.c + extern/zlib-1.2.11/crc32.c + extern/zlib-1.2.11/deflate.c + extern/zlib-1.2.11/infback.c + extern/zlib-1.2.11/inffast.c + extern/zlib-1.2.11/inflate.c + extern/zlib-1.2.11/inftrees.c + extern/zlib-1.2.11/trees.c + extern/zlib-1.2.11/uncompr.c + extern/zlib-1.2.11/zutil.c + ; + alias run-tests : beast//run-tests bench//run-tests diff --git a/test/beast/zlib/CMakeLists.txt b/test/beast/zlib/CMakeLists.txt index 43a04f9f..7ebf555b 100644 --- a/test/beast/zlib/CMakeLists.txt +++ b/test/beast/zlib/CMakeLists.txt @@ -7,33 +7,11 @@ # Official repository: https://github.com/boostorg/beast # -GroupSources(test/extras/include/boost/beast extras) GroupSources(include/boost/beast beast) +GroupSources(test/extras/include/boost/beast extras) +GroupSources(test/extern/zlib-1.2.11 zlib) GroupSources(test/beast/zlib "/") -set(ZLIB_SOURCES - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/crc32.h - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/deflate.h - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/inffast.h - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/inffixed.h - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/inflate.h - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/inftrees.h - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/trees.h - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/zlib.h - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/zutil.h - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/adler32.c - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/compress.c - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/crc32.c - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/deflate.c - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/infback.c - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/inffast.c - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/inflate.c - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/inftrees.c - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/trees.c - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/uncompr.c - ${CMAKE_CURRENT_LIST_DIR}/zlib-1.2.11/zutil.c -) - if (MSVC) set_source_files_properties (${ZLIB_SOURCES} PROPERTIES COMPILE_FLAGS "/wd4127 /wd4131 /wd4244") endif() diff --git a/test/beast/zlib/Jamfile b/test/beast/zlib/Jamfile index 1d917ce3..fca0b71e 100644 --- a/test/beast/zlib/Jamfile +++ b/test/beast/zlib/Jamfile @@ -7,20 +7,6 @@ # Official repository: https://github.com/boostorg/beast # -local ZLIB_SOURCES = - zlib-1.2.11/adler32.c - zlib-1.2.11/compress.c - zlib-1.2.11/crc32.c - zlib-1.2.11/deflate.c - zlib-1.2.11/infback.c - zlib-1.2.11/inffast.c - zlib-1.2.11/inflate.c - zlib-1.2.11/inftrees.c - zlib-1.2.11/trees.c - zlib-1.2.11/uncompr.c - zlib-1.2.11/zutil.c - ; - local SOURCES = error.cpp deflate_stream.cpp diff --git a/test/bench/CMakeLists.txt b/test/bench/CMakeLists.txt index f3a88595..849f032a 100644 --- a/test/bench/CMakeLists.txt +++ b/test/bench/CMakeLists.txt @@ -11,3 +11,4 @@ add_subdirectory (buffers) add_subdirectory (parser) add_subdirectory (utf8_checker) add_subdirectory (wsload) +add_subdirectory (zlib) diff --git a/test/bench/Jamfile b/test/bench/Jamfile index 45f95178..dd201edb 100644 --- a/test/bench/Jamfile +++ b/test/bench/Jamfile @@ -12,4 +12,5 @@ alias run-tests : parser//run-tests wsload//run-tests utf8_checker//run-tests + #zlib//run-tests # Not built ; diff --git a/test/bench/zlib/CMakeLists.txt b/test/bench/zlib/CMakeLists.txt new file mode 100644 index 00000000..29a371e9 --- /dev/null +++ b/test/bench/zlib/CMakeLists.txt @@ -0,0 +1,28 @@ +# +# Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com) +# +# Distributed under the Boost Software License, Version 1.0. (See accompanying +# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +# +# Official repository: https://github.com/boostorg/beast +# + +GroupSources(include/boost/beast beast) +GroupSources(test/extras/include/boost/beast extras) +GroupSources(test/extern/zlib-1.2.11 zlib) +GroupSources(test/bench/zlib "/") + +if (MSVC) + set_source_files_properties (${ZLIB_SOURCES} PROPERTIES COMPILE_FLAGS "/wd4127 /wd4131 /wd4244") +endif() + +add_executable (bench-zlib + ${BOOST_BEAST_INCLUDES} + ${EXTRAS_INCLUDES} + ${ZLIB_SOURCES} + ${TEST_MAIN} + Jamfile + ztest.hpp + deflate_stream.cpp + inflate_stream.cpp +) diff --git a/test/bench/zlib/Jamfile b/test/bench/zlib/Jamfile new file mode 100644 index 00000000..cb8c35fa --- /dev/null +++ b/test/bench/zlib/Jamfile @@ -0,0 +1,15 @@ +# +# Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com) +# +# Distributed under the Boost Software License, Version 1.0. (See accompanying +# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +# +# Official repository: https://github.com/boostorg/beast +# + +exe bench-zlib : + $(ZLIB_SOURCES) + $(TEST_MAIN) + deflate_stream.cpp + inflate_stream.cpp + ; diff --git a/test/bench/zlib/deflate_stream.cpp b/test/bench/zlib/deflate_stream.cpp new file mode 100644 index 00000000..f69361ee --- /dev/null +++ b/test/bench/zlib/deflate_stream.cpp @@ -0,0 +1,200 @@ +// +// Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com) +// +// Distributed under the Boost Software License, Version 1.0. (See accompanying +// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +// +// Official repository: https://github.com/boostorg/beast +// + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "zlib-1.2.11/zlib.h" + +namespace boost { +namespace beast { +namespace zlib { + +class deflate_stream_test : public beast::unit_test::suite +{ +public: + // Lots of repeats, limited char range + static + std::string + corpus1(std::size_t n) + { + static std::string const alphabet{ + "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" + }; + std::string s; + s.reserve(n + 5); + std::mt19937 g; + std::uniform_int_distribution d0{ + 0, alphabet.size() - 1}; + std::uniform_int_distribution d1{ + 1, 5}; + while(s.size() < n) + { + auto const rep = d1(g); + auto const ch = alphabet[d0(g)]; + s.insert(s.end(), rep, ch); + } + s.resize(n); + return s; + } + + // Random data + static + std::string + corpus2(std::size_t n) + { + std::string s; + s.reserve(n); + std::mt19937 g; + std::uniform_int_distribution d0{0, 255}; + while(n--) + s.push_back(static_cast(d0(g))); + return s; + } + + std::string + doDeflateBeast(string_view const& in) + { + z_params zs; + memset(&zs, 0, sizeof(zs)); + deflate_stream ds; + ds.reset( + Z_DEFAULT_COMPRESSION, + 15, + 4, + Strategy::normal); + std::string out; + out.resize(deflate_upper_bound(in.size())); + zs.next_in = in.data(); + zs.avail_in = in.size(); + zs.next_out = &out[0]; + zs.avail_out = out.size(); + error_code ec; + ds.write(zs, Flush::full, ec); + BEAST_EXPECTS(! ec, ec.message()); + out.resize(zs.total_out); + return out; + } + + std::string + doDeflateZLib(string_view const& in) + { + int result; + z_stream zs; + memset(&zs, 0, sizeof(zs)); + result = deflateInit2( + &zs, + Z_DEFAULT_COMPRESSION, + Z_DEFLATED, + -15, + 4, + Z_DEFAULT_STRATEGY + ); + if(result != Z_OK) + throw std::logic_error("deflateInit2 failed"); + std::string out; + out.resize(deflateBound(&zs, + static_cast(in.size()))); + zs.next_in = (Bytef*)in.data(); + zs.avail_in = static_cast(in.size()); + zs.next_out = (Bytef*)&out[0]; + zs.avail_out = static_cast(out.size()); + result = deflate(&zs, Z_FULL_FLUSH); + if(result != Z_OK) + throw std::logic_error("deflate failed"); + out.resize(zs.total_out); + deflateEnd(&zs); + return out; + } + + void + doCorpus( + std::size_t size, + std::size_t repeat) + { + std::size_t constexpr trials = 3; + auto const c1 = corpus1(size); + auto const c2 = corpus2(size); + log << + std::left << std::setw(10) << (std::to_string(size) + "B") << + std::right << std::setw(12) << "Beast" << " " << + std::right << std::setw(12) << "ZLib" << + std::endl; + for(std::size_t i = 0; i < trials; ++i) + { + test::timer t; + log << std::left << std::setw(10) << "corpus1"; + std::string out1; + for(std::size_t j = 0; j < repeat; ++j) + out1 = doDeflateBeast(c1); + auto const t1 = + test::throughput(t.elapsed(), size * repeat); + log << std::right << std::setw(12) << t1 << " B/s "; + std::string out2; + for(std::size_t j = 0; j < repeat; ++j) + out2 = doDeflateZLib(c1); + BEAST_EXPECT(out1 == out2); + auto const t2 = + test::throughput(t.elapsed(), size * repeat); + log << std::right << std::setw(12) << t2 << " B/s"; + log << std::right << std::setw(12) << + unsigned(double(t1)*100/t2-100) << "%"; + log << std::endl; + } + for(std::size_t i = 0; i < trials; ++i) + { + test::timer t; + log << std::left << std::setw(10) << "corpus2"; + std::string out1; + for(std::size_t j = 0; j < repeat; ++j) + out1 = doDeflateBeast(c2); + auto const t1 = + test::throughput(t.elapsed(), size * repeat); + log << std::right << std::setw(12) << t1 << " B/s "; + std::string out2; + for(std::size_t j = 0; j < repeat; ++j) + out2 = doDeflateZLib(c2); + BEAST_EXPECT(out1 == out2); + auto const t2 = + test::throughput(t.elapsed(), size * repeat); + log << std::right << std::setw(12) << t2 << " B/s"; + log << std::right << std::setw(12) << + unsigned(double(t1)*100/t2-100) << "%"; + log << std::endl; + } + log << std::endl; + } + + void + doBench() + { + doCorpus( 16 * 1024, 512); + doCorpus( 1024 * 1024, 8); + doCorpus(8 * 1024 * 1024, 1); + } + + void + run() override + { + doBench(); + pass(); + } +}; + +BOOST_BEAST_DEFINE_TESTSUITE(deflate_stream,zlib,beast); + +} // zlib +} // beast +} // boost diff --git a/test/bench/zlib/inflate_stream.cpp b/test/bench/zlib/inflate_stream.cpp new file mode 100644 index 00000000..ddb5b7f3 --- /dev/null +++ b/test/bench/zlib/inflate_stream.cpp @@ -0,0 +1,245 @@ +// +// Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com) +// +// Distributed under the Boost Software License, Version 1.0. (See accompanying +// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +// +// Official repository: https://github.com/boostorg/beast +// + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "zlib-1.2.11/zlib.h" + +namespace boost { +namespace beast { +namespace zlib { + +class inflate_stream_test : public beast::unit_test::suite +{ +public: + // Lots of repeats, limited char range + static + std::string + corpus1(std::size_t n) + { + static std::string const alphabet{ + "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" + }; + std::string s; + s.reserve(n + 5); + std::mt19937 g; + std::uniform_int_distribution d0{ + 0, alphabet.size() - 1}; + std::uniform_int_distribution d1{ + 1, 5}; + while(s.size() < n) + { + auto const rep = d1(g); + auto const ch = alphabet[d0(g)]; + s.insert(s.end(), rep, ch); + } + s.resize(n); + return s; + } + + // Random data + static + std::string + corpus2(std::size_t n) + { + std::string s; + s.reserve(n); + std::mt19937 g; + std::uniform_int_distribution d0{0, 255}; + while(n--) + s.push_back(static_cast(d0(g))); + return s; + } + + static + std::string + compress(string_view const& in) + { + int result; + z_stream zs; + memset(&zs, 0, sizeof(zs)); + result = deflateInit2( + &zs, + Z_DEFAULT_COMPRESSION, + Z_DEFLATED, + -15, + 4, + Z_DEFAULT_STRATEGY); + if(result != Z_OK) + throw std::logic_error("deflateInit2 failed"); + zs.next_in = (Bytef*)in.data(); + zs.avail_in = static_cast(in.size()); + std::string out; + out.resize(deflateBound(&zs, + static_cast(in.size()))); + zs.next_in = (Bytef*)in.data(); + zs.avail_in = static_cast(in.size()); + zs.next_out = (Bytef*)&out[0]; + zs.avail_out = static_cast(out.size()); + result = deflate(&zs, Z_FULL_FLUSH); + if(result != Z_OK) + throw std::logic_error("deflate failed"); + out.resize(zs.total_out); + deflateEnd(&zs); + return out; + } + + std::string + doInflateBeast(string_view const& in) + { + z_params zs; + std::string out; + memset(&zs, 0, sizeof(zs)); + inflate_stream is; + zs.next_in = &in[0]; + zs.avail_in = in.size(); + out.resize(in.size()); + zs.next_out = &out[0]; + zs.avail_out = out.size(); + for(;;) + { + error_code ec; + is.write(zs, Flush::sync, ec); + if(ec) + throw std::logic_error("inflate_stream failed"); + if(zs.avail_out > 0) + break; + out.resize(2 * zs.total_out); + zs.next_out = &out[zs.total_out]; + zs.avail_out = out.size() - zs.total_out; + } + out.resize(zs.total_out); + return out; + } + + std::string + doInflateZLib(string_view const& in) + { + int result; + z_stream zs; + std::string out; + memset(&zs, 0, sizeof(zs)); + result = inflateInit2(&zs, -15); + zs.next_in = (Bytef*)in.data(); + zs.avail_in = static_cast(in.size()); + out.resize(in.size()); + zs.next_out = (Bytef*)&out[0]; + zs.avail_out = static_cast(out.size()); + for(;;) + { + result = inflate(&zs, Z_SYNC_FLUSH); + if( result == Z_NEED_DICT || + result == Z_DATA_ERROR || + result == Z_MEM_ERROR) + { + throw std::logic_error("inflate failed"); + } + if(zs.avail_out > 0) + break; + if(result == Z_STREAM_END) + break; + out.resize(2 * zs.total_out); + zs.next_out = (Bytef*)&out[zs.total_out]; + zs.avail_out = static_cast( + out.size() - zs.total_out); + } + out.resize(zs.total_out); + inflateEnd(&zs); + return out; + } + + void + doCorpus( + std::size_t size, + std::size_t repeat) + { + std::size_t constexpr trials = 3; + std::uint64_t constexpr scale = 16; + auto const c1 = corpus1(size); + auto const c2 = corpus2(size * scale); + auto const in1 = compress(c1); + auto const in2 = compress(c2); + log << + std::left << std::setw(10) << (std::to_string(size) + "B") << + std::right << std::setw(12) << "Beast" << " " << + std::right << std::setw(12) << "ZLib" << + std::endl; + for(std::size_t i = 0; i < trials; ++i) + { + test::timer t; + log << std::left << std::setw(10) << "corpus1"; + std::string out; + for(std::size_t j = 0; j < repeat; ++j) + out = doInflateBeast(in1); + BEAST_EXPECT(out == c1); + auto const t1 = + test::throughput(t.elapsed(), size * repeat); + log << std::right << std::setw(12) << t1 << " B/s "; + for(std::size_t j = 0; j < repeat; ++j) + out = doInflateZLib(in1); + BEAST_EXPECT(out == c1); + auto const t2 = + test::throughput(t.elapsed(), size * repeat); + log << std::right << std::setw(12) << t2 << " B/s"; + log << std::right << std::setw(12) << + unsigned(double(t1)*100/t2-100) << "%"; + log << std::endl; + } + for(std::size_t i = 0; i < trials; ++i) + { + test::timer t; + log << std::left << std::setw(10) << "corpus2"; + std::string out; + for(std::size_t j = 0; j < repeat; ++j) + out = doInflateBeast(in2); + BEAST_EXPECT(out == c2); + auto const t1 = + test::throughput(t.elapsed(), size * scale * repeat); + log << std::right << std::setw(12) << t1 << " B/s "; + for(std::size_t j = 0; j < repeat; ++j) + out = doInflateZLib(in2); + BEAST_EXPECT(out == c2); + auto const t2 = + test::throughput(t.elapsed(), size * scale * repeat); + log << std::right << std::setw(12) << t2 << " B/s"; + log << std::right << std::setw(12) << + unsigned(double(t1)*100/t2-100) << "%"; + log << std::endl; + } + log << std::endl; + } + + void + doBench() + { + doCorpus( 1 * 1024 * 1024, 64); + doCorpus( 4 * 1024 * 1024, 16); + doCorpus( 16 * 1024 * 1024, 8); + } + + void + run() override + { + doBench(); + pass(); + } +}; + +BOOST_BEAST_DEFINE_TESTSUITE(inflate_stream,zlib,beast); + +} // zlib +} // beast +} // boost diff --git a/test/beast/zlib/zlib-1.2.11/.gitignore b/test/extern/zlib-1.2.11/.gitignore similarity index 100% rename from test/beast/zlib/zlib-1.2.11/.gitignore rename to test/extern/zlib-1.2.11/.gitignore diff --git a/test/beast/zlib/zlib-1.2.11/CMakeLists.txt b/test/extern/zlib-1.2.11/CMakeLists.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/CMakeLists.txt rename to test/extern/zlib-1.2.11/CMakeLists.txt diff --git a/test/beast/zlib/zlib-1.2.11/ChangeLog b/test/extern/zlib-1.2.11/ChangeLog similarity index 100% rename from test/beast/zlib/zlib-1.2.11/ChangeLog rename to test/extern/zlib-1.2.11/ChangeLog diff --git a/test/beast/zlib/zlib-1.2.11/FAQ b/test/extern/zlib-1.2.11/FAQ similarity index 100% rename from test/beast/zlib/zlib-1.2.11/FAQ rename to test/extern/zlib-1.2.11/FAQ diff --git a/test/beast/zlib/zlib-1.2.11/INDEX b/test/extern/zlib-1.2.11/INDEX similarity index 100% rename from test/beast/zlib/zlib-1.2.11/INDEX rename to test/extern/zlib-1.2.11/INDEX diff --git a/test/beast/zlib/zlib-1.2.11/Makefile b/test/extern/zlib-1.2.11/Makefile similarity index 100% rename from test/beast/zlib/zlib-1.2.11/Makefile rename to test/extern/zlib-1.2.11/Makefile diff --git a/test/beast/zlib/zlib-1.2.11/Makefile.in b/test/extern/zlib-1.2.11/Makefile.in similarity index 100% rename from test/beast/zlib/zlib-1.2.11/Makefile.in rename to test/extern/zlib-1.2.11/Makefile.in diff --git a/test/beast/zlib/zlib-1.2.11/README b/test/extern/zlib-1.2.11/README similarity index 100% rename from test/beast/zlib/zlib-1.2.11/README rename to test/extern/zlib-1.2.11/README diff --git a/test/beast/zlib/zlib-1.2.11/adler32.c b/test/extern/zlib-1.2.11/adler32.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/adler32.c rename to test/extern/zlib-1.2.11/adler32.c diff --git a/test/beast/zlib/zlib-1.2.11/amiga/Makefile.pup b/test/extern/zlib-1.2.11/amiga/Makefile.pup similarity index 100% rename from test/beast/zlib/zlib-1.2.11/amiga/Makefile.pup rename to test/extern/zlib-1.2.11/amiga/Makefile.pup diff --git a/test/beast/zlib/zlib-1.2.11/amiga/Makefile.sas b/test/extern/zlib-1.2.11/amiga/Makefile.sas similarity index 100% rename from test/beast/zlib/zlib-1.2.11/amiga/Makefile.sas rename to test/extern/zlib-1.2.11/amiga/Makefile.sas diff --git a/test/beast/zlib/zlib-1.2.11/compress.c b/test/extern/zlib-1.2.11/compress.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/compress.c rename to test/extern/zlib-1.2.11/compress.c diff --git a/test/beast/zlib/zlib-1.2.11/configure b/test/extern/zlib-1.2.11/configure similarity index 100% rename from test/beast/zlib/zlib-1.2.11/configure rename to test/extern/zlib-1.2.11/configure diff --git a/test/beast/zlib/zlib-1.2.11/contrib/README.contrib b/test/extern/zlib-1.2.11/contrib/README.contrib similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/README.contrib rename to test/extern/zlib-1.2.11/contrib/README.contrib diff --git a/test/beast/zlib/zlib-1.2.11/contrib/ada/buffer_demo.adb b/test/extern/zlib-1.2.11/contrib/ada/buffer_demo.adb similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/ada/buffer_demo.adb rename to test/extern/zlib-1.2.11/contrib/ada/buffer_demo.adb diff --git a/test/beast/zlib/zlib-1.2.11/contrib/ada/mtest.adb b/test/extern/zlib-1.2.11/contrib/ada/mtest.adb similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/ada/mtest.adb rename to test/extern/zlib-1.2.11/contrib/ada/mtest.adb diff --git a/test/beast/zlib/zlib-1.2.11/contrib/ada/read.adb b/test/extern/zlib-1.2.11/contrib/ada/read.adb similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/ada/read.adb rename to test/extern/zlib-1.2.11/contrib/ada/read.adb diff --git a/test/beast/zlib/zlib-1.2.11/contrib/ada/readme.txt b/test/extern/zlib-1.2.11/contrib/ada/readme.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/ada/readme.txt rename to test/extern/zlib-1.2.11/contrib/ada/readme.txt diff --git a/test/beast/zlib/zlib-1.2.11/contrib/ada/test.adb b/test/extern/zlib-1.2.11/contrib/ada/test.adb similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/ada/test.adb rename to test/extern/zlib-1.2.11/contrib/ada/test.adb diff --git a/test/beast/zlib/zlib-1.2.11/contrib/ada/zlib-streams.adb b/test/extern/zlib-1.2.11/contrib/ada/zlib-streams.adb similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/ada/zlib-streams.adb rename to test/extern/zlib-1.2.11/contrib/ada/zlib-streams.adb diff --git a/test/beast/zlib/zlib-1.2.11/contrib/ada/zlib-streams.ads b/test/extern/zlib-1.2.11/contrib/ada/zlib-streams.ads similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/ada/zlib-streams.ads rename to test/extern/zlib-1.2.11/contrib/ada/zlib-streams.ads diff --git a/test/beast/zlib/zlib-1.2.11/contrib/ada/zlib-thin.adb b/test/extern/zlib-1.2.11/contrib/ada/zlib-thin.adb similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/ada/zlib-thin.adb rename to test/extern/zlib-1.2.11/contrib/ada/zlib-thin.adb diff --git a/test/beast/zlib/zlib-1.2.11/contrib/ada/zlib-thin.ads b/test/extern/zlib-1.2.11/contrib/ada/zlib-thin.ads similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/ada/zlib-thin.ads rename to test/extern/zlib-1.2.11/contrib/ada/zlib-thin.ads diff --git a/test/beast/zlib/zlib-1.2.11/contrib/ada/zlib.adb b/test/extern/zlib-1.2.11/contrib/ada/zlib.adb similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/ada/zlib.adb rename to test/extern/zlib-1.2.11/contrib/ada/zlib.adb diff --git a/test/beast/zlib/zlib-1.2.11/contrib/ada/zlib.ads b/test/extern/zlib-1.2.11/contrib/ada/zlib.ads similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/ada/zlib.ads rename to test/extern/zlib-1.2.11/contrib/ada/zlib.ads diff --git a/test/beast/zlib/zlib-1.2.11/contrib/ada/zlib.gpr b/test/extern/zlib-1.2.11/contrib/ada/zlib.gpr similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/ada/zlib.gpr rename to test/extern/zlib-1.2.11/contrib/ada/zlib.gpr diff --git a/test/beast/zlib/zlib-1.2.11/contrib/amd64/amd64-match.S b/test/extern/zlib-1.2.11/contrib/amd64/amd64-match.S similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/amd64/amd64-match.S rename to test/extern/zlib-1.2.11/contrib/amd64/amd64-match.S diff --git a/test/beast/zlib/zlib-1.2.11/contrib/asm686/README.686 b/test/extern/zlib-1.2.11/contrib/asm686/README.686 similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/asm686/README.686 rename to test/extern/zlib-1.2.11/contrib/asm686/README.686 diff --git a/test/beast/zlib/zlib-1.2.11/contrib/asm686/match.S b/test/extern/zlib-1.2.11/contrib/asm686/match.S similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/asm686/match.S rename to test/extern/zlib-1.2.11/contrib/asm686/match.S diff --git a/test/beast/zlib/zlib-1.2.11/contrib/blast/Makefile b/test/extern/zlib-1.2.11/contrib/blast/Makefile similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/blast/Makefile rename to test/extern/zlib-1.2.11/contrib/blast/Makefile diff --git a/test/beast/zlib/zlib-1.2.11/contrib/blast/README b/test/extern/zlib-1.2.11/contrib/blast/README similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/blast/README rename to test/extern/zlib-1.2.11/contrib/blast/README diff --git a/test/beast/zlib/zlib-1.2.11/contrib/blast/blast.c b/test/extern/zlib-1.2.11/contrib/blast/blast.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/blast/blast.c rename to test/extern/zlib-1.2.11/contrib/blast/blast.c diff --git a/test/beast/zlib/zlib-1.2.11/contrib/blast/blast.h b/test/extern/zlib-1.2.11/contrib/blast/blast.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/blast/blast.h rename to test/extern/zlib-1.2.11/contrib/blast/blast.h diff --git a/test/beast/zlib/zlib-1.2.11/contrib/blast/test.pk b/test/extern/zlib-1.2.11/contrib/blast/test.pk similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/blast/test.pk rename to test/extern/zlib-1.2.11/contrib/blast/test.pk diff --git a/test/beast/zlib/zlib-1.2.11/contrib/blast/test.txt b/test/extern/zlib-1.2.11/contrib/blast/test.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/blast/test.txt rename to test/extern/zlib-1.2.11/contrib/blast/test.txt diff --git a/test/beast/zlib/zlib-1.2.11/contrib/delphi/ZLib.pas b/test/extern/zlib-1.2.11/contrib/delphi/ZLib.pas similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/delphi/ZLib.pas rename to test/extern/zlib-1.2.11/contrib/delphi/ZLib.pas diff --git a/test/beast/zlib/zlib-1.2.11/contrib/delphi/ZLibConst.pas b/test/extern/zlib-1.2.11/contrib/delphi/ZLibConst.pas similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/delphi/ZLibConst.pas rename to test/extern/zlib-1.2.11/contrib/delphi/ZLibConst.pas diff --git a/test/beast/zlib/zlib-1.2.11/contrib/delphi/readme.txt b/test/extern/zlib-1.2.11/contrib/delphi/readme.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/delphi/readme.txt rename to test/extern/zlib-1.2.11/contrib/delphi/readme.txt diff --git a/test/beast/zlib/zlib-1.2.11/contrib/delphi/zlibd32.mak b/test/extern/zlib-1.2.11/contrib/delphi/zlibd32.mak similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/delphi/zlibd32.mak rename to test/extern/zlib-1.2.11/contrib/delphi/zlibd32.mak diff --git a/test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib.build b/test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib.build similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib.build rename to test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib.build diff --git a/test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib.chm b/test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib.chm similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib.chm rename to test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib.chm diff --git a/test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib.sln b/test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib.sln similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib.sln rename to test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib.sln diff --git a/test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/AssemblyInfo.cs b/test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/AssemblyInfo.cs similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/AssemblyInfo.cs rename to test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/AssemblyInfo.cs diff --git a/test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/ChecksumImpl.cs b/test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/ChecksumImpl.cs similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/ChecksumImpl.cs rename to test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/ChecksumImpl.cs diff --git a/test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/CircularBuffer.cs b/test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/CircularBuffer.cs similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/CircularBuffer.cs rename to test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/CircularBuffer.cs diff --git a/test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/CodecBase.cs b/test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/CodecBase.cs similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/CodecBase.cs rename to test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/CodecBase.cs diff --git a/test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/Deflater.cs b/test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/Deflater.cs similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/Deflater.cs rename to test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/Deflater.cs diff --git a/test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/DotZLib.cs b/test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/DotZLib.cs similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/DotZLib.cs rename to test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/DotZLib.cs diff --git a/test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/DotZLib.csproj b/test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/DotZLib.csproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/DotZLib.csproj rename to test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/DotZLib.csproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/GZipStream.cs b/test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/GZipStream.cs similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/GZipStream.cs rename to test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/GZipStream.cs diff --git a/test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/Inflater.cs b/test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/Inflater.cs similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/Inflater.cs rename to test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/Inflater.cs diff --git a/test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/UnitTests.cs b/test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/UnitTests.cs similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/dotzlib/DotZLib/UnitTests.cs rename to test/extern/zlib-1.2.11/contrib/dotzlib/DotZLib/UnitTests.cs diff --git a/test/beast/zlib/zlib-1.2.11/contrib/dotzlib/LICENSE_1_0.txt b/test/extern/zlib-1.2.11/contrib/dotzlib/LICENSE_1_0.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/dotzlib/LICENSE_1_0.txt rename to test/extern/zlib-1.2.11/contrib/dotzlib/LICENSE_1_0.txt diff --git a/test/beast/zlib/zlib-1.2.11/contrib/dotzlib/readme.txt b/test/extern/zlib-1.2.11/contrib/dotzlib/readme.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/dotzlib/readme.txt rename to test/extern/zlib-1.2.11/contrib/dotzlib/readme.txt diff --git a/test/beast/zlib/zlib-1.2.11/contrib/gcc_gvmat64/gvmat64.S b/test/extern/zlib-1.2.11/contrib/gcc_gvmat64/gvmat64.S similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/gcc_gvmat64/gvmat64.S rename to test/extern/zlib-1.2.11/contrib/gcc_gvmat64/gvmat64.S diff --git a/test/beast/zlib/zlib-1.2.11/contrib/infback9/README b/test/extern/zlib-1.2.11/contrib/infback9/README similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/infback9/README rename to test/extern/zlib-1.2.11/contrib/infback9/README diff --git a/test/beast/zlib/zlib-1.2.11/contrib/infback9/infback9.c b/test/extern/zlib-1.2.11/contrib/infback9/infback9.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/infback9/infback9.c rename to test/extern/zlib-1.2.11/contrib/infback9/infback9.c diff --git a/test/beast/zlib/zlib-1.2.11/contrib/infback9/infback9.h b/test/extern/zlib-1.2.11/contrib/infback9/infback9.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/infback9/infback9.h rename to test/extern/zlib-1.2.11/contrib/infback9/infback9.h diff --git a/test/beast/zlib/zlib-1.2.11/contrib/infback9/inffix9.h b/test/extern/zlib-1.2.11/contrib/infback9/inffix9.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/infback9/inffix9.h rename to test/extern/zlib-1.2.11/contrib/infback9/inffix9.h diff --git a/test/beast/zlib/zlib-1.2.11/contrib/infback9/inflate9.h b/test/extern/zlib-1.2.11/contrib/infback9/inflate9.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/infback9/inflate9.h rename to test/extern/zlib-1.2.11/contrib/infback9/inflate9.h diff --git a/test/beast/zlib/zlib-1.2.11/contrib/infback9/inftree9.c b/test/extern/zlib-1.2.11/contrib/infback9/inftree9.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/infback9/inftree9.c rename to test/extern/zlib-1.2.11/contrib/infback9/inftree9.c diff --git a/test/beast/zlib/zlib-1.2.11/contrib/infback9/inftree9.h b/test/extern/zlib-1.2.11/contrib/infback9/inftree9.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/infback9/inftree9.h rename to test/extern/zlib-1.2.11/contrib/infback9/inftree9.h diff --git a/test/beast/zlib/zlib-1.2.11/contrib/inflate86/inffas86.c b/test/extern/zlib-1.2.11/contrib/inflate86/inffas86.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/inflate86/inffas86.c rename to test/extern/zlib-1.2.11/contrib/inflate86/inffas86.c diff --git a/test/beast/zlib/zlib-1.2.11/contrib/inflate86/inffast.S b/test/extern/zlib-1.2.11/contrib/inflate86/inffast.S similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/inflate86/inffast.S rename to test/extern/zlib-1.2.11/contrib/inflate86/inffast.S diff --git a/test/beast/zlib/zlib-1.2.11/contrib/iostream/test.cpp b/test/extern/zlib-1.2.11/contrib/iostream/test.cpp similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/iostream/test.cpp rename to test/extern/zlib-1.2.11/contrib/iostream/test.cpp diff --git a/test/beast/zlib/zlib-1.2.11/contrib/iostream/zfstream.cpp b/test/extern/zlib-1.2.11/contrib/iostream/zfstream.cpp similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/iostream/zfstream.cpp rename to test/extern/zlib-1.2.11/contrib/iostream/zfstream.cpp diff --git a/test/beast/zlib/zlib-1.2.11/contrib/iostream/zfstream.h b/test/extern/zlib-1.2.11/contrib/iostream/zfstream.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/iostream/zfstream.h rename to test/extern/zlib-1.2.11/contrib/iostream/zfstream.h diff --git a/test/beast/zlib/zlib-1.2.11/contrib/iostream2/zstream.h b/test/extern/zlib-1.2.11/contrib/iostream2/zstream.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/iostream2/zstream.h rename to test/extern/zlib-1.2.11/contrib/iostream2/zstream.h diff --git a/test/beast/zlib/zlib-1.2.11/contrib/iostream2/zstream_test.cpp b/test/extern/zlib-1.2.11/contrib/iostream2/zstream_test.cpp similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/iostream2/zstream_test.cpp rename to test/extern/zlib-1.2.11/contrib/iostream2/zstream_test.cpp diff --git a/test/beast/zlib/zlib-1.2.11/contrib/iostream3/README b/test/extern/zlib-1.2.11/contrib/iostream3/README similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/iostream3/README rename to test/extern/zlib-1.2.11/contrib/iostream3/README diff --git a/test/beast/zlib/zlib-1.2.11/contrib/iostream3/TODO b/test/extern/zlib-1.2.11/contrib/iostream3/TODO similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/iostream3/TODO rename to test/extern/zlib-1.2.11/contrib/iostream3/TODO diff --git a/test/beast/zlib/zlib-1.2.11/contrib/iostream3/test.cc b/test/extern/zlib-1.2.11/contrib/iostream3/test.cc similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/iostream3/test.cc rename to test/extern/zlib-1.2.11/contrib/iostream3/test.cc diff --git a/test/beast/zlib/zlib-1.2.11/contrib/iostream3/zfstream.cc b/test/extern/zlib-1.2.11/contrib/iostream3/zfstream.cc similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/iostream3/zfstream.cc rename to test/extern/zlib-1.2.11/contrib/iostream3/zfstream.cc diff --git a/test/beast/zlib/zlib-1.2.11/contrib/iostream3/zfstream.h b/test/extern/zlib-1.2.11/contrib/iostream3/zfstream.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/iostream3/zfstream.h rename to test/extern/zlib-1.2.11/contrib/iostream3/zfstream.h diff --git a/test/beast/zlib/zlib-1.2.11/contrib/masmx64/bld_ml64.bat b/test/extern/zlib-1.2.11/contrib/masmx64/bld_ml64.bat similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/masmx64/bld_ml64.bat rename to test/extern/zlib-1.2.11/contrib/masmx64/bld_ml64.bat diff --git a/test/beast/zlib/zlib-1.2.11/contrib/masmx64/gvmat64.asm b/test/extern/zlib-1.2.11/contrib/masmx64/gvmat64.asm similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/masmx64/gvmat64.asm rename to test/extern/zlib-1.2.11/contrib/masmx64/gvmat64.asm diff --git a/test/beast/zlib/zlib-1.2.11/contrib/masmx64/inffas8664.c b/test/extern/zlib-1.2.11/contrib/masmx64/inffas8664.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/masmx64/inffas8664.c rename to test/extern/zlib-1.2.11/contrib/masmx64/inffas8664.c diff --git a/test/beast/zlib/zlib-1.2.11/contrib/masmx64/inffasx64.asm b/test/extern/zlib-1.2.11/contrib/masmx64/inffasx64.asm similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/masmx64/inffasx64.asm rename to test/extern/zlib-1.2.11/contrib/masmx64/inffasx64.asm diff --git a/test/beast/zlib/zlib-1.2.11/contrib/masmx64/readme.txt b/test/extern/zlib-1.2.11/contrib/masmx64/readme.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/masmx64/readme.txt rename to test/extern/zlib-1.2.11/contrib/masmx64/readme.txt diff --git a/test/beast/zlib/zlib-1.2.11/contrib/masmx86/bld_ml32.bat b/test/extern/zlib-1.2.11/contrib/masmx86/bld_ml32.bat similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/masmx86/bld_ml32.bat rename to test/extern/zlib-1.2.11/contrib/masmx86/bld_ml32.bat diff --git a/test/beast/zlib/zlib-1.2.11/contrib/masmx86/inffas32.asm b/test/extern/zlib-1.2.11/contrib/masmx86/inffas32.asm similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/masmx86/inffas32.asm rename to test/extern/zlib-1.2.11/contrib/masmx86/inffas32.asm diff --git a/test/beast/zlib/zlib-1.2.11/contrib/masmx86/match686.asm b/test/extern/zlib-1.2.11/contrib/masmx86/match686.asm similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/masmx86/match686.asm rename to test/extern/zlib-1.2.11/contrib/masmx86/match686.asm diff --git a/test/beast/zlib/zlib-1.2.11/contrib/masmx86/readme.txt b/test/extern/zlib-1.2.11/contrib/masmx86/readme.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/masmx86/readme.txt rename to test/extern/zlib-1.2.11/contrib/masmx86/readme.txt diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/Makefile b/test/extern/zlib-1.2.11/contrib/minizip/Makefile similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/Makefile rename to test/extern/zlib-1.2.11/contrib/minizip/Makefile diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/Makefile.am b/test/extern/zlib-1.2.11/contrib/minizip/Makefile.am similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/Makefile.am rename to test/extern/zlib-1.2.11/contrib/minizip/Makefile.am diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/MiniZip64_Changes.txt b/test/extern/zlib-1.2.11/contrib/minizip/MiniZip64_Changes.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/MiniZip64_Changes.txt rename to test/extern/zlib-1.2.11/contrib/minizip/MiniZip64_Changes.txt diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/MiniZip64_info.txt b/test/extern/zlib-1.2.11/contrib/minizip/MiniZip64_info.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/MiniZip64_info.txt rename to test/extern/zlib-1.2.11/contrib/minizip/MiniZip64_info.txt diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/configure.ac b/test/extern/zlib-1.2.11/contrib/minizip/configure.ac similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/configure.ac rename to test/extern/zlib-1.2.11/contrib/minizip/configure.ac diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/crypt.h b/test/extern/zlib-1.2.11/contrib/minizip/crypt.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/crypt.h rename to test/extern/zlib-1.2.11/contrib/minizip/crypt.h diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/ioapi.c b/test/extern/zlib-1.2.11/contrib/minizip/ioapi.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/ioapi.c rename to test/extern/zlib-1.2.11/contrib/minizip/ioapi.c diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/ioapi.h b/test/extern/zlib-1.2.11/contrib/minizip/ioapi.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/ioapi.h rename to test/extern/zlib-1.2.11/contrib/minizip/ioapi.h diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/iowin32.c b/test/extern/zlib-1.2.11/contrib/minizip/iowin32.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/iowin32.c rename to test/extern/zlib-1.2.11/contrib/minizip/iowin32.c diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/iowin32.h b/test/extern/zlib-1.2.11/contrib/minizip/iowin32.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/iowin32.h rename to test/extern/zlib-1.2.11/contrib/minizip/iowin32.h diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/make_vms.com b/test/extern/zlib-1.2.11/contrib/minizip/make_vms.com similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/make_vms.com rename to test/extern/zlib-1.2.11/contrib/minizip/make_vms.com diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/miniunz.c b/test/extern/zlib-1.2.11/contrib/minizip/miniunz.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/miniunz.c rename to test/extern/zlib-1.2.11/contrib/minizip/miniunz.c diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/miniunzip.1 b/test/extern/zlib-1.2.11/contrib/minizip/miniunzip.1 similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/miniunzip.1 rename to test/extern/zlib-1.2.11/contrib/minizip/miniunzip.1 diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/minizip.1 b/test/extern/zlib-1.2.11/contrib/minizip/minizip.1 similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/minizip.1 rename to test/extern/zlib-1.2.11/contrib/minizip/minizip.1 diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/minizip.c b/test/extern/zlib-1.2.11/contrib/minizip/minizip.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/minizip.c rename to test/extern/zlib-1.2.11/contrib/minizip/minizip.c diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/minizip.pc.in b/test/extern/zlib-1.2.11/contrib/minizip/minizip.pc.in similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/minizip.pc.in rename to test/extern/zlib-1.2.11/contrib/minizip/minizip.pc.in diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/mztools.c b/test/extern/zlib-1.2.11/contrib/minizip/mztools.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/mztools.c rename to test/extern/zlib-1.2.11/contrib/minizip/mztools.c diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/mztools.h b/test/extern/zlib-1.2.11/contrib/minizip/mztools.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/mztools.h rename to test/extern/zlib-1.2.11/contrib/minizip/mztools.h diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/unzip.c b/test/extern/zlib-1.2.11/contrib/minizip/unzip.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/unzip.c rename to test/extern/zlib-1.2.11/contrib/minizip/unzip.c diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/unzip.h b/test/extern/zlib-1.2.11/contrib/minizip/unzip.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/unzip.h rename to test/extern/zlib-1.2.11/contrib/minizip/unzip.h diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/zip.c b/test/extern/zlib-1.2.11/contrib/minizip/zip.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/zip.c rename to test/extern/zlib-1.2.11/contrib/minizip/zip.c diff --git a/test/beast/zlib/zlib-1.2.11/contrib/minizip/zip.h b/test/extern/zlib-1.2.11/contrib/minizip/zip.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/minizip/zip.h rename to test/extern/zlib-1.2.11/contrib/minizip/zip.h diff --git a/test/beast/zlib/zlib-1.2.11/contrib/pascal/example.pas b/test/extern/zlib-1.2.11/contrib/pascal/example.pas similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/pascal/example.pas rename to test/extern/zlib-1.2.11/contrib/pascal/example.pas diff --git a/test/beast/zlib/zlib-1.2.11/contrib/pascal/readme.txt b/test/extern/zlib-1.2.11/contrib/pascal/readme.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/pascal/readme.txt rename to test/extern/zlib-1.2.11/contrib/pascal/readme.txt diff --git a/test/beast/zlib/zlib-1.2.11/contrib/pascal/zlibd32.mak b/test/extern/zlib-1.2.11/contrib/pascal/zlibd32.mak similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/pascal/zlibd32.mak rename to test/extern/zlib-1.2.11/contrib/pascal/zlibd32.mak diff --git a/test/beast/zlib/zlib-1.2.11/contrib/pascal/zlibpas.pas b/test/extern/zlib-1.2.11/contrib/pascal/zlibpas.pas similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/pascal/zlibpas.pas rename to test/extern/zlib-1.2.11/contrib/pascal/zlibpas.pas diff --git a/test/beast/zlib/zlib-1.2.11/contrib/puff/Makefile b/test/extern/zlib-1.2.11/contrib/puff/Makefile similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/puff/Makefile rename to test/extern/zlib-1.2.11/contrib/puff/Makefile diff --git a/test/beast/zlib/zlib-1.2.11/contrib/puff/README b/test/extern/zlib-1.2.11/contrib/puff/README similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/puff/README rename to test/extern/zlib-1.2.11/contrib/puff/README diff --git a/test/beast/zlib/zlib-1.2.11/contrib/puff/puff.c b/test/extern/zlib-1.2.11/contrib/puff/puff.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/puff/puff.c rename to test/extern/zlib-1.2.11/contrib/puff/puff.c diff --git a/test/beast/zlib/zlib-1.2.11/contrib/puff/puff.h b/test/extern/zlib-1.2.11/contrib/puff/puff.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/puff/puff.h rename to test/extern/zlib-1.2.11/contrib/puff/puff.h diff --git a/test/beast/zlib/zlib-1.2.11/contrib/puff/pufftest.c b/test/extern/zlib-1.2.11/contrib/puff/pufftest.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/puff/pufftest.c rename to test/extern/zlib-1.2.11/contrib/puff/pufftest.c diff --git a/test/beast/zlib/zlib-1.2.11/contrib/puff/zeros.raw b/test/extern/zlib-1.2.11/contrib/puff/zeros.raw similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/puff/zeros.raw rename to test/extern/zlib-1.2.11/contrib/puff/zeros.raw diff --git a/test/beast/zlib/zlib-1.2.11/contrib/testzlib/testzlib.c b/test/extern/zlib-1.2.11/contrib/testzlib/testzlib.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/testzlib/testzlib.c rename to test/extern/zlib-1.2.11/contrib/testzlib/testzlib.c diff --git a/test/beast/zlib/zlib-1.2.11/contrib/testzlib/testzlib.txt b/test/extern/zlib-1.2.11/contrib/testzlib/testzlib.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/testzlib/testzlib.txt rename to test/extern/zlib-1.2.11/contrib/testzlib/testzlib.txt diff --git a/test/beast/zlib/zlib-1.2.11/contrib/untgz/Makefile b/test/extern/zlib-1.2.11/contrib/untgz/Makefile similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/untgz/Makefile rename to test/extern/zlib-1.2.11/contrib/untgz/Makefile diff --git a/test/beast/zlib/zlib-1.2.11/contrib/untgz/Makefile.msc b/test/extern/zlib-1.2.11/contrib/untgz/Makefile.msc similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/untgz/Makefile.msc rename to test/extern/zlib-1.2.11/contrib/untgz/Makefile.msc diff --git a/test/beast/zlib/zlib-1.2.11/contrib/untgz/untgz.c b/test/extern/zlib-1.2.11/contrib/untgz/untgz.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/untgz/untgz.c rename to test/extern/zlib-1.2.11/contrib/untgz/untgz.c diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/readme.txt b/test/extern/zlib-1.2.11/contrib/vstudio/readme.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/readme.txt rename to test/extern/zlib-1.2.11/contrib/vstudio/readme.txt diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/miniunz.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc10/miniunz.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/miniunz.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc10/miniunz.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/miniunz.vcxproj.filters b/test/extern/zlib-1.2.11/contrib/vstudio/vc10/miniunz.vcxproj.filters similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/miniunz.vcxproj.filters rename to test/extern/zlib-1.2.11/contrib/vstudio/vc10/miniunz.vcxproj.filters diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/minizip.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc10/minizip.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/minizip.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc10/minizip.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/minizip.vcxproj.filters b/test/extern/zlib-1.2.11/contrib/vstudio/vc10/minizip.vcxproj.filters similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/minizip.vcxproj.filters rename to test/extern/zlib-1.2.11/contrib/vstudio/vc10/minizip.vcxproj.filters diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/testzlib.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc10/testzlib.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/testzlib.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc10/testzlib.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/testzlib.vcxproj.filters b/test/extern/zlib-1.2.11/contrib/vstudio/vc10/testzlib.vcxproj.filters similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/testzlib.vcxproj.filters rename to test/extern/zlib-1.2.11/contrib/vstudio/vc10/testzlib.vcxproj.filters diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/testzlibdll.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc10/testzlibdll.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/testzlibdll.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc10/testzlibdll.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/testzlibdll.vcxproj.filters b/test/extern/zlib-1.2.11/contrib/vstudio/vc10/testzlibdll.vcxproj.filters similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/testzlibdll.vcxproj.filters rename to test/extern/zlib-1.2.11/contrib/vstudio/vc10/testzlibdll.vcxproj.filters diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/zlib.rc b/test/extern/zlib-1.2.11/contrib/vstudio/vc10/zlib.rc similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/zlib.rc rename to test/extern/zlib-1.2.11/contrib/vstudio/vc10/zlib.rc diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/zlibstat.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc10/zlibstat.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/zlibstat.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc10/zlibstat.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/zlibstat.vcxproj.filters b/test/extern/zlib-1.2.11/contrib/vstudio/vc10/zlibstat.vcxproj.filters similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/zlibstat.vcxproj.filters rename to test/extern/zlib-1.2.11/contrib/vstudio/vc10/zlibstat.vcxproj.filters diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.def b/test/extern/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.def similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.def rename to test/extern/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.def diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.sln b/test/extern/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.sln similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.sln rename to test/extern/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.sln diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.vcxproj.filters b/test/extern/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.vcxproj.filters similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.vcxproj.filters rename to test/extern/zlib-1.2.11/contrib/vstudio/vc10/zlibvc.vcxproj.filters diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/miniunz.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc11/miniunz.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/miniunz.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc11/miniunz.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/minizip.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc11/minizip.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/minizip.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc11/minizip.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/testzlib.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc11/testzlib.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/testzlib.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc11/testzlib.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/testzlibdll.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc11/testzlibdll.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/testzlibdll.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc11/testzlibdll.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/zlib.rc b/test/extern/zlib-1.2.11/contrib/vstudio/vc11/zlib.rc similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/zlib.rc rename to test/extern/zlib-1.2.11/contrib/vstudio/vc11/zlib.rc diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/zlibstat.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc11/zlibstat.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/zlibstat.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc11/zlibstat.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/zlibvc.def b/test/extern/zlib-1.2.11/contrib/vstudio/vc11/zlibvc.def similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/zlibvc.def rename to test/extern/zlib-1.2.11/contrib/vstudio/vc11/zlibvc.def diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/zlibvc.sln b/test/extern/zlib-1.2.11/contrib/vstudio/vc11/zlibvc.sln similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/zlibvc.sln rename to test/extern/zlib-1.2.11/contrib/vstudio/vc11/zlibvc.sln diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/zlibvc.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc11/zlibvc.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc11/zlibvc.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc11/zlibvc.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/miniunz.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc12/miniunz.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/miniunz.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc12/miniunz.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/minizip.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc12/minizip.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/minizip.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc12/minizip.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/testzlib.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc12/testzlib.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/testzlib.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc12/testzlib.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/testzlibdll.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc12/testzlibdll.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/testzlibdll.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc12/testzlibdll.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/zlib.rc b/test/extern/zlib-1.2.11/contrib/vstudio/vc12/zlib.rc similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/zlib.rc rename to test/extern/zlib-1.2.11/contrib/vstudio/vc12/zlib.rc diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/zlibstat.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc12/zlibstat.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/zlibstat.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc12/zlibstat.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/zlibvc.def b/test/extern/zlib-1.2.11/contrib/vstudio/vc12/zlibvc.def similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/zlibvc.def rename to test/extern/zlib-1.2.11/contrib/vstudio/vc12/zlibvc.def diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/zlibvc.sln b/test/extern/zlib-1.2.11/contrib/vstudio/vc12/zlibvc.sln similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/zlibvc.sln rename to test/extern/zlib-1.2.11/contrib/vstudio/vc12/zlibvc.sln diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/zlibvc.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc12/zlibvc.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc12/zlibvc.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc12/zlibvc.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/miniunz.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc14/miniunz.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/miniunz.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc14/miniunz.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/minizip.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc14/minizip.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/minizip.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc14/minizip.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/testzlib.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc14/testzlib.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/testzlib.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc14/testzlib.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/testzlibdll.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc14/testzlibdll.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/testzlibdll.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc14/testzlibdll.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/zlib.rc b/test/extern/zlib-1.2.11/contrib/vstudio/vc14/zlib.rc similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/zlib.rc rename to test/extern/zlib-1.2.11/contrib/vstudio/vc14/zlib.rc diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/zlibstat.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc14/zlibstat.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/zlibstat.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc14/zlibstat.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/zlibvc.def b/test/extern/zlib-1.2.11/contrib/vstudio/vc14/zlibvc.def similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/zlibvc.def rename to test/extern/zlib-1.2.11/contrib/vstudio/vc14/zlibvc.def diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/zlibvc.sln b/test/extern/zlib-1.2.11/contrib/vstudio/vc14/zlibvc.sln similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/zlibvc.sln rename to test/extern/zlib-1.2.11/contrib/vstudio/vc14/zlibvc.sln diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/zlibvc.vcxproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc14/zlibvc.vcxproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc14/zlibvc.vcxproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc14/zlibvc.vcxproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/miniunz.vcproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc9/miniunz.vcproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/miniunz.vcproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc9/miniunz.vcproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/minizip.vcproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc9/minizip.vcproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/minizip.vcproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc9/minizip.vcproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/testzlib.vcproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc9/testzlib.vcproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/testzlib.vcproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc9/testzlib.vcproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/testzlibdll.vcproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc9/testzlibdll.vcproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/testzlibdll.vcproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc9/testzlibdll.vcproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/zlib.rc b/test/extern/zlib-1.2.11/contrib/vstudio/vc9/zlib.rc similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/zlib.rc rename to test/extern/zlib-1.2.11/contrib/vstudio/vc9/zlib.rc diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/zlibstat.vcproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc9/zlibstat.vcproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/zlibstat.vcproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc9/zlibstat.vcproj diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/zlibvc.def b/test/extern/zlib-1.2.11/contrib/vstudio/vc9/zlibvc.def similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/zlibvc.def rename to test/extern/zlib-1.2.11/contrib/vstudio/vc9/zlibvc.def diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/zlibvc.sln b/test/extern/zlib-1.2.11/contrib/vstudio/vc9/zlibvc.sln similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/zlibvc.sln rename to test/extern/zlib-1.2.11/contrib/vstudio/vc9/zlibvc.sln diff --git a/test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/zlibvc.vcproj b/test/extern/zlib-1.2.11/contrib/vstudio/vc9/zlibvc.vcproj similarity index 100% rename from test/beast/zlib/zlib-1.2.11/contrib/vstudio/vc9/zlibvc.vcproj rename to test/extern/zlib-1.2.11/contrib/vstudio/vc9/zlibvc.vcproj diff --git a/test/beast/zlib/zlib-1.2.11/crc32.c b/test/extern/zlib-1.2.11/crc32.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/crc32.c rename to test/extern/zlib-1.2.11/crc32.c diff --git a/test/beast/zlib/zlib-1.2.11/crc32.h b/test/extern/zlib-1.2.11/crc32.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/crc32.h rename to test/extern/zlib-1.2.11/crc32.h diff --git a/test/beast/zlib/zlib-1.2.11/deflate.c b/test/extern/zlib-1.2.11/deflate.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/deflate.c rename to test/extern/zlib-1.2.11/deflate.c diff --git a/test/beast/zlib/zlib-1.2.11/deflate.h b/test/extern/zlib-1.2.11/deflate.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/deflate.h rename to test/extern/zlib-1.2.11/deflate.h diff --git a/test/beast/zlib/zlib-1.2.11/doc/algorithm.txt b/test/extern/zlib-1.2.11/doc/algorithm.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/doc/algorithm.txt rename to test/extern/zlib-1.2.11/doc/algorithm.txt diff --git a/test/beast/zlib/zlib-1.2.11/doc/rfc1950.txt b/test/extern/zlib-1.2.11/doc/rfc1950.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/doc/rfc1950.txt rename to test/extern/zlib-1.2.11/doc/rfc1950.txt diff --git a/test/beast/zlib/zlib-1.2.11/doc/rfc1951.txt b/test/extern/zlib-1.2.11/doc/rfc1951.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/doc/rfc1951.txt rename to test/extern/zlib-1.2.11/doc/rfc1951.txt diff --git a/test/beast/zlib/zlib-1.2.11/doc/rfc1952.txt b/test/extern/zlib-1.2.11/doc/rfc1952.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/doc/rfc1952.txt rename to test/extern/zlib-1.2.11/doc/rfc1952.txt diff --git a/test/beast/zlib/zlib-1.2.11/doc/txtvsbin.txt b/test/extern/zlib-1.2.11/doc/txtvsbin.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/doc/txtvsbin.txt rename to test/extern/zlib-1.2.11/doc/txtvsbin.txt diff --git a/test/beast/zlib/zlib-1.2.11/examples/README.examples b/test/extern/zlib-1.2.11/examples/README.examples similarity index 100% rename from test/beast/zlib/zlib-1.2.11/examples/README.examples rename to test/extern/zlib-1.2.11/examples/README.examples diff --git a/test/beast/zlib/zlib-1.2.11/examples/enough.c b/test/extern/zlib-1.2.11/examples/enough.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/examples/enough.c rename to test/extern/zlib-1.2.11/examples/enough.c diff --git a/test/beast/zlib/zlib-1.2.11/examples/fitblk.c b/test/extern/zlib-1.2.11/examples/fitblk.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/examples/fitblk.c rename to test/extern/zlib-1.2.11/examples/fitblk.c diff --git a/test/beast/zlib/zlib-1.2.11/examples/gun.c b/test/extern/zlib-1.2.11/examples/gun.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/examples/gun.c rename to test/extern/zlib-1.2.11/examples/gun.c diff --git a/test/beast/zlib/zlib-1.2.11/examples/gzappend.c b/test/extern/zlib-1.2.11/examples/gzappend.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/examples/gzappend.c rename to test/extern/zlib-1.2.11/examples/gzappend.c diff --git a/test/beast/zlib/zlib-1.2.11/examples/gzjoin.c b/test/extern/zlib-1.2.11/examples/gzjoin.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/examples/gzjoin.c rename to test/extern/zlib-1.2.11/examples/gzjoin.c diff --git a/test/beast/zlib/zlib-1.2.11/examples/gzlog.c b/test/extern/zlib-1.2.11/examples/gzlog.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/examples/gzlog.c rename to test/extern/zlib-1.2.11/examples/gzlog.c diff --git a/test/beast/zlib/zlib-1.2.11/examples/gzlog.h b/test/extern/zlib-1.2.11/examples/gzlog.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/examples/gzlog.h rename to test/extern/zlib-1.2.11/examples/gzlog.h diff --git a/test/beast/zlib/zlib-1.2.11/examples/zlib_how.html b/test/extern/zlib-1.2.11/examples/zlib_how.html similarity index 100% rename from test/beast/zlib/zlib-1.2.11/examples/zlib_how.html rename to test/extern/zlib-1.2.11/examples/zlib_how.html diff --git a/test/beast/zlib/zlib-1.2.11/examples/zpipe.c b/test/extern/zlib-1.2.11/examples/zpipe.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/examples/zpipe.c rename to test/extern/zlib-1.2.11/examples/zpipe.c diff --git a/test/beast/zlib/zlib-1.2.11/examples/zran.c b/test/extern/zlib-1.2.11/examples/zran.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/examples/zran.c rename to test/extern/zlib-1.2.11/examples/zran.c diff --git a/test/beast/zlib/zlib-1.2.11/gzclose.c b/test/extern/zlib-1.2.11/gzclose.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/gzclose.c rename to test/extern/zlib-1.2.11/gzclose.c diff --git a/test/beast/zlib/zlib-1.2.11/gzguts.h b/test/extern/zlib-1.2.11/gzguts.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/gzguts.h rename to test/extern/zlib-1.2.11/gzguts.h diff --git a/test/beast/zlib/zlib-1.2.11/gzlib.c b/test/extern/zlib-1.2.11/gzlib.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/gzlib.c rename to test/extern/zlib-1.2.11/gzlib.c diff --git a/test/beast/zlib/zlib-1.2.11/gzread.c b/test/extern/zlib-1.2.11/gzread.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/gzread.c rename to test/extern/zlib-1.2.11/gzread.c diff --git a/test/beast/zlib/zlib-1.2.11/gzwrite.c b/test/extern/zlib-1.2.11/gzwrite.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/gzwrite.c rename to test/extern/zlib-1.2.11/gzwrite.c diff --git a/test/beast/zlib/zlib-1.2.11/infback.c b/test/extern/zlib-1.2.11/infback.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/infback.c rename to test/extern/zlib-1.2.11/infback.c diff --git a/test/beast/zlib/zlib-1.2.11/inffast.c b/test/extern/zlib-1.2.11/inffast.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/inffast.c rename to test/extern/zlib-1.2.11/inffast.c diff --git a/test/beast/zlib/zlib-1.2.11/inffast.h b/test/extern/zlib-1.2.11/inffast.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/inffast.h rename to test/extern/zlib-1.2.11/inffast.h diff --git a/test/beast/zlib/zlib-1.2.11/inffixed.h b/test/extern/zlib-1.2.11/inffixed.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/inffixed.h rename to test/extern/zlib-1.2.11/inffixed.h diff --git a/test/beast/zlib/zlib-1.2.11/inflate.c b/test/extern/zlib-1.2.11/inflate.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/inflate.c rename to test/extern/zlib-1.2.11/inflate.c diff --git a/test/beast/zlib/zlib-1.2.11/inflate.h b/test/extern/zlib-1.2.11/inflate.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/inflate.h rename to test/extern/zlib-1.2.11/inflate.h diff --git a/test/beast/zlib/zlib-1.2.11/inftrees.c b/test/extern/zlib-1.2.11/inftrees.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/inftrees.c rename to test/extern/zlib-1.2.11/inftrees.c diff --git a/test/beast/zlib/zlib-1.2.11/inftrees.h b/test/extern/zlib-1.2.11/inftrees.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/inftrees.h rename to test/extern/zlib-1.2.11/inftrees.h diff --git a/test/beast/zlib/zlib-1.2.11/make_vms.com b/test/extern/zlib-1.2.11/make_vms.com similarity index 100% rename from test/beast/zlib/zlib-1.2.11/make_vms.com rename to test/extern/zlib-1.2.11/make_vms.com diff --git a/test/beast/zlib/zlib-1.2.11/msdos/Makefile.bor b/test/extern/zlib-1.2.11/msdos/Makefile.bor similarity index 100% rename from test/beast/zlib/zlib-1.2.11/msdos/Makefile.bor rename to test/extern/zlib-1.2.11/msdos/Makefile.bor diff --git a/test/beast/zlib/zlib-1.2.11/msdos/Makefile.dj2 b/test/extern/zlib-1.2.11/msdos/Makefile.dj2 similarity index 100% rename from test/beast/zlib/zlib-1.2.11/msdos/Makefile.dj2 rename to test/extern/zlib-1.2.11/msdos/Makefile.dj2 diff --git a/test/beast/zlib/zlib-1.2.11/msdos/Makefile.emx b/test/extern/zlib-1.2.11/msdos/Makefile.emx similarity index 100% rename from test/beast/zlib/zlib-1.2.11/msdos/Makefile.emx rename to test/extern/zlib-1.2.11/msdos/Makefile.emx diff --git a/test/beast/zlib/zlib-1.2.11/msdos/Makefile.msc b/test/extern/zlib-1.2.11/msdos/Makefile.msc similarity index 100% rename from test/beast/zlib/zlib-1.2.11/msdos/Makefile.msc rename to test/extern/zlib-1.2.11/msdos/Makefile.msc diff --git a/test/beast/zlib/zlib-1.2.11/msdos/Makefile.tc b/test/extern/zlib-1.2.11/msdos/Makefile.tc similarity index 100% rename from test/beast/zlib/zlib-1.2.11/msdos/Makefile.tc rename to test/extern/zlib-1.2.11/msdos/Makefile.tc diff --git a/test/beast/zlib/zlib-1.2.11/nintendods/Makefile b/test/extern/zlib-1.2.11/nintendods/Makefile similarity index 100% rename from test/beast/zlib/zlib-1.2.11/nintendods/Makefile rename to test/extern/zlib-1.2.11/nintendods/Makefile diff --git a/test/beast/zlib/zlib-1.2.11/nintendods/README b/test/extern/zlib-1.2.11/nintendods/README similarity index 100% rename from test/beast/zlib/zlib-1.2.11/nintendods/README rename to test/extern/zlib-1.2.11/nintendods/README diff --git a/test/beast/zlib/zlib-1.2.11/old/Makefile.emx b/test/extern/zlib-1.2.11/old/Makefile.emx similarity index 100% rename from test/beast/zlib/zlib-1.2.11/old/Makefile.emx rename to test/extern/zlib-1.2.11/old/Makefile.emx diff --git a/test/beast/zlib/zlib-1.2.11/old/Makefile.riscos b/test/extern/zlib-1.2.11/old/Makefile.riscos similarity index 100% rename from test/beast/zlib/zlib-1.2.11/old/Makefile.riscos rename to test/extern/zlib-1.2.11/old/Makefile.riscos diff --git a/test/beast/zlib/zlib-1.2.11/old/README b/test/extern/zlib-1.2.11/old/README similarity index 100% rename from test/beast/zlib/zlib-1.2.11/old/README rename to test/extern/zlib-1.2.11/old/README diff --git a/test/beast/zlib/zlib-1.2.11/old/descrip.mms b/test/extern/zlib-1.2.11/old/descrip.mms similarity index 100% rename from test/beast/zlib/zlib-1.2.11/old/descrip.mms rename to test/extern/zlib-1.2.11/old/descrip.mms diff --git a/test/beast/zlib/zlib-1.2.11/old/os2/Makefile.os2 b/test/extern/zlib-1.2.11/old/os2/Makefile.os2 similarity index 100% rename from test/beast/zlib/zlib-1.2.11/old/os2/Makefile.os2 rename to test/extern/zlib-1.2.11/old/os2/Makefile.os2 diff --git a/test/beast/zlib/zlib-1.2.11/old/os2/zlib.def b/test/extern/zlib-1.2.11/old/os2/zlib.def similarity index 100% rename from test/beast/zlib/zlib-1.2.11/old/os2/zlib.def rename to test/extern/zlib-1.2.11/old/os2/zlib.def diff --git a/test/beast/zlib/zlib-1.2.11/old/visual-basic.txt b/test/extern/zlib-1.2.11/old/visual-basic.txt similarity index 100% rename from test/beast/zlib/zlib-1.2.11/old/visual-basic.txt rename to test/extern/zlib-1.2.11/old/visual-basic.txt diff --git a/test/beast/zlib/zlib-1.2.11/os400/README400 b/test/extern/zlib-1.2.11/os400/README400 similarity index 100% rename from test/beast/zlib/zlib-1.2.11/os400/README400 rename to test/extern/zlib-1.2.11/os400/README400 diff --git a/test/beast/zlib/zlib-1.2.11/os400/bndsrc b/test/extern/zlib-1.2.11/os400/bndsrc similarity index 100% rename from test/beast/zlib/zlib-1.2.11/os400/bndsrc rename to test/extern/zlib-1.2.11/os400/bndsrc diff --git a/test/beast/zlib/zlib-1.2.11/os400/make.sh b/test/extern/zlib-1.2.11/os400/make.sh similarity index 100% rename from test/beast/zlib/zlib-1.2.11/os400/make.sh rename to test/extern/zlib-1.2.11/os400/make.sh diff --git a/test/beast/zlib/zlib-1.2.11/os400/zlib.inc b/test/extern/zlib-1.2.11/os400/zlib.inc similarity index 100% rename from test/beast/zlib/zlib-1.2.11/os400/zlib.inc rename to test/extern/zlib-1.2.11/os400/zlib.inc diff --git a/test/beast/zlib/zlib-1.2.11/qnx/package.qpg b/test/extern/zlib-1.2.11/qnx/package.qpg similarity index 100% rename from test/beast/zlib/zlib-1.2.11/qnx/package.qpg rename to test/extern/zlib-1.2.11/qnx/package.qpg diff --git a/test/beast/zlib/zlib-1.2.11/test/example.c b/test/extern/zlib-1.2.11/test/example.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/test/example.c rename to test/extern/zlib-1.2.11/test/example.c diff --git a/test/beast/zlib/zlib-1.2.11/test/infcover.c b/test/extern/zlib-1.2.11/test/infcover.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/test/infcover.c rename to test/extern/zlib-1.2.11/test/infcover.c diff --git a/test/beast/zlib/zlib-1.2.11/test/minigzip.c b/test/extern/zlib-1.2.11/test/minigzip.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/test/minigzip.c rename to test/extern/zlib-1.2.11/test/minigzip.c diff --git a/test/beast/zlib/zlib-1.2.11/treebuild.xml b/test/extern/zlib-1.2.11/treebuild.xml similarity index 100% rename from test/beast/zlib/zlib-1.2.11/treebuild.xml rename to test/extern/zlib-1.2.11/treebuild.xml diff --git a/test/beast/zlib/zlib-1.2.11/trees.c b/test/extern/zlib-1.2.11/trees.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/trees.c rename to test/extern/zlib-1.2.11/trees.c diff --git a/test/beast/zlib/zlib-1.2.11/trees.h b/test/extern/zlib-1.2.11/trees.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/trees.h rename to test/extern/zlib-1.2.11/trees.h diff --git a/test/beast/zlib/zlib-1.2.11/uncompr.c b/test/extern/zlib-1.2.11/uncompr.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/uncompr.c rename to test/extern/zlib-1.2.11/uncompr.c diff --git a/test/beast/zlib/zlib-1.2.11/watcom/watcom_f.mak b/test/extern/zlib-1.2.11/watcom/watcom_f.mak similarity index 100% rename from test/beast/zlib/zlib-1.2.11/watcom/watcom_f.mak rename to test/extern/zlib-1.2.11/watcom/watcom_f.mak diff --git a/test/beast/zlib/zlib-1.2.11/watcom/watcom_l.mak b/test/extern/zlib-1.2.11/watcom/watcom_l.mak similarity index 100% rename from test/beast/zlib/zlib-1.2.11/watcom/watcom_l.mak rename to test/extern/zlib-1.2.11/watcom/watcom_l.mak diff --git a/test/beast/zlib/zlib-1.2.11/zconf.h b/test/extern/zlib-1.2.11/zconf.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/zconf.h rename to test/extern/zlib-1.2.11/zconf.h diff --git a/test/beast/zlib/zlib-1.2.11/zconf.h.cmakein b/test/extern/zlib-1.2.11/zconf.h.cmakein similarity index 100% rename from test/beast/zlib/zlib-1.2.11/zconf.h.cmakein rename to test/extern/zlib-1.2.11/zconf.h.cmakein diff --git a/test/beast/zlib/zlib-1.2.11/zconf.h.in b/test/extern/zlib-1.2.11/zconf.h.in similarity index 100% rename from test/beast/zlib/zlib-1.2.11/zconf.h.in rename to test/extern/zlib-1.2.11/zconf.h.in diff --git a/test/beast/zlib/zlib-1.2.11/zlib.3 b/test/extern/zlib-1.2.11/zlib.3 similarity index 100% rename from test/beast/zlib/zlib-1.2.11/zlib.3 rename to test/extern/zlib-1.2.11/zlib.3 diff --git a/test/beast/zlib/zlib-1.2.11/zlib.3.pdf b/test/extern/zlib-1.2.11/zlib.3.pdf similarity index 100% rename from test/beast/zlib/zlib-1.2.11/zlib.3.pdf rename to test/extern/zlib-1.2.11/zlib.3.pdf diff --git a/test/beast/zlib/zlib-1.2.11/zlib.h b/test/extern/zlib-1.2.11/zlib.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/zlib.h rename to test/extern/zlib-1.2.11/zlib.h diff --git a/test/beast/zlib/zlib-1.2.11/zlib.map b/test/extern/zlib-1.2.11/zlib.map similarity index 100% rename from test/beast/zlib/zlib-1.2.11/zlib.map rename to test/extern/zlib-1.2.11/zlib.map diff --git a/test/beast/zlib/zlib-1.2.11/zlib.pc.cmakein b/test/extern/zlib-1.2.11/zlib.pc.cmakein similarity index 100% rename from test/beast/zlib/zlib-1.2.11/zlib.pc.cmakein rename to test/extern/zlib-1.2.11/zlib.pc.cmakein diff --git a/test/beast/zlib/zlib-1.2.11/zlib.pc.in b/test/extern/zlib-1.2.11/zlib.pc.in similarity index 100% rename from test/beast/zlib/zlib-1.2.11/zlib.pc.in rename to test/extern/zlib-1.2.11/zlib.pc.in diff --git a/test/beast/zlib/zlib-1.2.11/zlib2ansi b/test/extern/zlib-1.2.11/zlib2ansi similarity index 100% rename from test/beast/zlib/zlib-1.2.11/zlib2ansi rename to test/extern/zlib-1.2.11/zlib2ansi diff --git a/test/beast/zlib/zlib-1.2.11/zutil.c b/test/extern/zlib-1.2.11/zutil.c similarity index 100% rename from test/beast/zlib/zlib-1.2.11/zutil.c rename to test/extern/zlib-1.2.11/zutil.c diff --git a/test/beast/zlib/zlib-1.2.11/zutil.h b/test/extern/zlib-1.2.11/zutil.h similarity index 100% rename from test/beast/zlib/zlib-1.2.11/zutil.h rename to test/extern/zlib-1.2.11/zutil.h diff --git a/test/extras/include/boost/beast/test/throughput.hpp b/test/extras/include/boost/beast/test/throughput.hpp new file mode 100644 index 00000000..7cd8eff3 --- /dev/null +++ b/test/extras/include/boost/beast/test/throughput.hpp @@ -0,0 +1,57 @@ +// +// Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com) +// +// Distributed under the Boost Software License, Version 1.0. (See accompanying +// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +// +// Official repository: https://github.com/boostorg/beast +// + +#ifndef BOOST_BEAST_TEST_THROUGHPUT_HPP +#define BOOST_BEAST_TEST_THROUGHPUT_HPP + +#include +#include + +namespace boost { +namespace beast { +namespace test { + +class timer +{ + using clock_type = + std::chrono::system_clock; + + clock_type::time_point when_; + +public: + using duration = + clock_type::duration; + + timer() + : when_(clock_type::now()) + { + } + + duration + elapsed() const + { + return clock_type::now() - when_; + } +}; + +inline +std::uint64_t +throughput(std::chrono::duration< + double> const& elapsed, std::uint64_t items) +{ + using namespace std::chrono; + return static_cast( + 1 / (elapsed/items).count()); +} + +} // test +} // beast +} // boost + +#endif