setup 4.1.0 → 4.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.
@@ -18,7 +18,7 @@ end
18
18
 
19
19
  desc 'Runs unit tests'
20
20
  task :test do
21
- setup.exec_test
21
+ setup.exec_test
22
22
  end
23
23
 
24
24
  desc 'Generate rdoc documentation'
@@ -2,24 +2,31 @@
2
2
  # Ruby Extensions
3
3
  #
4
4
 
5
- unless File.respond_to?(:read) # Ruby 1.6 and less
6
- def File.read(fname)
7
- open(fname) {|f|
8
- return f.read
9
- }
5
+ # Is this needed any more?
6
+ class << File #:nodoc: all
7
+
8
+ unless respond_to?(:read) # Ruby 1.6 and less
9
+
10
+ def read(fname)
11
+ open(fname){ |f| return f.read }
12
+ end
13
+
10
14
  end
15
+
16
+ # for corrupted Window's stat(2)
17
+ def dir?(path)
18
+ directory?((path[-1,1] == '/') ? path : path + '/')
19
+ end
20
+
11
21
  end
12
22
 
13
23
  unless Errno.const_defined?(:ENOTEMPTY) # Windows?
14
- module Errno
15
- class ENOTEMPTY
24
+
25
+ module Errno #:nodoc:
26
+ class ENOTEMPTY #:nodoc:
16
27
  # We do not raise this exception, implementation is not needed.
17
28
  end
18
29
  end
19
- end
20
30
 
21
- # for corrupted Windows' stat(2)
22
- def File.dir?(path)
23
- File.directory?((path[-1,1] == '/') ? path : path + '/')
24
31
  end
25
32
 
@@ -0,0 +1 @@
1
+ setup
@@ -0,0 +1 @@
1
+ 2008-11-17
@@ -0,0 +1,3 @@
1
+ # This is simply here to test metaconfig loading.
2
+
3
+ add_config('dummyvar', nil, 'ignore this options')
@@ -0,0 +1 @@
1
+ 4.2.0
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: setup
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.1.0
4
+ version: 4.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tiger Ops <tigerops-community@rubyforge.org>
@@ -11,12 +11,12 @@ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
13
 
14
- date: 2008-11-16 00:00:00 -05:00
14
+ date: 2009-08-26 00:00:00 -04:00
15
15
  default_executable:
16
16
  dependencies: []
17
17
 
18
18
  description: Every Rubyist is aware of Minero Aoki's ever useful setup.rb script. It's how most of us used to install our ruby programs before RubyGems came along.And it's still mighty useful in certain scenarios, not the least of which is the job of the distribution package managers. Setup converts setup.rb into a stand-alone application. No longer will you need distribute setup.rb with you Ruby packages. Just instruct your users to use Setup.
19
- email: tigerops-community@rubyforge.org
19
+ email: Tiger Ops <tigerops-community@rubyforge.org>
20
20
  executables:
21
21
  - setup.rb
22
22
  extensions: []
@@ -24,77 +24,39 @@ extensions: []
24
24
  extra_rdoc_files:
25
25
  - README
26
26
  - MANIFEST
27
- - CHANGES
28
27
  - RELEASE
29
- - VERSION
28
+ - HISTORY
30
29
  - COPYING
31
30
  files:
32
- - bin
33
- - doc
34
- - lib
35
- - meta
36
- - task
37
- - test
31
+ - COPYING
32
+ - HISTORY
38
33
  - MANIFEST
39
- - CHANGES
40
- - RELEASE
41
34
  - README
42
- - VERSION
43
- - COPYING
35
+ - RELEASE
44
36
  - bin/setup.rb
45
- - doc/guide
46
- - doc/assets
47
- - doc/note
48
- - doc/index.html
49
- - doc/log
50
- - doc/guide/doc.en
51
- - doc/guide/doc.ja
52
- - doc/guide/doc.en/devel.html
53
- - doc/guide/doc.en/usage.html
54
- - doc/guide/doc.en/custom.css
55
- - doc/guide/doc.en/index.html
56
- - doc/guide/doc.en/hookapi.html
57
- - doc/guide/doc.en/metaconfapi.html
58
- - doc/guide/doc.ja/devel.html
59
- - doc/guide/doc.ja/usage.html
60
- - doc/guide/doc.ja/index.html
61
- - doc/guide/doc.ja/hookapi.html
62
- - doc/guide/doc.ja/news.html
63
- - doc/guide/doc.ja/metaconfapi.html
64
- - doc/assets/styles
65
- - doc/assets/images
66
- - doc/assets/styles/custom.css
67
- - doc/assets/images/setup.png
68
- - doc/assets/images/setup-small.png
69
- - doc/note/changelog-3.4.1.txt
70
- - doc/note/TODO
71
- - doc/note/release-4.0.0.txt
72
- - doc/note/news.html
73
- - doc/log/stats.log
74
- - doc/log/notes.xml
75
- - doc/log/bstats
76
- - doc/log/syntax.log
77
- - doc/log/testunit.log
78
- - doc/log/bstats/stats.html
79
37
  - lib/setup.rb
80
- - lib/setup
81
- - lib/setup/install.rb
82
- - lib/setup/rake.rb
83
- - lib/setup/command.rb
84
38
  - lib/setup/build.rb
39
+ - lib/setup/command.rb
85
40
  - lib/setup/config.rb
86
- - lib/setup/rubyver.rb
87
41
  - lib/setup/error.rb
88
- - meta/created
89
- - meta/homepage
90
- - meta/summary
42
+ - lib/setup/install.rb
43
+ - lib/setup/rake.rb
44
+ - lib/setup/rubyver.rb
91
45
  - meta/abstract
92
46
  - meta/authors
93
47
  - meta/contact
94
- - task/install
48
+ - meta/created
49
+ - meta/homepage
50
+ - meta/package
51
+ - meta/released
52
+ - meta/setup/metaconfig.rb
53
+ - meta/summary
54
+ - meta/version
95
55
  - test/test_installer.rb
96
56
  has_rdoc: true
97
57
  homepage: http://setup.rubyforge.org
58
+ licenses: []
59
+
98
60
  post_install_message:
99
61
  rdoc_options:
100
62
  - --inline-source
@@ -119,9 +81,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
119
81
  requirements: []
120
82
 
121
83
  rubyforge_project: setup
122
- rubygems_version: 1.2.0
84
+ rubygems_version: 1.3.5
123
85
  signing_key:
124
- specification_version: 2
125
- summary: Every Rubyist is aware of Minero Aoki's ever useful
86
+ specification_version: 3
87
+ summary: Setup.rb as a stand-alone application.
126
88
  test_files:
127
89
  - test/test_installer.rb
data/CHANGES DELETED
@@ -1,42 +0,0 @@
1
- == 4.1.0 / 2008-11-16
2
-
3
- * 1 Major Enhancements
4
-
5
- * cache files are now stored in .cache/setup/ (#b8640be633f04655f585def40697bab338fe9b8b)
6
-
7
- * 21 Other Enhancements
8
-
9
- * Added error.rb and altered requires. (#f2ca0fe260c0a96a7069110945c8c436e3c4f73c)
10
- * Added rdoc-template.rb under admin/config/. (#3e6a28a529ea1b9f7cdbc86f20950d23cbf1ae07)
11
- * Update metadata, readem and news files. (#6c85924bfde94bb9b8fa159f6498c632e62ba907)
12
- * Added .gitignore file. (#887b3b5505b3b735d2ac5ae4e0e89a8dd0f2f70d)
13
- * Renamed binary from rubysetup to setup.rb.
14
- * Hoping that the use of a dot in the name is not a problem on Windows.
15
- * By using setup.rb for the binary, it matches exacly the name of the old script.
16
- * Other developers could do likwise, eg. setup.py; akin to mkfs.ext3 and friends. (#2bd780a1e68f87210b4f3d0e3798c2c1fb868b4f)
17
- * Added script/install as a bootstrap installer. (#ba9ddb30d1d7fe443ccd528a43362875f54e671e)
18
- * Added website files. (#7ae0f5b7f48ddad9ce127e3b0ea59c01b0f9f652)
19
- * Update website. (#540304bb7b2b3caa7c36c74a506e64b4ad2db8ec)
20
- * Added in website .rsync-filter. (#96c4e7d0570117670a063bb73782008f2c6c6143)
21
- * changed cache files to store in .cache/setup/ (#a7b2c297fb13064e7c992c9869d8f1d1efcb165a)
22
- * reorganize for new reap (#008fb24e4ff2374c1ae45cef01e831c9a4d725cf)
23
- * added documentation (#cda3adf0d6ebc57be35731dae652ff29bd6638e3)
24
- * moved script/ to task/ and upped minor verison. (#ce5a52daedca15b5d0f9530fafaa403c9e60d958)
25
- * added meta/ (#6abdd9de8082e4c4ac95acc77a2f1ceac30463a0)
26
- * updated README (#7a3d836cd66c7b8bdf136d812f92caeaaf6c5b1e)
27
- * moved web/ contents to doc/ (#2fc9900ccedbf8bfdde93febc3775a67604b1645)
28
- * restored metaconfig (#1173be3bf601662dd0c3859db54f244d538e39c3)
29
- * added test from original (needs work) (#fbc05bdef5cb6702934d3ff12e949a6875cf6f58)
30
- * udpate to website docs (#51f5b1fa896677f346d824e75f03db338804b15d)
31
- * update documentation (#3b664c158a5fe1ca5e82b924a37f957958cd69c3)
32
- * removed test/suite.rb option from testing (#a9095c6b95fe7ea79d004af23ea4f2b4c27e0a37)
33
-
34
-
35
- == 4.0.0 / 2008-08-15
36
-
37
- * 3 Other Enhancements
38
-
39
- * Initial checkin. (#034373ad9924b9f6677b0ed695e0c77deef75dbe)
40
- * Moved setup.rb.erb to the right place. (#edf8eb71f0ee384dca8a36c33b6266f0bde6ca3a)
41
- * Added README's to .reap and .sow plugin directories. (#a75911fc4475de53be14a670f5635ff3f46c7d17)
42
-
data/VERSION DELETED
@@ -1,2 +0,0 @@
1
- setup 4.1.0 beta (2008-08-15)
2
-
Binary file
@@ -1,59 +0,0 @@
1
-
2
- body {
3
- font-family: sans-serif;
4
- font-size: 12px;
5
- padding: 0;
6
- margin: 0;
7
- background: #fff;
8
- }
9
-
10
- h1 {
11
- font-family: times;
12
- font-size: 42pt;
13
- color: #500;
14
- }
15
-
16
- h2 {
17
- font-size: 36pt;
18
- }
19
-
20
- #content {
21
- width: 720px;
22
- margin: 0 auto;
23
- padding: 30px;
24
- background: #FFF;
25
- }
26
-
27
- #example {
28
- text-align: left;
29
- border: 1px solid #cccccc;
30
- width: 350px;
31
- padding: 20px;
32
- }
33
-
34
- #blurb {
35
- font-size: 1.5em;
36
- color: red;
37
- }
38
-
39
- #about {
40
- clear: both;
41
- padding: 30px;
42
- border: 0px solid red;
43
- text-align: left;
44
- font-size: 18pt;
45
- text-align: justify;
46
- font-family: times;
47
- }
48
-
49
- #copyright {
50
- margin: 5px 0px;
51
- font-family: monospace;
52
- font-size: 10px;
53
- color: #aaa;
54
- text-align: center;
55
- }
56
-
57
- #tigerops { width: 900px; margin: 30 auto;}
58
- #tigerops iframe { width: 900px; border: none; }
59
-
@@ -1,47 +0,0 @@
1
- body {
2
- font-family: sans-serif;
3
- font-size: 12px;
4
- padding: 0;
5
- margin: 0;
6
- background: #fff;
7
- }
8
-
9
- h1 {
10
- font-family: times;
11
- font-size: 36pt;
12
- color: #500;
13
- padding-bottom: 20px;
14
- }
15
-
16
- h2 {
17
- font-size: 24pt;
18
- margin-top: 50px;
19
- }
20
-
21
- img {
22
- margin-right: 15px;
23
- }
24
-
25
- hr {
26
- color: #cccccc;
27
- }
28
-
29
- #content {
30
- width: 720px;
31
- margin: 0 auto;
32
- padding: 20px;
33
- background: #FFF;
34
- padding-bottom: 40px;
35
- }
36
-
37
- #copyright {
38
- margin: 5px 0px;
39
- font-family: monospace;
40
- font-size: 10px;
41
- text-align: center;
42
- color: #cccccc;
43
- }
44
-
45
- #tigerops { width: 900px; margin: 30 auto;}
46
- #tigerops iframe { width: 900px; border: none; }
47
-
@@ -1,215 +0,0 @@
1
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
- <html lang="en">
3
- <head>
4
- <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
5
- <meta http-equiv="Content-Language" content="en">
6
- <link href="../../assets/images/setup-small.png" rel="shortcut icon"/>
7
- <link href="custom.css" rel="stylesheet" type="text/css"/>
8
- <title>Creating Packages with setup.rb</title>
9
- </head>
10
- <body>
11
- <div id="content">
12
- <img src="../../assets/images/setup-small.png" align="left"/>
13
- <h1>Creating Packages</h1>
14
- <hr/>
15
- <h2>Creating Single Package Archive</h2>
16
- <p>
17
- &quot;Single Package Archive&quot; means the archive which includes
18
- only one PACKAGE. &quot;package&quot; means one set of ruby scripts,
19
- ruby extentions, commands, and data files.
20
- </p>
21
- <p>
22
- setup.rb requires that the archive is structured like this:
23
- </p>
24
- <pre>
25
- PackageTop/
26
- lib/
27
- (ruby scripts)
28
- ext/
29
- (ruby extentions)
30
- bin/
31
- (commands)
32
- data/
33
- (data files)
34
- etc/
35
- (configuration files)
36
- man/
37
- (manual pages)
38
- test/
39
- (tests)
40
- </pre>
41
- <p>
42
- Each file/directories acts as below:
43
- </p>
44
- <dl>
45
- <dt>lib/, bin/, data/, etc/, man/</dt>
46
- <dd><p>
47
- These directories includes files which are to be installed.
48
- This directory tree is mirrored to the target directory, from 'lib/'
49
- to 'RUBYLIB/', from 'bin/' to 'BINDIR/', from 'data/' to 'DATADIR/' ....
50
- </p>
51
- <p>
52
- Use 'lib/' for ruby scripts, 'bin/' for commands, 'data/' for any
53
- other data files, 'etc/' for configuration files, 'man/' for
54
- manual pages.
55
- </p>
56
- </dd>
57
- <dt>ext/</dt>
58
- <dd><p>
59
- 'ext/' directory includes source code of ruby extentions.
60
- If you want to install 'RUBYLIB/ARCH/someext.so', create
61
- a directory 'ext/someext/' and put source files into it.
62
- </p>
63
- <p>
64
- [WARNING] All extention source directories MUST include
65
- extconf.rb or MANIFEST.
66
- </p>
67
- </dd>
68
- <dt>test/</dt>
69
- <dd><p>
70
- 'test/' directory contains test scripts. You must write
71
- test scripts which run on test/unit library.
72
- </p>
73
- </dd>
74
- </dl>
75
-
76
- <!--
77
- <h2>Creating Multi-Package Archive</h2>
78
- <p>
79
- setup.rb can handle an archive which includes multiple PACKAGEs.
80
- </p>
81
- <p>
82
- setup.rb requires the archive is structured as below:
83
- </p>
84
- <pre>
85
- PackageTop/
86
- setup.rb
87
- packages/ &lt;--- fixed name
88
- tmail/ &lt;--- tmail package
89
- bin/
90
- lib/
91
- ext/
92
- data/
93
- etc/
94
- man/
95
- test/
96
- raccrt/ &lt;--- raccrt package
97
- bin/
98
- lib/
99
- ext/
100
- data/
101
- etc/
102
- man/
103
- test/
104
- strscan/ &lt;--- strscan package
105
- bin/
106
- lib/
107
- ext/
108
- data/
109
- etc/
110
- man/
111
- test/
112
- amstd/ &lt;--- amstd package
113
- bin/
114
- lib/
115
- ext/
116
- data/
117
- etc/
118
- man/
119
- test/
120
- </pre>
121
- -->
122
-
123
- <h2>Hooking Tasks</h2>
124
- <p>
125
- You can hook any tasks, such as &quot;config&quot; &quot;setup&quot;.
126
- For example, you want to make some files in 'lib/tmail/' when setup.
127
- Then create file 'lib/tmail/pre-setup.rb' and put this:
128
- </p>
129
- <pre>
130
- # pre-setup.rb
131
-
132
- # process grammer file
133
- system &quot;racc #{srcdir_root + '/src/mp.y'} -o mailp.rb&quot;
134
-
135
- # require all ruby scripts in this directory from _loadlib.rb.
136
- list = Dir.glob(curr_srcdir + '/*.rb').collect {|n| File.basename(n) }
137
- File.open( '_loadlib.rb', 'w' ) {|f|
138
- f.puts list.collect {|n| &quot;require 'tmail/&quot; + n + &quot;'&quot; }
139
- }
140
- File.open( '../tmail.rb', 'w' ) {|f|
141
- f.puts &quot;require 'tmail/_loadlib'&quot;
142
- }
143
- </pre>
144
- <p>
145
- This file is evaluated on task &quot;setup&quot; in the directory,
146
- before processing any other thing. Acceptable hook file names are:
147
- </p>
148
- <pre>
149
- {pre,post}-{config,setup,install,test,clean,distclean}.rb
150
- </pre>
151
- <p>
152
- [NOTE] You can also put hook files in the top directory of archive
153
- and/or the type-root directory ('bin/', 'lib/',...).
154
- </p>
155
- <h2>srcdir/objdir support</h2>
156
- <p>
157
- setup.rb supports srcdir/objdir separation. In other words,
158
- you can compile everything out of the source directory.
159
- </p>
160
- <p>
161
- If you write hooks, you should supports srcdir/objdir system.
162
- When you read source code, read it from srcdir. When you write
163
- anything, write it to the current directory. There's also some
164
- APIs to help your work. see
165
- ,&lt;a href=&quot;hookapi.html&quot;&gt;Hook Script APIs Reference Manual&lt;/a&gt;
166
- </p>
167
- <h2>metaconfig</h2>
168
- <p>
169
- You can add new config options by writing file &quot;metaconfig&quot;.
170
- metaconfig must be placed in the package-root directory.
171
- </p>
172
- <p>
173
- Here is a simple example of metaconfig.
174
- </p>
175
- <pre>
176
- add_path_config 'libc', '/lib/libc.so', 'path to the C standard library'
177
- add_bool_config 'win32', false, 'compile with Win32 support'
178
- </pre>
179
- <p>
180
- This script defined new config option --libc and --win32.
181
- </p>
182
- <p>
183
- In 'metaconfig', you can use some APIs described in
184
- ,&lt;a href=&quot;metaconfapi.html&quot;&gt;metaconfig API Reference Manual&lt;/a&gt;
185
- </p>
186
- <h2>Backward Compatibility</h2>
187
- <p>
188
- I do not assure any backward compatibility for the setup.rb.
189
- If you'd like old behavior, just use old version.
190
- </p>
191
- <h2>License</h2>
192
- <p>
193
- GNU LGPL, Lesser General Public License version 2.1.
194
- For details, see file &quot;COPYING&quot;.
195
- </p>
196
- <p>
197
- NOTE: You CAN distribute your program under the any licenses
198
- you like. LGPL does not force you to make your programs LGPL
199
- while the installer is LGPL'ed one.
200
- </p>
201
- <h2>Installation Manual</h2>
202
- <p>
203
- You can freely copy/edit and/or distribute Usage_*.txt files
204
- which are included in this archive. I do not claim any rights
205
- on them. Removing my copyright is also OK.
206
- </p>
207
-
208
- </div>
209
-
210
- <div id="tigerops">
211
- <iframe src="http://tigerops.org/assets/adverts/banner-900-1.html" scrolling="no"></frame>
212
- </div>
213
-
214
- </body>
215
- </html>