Add support for building docs

This commit add targets to build op documentation to both BUILD
and CMake configurations. On the CMake side, we additionall
add an iree-doc master target to drive the generation of all
documentation. The generated documentation will all be placed
under <build-dir>/doc/Dialects/ for now.

Closes https://github.com/google/iree/pull/1283

COPYBARA_INTEGRATE_REVIEW=https://github.com/google/iree/pull/1283 from antiagainst:build-doc 2934d4b2dd0d9117e66ac905d64cea43ea71bc7d
PiperOrigin-RevId: 303793736
diff --git a/build_tools/bazel_to_cmake/bazel_to_cmake.py b/build_tools/bazel_to_cmake/bazel_to_cmake.py
index 33deda8..9a0f936 100755
--- a/build_tools/bazel_to_cmake/bazel_to_cmake.py
+++ b/build_tools/bazel_to_cmake/bazel_to_cmake.py
@@ -543,6 +543,27 @@
     "tblgen_block": tblgen_block,
     }
 
+  def iree_tablegen_doc(self,
+                        name,
+                        tblgen,
+                        td_file,
+                        tbl_outs,
+                        td_srcs=None,
+                        td_includes=None,
+                        strip_include_prefix=None):
+    name_block = self._convert_name_block(name)
+    tblgen_block = self._convert_tblgen_block(tblgen)
+    td_file_block = self._convert_td_file_block(td_file)
+    outs_block = self._convert_tbl_outs_block(tbl_outs)
+
+    self.converter.body += """iree_tablegen_doc(
+%(name_block)s%(td_file_block)s%(outs_block)s%(tblgen_block)s)\n\n""" % {
+    "name_block": name_block,
+    "td_file_block": td_file_block,
+    "outs_block": outs_block,
+    "tblgen_block": tblgen_block,
+    }
+
   def iree_lit_test_suite(self, name, srcs, data, **kwargs):
     name_block = self._convert_name_block(name)
     srcs_block = self._convert_srcs_block(srcs)