rake 0.4.11 → 13.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. checksums.yaml +7 -0
  2. data/History.rdoc +2454 -0
  3. data/MIT-LICENSE +1 -1
  4. data/README.rdoc +155 -0
  5. data/doc/command_line_usage.rdoc +171 -0
  6. data/doc/glossary.rdoc +40 -49
  7. data/doc/jamis.rb +135 -107
  8. data/doc/proto_rake.rdoc +22 -22
  9. data/doc/rake.1 +156 -0
  10. data/doc/rakefile.rdoc +428 -27
  11. data/doc/rational.rdoc +6 -6
  12. data/exe/rake +27 -0
  13. data/lib/rake/application.rb +847 -0
  14. data/lib/rake/backtrace.rb +25 -0
  15. data/lib/rake/clean.rb +57 -10
  16. data/lib/rake/cloneable.rb +17 -0
  17. data/lib/rake/cpu_counter.rb +122 -0
  18. data/lib/rake/default_loader.rb +15 -0
  19. data/lib/rake/dsl_definition.rb +196 -0
  20. data/lib/rake/early_time.rb +22 -0
  21. data/lib/rake/ext/core.rb +26 -0
  22. data/lib/rake/ext/string.rb +176 -0
  23. data/lib/rake/file_creation_task.rb +25 -0
  24. data/lib/rake/file_list.rb +435 -0
  25. data/lib/rake/file_task.rb +58 -0
  26. data/lib/rake/file_utils.rb +137 -0
  27. data/lib/rake/file_utils_ext.rb +135 -0
  28. data/lib/rake/invocation_chain.rb +57 -0
  29. data/lib/rake/invocation_exception_mixin.rb +17 -0
  30. data/lib/rake/late_time.rb +18 -0
  31. data/lib/rake/linked_list.rb +112 -0
  32. data/lib/rake/loaders/makefile.rb +54 -0
  33. data/lib/rake/multi_task.rb +14 -0
  34. data/lib/rake/name_space.rb +38 -0
  35. data/lib/rake/options.rb +31 -0
  36. data/lib/rake/packagetask.rb +124 -54
  37. data/lib/rake/phony.rb +16 -0
  38. data/lib/rake/private_reader.rb +21 -0
  39. data/lib/rake/promise.rb +100 -0
  40. data/lib/rake/pseudo_status.rb +30 -0
  41. data/lib/rake/rake_module.rb +67 -0
  42. data/lib/rake/rake_test_loader.rb +27 -0
  43. data/lib/rake/rule_recursion_overflow_error.rb +20 -0
  44. data/lib/rake/scope.rb +43 -0
  45. data/lib/rake/task.rb +434 -0
  46. data/lib/rake/task_argument_error.rb +8 -0
  47. data/lib/rake/task_arguments.rb +113 -0
  48. data/lib/rake/task_manager.rb +333 -0
  49. data/lib/rake/tasklib.rb +4 -16
  50. data/lib/rake/testtask.rb +110 -36
  51. data/lib/rake/thread_history_display.rb +49 -0
  52. data/lib/rake/thread_pool.rb +157 -0
  53. data/lib/rake/trace_output.rb +23 -0
  54. data/lib/rake/version.rb +10 -0
  55. data/lib/rake/win32.rb +17 -0
  56. data/lib/rake.rb +64 -992
  57. data/rake.gemspec +102 -0
  58. metadata +117 -89
  59. data/CHANGES +0 -153
  60. data/README +0 -209
  61. data/Rakefile +0 -215
  62. data/TODO +0 -19
  63. data/bin/rake +0 -8
  64. data/install.rb +0 -88
  65. data/lib/rake/contrib/compositepublisher.rb +0 -24
  66. data/lib/rake/contrib/ftptools.rb +0 -139
  67. data/lib/rake/contrib/publisher.rb +0 -75
  68. data/lib/rake/contrib/rubyforgepublisher.rb +0 -18
  69. data/lib/rake/contrib/sshpublisher.rb +0 -47
  70. data/lib/rake/contrib/sys.rb +0 -207
  71. data/lib/rake/gempackagetask.rb +0 -98
  72. data/lib/rake/rdoctask.rb +0 -128
  73. data/lib/rake/runtest.rb +0 -23
  74. data/test/contrib/testsys.rb +0 -47
  75. data/test/data/rbext/rakefile.rb +0 -3
  76. data/test/filecreation.rb +0 -26
  77. data/test/functional.rb +0 -82
  78. data/test/shellcommand.rb +0 -3
  79. data/test/testclean.rb +0 -13
  80. data/test/testfilelist.rb +0 -255
  81. data/test/testfileutils.rb +0 -83
  82. data/test/testftp.rb +0 -55
  83. data/test/testpackagetask.rb +0 -81
  84. data/test/testtasks.rb +0 -371
  85. data/test/testtesttask.rb +0 -71
data/rake.gemspec ADDED
@@ -0,0 +1,102 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "lib/rake/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "rake"
7
+ s.version = Rake::VERSION
8
+ s.authors = ["Hiroshi SHIBATA", "Eric Hodel", "Jim Weirich"]
9
+ s.email = ["hsbt@ruby-lang.org", "drbrain@segment7.net", ""]
10
+
11
+ s.summary = "Rake is a Make-like program implemented in Ruby"
12
+ s.description = <<~DESCRIPTION
13
+ Rake is a Make-like program implemented in Ruby. Tasks and dependencies are
14
+ specified in standard Ruby syntax.
15
+ Rake has the following features:
16
+ * Rakefiles (rake's version of Makefiles) are completely defined in standard Ruby syntax.
17
+ No XML files to edit. No quirky Makefile syntax to worry about (is that a tab or a space?)
18
+ * Users can specify tasks with prerequisites.
19
+ * Rake supports rule patterns to synthesize implicit tasks.
20
+ * Flexible FileLists that act like arrays but know about manipulating file names and paths.
21
+ * Supports parallel execution of tasks.
22
+ DESCRIPTION
23
+ s.homepage = "https://github.com/ruby/rake"
24
+ s.licenses = ["MIT"]
25
+
26
+ s.metadata = {
27
+ "bug_tracker_uri" => "https://github.com/ruby/rake/issues",
28
+ "changelog_uri" => "https://github.com/ruby/rake/releases",
29
+ "documentation_uri" => "https://ruby.github.io/rake",
30
+ "source_code_uri" => s.homepage
31
+ }
32
+
33
+ s.files = [
34
+ "History.rdoc",
35
+ "MIT-LICENSE",
36
+ "README.rdoc",
37
+ "doc/command_line_usage.rdoc",
38
+ "doc/example/Rakefile1",
39
+ "doc/example/Rakefile2",
40
+ "doc/example/a.c",
41
+ "doc/example/b.c",
42
+ "doc/example/main.c",
43
+ "doc/glossary.rdoc",
44
+ "doc/jamis.rb",
45
+ "doc/proto_rake.rdoc",
46
+ "doc/rake.1",
47
+ "doc/rakefile.rdoc",
48
+ "doc/rational.rdoc",
49
+ "exe/rake",
50
+ "lib/rake.rb",
51
+ "lib/rake/application.rb",
52
+ "lib/rake/backtrace.rb",
53
+ "lib/rake/clean.rb",
54
+ "lib/rake/cloneable.rb",
55
+ "lib/rake/cpu_counter.rb",
56
+ "lib/rake/default_loader.rb",
57
+ "lib/rake/dsl_definition.rb",
58
+ "lib/rake/early_time.rb",
59
+ "lib/rake/ext/core.rb",
60
+ "lib/rake/ext/string.rb",
61
+ "lib/rake/file_creation_task.rb",
62
+ "lib/rake/file_list.rb",
63
+ "lib/rake/file_task.rb",
64
+ "lib/rake/file_utils.rb",
65
+ "lib/rake/file_utils_ext.rb",
66
+ "lib/rake/invocation_chain.rb",
67
+ "lib/rake/invocation_exception_mixin.rb",
68
+ "lib/rake/late_time.rb",
69
+ "lib/rake/linked_list.rb",
70
+ "lib/rake/loaders/makefile.rb",
71
+ "lib/rake/multi_task.rb",
72
+ "lib/rake/name_space.rb",
73
+ "lib/rake/options.rb",
74
+ "lib/rake/packagetask.rb",
75
+ "lib/rake/phony.rb",
76
+ "lib/rake/private_reader.rb",
77
+ "lib/rake/promise.rb",
78
+ "lib/rake/pseudo_status.rb",
79
+ "lib/rake/rake_module.rb",
80
+ "lib/rake/rake_test_loader.rb",
81
+ "lib/rake/rule_recursion_overflow_error.rb",
82
+ "lib/rake/scope.rb",
83
+ "lib/rake/task.rb",
84
+ "lib/rake/task_argument_error.rb",
85
+ "lib/rake/task_arguments.rb",
86
+ "lib/rake/task_manager.rb",
87
+ "lib/rake/tasklib.rb",
88
+ "lib/rake/testtask.rb",
89
+ "lib/rake/thread_history_display.rb",
90
+ "lib/rake/thread_pool.rb",
91
+ "lib/rake/trace_output.rb",
92
+ "lib/rake/version.rb",
93
+ "lib/rake/win32.rb",
94
+ "rake.gemspec"
95
+ ]
96
+ s.bindir = "exe"
97
+ s.executables = s.files.grep(%r{^exe/}) { |f| File.basename(f) }
98
+ s.require_paths = ["lib"]
99
+
100
+ s.required_ruby_version = Gem::Requirement.new(">= 2.3")
101
+ s.rdoc_options = ["--main", "README.rdoc"]
102
+ end
metadata CHANGED
@@ -1,93 +1,121 @@
1
- --- !ruby/object:Gem::Specification
2
- rubygems_version: 0.8.1
3
- specification_version: 1
1
+ --- !ruby/object:Gem::Specification
4
2
  name: rake
5
- version: !ruby/object:Gem::Version
6
- version: 0.4.11
7
- date: 2004-11-12
8
- summary: Ruby based make-like utility.
9
- require_paths:
10
- - lib
11
- author: Jim Weirich
12
- email: jim@weirichhouse.org
13
- homepage: http://rake.rubyforge.org
14
- rubyforge_project: rake
15
- description: Rake is a Make-like program implemented in Ruby. Tasks and dependencies are specified in standard Ruby syntax.
16
- autorequire:
17
- default_executable: rake
18
- bindir: bin
19
- has_rdoc: true
20
- required_ruby_version: !ruby/object:Gem::Version::Requirement
21
- requirements:
22
- -
23
- - ">"
24
- - !ruby/object:Gem::Version
25
- version: 0.0.0
26
- version:
3
+ version: !ruby/object:Gem::Version
4
+ version: 13.4.2
27
5
  platform: ruby
28
- files:
29
- - install.rb
30
- - CHANGES
31
- - README
32
- - TODO
33
- - Rakefile
34
- - MIT-LICENSE
35
- - bin/rake
36
- - lib/rake.rb
37
- - lib/rake/clean.rb
38
- - lib/rake/tasklib.rb
39
- - lib/rake/packagetask.rb
40
- - lib/rake/rdoctask.rb
41
- - lib/rake/runtest.rb
42
- - lib/rake/testtask.rb
43
- - lib/rake/gempackagetask.rb
44
- - lib/rake/contrib/ftptools.rb
45
- - lib/rake/contrib/sys.rb
46
- - lib/rake/contrib/compositepublisher.rb
47
- - lib/rake/contrib/publisher.rb
48
- - lib/rake/contrib/rubyforgepublisher.rb
49
- - lib/rake/contrib/sshpublisher.rb
50
- - test/filecreation.rb
51
- - test/testclean.rb
52
- - test/testfilelist.rb
53
- - test/testtasks.rb
54
- - test/testftp.rb
55
- - test/testfileutils.rb
56
- - test/shellcommand.rb
57
- - test/testpackagetask.rb
58
- - test/functional.rb
59
- - test/testtesttask.rb
60
- - test/contrib/testsys.rb
61
- - test/data/rbext/rakefile.rb
62
- - doc/example
63
- - doc/glossary.rdoc
64
- - doc/proto_rake.rdoc
65
- - doc/jamis.rb
66
- - doc/rational.rdoc
67
- - doc/rakefile.rdoc
68
- - doc/example/Rakefile1
69
- - doc/example/Rakefile2
70
- - doc/example/a.c
71
- - doc/example/b.c
72
- - doc/example/main.c
73
- test_files: []
74
- rdoc_options:
75
- - "--title"
76
- - "Rake -- Ruby Make"
77
- - "--main"
78
- - README
79
- - "--line-numbers"
80
- extra_rdoc_files:
81
- - README
82
- - MIT-LICENSE
83
- - TODO
84
- - CHANGES
85
- - doc/glossary.rdoc
86
- - doc/proto_rake.rdoc
87
- - doc/rational.rdoc
88
- - doc/rakefile.rdoc
89
- executables:
90
- - rake
6
+ authors:
7
+ - Hiroshi SHIBATA
8
+ - Eric Hodel
9
+ - Jim Weirich
10
+ bindir: exe
11
+ cert_chain: []
12
+ date: 1980-01-02 00:00:00.000000000 Z
13
+ dependencies: []
14
+ description: |
15
+ Rake is a Make-like program implemented in Ruby. Tasks and dependencies are
16
+ specified in standard Ruby syntax.
17
+ Rake has the following features:
18
+ * Rakefiles (rake's version of Makefiles) are completely defined in standard Ruby syntax.
19
+ No XML files to edit. No quirky Makefile syntax to worry about (is that a tab or a space?)
20
+ * Users can specify tasks with prerequisites.
21
+ * Rake supports rule patterns to synthesize implicit tasks.
22
+ * Flexible FileLists that act like arrays but know about manipulating file names and paths.
23
+ * Supports parallel execution of tasks.
24
+ email:
25
+ - hsbt@ruby-lang.org
26
+ - drbrain@segment7.net
27
+ - ''
28
+ executables:
29
+ - rake
91
30
  extensions: []
31
+ extra_rdoc_files: []
32
+ files:
33
+ - History.rdoc
34
+ - MIT-LICENSE
35
+ - README.rdoc
36
+ - doc/command_line_usage.rdoc
37
+ - doc/example/Rakefile1
38
+ - doc/example/Rakefile2
39
+ - doc/example/a.c
40
+ - doc/example/b.c
41
+ - doc/example/main.c
42
+ - doc/glossary.rdoc
43
+ - doc/jamis.rb
44
+ - doc/proto_rake.rdoc
45
+ - doc/rake.1
46
+ - doc/rakefile.rdoc
47
+ - doc/rational.rdoc
48
+ - exe/rake
49
+ - lib/rake.rb
50
+ - lib/rake/application.rb
51
+ - lib/rake/backtrace.rb
52
+ - lib/rake/clean.rb
53
+ - lib/rake/cloneable.rb
54
+ - lib/rake/cpu_counter.rb
55
+ - lib/rake/default_loader.rb
56
+ - lib/rake/dsl_definition.rb
57
+ - lib/rake/early_time.rb
58
+ - lib/rake/ext/core.rb
59
+ - lib/rake/ext/string.rb
60
+ - lib/rake/file_creation_task.rb
61
+ - lib/rake/file_list.rb
62
+ - lib/rake/file_task.rb
63
+ - lib/rake/file_utils.rb
64
+ - lib/rake/file_utils_ext.rb
65
+ - lib/rake/invocation_chain.rb
66
+ - lib/rake/invocation_exception_mixin.rb
67
+ - lib/rake/late_time.rb
68
+ - lib/rake/linked_list.rb
69
+ - lib/rake/loaders/makefile.rb
70
+ - lib/rake/multi_task.rb
71
+ - lib/rake/name_space.rb
72
+ - lib/rake/options.rb
73
+ - lib/rake/packagetask.rb
74
+ - lib/rake/phony.rb
75
+ - lib/rake/private_reader.rb
76
+ - lib/rake/promise.rb
77
+ - lib/rake/pseudo_status.rb
78
+ - lib/rake/rake_module.rb
79
+ - lib/rake/rake_test_loader.rb
80
+ - lib/rake/rule_recursion_overflow_error.rb
81
+ - lib/rake/scope.rb
82
+ - lib/rake/task.rb
83
+ - lib/rake/task_argument_error.rb
84
+ - lib/rake/task_arguments.rb
85
+ - lib/rake/task_manager.rb
86
+ - lib/rake/tasklib.rb
87
+ - lib/rake/testtask.rb
88
+ - lib/rake/thread_history_display.rb
89
+ - lib/rake/thread_pool.rb
90
+ - lib/rake/trace_output.rb
91
+ - lib/rake/version.rb
92
+ - lib/rake/win32.rb
93
+ - rake.gemspec
94
+ homepage: https://github.com/ruby/rake
95
+ licenses:
96
+ - MIT
97
+ metadata:
98
+ bug_tracker_uri: https://github.com/ruby/rake/issues
99
+ changelog_uri: https://github.com/ruby/rake/releases
100
+ documentation_uri: https://ruby.github.io/rake
101
+ source_code_uri: https://github.com/ruby/rake
102
+ rdoc_options:
103
+ - "--main"
104
+ - README.rdoc
105
+ require_paths:
106
+ - lib
107
+ required_ruby_version: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - ">="
110
+ - !ruby/object:Gem::Version
111
+ version: '2.3'
112
+ required_rubygems_version: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - ">="
115
+ - !ruby/object:Gem::Version
116
+ version: '0'
92
117
  requirements: []
93
- dependencies: []
118
+ rubygems_version: 4.0.6
119
+ specification_version: 4
120
+ summary: Rake is a Make-like program implemented in Ruby
121
+ test_files: []
data/CHANGES DELETED
@@ -1,153 +0,0 @@
1
- = Rake Changelog
2
-
3
- == pre Version 0.4.11
4
-
5
- * Changed the "don't know how to rake" message (finally)
6
- * Changes references to a literal "Rakefile" to reference the global
7
- variable $rakefile (which contains the actual name of the rakefile).
8
-
9
- == Version 0.4.10
10
-
11
- * Added block support to the "sh" command, allowing users to take
12
- special actions on the result of the system call. E.g.
13
-
14
- sh "shell_command" do |ok, res|
15
- puts "Program returned #{res.exitstatus}" if ! ok
16
- end
17
-
18
- == Version 0.4.9
19
-
20
- * Switched to Jamis Buck's RDoc template.
21
- * Removed autorequire from Rake's gem spec. This prevents the Rake
22
- libraries from loading while using rails.
23
-
24
- == Version 0.4.8
25
-
26
- * Added support for .rb versions of Rakefile.
27
- * Removed \\\n's from test task.
28
- * Fixed Ruby 1.9 compatibility issue with FileList.
29
-
30
- == Version 0.4.7
31
-
32
- * Fixed problem in FileList that caused Ruby 1.9 to go into infinite
33
- recursion. Since to_a was removed from Object, it does not need to
34
- added back into the list of methods to rewrite in FileList. (Thanks
35
- to Kent Sibilev for pointing this out).
36
-
37
- == Version 0.4.6
38
- * Removed test version of ln in FileUtils that prevented safe_ln from
39
- using ln.
40
-
41
- == Version 0.4.5
42
- * Upgraded comments in TestTask.
43
- * FileList to_s and inspect now automatically resolve pending changes.
44
- * FileList#exclude properly returns the FileList.
45
-
46
- == Version 0.4.4
47
- * Fixed initialization problem with @comment.
48
- * Now using multi -r technique in TestTask. Switch Rakefile back to
49
- using the built-in test task macros because the rake runtime is no
50
- longer needed.
51
- * Added 'TEST=filename' and 'TESTOPTS=options' to the Test Task
52
- macros.
53
- * Allow a +test_files+ attribute in test tasks. This allows more
54
- flexibility in specifying test files.
55
-
56
- == Version 0.4.3
57
- * Fixed Comment leakage.
58
-
59
- == Version 0.4.2
60
- * Added safe_ln that falls back to a copy if a file link is not supported.
61
- * Package builder now uses safe_ln.
62
-
63
- == Version 0.4.1
64
- * Task comments are now additive, combined with "/".
65
- * Works with (soon to be released) rubygems 0.6.2 (or 0.7.0)
66
-
67
- == Version 0.4.0
68
- * FileList now uses deferred loading. The file system is not searched
69
- until the first call that needs the file names.
70
- * VAR=VALUE options are now accepted on the command line and are
71
- treated like environment variables. The values may be tested in a
72
- Rakefile by referencing ENV['VAR'].
73
- * File.mtime is now used (instead of File.new().mtime).
74
-
75
- == Version 0.3.2.x
76
-
77
- * Removed some hidden dependencies on rubygems. Tests now will test
78
- gems only if they are installed.
79
- * Removed Sys from some example files. I believe that is that last
80
- reference to Sys outside of the contrib area.
81
- * Updated all copyright notices to include 2004.
82
-
83
- == Version 0.3.2
84
-
85
- * GEM Installation now works with the application stub.
86
-
87
- == Version 0.3.1
88
-
89
- * FileLists now automatically ignore CVS, .bak, !
90
- * GEM Installation now works.
91
-
92
- == Version 0.3.0
93
-
94
- Promoted 0.2.10.
95
-
96
- == Version 0.2.10
97
- General
98
-
99
- * Added title to Rake's rdocs
100
- * Contrib packages are no longer included in the documentation.
101
-
102
- RDoc Issues
103
-
104
- * Removed default for the '--main' option
105
- * Fixed rendering of the rdoc options
106
- * Fixed clean/clobber confusion with rerdoc
107
- * 'title' attribute added
108
-
109
- Package Task Library Issues
110
-
111
- * Version (or explicit :noversion) is required.
112
- * +package_file+ attribute is now writable
113
-
114
- FileList Issues
115
-
116
- * Dropped bang version of exclude. Now using ant-like include/exclude semantics.
117
- * Enabled the "yield self" idiom in FileList#initialize.
118
-
119
- == Version 0.2.9
120
-
121
- This version contains numerous changes as the RubyConf.new(2003)
122
- presentation was being prepared. The changes include:
123
-
124
- * The monolithic rubyapp task library is in the process of being
125
- dropped in favor of lighter weight task libraries.
126
-
127
- == Version 0.2.7
128
-
129
- * Added "desc" for task descriptions.
130
- * -T will now display tasks with descriptions.
131
- * -P will display tasks and prerequisites.
132
- * Dropped the Sys module in favor of the 1.8.x FileUtils module. Sys
133
- is still supported in the contrib area.
134
-
135
- == Version 0.2.6
136
-
137
- * Moved to RubyForge
138
-
139
- == Version 0.2.5
140
-
141
- * Switched to standard ruby app builder.
142
- * Added no_match option to file matcher.
143
-
144
- == Version 0.2.4
145
-
146
- * Fixed indir, which neglected to actually change directories.
147
-
148
- == Version 0.2.3
149
-
150
- * Added rake module for a help target
151
- * Added 'for_files' to Sys
152
- * Added a $rakefile constant
153
- * Added test for selecting proper rule with multiple targets.
data/README DELETED
@@ -1,209 +0,0 @@
1
- = RAKE -- Ruby Make
2
-
3
- This package contains Rake, a simple ruby build program with
4
- capabilities similar to make.
5
-
6
- Rake has the following features:
7
-
8
- * Rakefiles (rake's version of Makefiles) are completely defined in
9
- standard Ruby syntax. No XML files to edit. No quirky Makefile
10
- syntax to worry about (is that a tab or a space?)
11
-
12
- * Users can specify tasks with prerequisites.
13
-
14
- * Rake supports rule patterns to sythesize implicit tasks.
15
-
16
- * Rake is lightweight. It can be distributed with other projects as a
17
- single file. Projects that depend upon rake do not require that
18
- rake be installed on target systems.
19
-
20
- == Download
21
-
22
- The latest version of rake can be found at
23
-
24
- * http://rubyforge.org/project/showfiles.php?group_id=50
25
-
26
- Online Resources can be found at ...
27
-
28
- * Online Rake Documentation: http://rake.rubyforge.org
29
- * Rake Project Page: http://rubyforge.org/projects/rake
30
- * Rake Project Wiki: http://rake.rubyforge.org/wiki/wiki.pl
31
-
32
- == Installation
33
-
34
- === Normal Installation
35
-
36
- You can install rake with the following command.
37
-
38
- % ruby install.rb
39
-
40
- from its distribution directory.
41
-
42
- === GEM Installation
43
-
44
- Download and install rake with the following.
45
-
46
- gem install --remote rake
47
-
48
- == Roadmap
49
-
50
- * If you want to see how to invoke rake to build your projects, read on.
51
- * If you want to see the format of a Rakefile, see
52
- doc/rakefile.rdoc[http://rake.rubyforge.org/files/doc/rakefile_rdoc.html].
53
- * If you want to see the original announcement of rake, see
54
- doc/rational.rdoc[http://rake.rubyforge.org/files/doc/rational_rdoc.html].
55
- * If you want to see a glossary of terms, see
56
- doc/glossary.rdoc[http://rake.rubyforge.org/files/doc/glossary_rdoc.html].
57
-
58
-
59
- == Simple Example
60
-
61
- Once installed, you can run rake as follows ...
62
-
63
- % rake [options ...] [VAR=VALUE ...] [tasks...]
64
-
65
- Type "rake --help" for an up-to-date option summary.
66
-
67
- Invoking <tt>rake</tt> without any options or targets causes rake to
68
- look for a rakefile and invoke the default task in that rakefile.
69
-
70
- For example, given a simple rakefile like this ...
71
-
72
- task :default => [:test]
73
-
74
- task :test do
75
- ruby "test/unittest.rb"
76
- end
77
-
78
- The command
79
-
80
- $ rake
81
-
82
- will invoke the +default+ task. As +default+ satisfies its
83
- prerequisites, the +test+ task will run the unit tests for the
84
- package.
85
-
86
- == Other Make Reinvisionings ...
87
-
88
- Rake is a late entry in the make replacement field. Here are links to
89
- other projects with similar (and not so similar) goals.
90
-
91
- * http://www.a-a-p.org -- Make in Python
92
- * http://www.aromatic.com/tools/jam.txt -- JAM, Java Automated Make
93
- * http://ant.apache.org -- The Ant project
94
- * http://www.perl.com/language/ppt/src/make/index.html -- Make from
95
- the Perl Power Tools implementation.
96
-
97
- == Credits
98
-
99
- [<b>Ryan Dlugosz</b>] For the initial conversation that sparked Rake.
100
-
101
- [<b>nobu.nokada@softhome.net</b>] For the initial patch for rule support.
102
-
103
- == License
104
-
105
- Rake is available under an MIT-style license.
106
-
107
- :include: MIT-LICENSE
108
-
109
- == Support
110
-
111
- The Rake homepage is http://rake.rubyforge.org. You can find the Rake
112
- RubyForge page at http://rubyforge.org/projects/rake.
113
-
114
- Feel free to submit commits or feature requests. If you send a patch,
115
- remember to update the corresponding unit tests. If fact, I prefer
116
- new feature to be submitted in the form of new unit tests.
117
-
118
- For other information, feel free to ask on the ruby-talk mailing list
119
- (which is mirrored to comp.lang.ruby) or contact
120
- mailto:jim@weirichhouse.org.
121
-
122
- ----
123
-
124
- = Usage
125
-
126
- Rake is invoked from the command line using:
127
-
128
- % rake [<em>options</em> ...] [<em>VAR</em>=<em>VALUE</em>] [<em>targets</em> ...]
129
-
130
- Options are:
131
-
132
- [<tt><em>name</em>=<em>value</em></tt>]
133
- Set the environment variable <em>name</em> to <em>value</em>
134
- during the execution of the <b>rake</b> command. You can access
135
- the value by using ENV['<em>name</em>'].
136
-
137
- [<tt>--dry-run</tt> (-n)]
138
- Do a dry run. Print the tasks invoked and executed, but do not
139
- actually execute any of the actions.
140
-
141
- [<tt>--help</tt> (-H)]
142
- Display some help text and exit.
143
-
144
- [<tt>--libdir</tt> _directory_ (-I)]
145
- Add _directory_ to the list of directories searched for require.
146
-
147
- [<tt>--nosearch</tt> (-N)]
148
- Do not search for a Rakefile in parent directories.
149
-
150
- [<tt>--prereqs</tt> (-P)]
151
- Display a list of all tasks and their immediate prerequisites.
152
-
153
- [<tt>--quiet</tt> (-q)]
154
- Do not echo commands from FileUtils.
155
-
156
- [<tt>--rakefile</tt> _filename_ (-f)]
157
- Use _filename_ as the name of the rakefile. The default rakefile
158
- names are +rakefile+ and +Rakefile+ (with +rakefile+ taking
159
- precedence). If the rakefile is not found in the current
160
- directory, +rake+ will search parent directories for a match. The
161
- directory where the Rakefile is found will become the current
162
- directory for the actions executed in the Rakefile.
163
-
164
- [<tt>--require</tt> _name_ (-r)]
165
- Require _name_ before executing the Rakefile.
166
-
167
- [<tt>--tasks</tt> (-T)]
168
- Display a list of the major tasks and their comments. Comments
169
- are defined using the "desc" command.
170
-
171
- [<tt>--trace</tt> (-t)]
172
- Turn on invoke/execute tracing.
173
-
174
- [<tt>--usage</tt> (-h)]
175
- Display a usage message and exit.
176
-
177
- [<tt>--verbose</tt> (-v)]
178
- Echo the Sys commands to standard output.
179
-
180
- [<tt>--version</tt> (-V)]
181
- Display the program version and exit.
182
-
183
- In addition, any command line option of the form
184
- <em>VAR</em>=<em>VALUE</em> will be added to the environment hash
185
- <tt>ENV</tt> and may be tested in the Rakefile.
186
-
187
- ---
188
-
189
- = Rakefile Format
190
-
191
- See doc/rakefile.rdoc[http://rake.rubyforge.org/files/doc/rakefile_rdoc.html]
192
- for details on the Rakefile format.
193
-
194
- ---
195
-
196
- = Other stuff
197
-
198
- Author:: Jim Weirich <jim@weirichhouse.org>
199
- Requires:: Ruby 1.8.0 or later
200
- License:: Copyright 2003, 2004 by Jim Weirich.
201
- Released under an MIT-style license. See the LICENSE file
202
- included in the distribution.
203
-
204
- == Warranty
205
-
206
- This software is provided "as is" and without any express or
207
- implied warranties, including, without limitation, the implied
208
- warranties of merchantibility and fitness for a particular
209
- purpose.