build: align minimum build dependencies with ndn-cxx

 * Recommend boost >= 1.65.1 and gcc >= 7.4.0
 * Require clang >= 4.0, or Xcode >= 9.0 on macOS
 * Silence an ABI-related diagnostic message from gcc on armv7
 * Fix redundant-tags warning with gcc 10
 * Add CentOS-specific instructions to docs/INSTALL.rst
 * Add Xcode 11.5 to Travis CI

Refs: #5087, #5106
Change-Id: I70746729a132ecb07d4788934385bb403039dba9
diff --git a/docs/INSTALL.rst b/docs/INSTALL.rst
index 4ee93c6..18b4e26 100644
--- a/docs/INSTALL.rst
+++ b/docs/INSTALL.rst
@@ -1,4 +1,4 @@
-Getting Started with NFD
+Getting started with NFD
 ========================
 
 Supported platforms
@@ -7,19 +7,20 @@
 NFD is built against a continuous integration system and has been tested on the
 following platforms:
 
--  Ubuntu 16.04 (amd64)
 -  Ubuntu 18.04 (amd64, armhf, i386)
--  Ubuntu 19.10 (amd64)
+-  Ubuntu 20.04 (amd64)
 -  macOS 10.13
 -  macOS 10.14
 -  macOS 10.15
+-  CentOS 8
 
 NFD is known to work on the following platforms, although they are not officially
 supported:
 
--  Debian >= 9
+-  Debian 10 (Buster)
+-  Fedora >= 29
 -  Gentoo Linux
--  Raspbian >= 2017-08-16
+-  Raspbian >= 2019-06-20 (Buster)
 
 .. _Install NFD on Ubuntu Linux using the NDN PPA repository:
 
@@ -98,14 +99,19 @@
 
 - On Ubuntu::
 
-        sudo apt install libpcap-dev libsystemd-dev
+    sudo apt install libpcap-dev libsystemd-dev
+
+- On CentOS and Fedora::
+
+    sudo dnf config-manager --enable PowerTools  # on CentOS only
+    sudo dnf install libpcap-devel systemd-devel
 
 Build
 ~~~~~
 
 The following commands can be used to build and install NFD from source::
 
-    ./waf configure
+    ./waf configure  # on CentOS, add --without-pch
     ./waf
     sudo ./waf install
 
@@ -128,12 +134,12 @@
 Debug symbols
 ~~~~~~~~~~~~~
 
-The default compiler flags enable debug symbols to be included in binaries. This should
-provide more meaningful debugging information if NFD or other tools happen to crash.
+The default compiler flags include debug symbols in binaries. This should provide
+more meaningful debugging information if NFD or other tools happen to crash.
 
-If this is undesirable, the default flags can be overridden to disable debug symbols.
-The following example shows how to completely disable debug symbols and configure NFD
-to be installed into ``/usr`` with configuration in the ``/etc`` directory.
+If this is not desired, the default flags can be overridden to disable debug symbols.
+The following example shows how to completely disable debug symbols and configure
+NFD to be installed into ``/usr`` with configuration in the ``/etc`` directory.
 
 ::
 
@@ -155,7 +161,7 @@
 Building the documentation
 ~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-NFD tutorials and API documentation can be built using the following commands::
+Tutorials and API documentation can be built using the following commands::
 
     # Full set of documentation (tutorials + API) in build/docs
     ./waf docs
@@ -166,13 +172,14 @@
     # Only API docs in build/docs/doxygen
     ./waf doxygen
 
-If ``sphinx-build`` is detected during ``./waf configure``, manpages are automatically
-built and installed during the normal build process (i.e., during ``./waf`` and ``./waf
-install``). By default, manpages are installed into ``${PREFIX}/share/man`` (the default
-value for ``PREFIX`` is ``/usr/local``). This location can be changed during the ``./waf
-configure`` stage using the ``--prefix``, ``--datarootdir``, or ``--mandir`` options.
+If ``sphinx-build`` is detected during ``./waf configure``, manpages will automatically
+be built and installed during the normal build process (i.e., during ``./waf`` and
+``./waf install``). By default, manpages will be installed into ``${PREFIX}/share/man``
+(the default value for ``PREFIX`` is ``/usr/local``). This location can be changed
+during the ``./waf configure`` stage using the ``--prefix``, ``--datarootdir``, or
+``--mandir`` options.
 
-For more details, please refer to ``./waf --help``.
+For further details, please refer to ``./waf --help``.
 
 Initial configuration
 ---------------------
@@ -261,14 +268,13 @@
 
 Sample applications:
 
-    + `Simple examples using the ndn-cxx library <https://named-data.net/doc/ndn-cxx/current/examples.html>`_
+    + `Simple examples using the ndn-cxx library <https://named-data.net/doc/ndn-cxx/current/examples.html>`__
     + `Introductory examples of NDN-CCL
-      <https://redmine.named-data.net/projects/application-development-documentation-guides/wiki/Step-By-Step_-_Common_Client_Libraries>`_
+      <https://redmine.named-data.net/projects/application-development-documentation-guides/wiki/Step-By-Step_-_Common_Client_Libraries>`__
 
 Real applications and libraries:
 
-    + `ndn-tools - Essential NDN command-line tools <https://github.com/named-data/ndn-tools>`_
-    + `ndn-traffic-generator - Traffic generator for NDN <https://github.com/named-data/ndn-traffic-generator>`_
-    + `repo-ng - Next generation NDN repository <https://github.com/named-data/repo-ng>`_
-    + `ChronoSync - Sync library for multi-user real-time applications <https://github.com/named-data/ChronoSync>`_
-    + `PSync - Partial and full synchronization library <https://github.com/named-data/PSync>`_
+    + `ndn-tools - Essential NDN command-line tools <https://github.com/named-data/ndn-tools>`__
+    + `ndn-traffic-generator - Traffic generator for NDN <https://github.com/named-data/ndn-traffic-generator>`__
+    + `ChronoSync - Sync library for multi-user real-time applications <https://github.com/named-data/ChronoSync>`__
+    + `PSync - Partial and full synchronization library <https://github.com/named-data/PSync>`__
diff --git a/docs/index.rst b/docs/index.rst
index 0c5094e..2b6b093 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -40,24 +40,23 @@
 
 **Additional documentation**
 
-* `NFD Developer's Guide <https://named-data.net/wp-content/uploads/2016/10/ndn-0021-7-nfd-developer-guide.pdf>`_
+* `NFD Developer's Guide <https://named-data.net/publications/techreports/ndn-0021-10-nfd-developer-guide/>`__
 
   A comprehensive guide to the design and implementation of NFD. The developer's guide also contains
   suggestions and hints for anyone wanting to modify or extend NFD.
 
-* `NDN Software Contributor's Guide
-  <https://github.com/named-data/NFD/blob/master/CONTRIBUTING.md>`__
+* `NDN Software Contributor's Guide <https://github.com/named-data/.github/blob/master/CONTRIBUTING.md>`__
   (guide for newcomers to the NDN community of software)
 
-* `NFD Wiki <https://redmine.named-data.net/projects/nfd/wiki>`_
+* `NFD Wiki <https://redmine.named-data.net/projects/nfd/wiki>`__
 
-  + `NFD Management protocol <https://redmine.named-data.net/projects/nfd/wiki/Management>`_
-  + `NFD Configuration file format <https://redmine.named-data.net/projects/nfd/wiki/ConfigFileFormat>`_
+  + `NFD Management protocol <https://redmine.named-data.net/projects/nfd/wiki/Management>`__
+  + `NFD Configuration file format <https://redmine.named-data.net/projects/nfd/wiki/ConfigFileFormat>`__
 
   The NFD Wiki contains detailed protocol specifications and
   information for building on unsupported platforms.
 
-* `API Documentation (doxygen) <doxygen/annotated.html>`_
+* `API Documentation (doxygen) <doxygen/annotated.html>`__
 
 * :doc:`RELEASE_NOTES`
 
@@ -66,7 +65,7 @@
 License
 -------
 
-NFD is an open and free software package licensed under GPL 3.0 license and is the
-centerpiece of our committement to making NDN's core technology open and free to all
-Internet users and developers. For more information about the licensing details and
-limitation, refer to `COPYING.md <https://github.com/named-data/NFD/blob/master/COPYING.md>`_.
+NFD is a free and open-source software package licensed under the GPL version 3 and
+is the centerpiece of our committement to making NDN's core technology free and open
+to all Internet users and developers. For more information about licensing, refer to
+`COPYING.md <https://github.com/named-data/NFD/blob/master/COPYING.md>`__.
diff --git a/docs/named_data_theme/layout.html b/docs/named_data_theme/layout.html
index 937f8e2..c9fb5c1 100644
--- a/docs/named_data_theme/layout.html
+++ b/docs/named_data_theme/layout.html
@@ -38,7 +38,7 @@
           <h3>{{ _('Table Of Contents') }}</h3>
           {{ toctree(includehidden=True) }}
 
-          <h3>{{ _('Additional documenation') }}</h3>
+          <h3>{{ _('Additional documentation') }}</h3>
           <ul>
             <li class="toctree-l1"><a class="reference external" href="https://redmine.named-data.net/projects/nfd/wiki">NFD Wiki</a></li>
             <li class="toctree-l1"><a class="reference internal" href="doxygen/annotated.html">API documentation (doxygen)</a></li>