build: align minimum build dependencies with ndn-cxx

 * gcc 7.4
 * clang 6.0
 * Xcode 10.0 (11.3 or later recommended)

Change-Id: I365e7b1e2c9b081e512f511bf5beee2487cfc361
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index d9f98d8..47d9a6a 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -22,8 +22,6 @@
         include:
           - compiler: g++-7
             os: ubuntu-18.04
-          - compiler: clang++-5.0
-            os: ubuntu-18.04
           - compiler: clang++-6.0
             os: ubuntu-18.04
     runs-on: ${{ matrix.os }}
@@ -37,7 +35,7 @@
           sudo apt-get -qy install ${CXX/clang++/clang}
           ${CXX} --version
       - name: Checkout
-        uses: actions/checkout@v2
+        uses: actions/checkout@v3
       - name: Build and test
         run: ./.jenkins
 
@@ -63,6 +61,6 @@
         with:
           xcode-version: ${{ matrix.xcode }}
       - name: Checkout
-        uses: actions/checkout@v2
+        uses: actions/checkout@v3
       - name: Build and test
         run: ./.jenkins
diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml
index 2c5e154..3fb1749 100644
--- a/.github/workflows/docs.yml
+++ b/.github/workflows/docs.yml
@@ -21,7 +21,7 @@
       WAF_JOBS: 3
     steps:
       - name: Checkout
-        uses: actions/checkout@v2
+        uses: actions/checkout@v3
       - name: Install dependencies
         run: |
           case ${RUNNER_OS} in
diff --git a/.waf-tools/default-compiler-flags.py b/.waf-tools/default-compiler-flags.py
index f3be6e7..f086c17 100644
--- a/.waf-tools/default-compiler-flags.py
+++ b/.waf-tools/default-compiler-flags.py
@@ -16,20 +16,21 @@
     errmsg = ''
     warnmsg = ''
     if cxx == 'gcc':
-        if ccver < (5, 3, 0):
+        if ccver < (7, 4, 0):
             errmsg = ('The version of gcc you are using is too old.\n'
-                      'The minimum supported gcc version is 7.4.0.')
-        elif ccver < (7, 4, 0):
-            warnmsg = ('Using a version of gcc older than 7.4.0 is not '
-                       'officially supported and may result in build failures.')
+                      'The minimum supported gcc version is 7.4.')
         conf.flags = GccFlags()
     elif cxx == 'clang':
-        if Utils.unversioned_sys_platform() == 'darwin' and ccver < (9, 0, 0):
-            errmsg = ('The version of Xcode you are using is too old.\n'
-                      'The minimum supported Xcode version is 9.0.')
-        elif ccver < (4, 0, 0):
+        if Utils.unversioned_sys_platform() == 'darwin':
+            if ccver < (10, 0, 0):
+                errmsg = ('The version of Xcode you are using is too old.\n'
+                          'The minimum supported Xcode version is 11.3.')
+            elif ccver < (11, 0, 0):
+                warnmsg = ('Using a version of Xcode older than 11.3 is not '
+                           'officially supported and may result in build failures.')
+        elif ccver < (6, 0, 0):
             errmsg = ('The version of clang you are using is too old.\n'
-                      'The minimum supported clang version is 4.0.')
+                      'The minimum supported clang version is 6.0.')
         conf.flags = ClangFlags()
     else:
         warnmsg = '%s compiler is unsupported' % cxx
@@ -181,7 +182,7 @@
         flags['CXXFLAGS'] += ['-fdiagnostics-color',
                               '-Wredundant-tags',
                               ]
-        if platform.machine() == 'armv7l' and self.getCompilerVersion(conf) >= (7, 1, 0):
+        if platform.machine() == 'armv7l':
             flags['CXXFLAGS'] += ['-Wno-psabi'] # Bug #5106
         return flags
 
@@ -190,7 +191,7 @@
         flags['CXXFLAGS'] += ['-fdiagnostics-color',
                               '-Wredundant-tags',
                               ]
-        if platform.machine() == 'armv7l' and self.getCompilerVersion(conf) >= (7, 1, 0):
+        if platform.machine() == 'armv7l':
             flags['CXXFLAGS'] += ['-Wno-psabi'] # Bug #5106
         return flags
 
@@ -212,8 +213,6 @@
                               '-Wundefined-func-template',
                               '-Wno-unused-local-typedef', # Bugs #2657 and #3209
                               ]
-        if self.getCompilerVersion(conf) < (6, 0, 0):
-            flags['CXXFLAGS'] += ['-Wno-missing-braces'] # Bug #4721
         return flags
 
     def getOptimizedFlags(self, conf):
@@ -222,6 +221,4 @@
                               '-Wundefined-func-template',
                               '-Wno-unused-local-typedef', # Bugs #2657 and #3209
                               ]
-        if self.getCompilerVersion(conf) < (6, 0, 0):
-            flags['CXXFLAGS'] += ['-Wno-missing-braces'] # Bug #4721
         return flags
diff --git a/docs/RELEASE-NOTES.rst b/docs/RELEASE-NOTES.rst
deleted file mode 100644
index 04e2f84..0000000
--- a/docs/RELEASE-NOTES.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-Release Notes
-=============
-
-.. include:: release-notes-latest.rst
diff --git a/docs/conf.py b/docs/conf.py
index 495d441..5b7a5ae 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -18,7 +18,7 @@
 # -- Project information -----------------------------------------------------
 
 project = u'PSync: Full/Partial Synchronization Protocol for NDN'
-copyright = u'Copyright © 2018-2021 Named Data Networking Project.'
+copyright = u'Copyright © 2018-2022 Named Data Networking Project.'
 author = u'Named Data Networking Project'
 
 # The short X.Y version.
diff --git a/docs/index.rst b/docs/index.rst
index 8dda472..7f40022 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -32,10 +32,10 @@
 
    install
    examples
-   RELEASE-NOTES
+   release-notes
    releases
 
 -  :doc:`install`
 -  :doc:`examples`
--  :doc:`RELEASE-NOTES`
+-  :doc:`release-notes`
 -  :doc:`releases`
diff --git a/docs/release-notes-latest.rst b/docs/release-notes-latest.rst
deleted file mode 120000
index 8609411..0000000
--- a/docs/release-notes-latest.rst
+++ /dev/null
@@ -1 +0,0 @@
-release-notes/release-notes-0.3.0.rst
\ No newline at end of file
diff --git a/docs/release-notes.rst b/docs/release-notes.rst
new file mode 100644
index 0000000..96d796b
--- /dev/null
+++ b/docs/release-notes.rst
@@ -0,0 +1,4 @@
+Release Notes
+=============
+
+.. include:: release-notes/release-notes-0.3.0.rst
diff --git a/wscript b/wscript
index 89287e8..270ac19 100644
--- a/wscript
+++ b/wscript
@@ -41,8 +41,9 @@
 
     conf.find_program('dot', var='DOT', mandatory=False)
 
-    conf.check_cfg(package='libndn-cxx', args=['--cflags', '--libs'], uselib_store='NDN_CXX',
-                   pkg_config_path=os.environ.get('PKG_CONFIG_PATH', '%s/pkgconfig' % conf.env.LIBDIR))
+    pkg_config_path = os.environ.get('PKG_CONFIG_PATH', f'{conf.env.LIBDIR}/pkgconfig')
+    conf.check_cfg(package='libndn-cxx', args=['libndn-cxx >= 0.8.0', '--cflags', '--libs'],
+                   uselib_store='NDN_CXX', pkg_config_path=pkg_config_path)
 
     boost_libs = ['system', 'iostreams']
     if conf.env.WITH_TESTS: