diff --git a/makefiles/lint/doc8/include.mk b/makefiles/lint/doc8/include.mk
index 22a24fa..564fca9 100644
--- a/makefiles/lint/doc8/include.mk
+++ b/makefiles/lint/doc8/include.mk
@@ -15,59 +15,12 @@
 # limitations under the License.
 # -----------------------------------------------------------------------
 
-##-------------------##
-##---]  GLOBALS  [---##
-##-------------------##
-.PHONY: lint-doc8 lint-doc8-all lint-doc8-modified
-
-have-doc8-files := $(if $(strip $(DOC8_SOURCE)),true)
-DOC8_SOURCE     ?= $(error DOC8_SOURCE= is required)
-
 ##--------------------##
 ##---]  INCLUDES  [---##
 ##--------------------##
-# include $(ONF_MAKEDIR)/lint/doc8/help.mk
+include $(ONF_MAKEDIR)/lint/doc8/doc8.mk
+include $(ONF_MAKEDIR)/lint/doc8/excl.mk
+include $(ONF_MAKEDIR)/lint/doc8/help.mk
 include $(ONF_MAKEDIR)/lint/doc8/install.mk
 
-# -----------------------------------------------------------------------
-# Well that is annoying.  Cannot pass two --config switches, doc8 will
-# use only one.  Repos have more special exclusions so pass onf-make
-# doc8 config as command line args so local makefiles to use --config
-# -----------------------------------------------------------------------
-# lint-doc8-args += --config $(ONF_MAKEDIR)/lint/doc8/doc8.ini
-
-## -----------------------------------------------------------------------
-## -----------------------------------------------------------------------
-ifndef NO-LINT-DOC8
-  lint-doc8-mode := $(if $(have-doc8-files),modified,all)
-  lint : lint-doc8-$(lint-doc8-mode)
-endif# NO-LINT-DOC8
-
-# Consistent targets across lint makefiles
-lint-doc8-all      : lint-doc8
-lint-doc8-modified : lint-doc8
-
-## -----------------------------------------------------------------------
-## -----------------------------------------------------------------------
-## [TODO] - move lint-doc8-excl into doc8.ini
-# lint-doc8-excl := $(foreach dir,$(onf-excl-dirs) $(lint-doc8-excl),--ignore-path "$(dir)")
-lint-doc8-excl := $(null)
-lint-doc8: lint-doc8-cmd-version
-
-	$(call banner-enter,Target $@)
-	$(activate) && doc8 --version
-	@echo
-	$(activate) && doc8 $(lint-doc8-excl) $(lint-doc8-args)
-	$(call banner-enter,Target $@)
-
-## -----------------------------------------------------------------------
-## Intent: Display command usage
-## -----------------------------------------------------------------------
-help::
-	@echo '  lint-doc8          Syntax check python using the doc8 command'
-  ifdef VERBOSE
-	@echo '  lint-doc8-all       doc8 checking: exhaustive'
-	@echo '  lint-doc8-modified  doc8 checking: only modified'
-  endif
-
 # [EOF]
