rake 0.9.2.2 → 13.0.6
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.
- checksums.yaml +7 -0
- data/History.rdoc +2403 -0
- data/MIT-LICENSE +1 -1
- data/README.rdoc +64 -106
- data/doc/command_line_usage.rdoc +65 -21
- data/doc/glossary.rdoc +40 -49
- data/doc/jamis.rb +1 -0
- data/doc/rake.1 +156 -0
- data/doc/rakefile.rdoc +127 -62
- data/{bin → exe}/rake +1 -7
- data/lib/rake/application.rb +507 -271
- data/lib/rake/backtrace.rb +24 -0
- data/lib/rake/clean.rb +54 -8
- data/lib/rake/cloneable.rb +11 -19
- data/lib/rake/cpu_counter.rb +107 -0
- data/lib/rake/default_loader.rb +5 -0
- data/lib/rake/dsl_definition.rb +67 -48
- data/lib/rake/early_time.rb +5 -1
- data/lib/rake/ext/core.rb +5 -6
- data/lib/rake/ext/string.rb +61 -52
- data/lib/rake/file_creation_task.rb +4 -3
- data/lib/rake/file_list.rb +81 -49
- data/lib/rake/file_task.rb +15 -8
- data/lib/rake/file_utils.rb +63 -43
- data/lib/rake/file_utils_ext.rb +14 -25
- data/lib/rake/invocation_chain.rb +25 -19
- data/lib/rake/invocation_exception_mixin.rb +1 -0
- data/lib/rake/late_time.rb +18 -0
- data/lib/rake/linked_list.rb +112 -0
- data/lib/rake/loaders/makefile.rb +23 -9
- data/lib/rake/multi_task.rb +4 -6
- data/lib/rake/name_space.rb +36 -23
- data/lib/rake/packagetask.rb +71 -34
- data/lib/rake/phony.rb +16 -0
- data/lib/rake/private_reader.rb +21 -0
- data/lib/rake/promise.rb +100 -0
- data/lib/rake/pseudo_status.rb +8 -2
- data/lib/rake/rake_module.rb +41 -3
- data/lib/rake/rake_test_loader.rb +9 -4
- data/lib/rake/rule_recursion_overflow_error.rb +2 -2
- data/lib/rake/scope.rb +43 -0
- data/lib/rake/task.rb +186 -79
- data/lib/rake/task_argument_error.rb +1 -0
- data/lib/rake/task_arguments.rb +46 -15
- data/lib/rake/task_manager.rb +91 -67
- data/lib/rake/tasklib.rb +2 -12
- data/lib/rake/testtask.rb +61 -63
- data/lib/rake/thread_history_display.rb +49 -0
- data/lib/rake/thread_pool.rb +163 -0
- data/lib/rake/trace_output.rb +23 -0
- data/lib/rake/version.rb +5 -3
- data/lib/rake/win32.rb +14 -18
- data/lib/rake.rb +35 -33
- data/rake.gemspec +100 -0
- metadata +74 -176
- data/.gemtest +0 -0
- data/CHANGES +0 -522
- data/Rakefile +0 -369
- data/TODO +0 -20
- data/doc/rake.1.gz +0 -0
- data/doc/release_notes/rake-0.4.14.rdoc +0 -23
- data/doc/release_notes/rake-0.4.15.rdoc +0 -35
- data/doc/release_notes/rake-0.5.0.rdoc +0 -53
- data/doc/release_notes/rake-0.5.3.rdoc +0 -78
- data/doc/release_notes/rake-0.5.4.rdoc +0 -46
- data/doc/release_notes/rake-0.6.0.rdoc +0 -141
- data/doc/release_notes/rake-0.7.0.rdoc +0 -119
- data/doc/release_notes/rake-0.7.1.rdoc +0 -59
- data/doc/release_notes/rake-0.7.2.rdoc +0 -121
- data/doc/release_notes/rake-0.7.3.rdoc +0 -47
- data/doc/release_notes/rake-0.8.0.rdoc +0 -114
- data/doc/release_notes/rake-0.8.2.rdoc +0 -165
- data/doc/release_notes/rake-0.8.3.rdoc +0 -112
- data/doc/release_notes/rake-0.8.4.rdoc +0 -147
- data/doc/release_notes/rake-0.8.5.rdoc +0 -53
- data/doc/release_notes/rake-0.8.6.rdoc +0 -55
- data/doc/release_notes/rake-0.8.7.rdoc +0 -55
- data/doc/release_notes/rake-0.9.0.rdoc +0 -112
- data/doc/release_notes/rake-0.9.1.rdoc +0 -52
- data/doc/release_notes/rake-0.9.2.rdoc +0 -49
- data/install.rb +0 -90
- data/lib/rake/alt_system.rb +0 -109
- data/lib/rake/classic_namespace.rb +0 -11
- data/lib/rake/contrib/compositepublisher.rb +0 -21
- data/lib/rake/contrib/ftptools.rb +0 -150
- data/lib/rake/contrib/publisher.rb +0 -73
- data/lib/rake/contrib/rubyforgepublisher.rb +0 -16
- data/lib/rake/contrib/sshpublisher.rb +0 -50
- data/lib/rake/contrib/sys.rb +0 -191
- data/lib/rake/ext/module.rb +0 -39
- data/lib/rake/ext/time.rb +0 -14
- data/lib/rake/gempackagetask.rb +0 -15
- data/lib/rake/pathmap.rb +0 -1
- data/lib/rake/rdoctask.rb +0 -234
- data/lib/rake/ruby182_test_unit_fix.rb +0 -25
- data/lib/rake/runtest.rb +0 -21
- data/test/file_creation.rb +0 -34
- data/test/helper.rb +0 -492
- data/test/test_rake.rb +0 -40
- data/test/test_rake_application.rb +0 -489
- data/test/test_rake_application_options.rb +0 -335
- data/test/test_rake_clean.rb +0 -14
- data/test/test_rake_definitions.rb +0 -80
- data/test/test_rake_directory_task.rb +0 -46
- data/test/test_rake_dsl.rb +0 -77
- data/test/test_rake_early_time.rb +0 -31
- data/test/test_rake_extension.rb +0 -59
- data/test/test_rake_file_creation_task.rb +0 -56
- data/test/test_rake_file_list.rb +0 -628
- data/test/test_rake_file_list_path_map.rb +0 -8
- data/test/test_rake_file_task.rb +0 -102
- data/test/test_rake_file_utils.rb +0 -305
- data/test/test_rake_ftp_file.rb +0 -59
- data/test/test_rake_functional.rb +0 -450
- data/test/test_rake_invocation_chain.rb +0 -52
- data/test/test_rake_makefile_loader.rb +0 -44
- data/test/test_rake_multi_task.rb +0 -51
- data/test/test_rake_name_space.rb +0 -43
- data/test/test_rake_package_task.rb +0 -79
- data/test/test_rake_path_map.rb +0 -157
- data/test/test_rake_path_map_explode.rb +0 -34
- data/test/test_rake_path_map_partial.rb +0 -18
- data/test/test_rake_pseudo_status.rb +0 -21
- data/test/test_rake_rake_test_loader.rb +0 -21
- data/test/test_rake_rdoc_task.rb +0 -83
- data/test/test_rake_require.rb +0 -40
- data/test/test_rake_rules.rb +0 -327
- data/test/test_rake_task.rb +0 -267
- data/test/test_rake_task_argument_parsing.rb +0 -103
- data/test/test_rake_task_arguments.rb +0 -88
- data/test/test_rake_task_lib.rb +0 -9
- data/test/test_rake_task_manager.rb +0 -157
- data/test/test_rake_task_manager_argument_resolution.rb +0 -36
- data/test/test_rake_task_with_arguments.rb +0 -173
- data/test/test_rake_test_task.rb +0 -120
- data/test/test_rake_top_level_functions.rb +0 -111
- data/test/test_rake_win32.rb +0 -72
- data/test/test_sys.rb +0 -20
data/MIT-LICENSE
CHANGED
data/README.rdoc
CHANGED
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
= RAKE -- Ruby Make
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
home :: https://github.com/ruby/rake
|
|
4
|
+
bugs :: https://github.com/ruby/rake/issues
|
|
5
|
+
docs :: https://ruby.github.io/rake
|
|
6
|
+
|
|
7
|
+
== Description
|
|
8
|
+
|
|
9
|
+
Rake is a Make-like program implemented in Ruby. Tasks and dependencies are
|
|
10
|
+
specified in standard Ruby syntax.
|
|
5
11
|
|
|
6
12
|
Rake has the following features:
|
|
7
13
|
|
|
@@ -17,9 +23,9 @@ Rake has the following features:
|
|
|
17
23
|
file names and paths.
|
|
18
24
|
|
|
19
25
|
* A library of prepackaged tasks to make building rakefiles easier. For example,
|
|
20
|
-
tasks for building tarballs
|
|
21
|
-
tasks for building RDoc and
|
|
22
|
-
available in RDoc and
|
|
26
|
+
tasks for building tarballs. (Formerly
|
|
27
|
+
tasks for building RDoc, Gems, and publishing to FTP were included in rake but they're now
|
|
28
|
+
available in RDoc, RubyGems, and rake-contrib respectively.)
|
|
23
29
|
|
|
24
30
|
* Supports parallel execution of tasks.
|
|
25
31
|
|
|
@@ -29,19 +35,7 @@ Rake has the following features:
|
|
|
29
35
|
|
|
30
36
|
Download and install rake with the following.
|
|
31
37
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
=== Normal Installation
|
|
35
|
-
|
|
36
|
-
You can download the source tarball of the latest version of Rake from
|
|
37
|
-
|
|
38
|
-
* http://rubyforge.org/project/showfiles.php?group_id=50
|
|
39
|
-
|
|
40
|
-
Extract the tarball and run
|
|
41
|
-
|
|
42
|
-
% ruby install.rb
|
|
43
|
-
|
|
44
|
-
from its distribution directory.
|
|
38
|
+
gem install rake
|
|
45
39
|
|
|
46
40
|
== Usage
|
|
47
41
|
|
|
@@ -50,7 +44,7 @@ from its distribution directory.
|
|
|
50
44
|
First, you must write a "Rakefile" file which contains the build rules. Here's
|
|
51
45
|
a simple example:
|
|
52
46
|
|
|
53
|
-
task :
|
|
47
|
+
task default: %w[test]
|
|
54
48
|
|
|
55
49
|
task :test do
|
|
56
50
|
ruby "test/unittest.rb"
|
|
@@ -58,8 +52,8 @@ a simple example:
|
|
|
58
52
|
|
|
59
53
|
This Rakefile has two tasks:
|
|
60
54
|
|
|
61
|
-
* A task named "test", which
|
|
62
|
-
Ruby.
|
|
55
|
+
* A task named "test", which -- upon invocation -- will run a unit test file
|
|
56
|
+
in Ruby.
|
|
63
57
|
* A task named "default". This task does nothing by itself, but it has exactly
|
|
64
58
|
one dependency, namely the "test" task. Invoking the "default" task will
|
|
65
59
|
cause Rake to invoke the "test" task as well.
|
|
@@ -76,122 +70,86 @@ Running the "rake" command without any options will cause it to run the
|
|
|
76
70
|
|
|
77
71
|
Type "rake --help" for all available options.
|
|
78
72
|
|
|
73
|
+
== Resources
|
|
79
74
|
|
|
80
|
-
===
|
|
81
|
-
|
|
82
|
-
* For details on Rake's command-line invocation, read
|
|
83
|
-
doc/command_line_usage.rdoc[http://rake.rubyforge.org/files/doc/command_line_usage_rdoc.html]
|
|
84
|
-
* For details on writing Rakefiles, see
|
|
85
|
-
doc/rakefile.rdoc[http://rake.rubyforge.org/files/doc/rakefile_rdoc.html].
|
|
86
|
-
* For the original announcement of Rake, see
|
|
87
|
-
doc/rational.rdoc[http://rake.rubyforge.org/files/doc/rational_rdoc.html].
|
|
88
|
-
* For a glossary of terms, see
|
|
89
|
-
doc/glossary.rdoc[http://rake.rubyforge.org/files/doc/glossary_rdoc.html].
|
|
90
|
-
|
|
91
|
-
== Development
|
|
92
|
-
|
|
93
|
-
=== Source Repository
|
|
94
|
-
|
|
95
|
-
Rake is currently hosted at github. The github web page is
|
|
96
|
-
http://github.com/jimweirich/rake. The public git clone URL is
|
|
97
|
-
|
|
98
|
-
* git://github.com/jimweirich/rake.git
|
|
99
|
-
|
|
100
|
-
=== Running the Rake Test Suite
|
|
101
|
-
|
|
102
|
-
If you wish to run the unit and functional tests that come with Rake:
|
|
103
|
-
|
|
104
|
-
* Install the 'flexmock' gem
|
|
105
|
-
* Install the 'session' gem in order to run the functional tests.
|
|
106
|
-
* CD into the top project directory of rake.
|
|
107
|
-
* Type one of the following:
|
|
108
|
-
|
|
109
|
-
rake # If you have a version of rake installed
|
|
110
|
-
ruby -Ilib bin/rake # If you do not have a version of rake installed.
|
|
111
|
-
|
|
112
|
-
=== Issues and Bug Reports
|
|
75
|
+
=== Rake Information
|
|
113
76
|
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
*
|
|
117
|
-
|
|
118
|
-
Issues and bug reports can also be tracked here:
|
|
119
|
-
|
|
120
|
-
* http://www.pivotaltracker.com/projects/28469
|
|
121
|
-
|
|
122
|
-
== Online Resources
|
|
123
|
-
|
|
124
|
-
=== Rake References
|
|
125
|
-
|
|
126
|
-
* Rake Documentation Home: http://docs.rubyrake.org
|
|
127
|
-
* Rake Project Page: http://rubyforge.org/projects/rake
|
|
128
|
-
* Rake API Documents: http://rake.rubyforge.org
|
|
129
|
-
* Rake Source Code Repo: http://github.com/jimweirich/rake
|
|
130
|
-
* Rake Git Repo Clone URL: git://github.com/jimweirich/rake.git
|
|
131
|
-
* Rake Issue Tracking: http://www.pivotaltracker.com/projects/28469
|
|
132
|
-
* Rake Bug Reports: https://github.com/jimweirich/rake/issues
|
|
77
|
+
* {Rake command-line}[link:doc/command_line_usage.rdoc]
|
|
78
|
+
* {Writing Rakefiles}[link:doc/rakefile.rdoc]
|
|
79
|
+
* The original {Rake announcement}[link:doc/rational.rdoc]
|
|
80
|
+
* Rake {glossary}[link:doc/glossary.rdoc]
|
|
133
81
|
|
|
134
82
|
=== Presentations and Articles about Rake
|
|
135
83
|
|
|
136
|
-
*
|
|
137
|
-
|
|
138
|
-
|
|
84
|
+
* Avdi Grimm's rake series:
|
|
85
|
+
1. {Rake Basics}[https://avdi.codes/rake-part-1-basics/]
|
|
86
|
+
2. {Rake File Lists}[https://avdi.codes/rake-part-2-file-lists-2/]
|
|
87
|
+
3. {Rake Rules}[https://avdi.codes/rake-part-3-rules/]
|
|
88
|
+
4. {Rake Pathmap}[https://avdi.codes/rake-part-4-pathmap/]
|
|
89
|
+
5. {File Operations}[https://avdi.codes/rake-part-5-file-operations/]
|
|
90
|
+
6. {Clean and Clobber}[https://avdi.codes/rake-part-6-clean-and-clobber/]
|
|
91
|
+
7. {MultiTask}[https://avdi.codes/rake-part-7-multitask/]
|
|
92
|
+
* {Jim Weirich's 2003 RubyConf presentation}[https://web.archive.org/web/20140221123354/http://onestepback.org/articles/buildingwithrake/]
|
|
93
|
+
* Martin Fowler's article on Rake: https://martinfowler.com/articles/rake.html
|
|
139
94
|
|
|
140
|
-
== Other Make
|
|
95
|
+
== Other Make Re-envisionings ...
|
|
141
96
|
|
|
142
97
|
Rake is a late entry in the make replacement field. Here are links to
|
|
143
98
|
other projects with similar (and not so similar) goals.
|
|
144
99
|
|
|
145
|
-
*
|
|
100
|
+
* https://directory.fsf.org/wiki/Bras -- Bras, one of earliest
|
|
146
101
|
implementations of "make in a scripting language".
|
|
147
102
|
* http://www.a-a-p.org -- Make in Python
|
|
148
|
-
*
|
|
149
|
-
*
|
|
150
|
-
*
|
|
151
|
-
Power Tools implementation.
|
|
152
|
-
* http://search.cpan.org/search?query=PerlBuildSystem -- The Perl Build System
|
|
153
|
-
* http://make.rubyforge.org -- Rant, another Ruby make tool.
|
|
103
|
+
* https://ant.apache.org -- The Ant project
|
|
104
|
+
* https://search.cpan.org/search?query=PerlBuildSystem -- The Perl Build System
|
|
105
|
+
* https://www.rubydoc.info/gems/rant/0.5.7/frames -- Rant, another Ruby make tool.
|
|
154
106
|
|
|
155
107
|
== Credits
|
|
156
108
|
|
|
109
|
+
[<b>Jim Weirich</b>] Who originally created Rake.
|
|
110
|
+
|
|
157
111
|
[<b>Ryan Dlugosz</b>] For the initial conversation that sparked Rake.
|
|
158
112
|
|
|
159
|
-
[<b>nobu
|
|
113
|
+
[<b>Nobuyoshi Nakada <nobu@ruby-lang.org></b>] For the initial patch for rule support.
|
|
160
114
|
|
|
161
115
|
[<b>Tilman Sauerbeck <tilman@code-monkey.de></b>] For the recursive rule patch.
|
|
162
116
|
|
|
117
|
+
[<b>Eric Hodel</b>] For aid in maintaining rake.
|
|
118
|
+
|
|
119
|
+
[<b>Hiroshi SHIBATA</b>] Maintainer of Rake 10.X and Rake 11.X
|
|
120
|
+
|
|
163
121
|
== License
|
|
164
122
|
|
|
165
123
|
Rake is available under an MIT-style license.
|
|
166
124
|
|
|
167
125
|
:include: MIT-LICENSE
|
|
168
126
|
|
|
169
|
-
== Support
|
|
170
|
-
|
|
171
|
-
The Rake homepage is http://rake.rubyforge.org. You can find the Rake
|
|
172
|
-
RubyForge page at http://rubyforge.org/projects/rake.
|
|
173
|
-
|
|
174
|
-
Feel free to submit commits or feature requests. If you send a patch,
|
|
175
|
-
remember to update the corresponding unit tests. In fact, I prefer
|
|
176
|
-
new feature to be submitted in the form of new unit tests.
|
|
177
|
-
|
|
178
|
-
For other information, feel free to ask on the ruby-talk mailing list
|
|
179
|
-
(which is mirrored to comp.lang.ruby) or contact
|
|
180
|
-
jim dot weirich at gmail.com.
|
|
181
|
-
|
|
182
127
|
---
|
|
183
128
|
|
|
184
129
|
= Other stuff
|
|
185
130
|
|
|
186
131
|
Author:: Jim Weirich <jim.weirich@gmail.com>
|
|
187
|
-
Requires:: Ruby
|
|
188
|
-
License:: Copyright
|
|
189
|
-
Released under an MIT-style license. See the LICENSE
|
|
190
|
-
included in the distribution.
|
|
132
|
+
Requires:: Ruby 2.0.0 or later
|
|
133
|
+
License:: Copyright Jim Weirich.
|
|
134
|
+
Released under an MIT-style license. See the MIT-LICENSE
|
|
135
|
+
file included in the distribution.
|
|
191
136
|
|
|
192
137
|
== Warranty
|
|
193
138
|
|
|
194
|
-
This software is provided "as is" and without any express or
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
139
|
+
This software is provided "as is" and without any express or implied
|
|
140
|
+
warranties, including, without limitation, the implied warranties of
|
|
141
|
+
merchantability and fitness for a particular purpose.
|
|
142
|
+
|
|
143
|
+
== Historical
|
|
144
|
+
|
|
145
|
+
Rake was originally created by Jim Weirich, who unfortunately passed away in
|
|
146
|
+
February 2014. This repository was originally hosted at
|
|
147
|
+
{github.com/jimweirich/rake}[https://github.com/jimweirich/rake/], however
|
|
148
|
+
with his passing, has been moved to {ruby/rake}[https://github.com/ruby/rake].
|
|
149
|
+
|
|
150
|
+
You can view Jim's last commit here:
|
|
151
|
+
https://github.com/jimweirich/rake/tree/336559f28f55bce418e2ebcc0a57548dcbac4025
|
|
152
|
+
|
|
153
|
+
You can {read more about Jim}[https://en.wikipedia.org/wiki/Jim_Weirich] at Wikipedia.
|
|
154
|
+
|
|
155
|
+
Thank you for this great tool, Jim. We'll remember you.
|
data/doc/command_line_usage.rdoc
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Rake is invoked from the command line using:
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
% rake [options ...] [VAR=VALUE ...] [targets ...]
|
|
6
6
|
|
|
7
7
|
Options are:
|
|
8
8
|
|
|
@@ -11,12 +11,22 @@ Options are:
|
|
|
11
11
|
during the execution of the <b>rake</b> command. You can access
|
|
12
12
|
the value by using ENV['<em>name</em>'].
|
|
13
13
|
|
|
14
|
-
[<tt>--
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
14
|
+
[<tt>--all</tt> (-A)]
|
|
15
|
+
Used in combination with the -T and -D options, will force
|
|
16
|
+
those options to show all the tasks, even the ones without comments.
|
|
17
|
+
|
|
18
|
+
[<tt>--backtrace</tt>{=_output_} (-n)]
|
|
19
|
+
Enable a full backtrace (i.e. like --trace, but without the task
|
|
20
|
+
tracing details). The _output_ parameter is optional, but if
|
|
21
|
+
specified it controls where the backtrace output is sent. If
|
|
22
|
+
_output_ is <tt>stdout</tt>, then backtrace output is directed to
|
|
23
|
+
standard output. If _output_ is <tt>stderr</tt>, or if it is
|
|
24
|
+
missing, then the backtrace output is sent to standard error.
|
|
25
|
+
|
|
26
|
+
[<tt>--comments</tt>]
|
|
27
|
+
Used in combination with the -W options to force the output to
|
|
28
|
+
contain commented options only. This is the reverse of
|
|
29
|
+
<tt>--all</tt>.
|
|
20
30
|
|
|
21
31
|
[<tt>--describe</tt> _pattern_ (-D)]
|
|
22
32
|
Describe the tasks (matching optional PATTERN), then exit.
|
|
@@ -31,15 +41,46 @@ Options are:
|
|
|
31
41
|
[<tt>--execute-print</tt> _code_ (-p)]
|
|
32
42
|
Execute some Ruby code, print the result, and exit.
|
|
33
43
|
|
|
34
|
-
[<tt>--execute-continue</tt> _code_ (-
|
|
44
|
+
[<tt>--execute-continue</tt> _code_ (-E)]
|
|
35
45
|
Execute some Ruby code, then continue with normal task processing.
|
|
36
46
|
|
|
37
47
|
[<tt>--help</tt> (-H)]
|
|
38
48
|
Display some help text and exit.
|
|
39
49
|
|
|
50
|
+
[<tt>--jobs</tt> _number_ (-j)]
|
|
51
|
+
|
|
52
|
+
Specifies the maximum number of concurrent threads allowed. Rake
|
|
53
|
+
will allocate threads as needed up to this maximum number.
|
|
54
|
+
|
|
55
|
+
If omitted, Rake will attempt to estimate the number of CPUs on
|
|
56
|
+
the system and add 4 to that number.
|
|
57
|
+
|
|
58
|
+
The concurrent threads are used to execute the <tt>multitask</tt>
|
|
59
|
+
prerequisites. Also see the <tt>-m</tt> option which turns all
|
|
60
|
+
tasks into multitasks.
|
|
61
|
+
|
|
62
|
+
Sample values:
|
|
63
|
+
(no -j) : Allow up to (# of CPUs + 4) number of threads
|
|
64
|
+
--jobs : Allow unlimited number of threads
|
|
65
|
+
--jobs=1 : Allow only one thread (the main thread)
|
|
66
|
+
--jobs=16 : Allow up to 16 concurrent threads
|
|
67
|
+
|
|
68
|
+
[<tt>--job-stats</tt> _level_]
|
|
69
|
+
|
|
70
|
+
Display job statistics at the completion of the run. By default,
|
|
71
|
+
this will display the requested number of active threads (from the
|
|
72
|
+
-j options) and the maximum number of threads in play at any given
|
|
73
|
+
time.
|
|
74
|
+
|
|
75
|
+
If the optional _level_ is <tt>history</tt>, then a complete trace
|
|
76
|
+
of task history will be displayed on standard output.
|
|
77
|
+
|
|
40
78
|
[<tt>--libdir</tt> _directory_ (-I)]
|
|
41
79
|
Add _directory_ to the list of directories searched for require.
|
|
42
80
|
|
|
81
|
+
[<tt>--multitask</tt> (-m)]
|
|
82
|
+
Treat all tasks as multitasks. ('make/drake' semantics)
|
|
83
|
+
|
|
43
84
|
[<tt>--nosearch</tt> (-N)]
|
|
44
85
|
Do not search for a Rakefile in parent directories.
|
|
45
86
|
|
|
@@ -69,6 +110,11 @@ Options are:
|
|
|
69
110
|
[<tt>--silent (-s)</tt>]
|
|
70
111
|
Like --quiet, but also suppresses the 'in directory' announcement.
|
|
71
112
|
|
|
113
|
+
[<tt>--suppress-backtrace _pattern_ </tt>]
|
|
114
|
+
Line matching the regular expression _pattern_ will be removed
|
|
115
|
+
from the backtrace output. Note that the --backtrace option is the
|
|
116
|
+
full backtrace without these lines suppressed.
|
|
117
|
+
|
|
72
118
|
[<tt>--system</tt> (-g)]
|
|
73
119
|
Use the system wide (global) rakefiles. The project Rakefile is
|
|
74
120
|
ignored. By default, the system wide rakefiles are used only if no
|
|
@@ -85,19 +131,13 @@ Options are:
|
|
|
85
131
|
are defined using the "desc" command. If a pattern is given, then
|
|
86
132
|
only tasks matching the pattern are displayed.
|
|
87
133
|
|
|
88
|
-
[<tt>--
|
|
89
|
-
Do not put the Rake DSL commands into the top level scope.
|
|
90
|
-
|
|
91
|
-
[<tt>--top-level-dsl</tt>]
|
|
92
|
-
Put the Rake DSL commands into the top level scope (default).
|
|
93
|
-
|
|
94
|
-
NOTE: Although currently Rake defaults to its DSL in the top level
|
|
95
|
-
scope, the plan is to deprecate this in the future and default ot
|
|
96
|
-
having the DSL commands *not* appear in the top level scope.
|
|
97
|
-
|
|
98
|
-
[<tt>--trace</tt> (-t)]
|
|
134
|
+
[<tt>--trace</tt>{=_output_} (-t)]
|
|
99
135
|
Turn on invoke/execute tracing. Also enable full backtrace on
|
|
100
|
-
errors.
|
|
136
|
+
errors. The _output_ parameter is optional, but if specified it
|
|
137
|
+
controls where the trace output is sent. If _output_ is
|
|
138
|
+
<tt>stdout</tt>, then trace output is directed to standard output.
|
|
139
|
+
If _output_ is <tt>stderr</tt>, or if it is missing, then trace
|
|
140
|
+
output is sent to standard error.
|
|
101
141
|
|
|
102
142
|
[<tt>--verbose</tt> (-v)]
|
|
103
143
|
Echo the Sys commands to standard output.
|
|
@@ -107,7 +147,11 @@ Options are:
|
|
|
107
147
|
|
|
108
148
|
[<tt>--where</tt> <em>pattern</em> (-W)]
|
|
109
149
|
Display tasks that match <em>pattern</em> and the file and line
|
|
110
|
-
number where the task is defined.
|
|
150
|
+
number where the task is defined. By default this option will
|
|
151
|
+
display all tasks, not just the tasks that have descriptions.
|
|
152
|
+
|
|
153
|
+
[<tt>--no-deprecation-warnings</tt> (-X)]
|
|
154
|
+
Do not display the deprecation warnings.
|
|
111
155
|
|
|
112
156
|
In addition, any command line option of the form
|
|
113
157
|
<em>VAR</em>=<em>VALUE</em> will be added to the environment hash
|
data/doc/glossary.rdoc
CHANGED
|
@@ -1,51 +1,42 @@
|
|
|
1
1
|
= Glossary
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
[<b>rule</b>]
|
|
45
|
-
A rule is a recipe for synthesizing a task when no task is
|
|
46
|
-
explicitly defined. Rules generally synthesize file tasks.
|
|
47
|
-
|
|
48
|
-
[<b>task</b> (Task)]
|
|
49
|
-
Basic unit of work in a rakefile. A task has a name, a set of
|
|
50
|
-
prerequisites and a list of actions to be performed.
|
|
51
|
-
|
|
3
|
+
action ::
|
|
4
|
+
Code to be executed in order to perform a task. Actions in a Rakefile are
|
|
5
|
+
specified in a code block. (Usually delimited by +do+/+end+ pairs.)
|
|
6
|
+
|
|
7
|
+
execute ::
|
|
8
|
+
When a task is executed, all of its actions are performed in the order they
|
|
9
|
+
were defined. Note that, unlike <tt>invoke</tt>, <tt>execute</tt> always
|
|
10
|
+
executes the actions (without invoking or executing the prerequisites).
|
|
11
|
+
|
|
12
|
+
file task (Rake::FileTask) ::
|
|
13
|
+
A file task is a task whose purpose is to create a file (which has the same
|
|
14
|
+
name as the task). When invoked, a file task will only execute if one or
|
|
15
|
+
more of the following conditions are true.
|
|
16
|
+
|
|
17
|
+
1. The associated file does not exist.
|
|
18
|
+
2. A prerequisite has a later time stamp than the existing file.
|
|
19
|
+
|
|
20
|
+
Because normal Tasks always have the current time as timestamp, a FileTask
|
|
21
|
+
that has a normal Task prerequisite will always execute.
|
|
22
|
+
|
|
23
|
+
invoke ::
|
|
24
|
+
When a task is invoked, first we check to see if it has been invoked before.
|
|
25
|
+
If it has been, then nothing else is done. If this is the first time it has
|
|
26
|
+
been invoked, then we invoke each of its prerequisites. Finally, we check
|
|
27
|
+
to see if we need to execute the actions of this task by calling
|
|
28
|
+
Rake::Task#needed?. If the task is needed, we execute its actions.
|
|
29
|
+
|
|
30
|
+
NOTE: Prerequisites are still invoked even if the task is not needed.
|
|
31
|
+
|
|
32
|
+
prerequisites ::
|
|
33
|
+
Every task has a (possibly empty) set of prerequisites. A prerequisite P to
|
|
34
|
+
Task T is itself a task that must be invoked before Task T.
|
|
35
|
+
|
|
36
|
+
rule ::
|
|
37
|
+
A rule is a recipe for synthesizing a task when no task is explicitly
|
|
38
|
+
defined. Rules generally synthesize file tasks.
|
|
39
|
+
|
|
40
|
+
task (Rake::Task) ::
|
|
41
|
+
The basic unit of work in a Rakefile. A task has a name, a set of
|
|
42
|
+
prerequisites, and a list of actions to be performed.
|
data/doc/jamis.rb
CHANGED
data/doc/rake.1
ADDED
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
.Dd June 12, 2016
|
|
2
|
+
.Dt RAKE 1
|
|
3
|
+
.Os rake 11.2.2
|
|
4
|
+
.Sh NAME
|
|
5
|
+
.Nm rake
|
|
6
|
+
.Nd make-like build utility for Ruby
|
|
7
|
+
.Sh SYNOPSIS
|
|
8
|
+
.Nm
|
|
9
|
+
.Op Fl f Ar rakefile
|
|
10
|
+
.Op Ar options
|
|
11
|
+
.Ar targets ...
|
|
12
|
+
.Sh DESCRIPTION
|
|
13
|
+
.Nm
|
|
14
|
+
is a
|
|
15
|
+
.Xr make 1 Ns -like
|
|
16
|
+
build utility for Ruby.
|
|
17
|
+
Tasks and dependencies are specified in standard Ruby syntax.
|
|
18
|
+
.Sh OPTIONS
|
|
19
|
+
.Bl -tag -width Ds
|
|
20
|
+
.It Fl m , Fl -multitask
|
|
21
|
+
Treat all tasks as multitasks.
|
|
22
|
+
.It Fl B , Fl -build-all
|
|
23
|
+
Build all prerequisites, including those which are up\-to\-date.
|
|
24
|
+
.It Fl j , Fl -jobs Ar num_jobs
|
|
25
|
+
Specifies the maximum number of tasks to execute in parallel (default is number of CPU cores + 4).
|
|
26
|
+
.El
|
|
27
|
+
.Ss Modules
|
|
28
|
+
.Bl -tag -width Ds
|
|
29
|
+
.It Fl I , Fl -libdir Ar libdir
|
|
30
|
+
Include
|
|
31
|
+
.Ar libdir
|
|
32
|
+
in the search path for required modules.
|
|
33
|
+
.It Fl r , Fl -require Ar module
|
|
34
|
+
Require
|
|
35
|
+
.Ar module
|
|
36
|
+
before executing
|
|
37
|
+
.Pa rakefile .
|
|
38
|
+
.El
|
|
39
|
+
.Ss Rakefile location
|
|
40
|
+
.Bl -tag -width Ds
|
|
41
|
+
.It Fl f , Fl -rakefile Ar filename
|
|
42
|
+
Use
|
|
43
|
+
.Ar filename
|
|
44
|
+
as the rakefile to search for.
|
|
45
|
+
.It Fl N , Fl -no-search , Fl -nosearch
|
|
46
|
+
Do not search parent directories for the Rakefile.
|
|
47
|
+
.It Fl G , Fl -no-system , Fl -nosystem
|
|
48
|
+
Use standard project Rakefile search paths, ignore system wide rakefiles.
|
|
49
|
+
.It Fl R , Fl -rakelib Ar rakelibdir , Fl -rakelibdir Ar rakelibdir
|
|
50
|
+
Auto-import any .rake files in
|
|
51
|
+
.Ar rakelibdir
|
|
52
|
+
(default is
|
|
53
|
+
.Sq rakelib )
|
|
54
|
+
.It Fl g , Fl -system
|
|
55
|
+
Use system-wide (global) rakefiles (usually
|
|
56
|
+
.Pa ~/.rake/*.rake ) .
|
|
57
|
+
.El
|
|
58
|
+
.Ss Debugging
|
|
59
|
+
.Bl -tag -width Ds
|
|
60
|
+
.It Fl -backtrace Ns = Ns Ar out
|
|
61
|
+
Enable full backtrace.
|
|
62
|
+
.Ar out
|
|
63
|
+
can be
|
|
64
|
+
.Dv stderr
|
|
65
|
+
(default) or
|
|
66
|
+
.Dv stdout .
|
|
67
|
+
.It Fl t , Fl -trace Ns = Ns Ar out
|
|
68
|
+
Turn on invoke/execute tracing, enable full backtrace.
|
|
69
|
+
.Ar out
|
|
70
|
+
can be
|
|
71
|
+
.Dv stderr
|
|
72
|
+
(default) or
|
|
73
|
+
.Dv stdout .
|
|
74
|
+
.It Fl -suppress-backtrace Ar pattern
|
|
75
|
+
Suppress backtrace lines matching regexp
|
|
76
|
+
.Ar pattern .
|
|
77
|
+
Ignored if
|
|
78
|
+
.Fl -trace
|
|
79
|
+
is on.
|
|
80
|
+
.It Fl -rules
|
|
81
|
+
Trace the rules resolution.
|
|
82
|
+
.It Fl n , Fl -dry-run
|
|
83
|
+
Do a dry run without executing actions.
|
|
84
|
+
.It Fl T , Fl -tasks Op Ar pattern
|
|
85
|
+
Display the tasks (matching optional
|
|
86
|
+
.Ar pattern )
|
|
87
|
+
with descriptions, then exit.
|
|
88
|
+
.It Fl D , Fl -describe Op Ar pattern
|
|
89
|
+
Describe the tasks (matching optional
|
|
90
|
+
.Ar pattern ) ,
|
|
91
|
+
then exit.
|
|
92
|
+
.It Fl W , Fl -where Op Ar pattern
|
|
93
|
+
Describe the tasks (matching optional
|
|
94
|
+
.Ar pattern ) ,
|
|
95
|
+
then exit.
|
|
96
|
+
.It Fl P , Fl -prereqs
|
|
97
|
+
Display the tasks and dependencies, then exit.
|
|
98
|
+
.It Fl e , Fl -execute Ar code
|
|
99
|
+
Execute some Ruby code and exit.
|
|
100
|
+
.It Fl p , Fl -execute-print Ar code
|
|
101
|
+
Execute some Ruby code, print the result, then exit.
|
|
102
|
+
.It Fl E , Fl -execute-continue Ar code
|
|
103
|
+
Execute some Ruby code, then continue with normal task processing.
|
|
104
|
+
.El
|
|
105
|
+
.Ss Information
|
|
106
|
+
.Bl -tag -width Ds
|
|
107
|
+
.It Fl v , Fl -verbose
|
|
108
|
+
Log message to standard output.
|
|
109
|
+
.It Fl q , Fl -quiet
|
|
110
|
+
Do not log messages to standard output.
|
|
111
|
+
.It Fl s , Fl -silent
|
|
112
|
+
Like
|
|
113
|
+
.Fl -quiet ,
|
|
114
|
+
but also suppresses the
|
|
115
|
+
.Sq in directory
|
|
116
|
+
announcement.
|
|
117
|
+
.It Fl X , Fl -no-deprecation-warnings
|
|
118
|
+
Disable the deprecation warnings.
|
|
119
|
+
.It Fl -comments
|
|
120
|
+
Show commented tasks only
|
|
121
|
+
.It Fl A , Fl -all
|
|
122
|
+
Show all tasks, even uncommented ones (in combination with
|
|
123
|
+
.Fl T
|
|
124
|
+
or
|
|
125
|
+
.Fl D )
|
|
126
|
+
.It Fl -job-stats Op Ar level
|
|
127
|
+
Display job statistics.
|
|
128
|
+
If
|
|
129
|
+
.Ar level
|
|
130
|
+
is
|
|
131
|
+
.Sq history ,
|
|
132
|
+
displays a complete job list.
|
|
133
|
+
.It Fl V , Fl -version
|
|
134
|
+
Display the program version.
|
|
135
|
+
.It Fl h , Fl H , Fl -help
|
|
136
|
+
Display a help message.
|
|
137
|
+
.El
|
|
138
|
+
.Sh SEE ALSO
|
|
139
|
+
The complete documentation for
|
|
140
|
+
.Nm rake
|
|
141
|
+
has been installed at
|
|
142
|
+
.Pa /usr/share/doc/rake-doc/html/index.html .
|
|
143
|
+
It is also available online at
|
|
144
|
+
.Lk https://ruby.github.io/rake .
|
|
145
|
+
.Sh AUTHORS
|
|
146
|
+
.An -nosplit
|
|
147
|
+
.Nm
|
|
148
|
+
was written by
|
|
149
|
+
.An Jim Weirich Aq Mt jim@weirichhouse.org .
|
|
150
|
+
.Pp
|
|
151
|
+
This manual was created by
|
|
152
|
+
.An Caitlin Matos Aq Mt caitlin.matos@zoho.com
|
|
153
|
+
for the Debian project (but may be used by others).
|
|
154
|
+
It was inspired by the manual by
|
|
155
|
+
.An Jani Monoses Aq Mt jani@iv.ro
|
|
156
|
+
for the Ubuntu project.
|