summaryrefslogtreecommitdiff
path: root/tool/rdoc-srcdir
diff options
context:
space:
mode:
Diffstat (limited to 'tool/rdoc-srcdir')
-rwxr-xr-xtool/rdoc-srcdir20
1 files changed, 20 insertions, 0 deletions
diff --git a/tool/rdoc-srcdir b/tool/rdoc-srcdir
new file mode 100755
index 0000000000..10c63caf9e
--- /dev/null
+++ b/tool/rdoc-srcdir
@@ -0,0 +1,20 @@
+#!ruby
+
+require 'rdoc/rdoc'
+
+# Make only the output directory relative to the invoked directory.
+invoked = Dir.pwd
+
+# Load options and parse files from srcdir.
+Dir.chdir(File.dirname(__dir__))
+
+options = RDoc::Options.load_options
+options.parse ARGV
+
+options.singleton_class.define_method(:finish) do
+ super()
+ @op_dir = File.expand_path(@op_dir, invoked)
+end
+
+# Do not hide errors when generating documents of Ruby itself.
+RDoc::RDoc.new.document options