reap 6.0.2 → 9.2.0

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 (174) hide show
  1. data/CHANGES +6 -0
  2. data/COPYING +666 -395
  3. data/MANIFEST +139 -0
  4. data/NOTES +12 -0
  5. data/README +19 -163
  6. data/bin/reap-announce +7 -0
  7. data/bin/reap-check-load +8 -0
  8. data/bin/reap-check-syntax +7 -0
  9. data/bin/reap-clean +7 -0
  10. data/bin/reap-clobber +7 -0
  11. data/bin/reap-doc +7 -0
  12. data/bin/reap-doc-rdoc +7 -0
  13. data/bin/reap-doc-ri +7 -0
  14. data/bin/reap-init +69 -0
  15. data/bin/reap-inspect +7 -0
  16. data/bin/reap-install +8 -0
  17. data/bin/reap-install-gem +8 -0
  18. data/bin/reap-log +7 -0
  19. data/bin/reap-log-changes +8 -0
  20. data/bin/reap-log-notes +8 -0
  21. data/bin/reap-make +7 -0
  22. data/bin/reap-make-clean +7 -0
  23. data/bin/reap-make-distclean +7 -0
  24. data/bin/reap-make-extconf +7 -0
  25. data/bin/reap-make-static +8 -0
  26. data/bin/reap-package +8 -0
  27. data/bin/reap-package-gem +7 -0
  28. data/bin/reap-package-tgz +7 -0
  29. data/bin/reap-package-zip +7 -0
  30. data/bin/reap-prepare +7 -0
  31. data/bin/reap-publish +7 -0
  32. data/bin/reap-release +7 -0
  33. data/bin/reap-scaffold +8 -0
  34. data/bin/reap-scm-branch +7 -0
  35. data/bin/reap-scm-tag +7 -0
  36. data/bin/reap-spec +7 -0
  37. data/bin/reap-spec-doc +8 -0
  38. data/bin/reap-stamp +7 -0
  39. data/bin/reap-stats +7 -0
  40. data/bin/reap-test +7 -0
  41. data/bin/reap-test-cross +7 -0
  42. data/bin/reap-test-load +9 -0
  43. data/bin/reap-test-solo +7 -0
  44. data/bin/reap-uninstall +7 -0
  45. data/bin/reap-uninstall-gem +7 -0
  46. data/data/reap/base/CHANGES +19 -0
  47. data/data/reap/base/COPYING +674 -0
  48. data/data/reap/base/NOTES +12 -0
  49. data/data/reap/base/README +8 -0
  50. data/data/reap/build/rake/Rakefile +130 -0
  51. data/{forge/reference/installers → data/reap/build/rake}/setup.rb +155 -97
  52. data/data/reap/build/rake-lite/install.rb +79 -0
  53. data/data/reap/build/tasks/task/rdoc +211 -0
  54. data/data/reap/{setup.rb → build/tasks/task/setup} +248 -200
  55. data/data/reap/build/tasks/task/test +38 -0
  56. data/data/reap/init/meta/project.yaml +21 -0
  57. data/demo/README +15 -0
  58. data/demo/lib/foo/foo.rb +7 -0
  59. data/demo/meta/VERSION +1 -0
  60. data/demo/meta/project.yaml +21 -0
  61. data/lib/reap/application.rb +80 -0
  62. data/lib/reap/default.yaml +77 -0
  63. data/lib/reap/extensions/array.rb +50 -0
  64. data/lib/reap/extensions/hash.rb +63 -0
  65. data/lib/reap/extensions/string.rb +31 -0
  66. data/lib/reap/extensions.rb +6 -0
  67. data/lib/reap/iobject.rb +264 -0
  68. data/lib/reap/manager/announce.rb +193 -0
  69. data/lib/reap/manager/check.rb +109 -0
  70. data/lib/reap/manager/clean.rb +58 -0
  71. data/lib/reap/manager/gem.rb +200 -0
  72. data/lib/reap/manager/html.rb +69 -0
  73. data/lib/reap/manager/log.rb +214 -0
  74. data/lib/reap/manager/make.rb +109 -0
  75. data/lib/reap/manager/pack.rb +232 -0
  76. data/lib/reap/manager/publish.rb +72 -0
  77. data/lib/reap/manager/rdoc.rb +194 -0
  78. data/lib/reap/manager/release.rb +78 -0
  79. data/lib/reap/manager/rubyforge.rb +44 -0
  80. data/lib/reap/manager/scaffold.rb +138 -0
  81. data/lib/reap/manager/scm.rb +66 -0
  82. data/lib/reap/manager/site.rb +27 -0
  83. data/lib/reap/manager/spec.rb +94 -0
  84. data/lib/reap/manager/stats.rb +145 -0
  85. data/lib/reap/manager/svn.rb +76 -0
  86. data/lib/reap/manager/test.rb +389 -0
  87. data/lib/reap/manager.rb +74 -0
  88. data/lib/reap/metadata.rb +603 -0
  89. data/lib/reap/project.rb +165 -0
  90. data/lib/reap/settings.rb +67 -0
  91. data/lib/reap/systems/rubyforge.rb +737 -0
  92. data/lib/reap/systems/subversion.rb +333 -0
  93. data/lib/reap/utilities/fileutils.rb +304 -0
  94. data/lib/reap/utilities/netutils.rb +221 -0
  95. data/lib/reap/utilities/setuputils.rb +124 -0
  96. data/lib/reap/utilities/shellutils.rb +175 -0
  97. data/log/Changelog.txt +107 -0
  98. data/log/FIXME.txt +25 -0
  99. data/log/TODO.txt +72 -0
  100. data/meta/VERSION +1 -0
  101. data/meta/description +4 -0
  102. data/meta/project.yaml +20 -0
  103. data/task/man +14 -0
  104. data/task/rdoc +20 -0
  105. data/{data/reap/scaffold/standard/setup.rb → task/setup} +248 -200
  106. metadata +225 -153
  107. data/ProjectInfo +0 -105
  108. data/bin/reap +0 -5
  109. data/bin/rubytest +0 -5
  110. data/data/reap/install.rb +0 -62
  111. data/data/reap/scaffold/standard/COPYING +0 -403
  112. data/data/reap/scaffold/standard/ChangeLog +0 -0
  113. data/data/reap/scaffold/standard/INSTALL +0 -14
  114. data/data/reap/scaffold/standard/ProjectInfo +0 -77
  115. data/data/reap/scaffold/standard/README +0 -3
  116. data/data/reap/scaffold/standard/Rakefile +0 -10
  117. data/data/reap/scaffold/standard/TODO +0 -0
  118. data/data/reap/scaffold/subversion/trunk/COPYING +0 -403
  119. data/data/reap/scaffold/subversion/trunk/ChangeLog +0 -0
  120. data/data/reap/scaffold/subversion/trunk/INSTALL +0 -14
  121. data/data/reap/scaffold/subversion/trunk/ProjectInfo +0 -76
  122. data/data/reap/scaffold/subversion/trunk/README +0 -3
  123. data/data/reap/scaffold/subversion/trunk/Rakefile +0 -10
  124. data/data/reap/scaffold/subversion/trunk/TODO +0 -0
  125. data/data/reap/scaffold/subversion/trunk/setup.rb +0 -1568
  126. data/forge/ProjectInfo +0 -38
  127. data/forge/ProjectInfo.rb +0 -76
  128. data/forge/TODO +0 -10
  129. data/forge/installer.rb +0 -250
  130. data/forge/reference/Rakefile +0 -124
  131. data/forge/reference/Rakefile.htm +0 -69
  132. data/forge/reference/aRakefile +0 -60
  133. data/forge/reference/compositepublisher.rb +0 -24
  134. data/forge/reference/ftptools.rb +0 -139
  135. data/forge/reference/installers/package.rb +0 -629
  136. data/forge/reference/license-each.rb +0 -85
  137. data/forge/reference/publisher.rb +0 -75
  138. data/forge/reference/rubyforge.rb +0 -247
  139. data/forge/reference/rubyforgepublisher.rb +0 -18
  140. data/forge/reference/sshpublisher.rb +0 -47
  141. data/forge/reference/suby-cvs.rb +0 -46
  142. data/forge/scaffold.rb +0 -126
  143. data/forge/unit_runner/README +0 -6
  144. data/forge/unit_runner/commentrunner.rb +0 -62
  145. data/forge/unit_runner/cunit.rb +0 -17
  146. data/forge/unit_runner/forkedrunner.rb +0 -91
  147. data/forge/unit_runner/sample.rb +0 -16
  148. data/lib/reap/bin/reap.rb +0 -230
  149. data/lib/reap/bin/rubytest.rb +0 -53
  150. data/lib/reap/class/announce.rb +0 -220
  151. data/lib/reap/class/doap.rb +0 -80
  152. data/lib/reap/class/extest.rb +0 -146
  153. data/lib/reap/class/filer.rb +0 -62
  154. data/lib/reap/class/manifest.rb +0 -68
  155. data/lib/reap/class/package.rb +0 -576
  156. data/lib/reap/class/publish.rb +0 -152
  157. data/lib/reap/class/rdoc.rb +0 -123
  158. data/lib/reap/class/test.rb +0 -264
  159. data/lib/reap/projectinfo.rb +0 -208
  160. data/lib/reap/rake.rb +0 -42
  161. data/lib/reap/reap.rb +0 -89
  162. data/lib/reap/tasks.rb +0 -756
  163. data/lib/reap/taskutils.rb +0 -122
  164. data/note/LATEST +0 -44
  165. data/note/doap.xml +0 -28
  166. data/note/history/Rakefile-0.1 +0 -308
  167. data/sample/ProjectInfo +0 -96
  168. data/sample/Rakefile +0 -9
  169. data/sample/Reapfile +0 -11
  170. data/sample/task/demo.rb +0 -15
  171. data/setup.rb +0 -1568
  172. data/web/ProjectInfo.html +0 -75
  173. data/web/images/grape.jpg +0 -0
  174. data/web/index.html +0 -312
@@ -1,122 +0,0 @@
1
- require 'fileutils'
2
-
3
- # Extensions to time to allow comparisons
4
- # with an early time class. This was borrowed from Rake.
5
- # --
6
- # TODO Ultimately this might be able to be replaced
7
- # by -Infinity (see Infinity class in development folder).
8
- #++
9
-
10
- class Time
11
- require 'singleton'
12
-
13
- # EarlyTime is a fake timestamp that occurs _before_
14
- # any other time value.
15
- class Earlier
16
- include Comparable
17
- include Singleton
18
-
19
- def <=>(other)
20
- -1
21
- end
22
-
23
- def to_s
24
- "<EARLY TIME>"
25
- end
26
- end
27
-
28
- EARLY = Earlier.instance
29
-
30
- alias_method :rake_original_time_compare, :<=>
31
-
32
- def <=>(other)
33
- if Earlier === other
34
- - other.<=>(self)
35
- else
36
- rake_original_time_compare(other)
37
- end
38
- end
39
- end
40
-
41
- # Reap module holds the TaskUtils.
42
-
43
- module Reap
44
-
45
- # Support module for task development.
46
-
47
- module TaskUtils
48
-
49
- # Useful for populating a class.
50
- # Maybe this should have a different name --perhaps
51
- # just use Facets #set_with.
52
-
53
- def initialize( data={} )
54
- data.each do |k,v|
55
- send( "#{k}=", v ) if respond_to?("#{k}=")
56
- end
57
- end
58
-
59
- # OpenCascade interface to teh ProjectInfo file.
60
-
61
- def master
62
- @taskutils_master ||= ProjectInfo.instance.to_opencascade
63
- end
64
-
65
- # If +name+ is a hash this will split the name => preq parameter
66
- # into [name, preq], otherwise it just return +name+.
67
- # Teh hash is expected to have only one element.
68
-
69
- def preq_from_name( name )
70
- if Hash === name
71
- #a = [name.keys, name.values].flatten
72
- return *(name.to_a.flatten)
73
- else
74
- name
75
- end
76
- end
77
-
78
- # Output and then shellout a command. Doesn't actually
79
- # shellout if $PRETEND is set.
80
-
81
- def sh( arg )
82
- tell arg
83
- system arg unless $PRETEND
84
- end
85
-
86
- # Convenience method for puts. Using this instead of
87
- # puts may help beautify or redirect output in
88
- # future versions.
89
-
90
- def tell( statement )
91
- puts statement
92
- end
93
-
94
- # Conveniene method to get simple console reply.
95
-
96
- def ask( question, answers=nil )
97
- print "#{question}"
98
- print " [#{answers}] " if answers
99
- until inp = $stdin.gets[0,1] ; sleep 1 ; end ; puts
100
- inp
101
- end
102
-
103
- # Makes sure there is a setup.rb file in the
104
- # project directory.
105
-
106
- def provide_setup_rb( trunk='.' )
107
- setup_rb_file = File.join( trunk, 'setup.rb' )
108
- return true if File.exists?( setup_rb_file )
109
- if dir = Gem.gempath('reap')
110
- src = File.join( dir, 'data', 'reap', 'setup.rb' )
111
- else
112
- src = File.join( Config::CONFIG['datadir'], 'reap', 'setup.rb' )
113
- end
114
- if File.exists?( src )
115
- FileUtils.cp( src, trunk )
116
- true
117
- end
118
- end
119
-
120
- end
121
-
122
- end
data/note/LATEST DELETED
@@ -1,44 +0,0 @@
1
-
2
- One hop, a skip and a jump. In just suca a fashion we're on to
3
- the next major veriosn of Reap. Reap 6 has now reached a whole
4
- new level of elegance and capability. The core of the system has
5
- been completely rewritten, thanks to lessons learned from the
6
- previous incarnations and honoring the defacto standard of Rake's
7
- task definitions, a Reap task is now easily defined like so:
8
-
9
- module Tasks
10
-
11
- def footask( name, &data )
12
-
13
- desc "Describing a foo task"
14
-
15
- task name do
16
- data = data.to_openobject
17
- puts "Doing what a foo task #{data.does}!"
18
- end
19
-
20
- end
21
-
22
- end
23
-
24
- See the resemblance? Does Reap require Rake? No! Reap has it's
25
- own task system that work's like Rake's --provided by Facets'
26
- taskable.rb library. And you can use Reap much like you'd use
27
- Rake. Indeed, one can resuse Reap's built-in tasks without
28
- even setting up a ProjectInfo file. In a Reapfile:
29
-
30
- task_footask 'footask' do |data|
31
- data.does = 'does'
32
- end
33
-
34
- Yep. You can do that. Of course why you would want to forgo
35
- the beauty of the ProjectInfo file and this gorgeous solution?
36
-
37
- footask: !!footask
38
- does: 'does'
39
-
40
- That's something for your own conscious to wrestle ;)
41
-
42
- Enjoy,
43
- T.
44
-
data/note/doap.xml DELETED
@@ -1,28 +0,0 @@
1
- <Project xmlns="http://usefulinc.com/ns/doap#"
2
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
3
- xmlns:foaf="http://xmlns.com/foaf/0.1/">
4
- <name>Reap</name>
5
- <shortname>reap</shortname>
6
- <homepage rdf:resource="http://reap.rubyforge.org" />
7
- <wiki rdf:resource="" />
8
- <created>2004-04-01</created>
9
- <shortdesc xml:lang="en">
10
- The Flexible Ruby Project Management Assistant
11
- </shortdesc>
12
- <description xml:lang="en">
13
- Reap comprises a set of tasks commonly needed by
14
- Ruby package developers/deployers, such as
15
- testing, packaging, releasing, etc. You can also
16
- use Reap to create your own custom tasks. Reap
17
- utilizes a YAML configuration file to harvest
18
- common project information, significantly
19
- simplifying these chores.
20
- </description>
21
- <maintainer>
22
- <foaf:Person>
23
- <foaf:name>Thomas Sawyer</foaf:name>
24
- <foaf:email>transfire@gmail.com</foaf:name>
25
- <foaf:homepage rdf:resource="http://reap.rubyforge.org" />
26
- </foaf:Person>
27
- </maintainer>
28
- </Project>
@@ -1,308 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- PKG_TITLE = 'WhiteCloth'
4
- PKG_NAME = 'whitecloth'
5
- PKG_VERSION = '1'
6
- PKG_AUTHOR = 'Thomas Sawyer'
7
- PKG_EMAIL = 'transami@runbox.com'
8
- PKG_SUMMARY = 'WhiteCloth is an implementation of ArtML'
9
- PKG_DESCRIPTION = 'WhiteCloth is a Ruby implementation of ArtML'
10
-
11
- # site info
12
- # remark out if you don't need
13
- PKG_HOMEPAGE = 'http://whitecloth.rubyforge.org'
14
- PKG_RUBYFORGE_PROJECT = 'whitecloth'
15
- PKG_RUBYFORGE_PASS = nil
16
-
17
- # all package files
18
- PKG_FILES = [ 'lib/**/*', 'test/**/*', 'samples/**/*', 'doc/**/*', '[A-Z]*', 'Rakefile' ]
19
-
20
- # rdoc
21
- RDOC_TITLE = PKG_TITLE
22
- RDOC_DIR = 'doc'
23
- RDOC_TEMPLATE = 'kilmer'
24
- RDOC_OPTIONS = ''
25
- RDOC_INCLUDE = [ 'VERSION', 'README', 'CHANGELOG', 'TODO', 'COPYING', 'lib/**/*.rb', 'bin/**/*.rb' ]
26
- RDOC_EXCLUDE = []
27
-
28
- # include in distribution
29
- PKG_DIST_DIRS = [ 'bin', 'lib', 'test', 'samples' ]
30
- PKG_DIST_FILES = [ 'README', 'TODO', 'CHANGELOG', 'VERSION', 'LICENSE', 'Rakefile' ]
31
-
32
- # tests
33
- PKG_TEST_DIR = 'test'
34
- PKG_TEST_FILES = [ 'test/*_test.rb', 'test/**/*_test.rb' ]
35
-
36
- =begin
37
- # library files for manual install
38
- PKG_LIB_DIR = 'lib'
39
- PKG_LIB_MKDIRS = '**/*/'
40
- PKG_LIB_FILES = [ '**/*.rb', '**/*.yaml' ]
41
- PKG_LIB_DEPRECATE = []
42
-
43
- # binary files for manual install
44
- PKG_BIN_DIR = 'bin'
45
- PKG_BIN_FILES = '**/*'
46
- PKG_BIN_DEPRECATE = []
47
- =end
48
-
49
- #***************************************************************************
50
- # The PackMule Rakefile v0.1
51
- # PackMule can run tests, build packages and gems, manually install,
52
- # generate rdocs, and publish them. CVS support might be added later.
53
- #
54
- # In general, layout your project directory as follows:
55
- # - lib/
56
- # - lib/#{lib_name}/ if you need a lib dir
57
- # - bin/
58
- # - test/
59
- # - demo/ -or- examples/ -or- samples/
60
- # - doc/ -and;or- rdoc/
61
- # The test dir can have subdirs, but tests should be named
62
- # like '#{name}_test.rb' or 'test_#{name}.rb'.
63
- #
64
- # Then use the Rake.yaml config file designed for this form.
65
- # To get a blank config for this form type:
66
- # > rake form
67
- # This will send the form to stdout. There may be a line like
68
- # "(in ...)" at the beginning, just remove it or remark it.
69
- #***************************************************************************
70
-
71
- require 'rake'
72
- require 'rubygems'
73
- require 'rake/testtask'
74
- require 'rake/rdoctask'
75
- require 'rake/packagetask'
76
- require 'rake/gempackagetask'
77
- require 'rake/contrib/rubyforgepublisher'
78
-
79
- #################################################
80
- # load config from Rake.yaml and make constants #
81
- #################################################
82
- #YAML::load( File.open('Rake.yaml') ).each{|c,v| self.class.const_set(c,v)}
83
-
84
-
85
- ##
86
- # = Default Task
87
- ##
88
-
89
- desc "Default Task (test)"
90
- task :default => [ :test ]
91
-
92
-
93
- ##
94
- # = Run Unit Tests
95
- ##
96
-
97
- Rake::TestTask.new("test") { |t|
98
- #t.desc "Run all tests"
99
- t.libs << PKG_TEST_DIR
100
- PKG_TEST_FILES.each { |pat| t.pattern = pat }
101
- t.verbose = true
102
- }
103
-
104
-
105
- ##
106
- # = Genereate RDoc Documentation
107
- ##
108
-
109
- Rake::RDocTask.new { |rdoc|
110
- rdoc.rdoc_dir = RDOC_DIR
111
- rdoc.template = RDOC_TEMPLATE
112
- rdoc.title = RDOC_TITLE
113
- rdoc.options << '--line-numbers --inline-source ' + RDOC_OPTIONS
114
- rdoc.rdoc_files.include(*RDOC_INCLUDE)
115
- rdoc.rdoc_files.exclude(*RDOC_EXCLUDE)
116
- rdoc.rdoc_files.delete_if { |f| ! File.exist?(f) }
117
- }
118
-
119
-
120
- ##
121
- # = Publish Documentation
122
- ##
123
-
124
- # Publish documentation
125
- #desc "Publish the API documentation"
126
- #task :pdoc => [:rdoc] do
127
- # Rake::SshDirPublisher.new("david@hunter.5th.dk", "sites/rubyonrails.org/ar", "doc").upload
128
- #end
129
-
130
- if PKG_RUBYFORGE_PROJECT
131
- desc "Publish to RubyForge"
132
- task :rubyforge do
133
- Rake::RubyForgePublisher.new(PKG_RUBYFORGE_PROJECT, PKG_RUBYFORGE_PASS).upload
134
- end
135
- end
136
-
137
-
138
- ##
139
- # = Create Compressed Packages
140
- ##
141
-
142
- dist_dirs = PKG_DIST_DIRS
143
-
144
- spec = Gem::Specification.new do |s|
145
- s.name = PKG_NAME
146
- s.version = PKG_VERSION
147
- s.summary = PKG_SUMMARY
148
- s.description = PKG_DESCRIPTION
149
-
150
- s.files = PKG_DIST_FILES
151
- dist_dirs.each do |dir|
152
- s.files.concat Dir.glob( "#{dir}/**/*" ).delete_if { |item| item.include?( "CVS" ) }
153
- end
154
- #s.files.delete "test/fixtures/fixture_database.sqlite"
155
- s.require_path = 'lib'
156
- s.autorequire = '#{PKG_NAME}'
157
- s.has_rdoc = true
158
- s.author = PKG_AUTHOR
159
- s.email = PKG_EMAIL
160
- s.homepage = PKG_HOMEPAGE if PKG_HOMEPAGE
161
- s.rubyforge_project = PKG_RUBYFORGE_PROJECT if PKG_RUBYFORGE_PROJECT
162
- end
163
-
164
- Rake::GemPackageTask.new(spec) do |p|
165
- p.gem_spec = spec
166
- p.need_tar = true
167
- p.need_zip = true
168
- end
169
-
170
-
171
- ##
172
- # = Line Count
173
- ##
174
-
175
- desc "Line Count"
176
- task :lines do
177
- lines = 0
178
- codelines = 0
179
- Dir.foreach("lib/#{PKG_NAME}") { |file_name|
180
- next unless file_name =~ /.*rb/
181
-
182
- f = File.open("lib/#{PKG_NAME}/" + file_name)
183
-
184
- while line = f.gets
185
- lines += 1
186
- next if line =~ /^\s*$/
187
- next if line =~ /^\s*#/
188
- codelines += 1
189
- end
190
- }
191
- puts "Lines #{lines}, LOC #{codelines}"
192
- end
193
-
194
-
195
- =begin
196
- ##
197
- # = Manual Install
198
- ##
199
-
200
- desc "Manual Installation"
201
- task :install do
202
-
203
- # install
204
- # this was adapted from active record's install.rb
205
- # by way of rdoc's install.rb
206
- # by way of Log4r's install.rb
207
- # with some modifications from ruby-gems' install.rb ;)
208
-
209
- require 'rbconfig'
210
- require 'find'
211
- require 'ftools'
212
- require 'fileutils'
213
-
214
- include Config
215
-
216
- #$sitedir = CONFIG["sitelibdir"]
217
- #unless $sitedir
218
- # version = CONFIG["MAJOR"] + "." + CONFIG["MINOR"]
219
- # $libdir = File.join(CONFIG["libdir"], "ruby", version)
220
- #
221
- # $sitedir = $:.find {|x| x =~ /site_ruby/ }
222
- # if !$sitedir
223
- # $sitedir = File.join($libdir, "site_ruby")
224
- # elsif $sitedir !~ Regexp.quote(version)
225
- # $sitedir = File.join($sitedir, version)
226
- # end
227
- #end
228
-
229
- $srcdir = CONFIG["srcdir"]
230
- $version = CONFIG["MAJOR"]+"."+CONFIG["MINOR"]
231
- $libdir = File.join(CONFIG["libdir"], "ruby", $version)
232
- $bindir = CONFIG['bindir']
233
- $archdir = File.join($libdir, CONFIG["arch"])
234
- $sitedir = CONFIG["sitelibdir"]
235
- if !$sitedir
236
- $sitedir = $:.find {|x| x =~ /site_ruby$/}
237
- if !$sitedir
238
- $sitedir = File.join($libdir, "site_ruby")
239
- elsif $sitedir !~ Regexp.new(Regexp.quote($version))
240
- $sitedir = File.join($site_libdir, $version)
241
- end
242
- end
243
-
244
- # get current dir
245
- current_dir = Dir.pwd
246
-
247
- ### install lib files
248
-
249
- if FileTest.directory?(PKG_LIB_DIR)
250
-
251
- # change dir to package lib dir
252
- Dir.chdir(PKG_LIB_DIR)
253
-
254
- # make lib dirs in ruby sitelibdir
255
- makedirs = FileList[*PKG_LIB_MKDIRS].to_a
256
- makedirs.each {|f| File::makedirs( File.join( $sitedir, *f.split(/\//) ) ) }
257
-
258
- # deprecated files that should be removed
259
- deprecated = FileList[*PKG_LIB_DEPRECATE].to_a
260
-
261
- # files to install in library path
262
- files = FileList[*PKG_LIB_FILES].to_a
263
-
264
- # the actual gruntwork
265
- File::safe_unlink *deprecated.collect{|f| File.join($sitedir, f.split(/\//))}
266
- files.each do |f|
267
- File::install(f, File.join($sitedir, *f.split(/\//)), 0644, true)
268
- end
269
-
270
- # change dir back
271
- Dir.chdir(current_dir)
272
-
273
- end
274
-
275
- ### install bin files
276
-
277
- if FileTest.directory?(PKG_BIN_DIR)
278
-
279
- # change dir to package bin dir
280
- Dir.chdir(PKG_BIN_DIR)
281
-
282
- is_windows_platform = CONFIG["arch"] =~ /dos|win32/i
283
-
284
- # files to install in bin path
285
- files = FileList[*PKG_BIN_FILES].to_a
286
-
287
- # deprecated files that should be removed
288
- deprecated = FileList[*PKG_BIN_DEPRECATE].to_a
289
-
290
- # the actual gruntwork
291
- File::safe_unlink *deprecated.collect{|f| File.join($bindir, f.split(/\//))}
292
- files.each do |f|
293
- target = File.join($bindir, *f.split(/\//))
294
- File::install(f, target, 0755, true)
295
- if is_windows_platform
296
- File.open("#{target}.cmd", "w") do |file|
297
- file.puts "@ruby #{target} %1 %2 %3 %4 %5 %6 %7 %8 %9"
298
- end
299
- end
300
- end
301
-
302
- # change dir back
303
- Dir.chdir(current_dir)
304
-
305
- end
306
- =end
307
-
308
- end
data/sample/ProjectInfo DELETED
@@ -1,96 +0,0 @@
1
- --- %YAML:1.0
2
-
3
- version : 1.0.0
4
- status : 'beta'
5
-
6
- title : Reap-Sample
7
- name : reap
8
- author : Thomas Sawyer
9
- created : '2006-06-01'
10
- email : &email transfire@gmail.com
11
- homepage : "http://reap.rubyforge.org"
12
-
13
- summary : The Flexible Ruby Project Management Assistant
14
-
15
- description: >
16
- Reap comprises a set of tasks commonly needed by Ruby package
17
- developers/deployers, such as testing, packaging, releasing, etc.
18
- You can also use Reap to create your own custom tasks.
19
- Reap utilizes a YAML configuration file to harvest common project
20
- information, significantly simplifying these chores.
21
-
22
- rubyforge:
23
- project : reap
24
- username : transami
25
-
26
- #install: !!installer
27
- # template: |
28
- # bin bin * .
29
- # lib lib/reap **/* $name/$version
30
-
31
- #package: !!package
32
- # distribute : [ tar.bz2, gem ]
33
- # dependencies : [ facets ]
34
- # executables : [ reap, rubytest ]
35
- # dir: release
36
- # exclude:
37
- # - dist
38
- # - web
39
- # - doc/dev
40
- # - doc/scrap
41
-
42
- #release: !!release
43
- # host : rubyforge.org
44
- # username : transami
45
- # project : reap
46
- # groupid : 811
47
- # package : Reap
48
- # dir : release
49
-
50
- #publish: !!publish
51
- # target : rubyforge
52
- # type : web
53
- # host : rubyforge.org
54
- # username : transami
55
- # dir : web
56
-
57
- #rdoc: !!rdoc
58
- # dir: 'web/doc/api'
59
- # main: README
60
-
61
- ann: !!announce
62
- to : transfire@gmail.com # ruby-talk@ruby-lang.org
63
- from : *email
64
- domain : unit.rubyforge.org
65
- server : smtp.gmail.com
66
- port : 587
67
- account : *email # transfire@gmail.com
68
- type : login # cram_md5, plain
69
- security : tls # ~, tls, ssl (not working yet)
70
- #file : notes/LATEST # which file contains announcement
71
- memo :
72
- Congragulations! You've given Reap a try! Go ahead and
73
- announce it the world!
74
- slogan : REAP THE REWARDS!
75
- links : []
76
-
77
- doap: !!doap
78
-
79
- loc: !!linecount
80
- include: '*'
81
-
82
- # perm: !!perm
83
- # filemod: 644
84
- # dirmod: 755
85
- # user: trans
86
- # group: users
87
-
88
- demo: !!demo
89
- desc: Give a task an alternate description.
90
- message: Hello Baby!
91
-
92
- # mytask: !!custom
93
- # desc: This is a test of a cutom task.
94
- # task:
95
- # puts "Hello Moto!"
96
-
data/sample/Rakefile DELETED
@@ -1,9 +0,0 @@
1
- require 'reap/rake'
2
-
3
- desc "I call it what I will"
4
-
5
- info :info
6
-
7
- demo( :d2 ) do |t|
8
- t.message = "Hey There!"
9
- end
data/sample/Reapfile DELETED
@@ -1,11 +0,0 @@
1
-
2
- desc "I call it what I will"
3
-
4
- demo :d2 do |t|
5
- t.message = "Hey There!"
6
- end
7
-
8
- file 'notes/doap.xml' => 'ProjectInfo' do
9
- puts "not a thing"
10
- end
11
-
data/sample/task/demo.rb DELETED
@@ -1,15 +0,0 @@
1
-
2
- module Tasks
3
-
4
- def demo( name, &data )
5
-
6
- desc "Demonstrate a custom task" unless desc
7
-
8
- task name do
9
- data = data.to_openobject
10
- puts data.message
11
- end
12
-
13
- end
14
-
15
- end