Add documentation
This commit is contained in:
32
rakelib/doc.rake
Normal file
32
rakelib/doc.rake
Normal file
@@ -0,0 +1,32 @@
|
||||
# This Source Code Form is subject to the terms of the Mozilla Public License,
|
||||
# v. 2.0. If a copy of the MPL was not distributed with this file, You can
|
||||
# obtain one at https://mozilla.org/MPL/2.0/.
|
||||
# frozen_string_literal: true
|
||||
|
||||
require 'pathname'
|
||||
require 'rake/clean'
|
||||
|
||||
CLEAN.include 'build/doc'
|
||||
directory 'build/doc'
|
||||
|
||||
rule '.bbl' => '.bcf' do |t|
|
||||
task_target = Pathname.new t.name
|
||||
chdir = 'doc'
|
||||
output_directory = task_target.dirname.relative_path_from(chdir).to_path
|
||||
source = task_target.basename('.bbl').to_path
|
||||
|
||||
sh 'biber', '-output-directory', output_directory, source, chdir:
|
||||
end
|
||||
|
||||
namespace :doc do
|
||||
task :tex do
|
||||
sh 'pdflatex', '-output-directory', '../build/doc', 'report', chdir: 'doc'
|
||||
end
|
||||
end
|
||||
|
||||
desc 'Generate documentation'
|
||||
task doc: 'doc:tex' do
|
||||
Rake::Task['build/doc/report.bbl'].invoke
|
||||
Rake::Task['doc:tex'].reenable
|
||||
Rake::Task['doc:tex'].invoke
|
||||
end
|
||||
Reference in New Issue
Block a user