Search for programs needed for tests (#37)

* Search for programs needed for tests

* Renamed variables to not imply windows
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d30a71b..4763cfa 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -123,3 +123,10 @@
 message(STATUS "  Using libESMTP .................. : ${HAS_LIBESMTP}")
 message(STATUS "  ODBC library .................... : ${HAS_ODBC}")
 message(STATUS "  syslog .......................... : ${HAS_SYSLOG}")
+
+if(BUILD_TESTING)
+message(STATUS "Applications required for tests:")
+message(STATUS "  zip ............................. : ${ZIP_APP}")
+message(STATUS "  sed ............................. : ${SED_APP}")
+message(STATUS "  gzip ............................ : ${GZIP_APP}")
+endif(BUILD_TESTING)
diff --git a/src/test/cpp/CMakeLists.txt b/src/test/cpp/CMakeLists.txt
index bdb66fe..b63c20d 100644
--- a/src/test/cpp/CMakeLists.txt
+++ b/src/test/cpp/CMakeLists.txt
@@ -5,6 +5,13 @@
 add_subdirectory(util)
 target_sources(testingUtilities PRIVATE xml/xlevel.cpp)
 
+# sed, zip, and gzip are needed for the tests to work properly
+# Note: option 'required' not available until cmake 3.18, however adding
+# it does not cause an issue
+find_program(SED_APP sed REQUIRED)
+find_program(ZIP_APP zip REQUIRED)
+find_program(GZIP_APP gzip REQUIRED)
+
 # Tests defined in this directory
 set(ALL_LOG4CXX_TESTS
     asyncappendertestcase