ci: adopt reusable workflows from `named-data/actions`

Change-Id: I4219458d27723ee7c408a665f7b31a1ca557b1e0
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index f328d39..a9f36bb 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -1,65 +1,12 @@
 name: CI
 on:
   push:
-    paths-ignore:
-      - 'docs/**'
-      - '*.md'
-      - '.mailmap'
   workflow_dispatch:
 
-permissions:
-  contents: read
+permissions: {}
 
 jobs:
-  linux:
-    name: ${{ matrix.compiler }} on ${{ matrix.os }}
-    runs-on: ${{ matrix.os }}
-    strategy:
-      fail-fast: false
-      matrix:
-        os: [ubuntu-20.04]
-        compiler: [g++-7, g++-8, g++-9, g++-10,
-                   clang++-7, clang++-8, clang++-9, clang++-10, clang++-11, clang++-12]
-        include:
-          - os: ubuntu-22.04
-            compiler: g++-11
-          - os: ubuntu-22.04
-            compiler: g++-12
-          - os: ubuntu-22.04
-            compiler: clang++-13
-          - os: ubuntu-22.04
-            compiler: clang++-14
-    env:
-      CXX: ${{ matrix.compiler }}
-    steps:
-      - name: Install C++ compiler
-        run: |
-          sudo apt-get -qy install ${CXX/clang++/clang}
-          ${CXX} --version
-      - name: Checkout
-        uses: actions/checkout@v3
-      - name: Build and test
-        run: ./.jenkins
-
-  macos:
-    name: Xcode ${{ matrix.xcode }} on ${{ matrix.os }}
-    runs-on: ${{ matrix.os }}
-    strategy:
-      fail-fast: false
-      matrix:
-        os: [macos-11]
-        xcode: ['12.4', '12.5', '13.2']
-        include:
-          - os: macos-12
-            xcode: '13.4'
-          - os: macos-12
-            xcode: '14.2'
-    steps:
-      - name: Set up Xcode
-        uses: maxim-lobanov/setup-xcode@v1
-        with:
-          xcode-version: ${{ matrix.xcode }}
-      - name: Checkout
-        uses: actions/checkout@v3
-      - name: Build and test
-        run: ./.jenkins
+  Ubuntu:
+    uses: named-data/actions/.github/workflows/jenkins-script-ubuntu.yml@v1
+  macOS:
+    uses: named-data/actions/.github/workflows/jenkins-script-macos.yml@v1
diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml
index fd27188..0333b7b 100644
--- a/.github/workflows/docs.yml
+++ b/.github/workflows/docs.yml
@@ -1,33 +1,10 @@
 name: Docs
 on:
   push:
-    paths-ignore:
-      - '*.md'
-      - '.mailmap'
   workflow_dispatch:
 
-permissions:
-  contents: read
+permissions: {}
 
 jobs:
-  build:
-    runs-on: ${{ matrix.os }}
-    strategy:
-      fail-fast: false
-      matrix:
-        os: [macos-latest, ubuntu-latest]
-    env:
-      JOB_NAME: Docs
-    steps:
-      - name: Checkout
-        uses: actions/checkout@v3
-      - name: Install dependencies
-        run: |
-          find .jenkins.d/ -type f -name '[1-9]*.sh' -exec chmod -x '{}' +
-          ./.jenkins
-      - name: Build documentation
-        run: |
-          pybindir=$(python3 -c 'import sysconfig; print(sysconfig.get_path("scripts", "posix_user"))')
-          export PATH="${pybindir}${PATH:+:}${PATH}"
-          ./waf --color=yes configure
-          ./waf --color=yes docs
+  html:
+    uses: named-data/actions/.github/workflows/docs-html.yml@v1
diff --git a/AUTHORS.md b/AUTHORS.md
index 8a11400..6b7919c 100644
--- a/AUTHORS.md
+++ b/AUTHORS.md
@@ -2,7 +2,7 @@
 
 The following lists maintainers, primary developers, and all much-appreciated contributors to ChronoSync in alphabetical order.
 The specific contributions of individual authors can be obtained from the git history of the [official ChronoSync repository](https://github.com/named-data/ChronoSync).
-If you would like to become a contributor to the official repository, please follow the recommendations in <https://github.com/named-data/.github/blob/master/CONTRIBUTING.md>.
+If you would like to become a contributor to the official repository, please follow the recommendations in <https://github.com/named-data/.github/blob/main/CONTRIBUTING.md>.
 
 * ***(Maintainer)*** Alexander Afanasyev <https://users.cs.fiu.edu/~afanasyev>
 * Chaoyi Bian <https://github.com/bcy>
diff --git a/README.md b/README.md
index 5ada05c..e8074fb 100644
--- a/README.md
+++ b/README.md
@@ -5,7 +5,7 @@
 ![Language](https://img.shields.io/badge/C%2B%2B-17-blue)
 ![Latest version](https://img.shields.io/github/v/tag/named-data/ChronoSync?label=Latest%20version)
 
-> DEPRECATION NOTICE: ChronoSync's design is outdated. We recommend using more recent sync protocols, such as [PSync](https://named-data.net/doc/PSync/current/) or [StateVectorSync](https://named-data.github.io/StateVectorSync/).
+> DEPRECATION NOTICE: ChronoSync's design is outdated. We recommend using more recent sync protocols, such as [PSync](https://github.com/named-data/PSync) or [StateVectorSync](https://named-data.github.io/StateVectorSync/).
 
 In supporting many distributed applications, such as group text messaging, file sharing,
 and joint editing, a basic requirement is the efficient and robust synchronization of
@@ -26,11 +26,11 @@
 
 ### Prerequisites
 
-* [ndn-cxx and its dependencies](https://named-data.net/doc/ndn-cxx/current/INSTALL.html)
+* [ndn-cxx and its dependencies](https://docs.named-data.net/ndn-cxx/current/INSTALL.html)
 
 ### Build
 
-To build ChronoSync from the source:
+To build ChronoSync from source:
 
     ./waf configure
     ./waf
@@ -50,12 +50,11 @@
 ## Contributing
 
 We greatly appreciate contributions to the ChronoSync code base, provided that they are
-licensed under the GPL 3.0+ or a compatible license (see below).
-If you are new to the NDN software community, please read the
-[Contributor's Guide](https://github.com/named-data/.github/blob/master/CONTRIBUTING.md)
-to get started.
+licensed under the GNU GPL version 3 or a compatible license.
+If you are new to the NDN software community, please read our [Contributor's Guide](
+https://github.com/named-data/.github/blob/main/CONTRIBUTING.md) to get started.
 
 ## License
 
-ChronoSync is an open source project licensed under the GPL version 3.
-See [`COPYING.md`](COPYING.md) for more information.
+ChronoSync is free software distributed under the GNU General Public License version 3.
+See [`COPYING.md`](COPYING.md) for details.
diff --git a/docs/conf.py b/docs/conf.py
index 4e2d02d..199e8d6 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -10,7 +10,7 @@
 # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
 
 project = 'ChronoSync: A Synchronization Protocol for NDN'
-copyright = 'Copyright © 2012-2022 Regents of the University of California.'
+copyright = 'Copyright © 2012-2023 Regents of the University of California.'
 author = 'Named Data Networking Project'
 
 # The short X.Y version.
diff --git a/docs/doxygen.conf.in b/docs/doxygen.conf.in
index da86688..0cbb0c5 100644
--- a/docs/doxygen.conf.in
+++ b/docs/doxygen.conf.in
@@ -140,7 +140,7 @@
 # shortest path that makes the file name unique will be used
 # The default value is: YES.
 
-FULL_PATH_NAMES        = NO
+FULL_PATH_NAMES        = YES
 
 # The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path.
 # Stripping is only done if one of the specified strings matches the left-hand
@@ -161,7 +161,7 @@
 # specify the list of include paths that are normally passed to the compiler
 # using the -I flag.
 
-STRIP_FROM_INC_PATH    =
+STRIP_FROM_INC_PATH    = ..
 
 # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but
 # less readable) file names. This can be useful is your file systems doesn't
@@ -437,7 +437,7 @@
 # included in the documentation.
 # The default value is: NO.
 
-EXTRACT_STATIC         = YES
+EXTRACT_STATIC         = NO
 
 # If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined
 # locally in source files will be included in the documentation. If set to NO,
@@ -445,7 +445,7 @@
 # for Java sources.
 # The default value is: YES.
 
-EXTRACT_LOCAL_CLASSES  = YES
+EXTRACT_LOCAL_CLASSES  = NO
 
 # This flag is only useful for Objective-C code. If set to YES, local methods,
 # which are defined in the implementation section but not in the interface are
@@ -1178,7 +1178,7 @@
 # The default value is: NO.
 # This tag requires that the tag GENERATE_HTML is set to YES.
 
-HTML_TIMESTAMP         = YES
+HTML_TIMESTAMP         = NO
 
 # If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
 # documentation will contain sections that can be hidden and shown after the