diff --git a/.gitignore b/.gitignore
index dac07535285739a98912d856971e844a5f1c0bce..24c98e29f33c5a0d68263fb01b5c4e446fea6a36 100644
--- a/.gitignore
+++ b/.gitignore
@@ -40,6 +40,8 @@ config.log
 # Doxygen generated documentation directory
 docs/ROOT.tag
 docs/html
+docs/Doxyfile_podd
+docs/Doxygen_podd.tag
 
 # Examples directory
 examples/*.root
diff --git a/docs/Doxyfile b/docs/Doxyfile
index 0a82da481dcbe66d74122b8d1a3a470dd87fbd1c..400cca460d65f39d71dabd4bf09db118b76cde3a 100644
--- a/docs/Doxyfile
+++ b/docs/Doxyfile
@@ -1310,8 +1310,8 @@ SKIP_FUNCTION_MACROS   = YES
 # If a tag file is not located in the directory in which doxygen
 # is run, you must also specify the path to the tagfile here.
 
-TAGFILES               = ../podd/docs/Doxygen.tag=../podddocs \
-                         ./ROOT.tag=https://root.cern.ch/doc/master
+TAGFILES               = Doxygen_podd.tag=../podddocs \
+                          ./ROOT.tag=https://root.cern.ch/doc/master
 
 # When a file name is specified after GENERATE_TAGFILE, doxygen will create
 # a tag file that is based on the input files it reads.
diff --git a/docs/Makefile b/docs/Makefile
index 91428bd425971e6934d676cab4a8f47e5439e27f..cc33e7d78732d47cdb16ee3d11c290c92418a6e5 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -4,14 +4,27 @@ DOXYGEN_OUTPUT_DIRECTORY ?= .
 export DOXYGEN_OUTPUT_DIRECTORY
 export DOXYGEN_SOURCE_DIRECTORY := ..
 
+PODDDIR = ../podd/docs
+# THISDIR is location of this directory relative to the podd docs directory
+THISDIR = ../../docs
 
 all: doxygen
 
-doxygen: Doxyfile ROOT.tag
+doxygen: Doxyfile Doxygen_podd.tag ROOT.tag
 	doxygen
 
+Doxyfile_podd: $(PODDDIR)/Doxyfile
+	sed -e 's/^TAGFILES.*/TAGFILES = /;s|Doxygen.tag|$(THISDIR)/Doxygen_podd.tag|' $< > $@
+
+Doxygen_podd.tag: Doxyfile_podd
+	cd $(PODDDIR);doxygen $(THISDIR)/Doxyfile_podd
+
 ROOT.tag:
 	wget https://root.cern.ch/doc/master/ROOT.tag
 
 clean:
 	rm -r $(DOXYGEN_OUTPUT_DIRECTORY)/html
+	rm -r $(PODDDIR)/html
+	rm Doxyfile_podd
+	rm Doxygen_podd.tag
+