build: Upgrade waf to version 2.0.6

This commit also includes:
- cleanup of build scripts
- replacing log4cxx with ndn-cxx logging facility

Change-Id: I96fd673a3cd2e06061e9efc1a7891e41cf97ea4f
diff --git a/tests/unit/clients/iterative-query-controller.cpp b/tests/unit/clients/iterative-query-controller.cpp
index 307ce8b..65ab32b 100644
--- a/tests/unit/clients/iterative-query-controller.cpp
+++ b/tests/unit/clients/iterative-query-controller.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /*
- * Copyright (c) 2014-2017, Regents of the University of California.
+ * Copyright (c) 2014-2018, Regents of the University of California.
  *
  * This file is part of NDNS (Named Data Networking Domain Name Service).
  * See AUTHORS.md for complete list of NDNS authors and contributors.
@@ -27,8 +27,6 @@
 namespace ndns {
 namespace tests {
 
-NDNS_LOG_INIT("IterativeQueryControllerTest")
-
 class QueryControllerFixture : public DbTestData
 {
 public:
@@ -87,7 +85,7 @@
   time::milliseconds lifetime(4000);
 
   bool hasDataBack = false;
-  auto ctr = make_shared<ndns::IterativeQueryController>(
+  auto ctr = std::make_shared<ndns::IterativeQueryController>(
     dstLabel, rrType, lifetime,
     [&hasDataBack] (const Data&, const Response&) {
       hasDataBack = true;
diff --git a/tests/unit/daemon/db-mgr.cpp b/tests/unit/daemon/db-mgr.cpp
index 4f730b9..ffa38b8 100644
--- a/tests/unit/daemon/db-mgr.cpp
+++ b/tests/unit/daemon/db-mgr.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /*
- * Copyright (c) 2014-2017, Regents of the University of California.
+ * Copyright (c) 2014-2018, Regents of the University of California.
  *
  * This file is part of NDNS (Named Data Networking Domain Name Service).
  * See AUTHORS.md for complete list of NDNS authors and contributors.
@@ -26,7 +26,7 @@
 namespace ndns {
 namespace tests {
 
-NDNS_LOG_INIT("DbMgrTest")
+NDNS_LOG_INIT(DbMgrTest);
 
 BOOST_AUTO_TEST_SUITE(DbMgr)
 
diff --git a/tests/unit/daemon/name-server.cpp b/tests/unit/daemon/name-server.cpp
index a8dbd3b..dae6685 100644
--- a/tests/unit/daemon/name-server.cpp
+++ b/tests/unit/daemon/name-server.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /*
- * Copyright (c) 2014-2017, Regents of the University of California.
+ * Copyright (c) 2014-2018, Regents of the University of California.
  *
  * This file is part of NDNS (Named Data Networking Domain Name Service).
  * See AUTHORS.md for complete list of NDNS authors and contributors.
@@ -31,7 +31,7 @@
 namespace ndns {
 namespace tests {
 
-NDNS_LOG_INIT("NameServerTest")
+NDNS_LOG_INIT(NameServerTest);
 
 class NameServerFixture : public DbTestData
 {
diff --git a/tests/unit/daemon/rrset-factory.cpp b/tests/unit/daemon/rrset-factory.cpp
index 625679e..39c9286 100644
--- a/tests/unit/daemon/rrset-factory.cpp
+++ b/tests/unit/daemon/rrset-factory.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /*
- * Copyright (c) 2014-2017, Regents of the University of California.
+ * Copyright (c) 2014-2018, Regents of the University of California.
  *
  * This file is part of NDNS (Named Data Networking Domain Name Service).
  * See AUTHORS.md for complete list of NDNS authors and contributors.
@@ -29,7 +29,7 @@
 namespace ndns {
 namespace tests {
 
-NDNS_LOG_INIT("RrsetFactoryTest")
+NDNS_LOG_INIT(RrsetFactoryTest);
 
 class RrsetFactoryFixture : public IdentityManagementFixture
 {
diff --git a/tests/unit/database-test-data.cpp b/tests/unit/database-test-data.cpp
index 11d2ff8..2aef965 100644
--- a/tests/unit/database-test-data.cpp
+++ b/tests/unit/database-test-data.cpp
@@ -27,7 +27,7 @@
 namespace ndns {
 namespace tests {
 
-NDNS_LOG_INIT("TestFakeData")
+NDNS_LOG_INIT(TestFakeData);
 
 const boost::filesystem::path DbTestData::TEST_DATABASE = TEST_CONFIG_PATH "/" "test-ndns.db";
 const Name DbTestData::TEST_IDENTITY_NAME("/test19");
diff --git a/tests/unit/logger.cpp b/tests/unit/logger.cpp
deleted file mode 100644
index e7ba277..0000000
--- a/tests/unit/logger.cpp
+++ /dev/null
@@ -1,229 +0,0 @@
-/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
-/**
- * Copyright (c) 2014-2016, Regents of the University of California.
- *
- * This file is part of NDNS (Named Data Networking Domain Name Service).
- * See AUTHORS.md for complete list of NDNS authors and contributors.
- *
- * NDNS is free software: you can redistribute it and/or modify it under the terms
- * of the GNU General Public License as published by the Free Software Foundation,
- * either version 3 of the License, or (at your option) any later version.
- *
- * NDNS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
- * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
- * PURPOSE.  See the GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along with
- * NDNS, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "logger.hpp"
-
-#include <boost/algorithm/string.hpp>
-#include <boost/algorithm/string/classification.hpp>
-
-#include "test-common.hpp"
-
-namespace ndn {
-namespace ndns {
-namespace tests {
-
-BOOST_AUTO_TEST_SUITE(Logger)
-
-class Fixture
-{
-public:
-  Fixture()
-    : m_logConfigFilename(boost::filesystem::unique_path().native())
-    , m_logFilename(boost::filesystem::unique_path().native())
-  {
-  }
-
-  ~Fixture()
-  {
-    boost::filesystem::remove(boost::filesystem::path(getLogConfigFilename()));
-    boost::filesystem::remove(boost::filesystem::path(getLogFilename()));
-
-    log::init("unit-tests.log4cxx");
-  }
-
-  const std::string&
-  getLogConfigFilename()
-  {
-    return m_logConfigFilename;
-  }
-
-  const std::string&
-  getLogFilename()
-  {
-    return m_logFilename;
-  }
-
-  void
-  verifyOutput(const std::string expected[], size_t nExpected)
-  {
-    std::ifstream is(getLogFilename().c_str());
-    std::string buffer((std::istreambuf_iterator<char>(is)),
-                       (std::istreambuf_iterator<char>()));
-
-    std::vector<std::string> components;
-    boost::split(components, buffer, boost::is_any_of(" ,\n"));
-
-    // expected + number of timestamps (one per log statement) + trailing newline of last statement
-    BOOST_REQUIRE_EQUAL(components.size(), nExpected);
-
-    for (size_t i = 0; i < nExpected; ++i) {
-      if (expected[i] == "")
-        continue;
-
-      BOOST_CHECK_EQUAL(components[i], expected[i]);
-    }
-  }
-
-private:
-  std::string m_logConfigFilename;
-  std::string m_logFilename;
-};
-
-BOOST_FIXTURE_TEST_CASE(AllLevels, Fixture)
-{
-  {
-    std::ofstream of(getLogConfigFilename().c_str());
-    of << "log4j.rootLogger=TRACE, FILE\n"
-       << "log4j.appender.FILE=org.apache.log4j.FileAppender\n"
-       << "log4j.appender.FILE.layout=org.apache.log4j.PatternLayout\n"
-       << "log4j.appender.FILE.File=" << getLogFilename() << "\n"
-       << "log4j.appender.FILE.ImmediateFlush=true\n"
-       << "log4j.appender.FILE.layout.ConversionPattern=%d{HH:mm:ss} %p %c{1} - %m%n\n";
-  }
-
-  log::init(getLogConfigFilename());
-
-  NDNS_LOG_INIT("DefaultConfig");
-
-  NDNS_LOG_TRACE("trace-message-JHGFDSR^1");
-  NDNS_LOG_DEBUG("debug-message-IGg2474fdksd-fo-" << 15 << 16 << 17);
-  NDNS_LOG_INFO("info-message-Jjxjshj13");
-  NDNS_LOG_WARN("warning-message-XXXhdhd11" << 1 <<"x");
-  NDNS_LOG_ERROR("error-message-!#$&^%$#@");
-  NDNS_LOG_FATAL("fatal-message-JJSjaamcng");
-
-  const std::string EXPECTED[] =
-    {
-      "", "TRACE", "DefaultConfig", "-", "trace-message-JHGFDSR^1",
-      "", "DEBUG", "DefaultConfig", "-", "debug-message-IGg2474fdksd-fo-151617",
-      "", "INFO",  "DefaultConfig", "-", "info-message-Jjxjshj13",
-      "", "WARN",  "DefaultConfig", "-", "warning-message-XXXhdhd111x",
-      "", "ERROR", "DefaultConfig", "-", "error-message-!#$&^%$#@",
-      "", "FATAL", "DefaultConfig", "-", "fatal-message-JJSjaamcng",
-      "",
-    };
-
-  verifyOutput(EXPECTED, sizeof(EXPECTED) / sizeof(std::string));
-}
-
-BOOST_FIXTURE_TEST_CASE(UpToInfo, Fixture)
-{
-  {
-    std::ofstream of(getLogConfigFilename().c_str());
-    of << "log4j.rootLogger=INFO, FILE\n"
-       << "log4j.appender.FILE=org.apache.log4j.FileAppender\n"
-       << "log4j.appender.FILE.layout=org.apache.log4j.PatternLayout\n"
-       << "log4j.appender.FILE.File=" << getLogFilename() << "\n"
-       << "log4j.appender.FILE.ImmediateFlush=true\n"
-       << "log4j.appender.FILE.layout.ConversionPattern=%d{HH:mm:ss} %p %c{1} - %m%n\n";
-  }
-
-  log::init(getLogConfigFilename());
-
-  NDNS_LOG_INIT("DefaultConfig");
-
-  NDNS_LOG_TRACE("trace-message-JHGFDSR^1");
-  NDNS_LOG_DEBUG("debug-message-IGg2474fdksd-fo-" << 15 << 16 << 17);
-  NDNS_LOG_INFO("info-message-Jjxjshj13");
-  NDNS_LOG_WARN("warning-message-XXXhdhd11" << 1 <<"x");
-  NDNS_LOG_ERROR("error-message-!#$&^%$#@");
-  NDNS_LOG_FATAL("fatal-message-JJSjaamcng");
-
-  const std::string EXPECTED[] =
-    {
-      "", "INFO",  "DefaultConfig", "-", "info-message-Jjxjshj13",
-      "", "WARN",  "DefaultConfig", "-", "warning-message-XXXhdhd111x",
-      "", "ERROR", "DefaultConfig", "-", "error-message-!#$&^%$#@",
-      "", "FATAL", "DefaultConfig", "-", "fatal-message-JJSjaamcng",
-      "",
-    };
-
-  verifyOutput(EXPECTED, sizeof(EXPECTED) / sizeof(std::string));
-}
-
-BOOST_FIXTURE_TEST_CASE(OnlySelectedModule, Fixture)
-{
-  {
-    std::ofstream of(getLogConfigFilename().c_str());
-    of << "log4j.rootLogger=OFF, FILE\n"
-       << "log4j.appender.FILE=org.apache.log4j.FileAppender\n"
-       << "log4j.appender.FILE.layout=org.apache.log4j.PatternLayout\n"
-       << "log4j.appender.FILE.File=" << getLogFilename() << "\n"
-       << "log4j.appender.FILE.ImmediateFlush=true\n"
-       << "log4j.appender.FILE.layout.ConversionPattern=%d{HH:mm:ss} %p %c - %m%n\n"
-       << "log4j.logger.SelectedModule=TRACE\n"
-       << "log4j.logger.SelectedModule.Submodule=FATAL\n";
-  }
-
-  log::init(getLogConfigFilename());
-
-  {
-    NDNS_LOG_INIT("DefaultConfig");
-
-    NDNS_LOG_TRACE("trace-message-JHGFDSR^1");
-    NDNS_LOG_DEBUG("debug-message-IGg2474fdksd-fo-" << 15 << 16 << 17);
-    NDNS_LOG_INFO("info-message-Jjxjshj13");
-    NDNS_LOG_WARN("warning-message-XXXhdhd11" << 1 <<"x");
-    NDNS_LOG_ERROR("error-message-!#$&^%$#@");
-    NDNS_LOG_FATAL("fatal-message-JJSjaamcng");
-  }
-
-  {
-    NDNS_LOG_INIT("SelectedModule");
-
-    NDNS_LOG_TRACE("trace-message-JHGFDSR^1");
-    NDNS_LOG_DEBUG("debug-message-IGg2474fdksd-fo-" << 15 << 16 << 17);
-    NDNS_LOG_INFO("info-message-Jjxjshj13");
-    NDNS_LOG_WARN("warning-message-XXXhdhd11" << 1 <<"x");
-    NDNS_LOG_ERROR("error-message-!#$&^%$#@");
-    NDNS_LOG_FATAL("fatal-message-JJSjaamcng");
-  }
-
-  {
-    NDNS_LOG_INIT("SelectedModule.Submodule");
-
-    NDNS_LOG_TRACE("trace-message-JHGFDSR^1");
-    NDNS_LOG_DEBUG("debug-message-IGg2474fdksd-fo-" << 15 << 16 << 17);
-    NDNS_LOG_INFO("info-message-Jjxjshj13");
-    NDNS_LOG_WARN("warning-message-XXXhdhd11" << 1 <<"x");
-    NDNS_LOG_ERROR("error-message-!#$&^%$#@");
-    NDNS_LOG_FATAL("fatal-message-JJSjaamcng");
-  }
-
-  const std::string EXPECTED[] =
-    {
-      "", "TRACE", "SelectedModule", "-", "trace-message-JHGFDSR^1",
-      "", "DEBUG", "SelectedModule", "-", "debug-message-IGg2474fdksd-fo-151617",
-      "", "INFO",  "SelectedModule", "-", "info-message-Jjxjshj13",
-      "", "WARN",  "SelectedModule", "-", "warning-message-XXXhdhd111x",
-      "", "ERROR", "SelectedModule", "-", "error-message-!#$&^%$#@",
-      "", "FATAL", "SelectedModule", "-", "fatal-message-JJSjaamcng",
-      "", "FATAL", "SelectedModule.Submodule", "-", "fatal-message-JJSjaamcng",
-      "",
-    };
-
-  verifyOutput(EXPECTED, sizeof(EXPECTED) / sizeof(std::string));
-}
-
-
-BOOST_AUTO_TEST_SUITE_END()
-
-} // namespace tests
-} // namespace ndns
-} // namespace ndn
diff --git a/tests/unit/validator/certificate-fetcher-ndns-app-cert.cpp b/tests/unit/validator/certificate-fetcher-ndns-app-cert.cpp
index 2efe67c..3f236aa 100644
--- a/tests/unit/validator/certificate-fetcher-ndns-app-cert.cpp
+++ b/tests/unit/validator/certificate-fetcher-ndns-app-cert.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
-/**
- * Copyright (c) 2014-2017, Regents of the University of California.
+/*
+ * Copyright (c) 2014-2018, Regents of the University of California.
  *
  * This file is part of NDNS (Named Data Networking Domain Name Service).
  * See AUTHORS.md for complete list of NDNS authors and contributors.
@@ -36,8 +36,6 @@
 namespace ndns {
 namespace tests {
 
-NDNS_LOG_INIT("AppCertFetcher")
-
 BOOST_AUTO_TEST_SUITE(AppCertFetcher)
 
 unique_ptr<security::v2::Validator>
diff --git a/tests/unit/validator/validator.cpp b/tests/unit/validator/validator.cpp
index 3434916..21f6d27 100644
--- a/tests/unit/validator/validator.cpp
+++ b/tests/unit/validator/validator.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /*
- * Copyright (c) 2014-2017, Regents of the University of California.
+ * Copyright (c) 2014-2018, Regents of the University of California.
  *
  * This file is part of NDNS (Named Data Networking Domain Name Service).
  * See AUTHORS.md for complete list of NDNS authors and contributors.
@@ -32,8 +32,6 @@
 namespace ndns {
 namespace tests {
 
-NDNS_LOG_INIT("ValidatorTest")
-
 BOOST_AUTO_TEST_SUITE(Validator)
 
 class ValidatorTestFixture : public DbTestData