Update Sphinx versions

Enable REUSE for licensing

- Correct licenses for fonts

Change 1.0.1 release be lower in heirarchy, so isn't on sidebar

Put logo only on the sidebar

Move Sphinx docs to be a reference to ONF docs. Add Code of Conduct

Change-Id: I8d2a5b10df49d06a98e4484e4750edd6b6fea8ff
diff --git a/Makefile b/Makefile
index 9f3cc5c..ae3fa4f 100644
--- a/Makefile
+++ b/Makefile
@@ -1,3 +1,6 @@
+# SPDX-FileCopyrightText: 2021 Open Networking Foundation <info@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+
 # Makefile for Sphinx documentation
 
 # use bash for pushd/popd, and to fail quickly
@@ -12,7 +15,7 @@
 # name of python virtualenv that is used to run commands
 VENV_NAME      := venv-docs
 
-.PHONY: help test lint doc8 reload Makefile prep
+.PHONY: help Makefile test doc8 dict-check sort-dict license clean clean-all
 
 # Put it first so that "make" without argument is like "make help".
 help: $(VENV_NAME)
@@ -21,24 +24,31 @@
 
 # Create the virtualenv with all the tools installed
 $(VENV_NAME):
-	python3 -m venv $(VENV_NAME) ;\
+	python3 -m venv $@ ;\
   source $@/bin/activate ;\
   pip install -r requirements.txt
 
-# automatically reload changes in browser as they're made
-reload: $(VENV_NAME)
-	source $</bin/activate ; set -u ;\
-  sphinx-reload $(SOURCEDIR)
-
 # lint and link verification. linkcheck is part of sphinx
-test: lint spelling linkcheck
+test: license doc8 dict-check spelling linkcheck
 
-lint: doc8
-
-doc8: $(VENV_NAME) | $(OTHER_REPO_DOCS)
+doc8: $(VENV_NAME)
 	source $</bin/activate ; set -u ;\
-  doc8 --max-line-length 119 \
-  $$(find . -name \*.rst ! -path "*venv*" ! -path "*vendor*" ! -path "*repos*" )
+  doc8 --ignore-path $< --ignore-path _build --ignore-path LICENSES --max-line-length 119
+
+# Words in dict.txt must be in the correct alphabetical order and must not duplicated.
+dict-check: sort-dict
+	@set -u ;\
+	git diff --exit-code dict.txt && echo "dict.txt is sorted" && exit 0 || \
+	echo "dict.txt is unsorted or needs to be added to git index" ; exit 1
+
+sort-dict:
+	@sort -u < dict.txt > dict_sorted.txt
+	@mv dict_sorted.txt dict.txt
+
+license: $(VENV_NAME)
+	source $</bin/activate ; set -u ;\
+  reuse --version ;\
+  reuse --root . lint
 
 # clean up
 clean:
@@ -48,13 +58,13 @@
 	rm -rf $(VENV_NAME)
 
 # build multiple versions
-multiversion: $(VENV_NAME) Makefile | prep $(OTHER_REPO_DOCS)
+multiversion: $(VENV_NAME) Makefile
 	source $</bin/activate ; set -u ;\
   sphinx-multiversion "$(SOURCEDIR)" "$(BUILDDIR)/multiversion" $(SPHINXOPTS)
 	cp "$(SOURCEDIR)/_templates/meta_refresh.html" "$(BUILDDIR)/multiversion/index.html"
 
 # Catch-all target: route all unknown targets to Sphinx using the new
 # "make mode" option.  $(O) is meant as a shortcut for $(SPHINXOPTS).
-%: $(VENV_NAME) Makefile | $(OTHER_REPO_DOCS) $(STATIC_DOCS)
+%: $(VENV_NAME) Makefile
 	source $</bin/activate ; set -u ;\
   $(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)