File tree 3 files changed +22
-2
lines changed
3 files changed +22
-2
lines changed Original file line number Diff line number Diff line change @@ -88,8 +88,18 @@ parsed_files = PARSER_FILES.map do |parser_file|
88
88
end
89
89
90
90
task "#{ path } .gem" => package_parser_files
91
- desc "Generate all files used racc and kpeg"
92
- task :generate => parsed_files
91
+
92
+ desc "Generate all files use racc and kpeg"
93
+ task :generate do
94
+ unless ENV . key? ( 'BUNDLE_GEMFILE' )
95
+ Gem . install 'racc' , '> 1.4.10'
96
+ Gem . install 'kpeg' , '>= 1.3.3'
97
+ end
98
+
99
+ parsed_files . each do |file_name |
100
+ Rake ::Task [ file_name ] . invoke
101
+ end
102
+ end
93
103
94
104
task :clean do
95
105
parsed_files . each do |path |
Original file line number Diff line number Diff line change
1
+ # frozen_string_literal: true
2
+
3
+ # Generate all parse files using racc and kpeg. This is not necessary for regular gem installation, but it is when
4
+ # installing RDoc from the git source. Without this, the generated parse files would not exist and RDoc would not work
5
+ system ( "rake generate" ) if Dir . exist? ( File . join ( ".." , ".." , ".git" ) )
6
+
7
+ # RDoc doesn't actually have a native extension, but a Makefile needs to exist in order to successfully install the gem
8
+ require "mkmf"
9
+ create_makefile ( "rdoc/rdoc" )
Original file line number Diff line number Diff line change @@ -35,6 +35,7 @@ RDoc includes the +rdoc+ and +ri+ tools for generating and displaying documentat
35
35
s . bindir = "exe"
36
36
s . executables = [ "rdoc" , "ri" ]
37
37
s . require_paths = [ "lib" ]
38
+ s . extensions = [ "ext/rdoc/extconf.rb" ]
38
39
# for ruby core repository. It was generated by
39
40
# `git ls-files -z`.split("\x0").each {|f| puts " #{f.dump}," unless f.start_with?(*%W[test/ spec/ features/ .]) }
40
41
non_lib_files = [
You can’t perform that action at this time.
0 commit comments