setup 4.0.0 → 4.1.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 (223) hide show
  1. data/CHANGES +42 -0
  2. data/MANIFEST +48 -215
  3. data/README +8 -12
  4. data/RELEASE +41 -0
  5. data/VERSION +2 -0
  6. data/doc/assets/images/setup-small.png +0 -0
  7. data/doc/assets/images/setup.png +0 -0
  8. data/doc/assets/styles/custom.css +59 -0
  9. data/doc/guide/doc.en/custom.css +47 -0
  10. data/doc/{manual → guide}/doc.en/devel.html +24 -17
  11. data/doc/{manual → guide}/doc.en/hookapi.html +11 -2
  12. data/doc/guide/doc.en/index.html +50 -0
  13. data/doc/{manual → guide}/doc.en/metaconfapi.html +14 -2
  14. data/doc/{manual → guide}/doc.en/usage.html +12 -3
  15. data/doc/{manual → guide}/doc.ja/devel.html +0 -0
  16. data/doc/{manual → guide}/doc.ja/hookapi.html +0 -0
  17. data/doc/{manual → guide}/doc.ja/index.html +0 -0
  18. data/doc/{manual → guide}/doc.ja/metaconfapi.html +0 -0
  19. data/doc/{manual → guide}/doc.ja/news.html +0 -0
  20. data/doc/{manual → guide}/doc.ja/usage.html +0 -0
  21. data/doc/index.html +58 -0
  22. data/doc/log/bstats/stats.html +39 -0
  23. data/doc/log/notes.xml +28 -0
  24. data/doc/log/stats.log +14 -0
  25. data/doc/log/syntax.log +0 -0
  26. data/doc/log/testunit.log +60 -0
  27. data/doc/note/TODO +14 -0
  28. data/doc/note/changelog-3.4.1.txt +732 -0
  29. data/doc/{manual/doc.en → note}/news.html +5 -0
  30. data/doc/note/release-4.0.0.txt +26 -0
  31. data/lib/setup.rb +1 -1
  32. data/lib/setup/command.rb +16 -11
  33. data/lib/setup/config.rb +128 -14
  34. data/lib/setup/install.rb +89 -67
  35. data/meta/abstract +8 -0
  36. data/meta/authors +3 -0
  37. data/meta/contact +1 -0
  38. data/meta/created +1 -0
  39. data/meta/homepage +1 -0
  40. data/meta/summary +1 -0
  41. data/{script → task}/install +0 -0
  42. data/test/test_installer.rb +139 -0
  43. metadata +65 -231
  44. data/HISTORY +0 -7
  45. data/METADATA +0 -25
  46. data/NEWS +0 -21
  47. data/doc/manual/doc.en/index.html +0 -28
  48. data/doc/rdoc/classes/Errno.html +0 -89
  49. data/doc/rdoc/classes/Errno/ENOTEMPTY.html +0 -92
  50. data/doc/rdoc/classes/File.html +0 -134
  51. data/doc/rdoc/classes/Setup.html +0 -107
  52. data/doc/rdoc/classes/Setup/Command.html +0 -276
  53. data/doc/rdoc/classes/Setup/ConfigTable.html +0 -622
  54. data/doc/rdoc/classes/Setup/Installer.html +0 -2454
  55. data/doc/rdoc/classes/Setup/Installer/Shebang.html +0 -187
  56. data/doc/rdoc/classes/SetupError.html +0 -92
  57. data/doc/rdoc/created.rid +0 -1
  58. data/doc/rdoc/files/COPYING.html +0 -759
  59. data/doc/rdoc/files/HISTORY.html +0 -104
  60. data/doc/rdoc/files/METADATA.html +0 -92
  61. data/doc/rdoc/files/NEWS.html +0 -113
  62. data/doc/rdoc/files/README.html +0 -214
  63. data/doc/rdoc/files/bin/setup_rb.html +0 -96
  64. data/doc/rdoc/files/lib/setup/build_rb.html +0 -96
  65. data/doc/rdoc/files/lib/setup/command_rb.html +0 -98
  66. data/doc/rdoc/files/lib/setup/config_rb.html +0 -98
  67. data/doc/rdoc/files/lib/setup/error_rb.html +0 -92
  68. data/doc/rdoc/files/lib/setup/install_rb.html +0 -116
  69. data/doc/rdoc/files/lib/setup/rake_rb.html +0 -97
  70. data/doc/rdoc/files/lib/setup/rubyver_rb.html +0 -96
  71. data/doc/rdoc/files/lib/setup_rb.html +0 -92
  72. data/doc/rdoc/fr_class_index.html +0 -55
  73. data/doc/rdoc/fr_file_index.html +0 -60
  74. data/doc/rdoc/fr_method_index.html +0 -182
  75. data/doc/rdoc/index.html +0 -26
  76. data/doc/rdoc/rdoc-style.css +0 -177
  77. data/doc/ri/Errno/ENOTEMPTY/cdesc-ENOTEMPTY.yaml +0 -15
  78. data/doc/ri/Errno/cdesc-Errno.yaml +0 -15
  79. data/doc/ri/File/cdesc-File.yaml +0 -18
  80. data/doc/ri/File/dir%3f-c.yaml +0 -12
  81. data/doc/ri/File/read-c.yaml +0 -10
  82. data/doc/ri/Setup/Command/cdesc-Command.yaml +0 -28
  83. data/doc/ri/Setup/Command/help-i.yaml +0 -12
  84. data/doc/ri/Setup/Command/run-c.yaml +0 -11
  85. data/doc/ri/Setup/Command/run-i.yaml +0 -11
  86. data/doc/ri/Setup/ConfigTable/%5b%5d%3d-i.yaml +0 -12
  87. data/doc/ri/Setup/ConfigTable/%5b%5d-i.yaml +0 -12
  88. data/doc/ri/Setup/ConfigTable/attr_accessor-c.yaml +0 -12
  89. data/doc/ri/Setup/ConfigTable/attr_boolean-c.yaml +0 -12
  90. data/doc/ri/Setup/ConfigTable/attr_pathlist-c.yaml +0 -12
  91. data/doc/ri/Setup/ConfigTable/attr_pathname-c.yaml +0 -12
  92. data/doc/ri/Setup/ConfigTable/cdesc-ConfigTable.yaml +0 -66
  93. data/doc/ri/Setup/ConfigTable/compiles%3f-i.yaml +0 -10
  94. data/doc/ri/Setup/ConfigTable/env_config-i.yaml +0 -12
  95. data/doc/ri/Setup/ConfigTable/extconfs-i.yaml +0 -11
  96. data/doc/ri/Setup/ConfigTable/extensions-i.yaml +0 -10
  97. data/doc/ri/Setup/ConfigTable/initialize_defaults-i.yaml +0 -14
  98. data/doc/ri/Setup/ConfigTable/installdirs%3d-i.yaml +0 -12
  99. data/doc/ri/Setup/ConfigTable/load_config-i.yaml +0 -12
  100. data/doc/ri/Setup/ConfigTable/new-c.yaml +0 -12
  101. data/doc/ri/Setup/ConfigTable/save_config-i.yaml +0 -12
  102. data/doc/ri/Setup/ConfigTable/shebang%3d-i.yaml +0 -12
  103. data/doc/ri/Setup/ConfigTable/show-i.yaml +0 -10
  104. data/doc/ri/Setup/Installer/Shebang/cdesc-Shebang.yaml +0 -28
  105. data/doc/ri/Setup/Installer/Shebang/load-c.yaml +0 -10
  106. data/doc/ri/Setup/Installer/Shebang/new-c.yaml +0 -10
  107. data/doc/ri/Setup/Installer/Shebang/parse-c.yaml +0 -10
  108. data/doc/ri/Setup/Installer/Shebang/to_s-i.yaml +0 -10
  109. data/doc/ri/Setup/Installer/binread-i.yaml +0 -14
  110. data/doc/ri/Setup/Installer/cdesc-Installer.yaml +0 -281
  111. data/doc/ri/Setup/Installer/clean_dir_bin-i.yaml +0 -12
  112. data/doc/ri/Setup/Installer/clean_dir_data-i.yaml +0 -12
  113. data/doc/ri/Setup/Installer/clean_dir_doc-i.yaml +0 -12
  114. data/doc/ri/Setup/Installer/clean_dir_etc-i.yaml +0 -12
  115. data/doc/ri/Setup/Installer/clean_dir_ext-i.yaml +0 -10
  116. data/doc/ri/Setup/Installer/clean_dir_lib-i.yaml +0 -12
  117. data/doc/ri/Setup/Installer/clean_dir_man-i.yaml +0 -12
  118. data/doc/ri/Setup/Installer/command-i.yaml +0 -10
  119. data/doc/ri/Setup/Installer/compiles%3f-i.yaml +0 -10
  120. data/doc/ri/Setup/Installer/config_dir_bin-i.yaml +0 -12
  121. data/doc/ri/Setup/Installer/config_dir_data-i.yaml +0 -12
  122. data/doc/ri/Setup/Installer/config_dir_doc-i.yaml +0 -12
  123. data/doc/ri/Setup/Installer/config_dir_etc-i.yaml +0 -12
  124. data/doc/ri/Setup/Installer/config_dir_ext-i.yaml +0 -10
  125. data/doc/ri/Setup/Installer/config_dir_lib-i.yaml +0 -12
  126. data/doc/ri/Setup/Installer/config_dir_man-i.yaml +0 -12
  127. data/doc/ri/Setup/Installer/curr_objdir-i.yaml +0 -10
  128. data/doc/ri/Setup/Installer/curr_srcdir-i.yaml +0 -12
  129. data/doc/ri/Setup/Installer/diff%3f-i.yaml +0 -10
  130. data/doc/ri/Setup/Installer/directories_of-i.yaml +0 -10
  131. data/doc/ri/Setup/Installer/distclean_dir_bin-i.yaml +0 -12
  132. data/doc/ri/Setup/Installer/distclean_dir_data-i.yaml +0 -12
  133. data/doc/ri/Setup/Installer/distclean_dir_doc-i.yaml +0 -10
  134. data/doc/ri/Setup/Installer/distclean_dir_etc-i.yaml +0 -12
  135. data/doc/ri/Setup/Installer/distclean_dir_ext-i.yaml +0 -10
  136. data/doc/ri/Setup/Installer/distclean_dir_lib-i.yaml +0 -12
  137. data/doc/ri/Setup/Installer/distclean_dir_man-i.yaml +0 -12
  138. data/doc/ri/Setup/Installer/dive_into-i.yaml +0 -10
  139. data/doc/ri/Setup/Installer/dllext-i.yaml +0 -10
  140. data/doc/ri/Setup/Installer/exec_all-i.yaml +0 -12
  141. data/doc/ri/Setup/Installer/exec_clean-i.yaml +0 -12
  142. data/doc/ri/Setup/Installer/exec_config-i.yaml +0 -12
  143. data/doc/ri/Setup/Installer/exec_distclean-i.yaml +0 -12
  144. data/doc/ri/Setup/Installer/exec_doc-i.yaml +0 -11
  145. data/doc/ri/Setup/Installer/exec_install-i.yaml +0 -12
  146. data/doc/ri/Setup/Installer/exec_rdoc-i.yaml +0 -14
  147. data/doc/ri/Setup/Installer/exec_ri-i.yaml +0 -12
  148. data/doc/ri/Setup/Installer/exec_setup-i.yaml +0 -14
  149. data/doc/ri/Setup/Installer/exec_show-i.yaml +0 -12
  150. data/doc/ri/Setup/Installer/exec_task_traverse-i.yaml +0 -12
  151. data/doc/ri/Setup/Installer/exec_test-i.yaml +0 -14
  152. data/doc/ri/Setup/Installer/exec_uninstall-i.yaml +0 -12
  153. data/doc/ri/Setup/Installer/existfiles-i.yaml +0 -10
  154. data/doc/ri/Setup/Installer/extconf-i.yaml +0 -10
  155. data/doc/ri/Setup/Installer/extdir%3f-i.yaml +0 -10
  156. data/doc/ri/Setup/Installer/extensions-i.yaml +0 -12
  157. data/doc/ri/Setup/Installer/files_of-i.yaml +0 -10
  158. data/doc/ri/Setup/Installer/force_remove_file-i.yaml +0 -10
  159. data/doc/ri/Setup/Installer/get_config-i.yaml +0 -11
  160. data/doc/ri/Setup/Installer/glob_reject-i.yaml +0 -10
  161. data/doc/ri/Setup/Installer/glob_select-i.yaml +0 -10
  162. data/doc/ri/Setup/Installer/globs2re-i.yaml +0 -10
  163. data/doc/ri/Setup/Installer/hookfiles-i.yaml +0 -10
  164. data/doc/ri/Setup/Installer/inspect-i.yaml +0 -10
  165. data/doc/ri/Setup/Installer/install-i.yaml +0 -10
  166. data/doc/ri/Setup/Installer/install_dir_bin-i.yaml +0 -10
  167. data/doc/ri/Setup/Installer/install_dir_data-i.yaml +0 -10
  168. data/doc/ri/Setup/Installer/install_dir_doc-i.yaml +0 -12
  169. data/doc/ri/Setup/Installer/install_dir_etc-i.yaml +0 -10
  170. data/doc/ri/Setup/Installer/install_dir_ext-i.yaml +0 -10
  171. data/doc/ri/Setup/Installer/install_dir_lib-i.yaml +0 -10
  172. data/doc/ri/Setup/Installer/install_dir_man-i.yaml +0 -10
  173. data/doc/ri/Setup/Installer/install_files-i.yaml +0 -10
  174. data/doc/ri/Setup/Installer/installation%21-i.yaml +0 -10
  175. data/doc/ri/Setup/Installer/installation%3f-i.yaml +0 -12
  176. data/doc/ri/Setup/Installer/libfiles-i.yaml +0 -10
  177. data/doc/ri/Setup/Installer/make-i.yaml +0 -10
  178. data/doc/ri/Setup/Installer/mapdir-i.yaml +0 -10
  179. data/doc/ri/Setup/Installer/mkdir_p-i.yaml +0 -10
  180. data/doc/ri/Setup/Installer/move_file-i.yaml +0 -10
  181. data/doc/ri/Setup/Installer/new-c.yaml +0 -12
  182. data/doc/ri/Setup/Installer/new_shebang-i.yaml +0 -10
  183. data/doc/ri/Setup/Installer/no_harm%3f-i.yaml +0 -10
  184. data/doc/ri/Setup/Installer/noop-i.yaml +0 -54
  185. data/doc/ri/Setup/Installer/objdir_root-i.yaml +0 -10
  186. data/doc/ri/Setup/Installer/open_atomic_writer-i.yaml +0 -10
  187. data/doc/ri/Setup/Installer/quiet%3f-i.yaml +0 -10
  188. data/doc/ri/Setup/Installer/record_installation-i.yaml +0 -10
  189. data/doc/ri/Setup/Installer/relpath-i.yaml +0 -10
  190. data/doc/ri/Setup/Installer/remove_file-i.yaml +0 -10
  191. data/doc/ri/Setup/Installer/remove_tree-i.yaml +0 -10
  192. data/doc/ri/Setup/Installer/remove_tree0-i.yaml +0 -10
  193. data/doc/ri/Setup/Installer/report_header-i.yaml +0 -11
  194. data/doc/ri/Setup/Installer/rm_f-i.yaml +0 -10
  195. data/doc/ri/Setup/Installer/rm_rf-i.yaml +0 -10
  196. data/doc/ri/Setup/Installer/rmdir-i.yaml +0 -10
  197. data/doc/ri/Setup/Installer/ruby-i.yaml +0 -10
  198. data/doc/ri/Setup/Installer/rubyextentions-i.yaml +0 -10
  199. data/doc/ri/Setup/Installer/run_hook-i.yaml +0 -10
  200. data/doc/ri/Setup/Installer/set_config-i.yaml +0 -12
  201. data/doc/ri/Setup/Installer/setup_dir_bin-i.yaml +0 -10
  202. data/doc/ri/Setup/Installer/setup_dir_data-i.yaml +0 -12
  203. data/doc/ri/Setup/Installer/setup_dir_doc-i.yaml +0 -12
  204. data/doc/ri/Setup/Installer/setup_dir_etc-i.yaml +0 -12
  205. data/doc/ri/Setup/Installer/setup_dir_ext-i.yaml +0 -10
  206. data/doc/ri/Setup/Installer/setup_dir_lib-i.yaml +0 -12
  207. data/doc/ri/Setup/Installer/setup_dir_man-i.yaml +0 -12
  208. data/doc/ri/Setup/Installer/srcdir_root-i.yaml +0 -12
  209. data/doc/ri/Setup/Installer/srcdirectories-i.yaml +0 -10
  210. data/doc/ri/Setup/Installer/srcdirectory%3f-i.yaml +0 -10
  211. data/doc/ri/Setup/Installer/srcentries-i.yaml +0 -10
  212. data/doc/ri/Setup/Installer/srcexist%3f-i.yaml +0 -10
  213. data/doc/ri/Setup/Installer/srcfile%3f-i.yaml +0 -10
  214. data/doc/ri/Setup/Installer/srcfile-i.yaml +0 -10
  215. data/doc/ri/Setup/Installer/srcfiles-i.yaml +0 -10
  216. data/doc/ri/Setup/Installer/targetfiles-i.yaml +0 -10
  217. data/doc/ri/Setup/Installer/traverse-i.yaml +0 -10
  218. data/doc/ri/Setup/Installer/update_shebang_line-i.yaml +0 -10
  219. data/doc/ri/Setup/Installer/verbose%3f-i.yaml +0 -10
  220. data/doc/ri/Setup/Installer/verbose_off-i.yaml +0 -10
  221. data/doc/ri/Setup/cdesc-Setup.yaml +0 -15
  222. data/doc/ri/SetupError/cdesc-SetupError.yaml +0 -15
  223. data/doc/ri/created.rid +0 -1
@@ -1,276 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
- <html>
6
- <head>
7
- <title>Class: Setup::Command</title>
8
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
9
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
10
-
11
- <script language="JavaScript" type="text/javascript">
12
- // <![CDATA[
13
-
14
- function toggleSource( id )
15
- {
16
- var elem
17
- var link
18
-
19
- if( document.getElementById )
20
- {
21
- elem = document.getElementById( id )
22
- link = document.getElementById( "l_" + id )
23
- }
24
- else if ( document.all )
25
- {
26
- elem = eval( "document.all." + id )
27
- link = eval( "document.all.l_" + id )
28
- }
29
- else
30
- return false;
31
-
32
- if( elem.style.display == "block" )
33
- {
34
- elem.style.display = "none"
35
- link.innerHTML = "+"
36
- }
37
- else
38
- {
39
- elem.style.display = "block"
40
- link.innerHTML = "-"
41
- }
42
- }
43
-
44
- function openCode( url )
45
- {
46
- window.open( url, "SOURCE_CODE", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=480,width=750" ).focus();
47
- }
48
- // ]]>
49
- </script>
50
- </head>
51
-
52
- <body>
53
- <table width="100%" border='0' cellpadding='0' cellspacing='0' class='banner'><tr>
54
- <td class="file-title"><span class="file-title-prefix">Class</span><br />Setup::Command</td>
55
- <td align="right">
56
- <table cellspacing="0" cellpadding="2">
57
- <tr valign="top">
58
- <td>In:</td>
59
- <td>
60
- <a href="../../files/lib/setup/command_rb.html">lib/setup/command.rb</a>
61
- </td>
62
- </tr>
63
- <tr>
64
- <td>Parent:</td>
65
- <td>
66
- Object
67
- </td>
68
- </tr>
69
- </table>
70
- </td>
71
- </tr>
72
- </table>
73
- <!-- banner header -->
74
-
75
- <div id="bodyContent">
76
- <div id="content">
77
-
78
- <div class="description"><p>
79
- CLI for setup.
80
- </p>
81
- </div>
82
-
83
-
84
-
85
- <div class="sectiontitle">Methods</div>
86
- <span style="padding-right: 5px;"><a href="#M000020">help</a></span>
87
- <span style="padding-right: 5px;"><a href="#M000019">run</a></span>
88
- <span style="padding-right: 5px;"><a href="#M000018">run</a></span>
89
-
90
-
91
-
92
-
93
- <div class="sectiontitle">Constants</div>
94
- <table border='0' cellpadding='5'>
95
- <tr valign='top'>
96
- <td class="attr-name">TASKS</td>
97
- <td>=</td>
98
- <td class="attr-value">%w(all config show setup test install uninstall rdoc ri clean distclean)</td>
99
- </tr>
100
- <tr valign='top'>
101
- <td class="attr-name">TASK_DESCRIPTIONS</td>
102
- <td>=</td>
103
- <td class="attr-value">[ [ 'all', 'do config, setup, then install' ], [ 'config', 'saves your configurations' ], [ 'show', 'shows current configuration' ], [ 'setup', 'compiles ruby extentions and others' ], [ 'rdoc', 'generate rdoc documentation' ], [ 'ri', 'generate ri documentation' ], [ 'install', 'installs files' ], [ 'test', 'run all tests in test/' ], [ 'clean', &quot;does `make clean' for each extention&quot; ], [ 'distclean',&quot;does `make distclean' for each extention&quot; ]</td>
104
- </tr>
105
- </table>
106
-
107
-
108
- <div class="sectiontitle">Public Class methods</div>
109
- <div class="method">
110
- <div class="title">
111
- <a name="M000018"></a><b>run</b>()
112
- </div>
113
- <div class="sourcecode">
114
- <p class="source-link">[ <a href="javascript:toggleSource('M000018_source')" id="l_M000018_source">+</a> ]</p>
115
- <div id="M000018_source" class="dyn-source">
116
- <pre>
117
- <span class="ruby-comment cmt"># File lib/setup/command.rb, line 27</span>
118
- <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">run</span>
119
- <span class="ruby-identifier">new</span>.<span class="ruby-identifier">run</span>
120
- <span class="ruby-keyword kw">end</span>
121
- </pre>
122
- </div>
123
- </div>
124
- </div>
125
- <div class="sectiontitle">Public Instance methods</div>
126
- <div class="method">
127
- <div class="title">
128
- <a name="M000020"></a><b>help</b>()
129
- </div>
130
- <div class="description">
131
- <p>
132
- Generate <a href="Command.html#M000020">help</a> text.
133
- </p>
134
- </div>
135
- <div class="sourcecode">
136
- <p class="source-link">[ <a href="javascript:toggleSource('M000020_source')" id="l_M000020_source">+</a> ]</p>
137
- <div id="M000020_source" class="dyn-source">
138
- <pre>
139
- <span class="ruby-comment cmt"># File lib/setup/command.rb, line 133</span>
140
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">help</span>
141
- <span class="ruby-identifier">fmt</span> = <span class="ruby-value str">&quot; &quot;</span> <span class="ruby-operator">*</span> <span class="ruby-value">10</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;%-10s %s&quot;</span>
142
- <span class="ruby-identifier">commands</span> = <span class="ruby-constant">TASK_DESCRIPTIONS</span>.<span class="ruby-identifier">collect</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">d</span><span class="ruby-operator">|</span>
143
- (<span class="ruby-identifier">fmt</span> <span class="ruby-operator">%</span> [<span class="ruby-node">&quot;#{k}&quot;</span>, <span class="ruby-identifier">d</span>])
144
- <span class="ruby-keyword kw">end</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot;\n&quot;</span>).<span class="ruby-identifier">strip</span>
145
-
146
- <span class="ruby-identifier">fmt</span> = <span class="ruby-value str">&quot; &quot;</span> <span class="ruby-operator">*</span> <span class="ruby-value">13</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;%-20s %s&quot;</span>
147
- <span class="ruby-identifier">configs</span> = <span class="ruby-constant">ConfigTable</span><span class="ruby-operator">::</span><span class="ruby-constant">DESCRIPTIONS</span>.<span class="ruby-identifier">collect</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">t</span>,<span class="ruby-identifier">d</span><span class="ruby-operator">|</span>
148
- (<span class="ruby-identifier">fmt</span> <span class="ruby-operator">%</span> [<span class="ruby-node">&quot;--#{k}&quot;</span>, <span class="ruby-identifier">d</span>])
149
- <span class="ruby-keyword kw">end</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot;\n&quot;</span>).<span class="ruby-identifier">strip</span>
150
-
151
- <span class="ruby-identifier">text</span> = <span class="ruby-value str">&quot;USAGE: \#{File.basename($0)} [command] [options]\n\nCommands:\n\#{commands}\n\nOptions for CONFIG:\n\#{configs}\n\nOptions for INSTALL:\n--prefix Set the install prefix\n\nOptions in common:\n-q --quiet Silence output\n--verbose Provide verbose output\n-n --no-write Do not write to disk\n\n&quot;</span>
152
-
153
- <span class="ruby-identifier">text</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/^ \ \ \ \ \ /</span>, <span class="ruby-value str">''</span>)
154
- <span class="ruby-keyword kw">end</span>
155
- </pre>
156
- </div>
157
- </div>
158
- </div>
159
- <div class="method">
160
- <div class="title">
161
- <a name="M000019"></a><b>run</b>()
162
- </div>
163
- <div class="sourcecode">
164
- <p class="source-link">[ <a href="javascript:toggleSource('M000019_source')" id="l_M000019_source">+</a> ]</p>
165
- <div id="M000019_source" class="dyn-source">
166
- <pre>
167
- <span class="ruby-comment cmt"># File lib/setup/command.rb, line 32</span>
168
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">run</span>
169
- <span class="ruby-identifier">installer</span> = <span class="ruby-constant">Setup</span><span class="ruby-operator">::</span><span class="ruby-constant">Installer</span>.<span class="ruby-identifier">new</span>
170
-
171
- <span class="ruby-identifier">task</span> = <span class="ruby-constant">ARGV</span>.<span class="ruby-identifier">find</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">a</span><span class="ruby-operator">|</span> <span class="ruby-identifier">a</span> <span class="ruby-operator">!~</span> <span class="ruby-regexp re">/^[-]/</span> }
172
- <span class="ruby-identifier">task</span> = <span class="ruby-value str">'all'</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">task</span>
173
-
174
- <span class="ruby-keyword kw">unless</span> <span class="ruby-constant">TASKS</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">task</span>)
175
- <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;Not a valid task -- #{task}&quot;</span>
176
- <span class="ruby-identifier">exit</span> <span class="ruby-value">1</span>
177
- <span class="ruby-keyword kw">end</span>
178
-
179
- <span class="ruby-identifier">opts</span> = <span class="ruby-constant">OptionParser</span>.<span class="ruby-identifier">new</span>
180
-
181
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">banner</span> = <span class="ruby-node">&quot;Usage: #{File.basename($0)} [task] [options]&quot;</span>
182
-
183
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">task</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'config'</span> <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">task</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'all'</span>
184
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">separator</span> <span class="ruby-value str">&quot;&quot;</span>
185
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">separator</span> <span class="ruby-value str">&quot;Config options:&quot;</span>
186
- <span class="ruby-constant">ConfigTable</span><span class="ruby-operator">::</span><span class="ruby-constant">DESCRIPTIONS</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">desc</span><span class="ruby-operator">|</span>
187
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-node">&quot;--#{name} #{type.to_s.upcase}&quot;</span>, <span class="ruby-identifier">desc</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">val</span><span class="ruby-operator">|</span>
188
- <span class="ruby-constant">ENV</span>[<span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_s</span>] = <span class="ruby-identifier">val</span>.<span class="ruby-identifier">to_s</span>
189
- <span class="ruby-keyword kw">end</span>
190
- <span class="ruby-keyword kw">end</span>
191
- <span class="ruby-keyword kw">end</span>
192
-
193
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">task</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'install'</span>
194
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">separator</span> <span class="ruby-value str">&quot;&quot;</span>
195
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">separator</span> <span class="ruby-value str">&quot;Install options:&quot;</span>
196
-
197
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-value str">&quot;--prefix PATH&quot;</span>, <span class="ruby-value str">&quot;Installation prefix&quot;</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">val</span><span class="ruby-operator">|</span>
198
- <span class="ruby-identifier">installer</span>.<span class="ruby-identifier">install_prefix</span> = <span class="ruby-identifier">val</span>
199
- <span class="ruby-keyword kw">end</span>
200
- <span class="ruby-keyword kw">end</span>
201
-
202
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">task</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'test'</span>
203
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">separator</span> <span class="ruby-value str">&quot;&quot;</span>
204
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">separator</span> <span class="ruby-value str">&quot;Install options:&quot;</span>
205
-
206
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-value str">&quot;--runner TYPE&quot;</span>, <span class="ruby-value str">&quot;Test runner (auto|console|gtk|gtk2|tk)&quot;</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">val</span><span class="ruby-operator">|</span>
207
- <span class="ruby-identifier">installer</span>.<span class="ruby-identifier">config</span>.<span class="ruby-identifier">testrunner</span> = <span class="ruby-identifier">val</span>
208
- <span class="ruby-keyword kw">end</span>
209
- <span class="ruby-keyword kw">end</span>
210
-
211
- <span class="ruby-comment cmt"># common options</span>
212
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">separator</span> <span class="ruby-value str">&quot;&quot;</span>
213
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">separator</span> <span class="ruby-value str">&quot;General options:&quot;</span>
214
-
215
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-value str">&quot;-q&quot;</span>, <span class="ruby-value str">&quot;--quiet&quot;</span>, <span class="ruby-value str">&quot;Silence output&quot;</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">val</span><span class="ruby-operator">|</span>
216
- <span class="ruby-identifier">installer</span>.<span class="ruby-identifier">quiet</span> = <span class="ruby-identifier">val</span>
217
- <span class="ruby-keyword kw">end</span>
218
-
219
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-value str">&quot;--verbose&quot;</span>, <span class="ruby-value str">&quot;Provide verbose output&quot;</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">val</span><span class="ruby-operator">|</span>
220
- <span class="ruby-identifier">installer</span>.<span class="ruby-identifier">verbose</span> = <span class="ruby-identifier">val</span>
221
- <span class="ruby-keyword kw">end</span>
222
-
223
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-value str">&quot;-n&quot;</span>, <span class="ruby-value str">&quot;--no-write&quot;</span>, <span class="ruby-value str">&quot;Do not write to disk&quot;</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">val</span><span class="ruby-operator">|</span>
224
- <span class="ruby-identifier">installer</span>.<span class="ruby-identifier">no_harm</span> = <span class="ruby-operator">!</span><span class="ruby-identifier">val</span>
225
- <span class="ruby-keyword kw">end</span>
226
-
227
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-value str">&quot;--dryrun&quot;</span>, <span class="ruby-value str">&quot;Same as --no-write&quot;</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">val</span><span class="ruby-operator">|</span>
228
- <span class="ruby-identifier">installer</span>.<span class="ruby-identifier">no_harm</span> = <span class="ruby-identifier">val</span>
229
- <span class="ruby-keyword kw">end</span>
230
-
231
- <span class="ruby-comment cmt"># common options</span>
232
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">separator</span> <span class="ruby-value str">&quot;&quot;</span>
233
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">separator</span> <span class="ruby-value str">&quot;Inform options:&quot;</span>
234
-
235
- <span class="ruby-comment cmt"># Tail options (eg. commands in option form)</span>
236
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on_tail</span>(<span class="ruby-value str">&quot;-h&quot;</span>, <span class="ruby-value str">&quot;--help&quot;</span>, <span class="ruby-value str">&quot;display this help information&quot;</span>) <span class="ruby-keyword kw">do</span>
237
- <span class="ruby-identifier">puts</span> <span class="ruby-identifier">help</span>
238
- <span class="ruby-identifier">exit</span>
239
- <span class="ruby-keyword kw">end</span>
240
-
241
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on_tail</span>(<span class="ruby-value str">&quot;--version&quot;</span>, <span class="ruby-value str">&quot;Show version&quot;</span>) <span class="ruby-keyword kw">do</span>
242
- <span class="ruby-identifier">puts</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">basename</span>(<span class="ruby-identifier">$0</span>) <span class="ruby-operator">+</span> <span class="ruby-value str">' v'</span> <span class="ruby-operator">+</span> <span class="ruby-constant">Setup</span><span class="ruby-operator">::</span><span class="ruby-constant">VERSION</span> <span class="ruby-comment cmt">#Version.join('.')</span>
243
- <span class="ruby-identifier">exit</span>
244
- <span class="ruby-keyword kw">end</span>
245
-
246
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on_tail</span>(<span class="ruby-value str">&quot;--copyright&quot;</span>, <span class="ruby-value str">&quot;Show copyright&quot;</span>) <span class="ruby-keyword kw">do</span>
247
- <span class="ruby-identifier">puts</span> <span class="ruby-constant">Setup</span><span class="ruby-operator">::</span><span class="ruby-constant">COPYRIGHT</span> <span class="ruby-comment cmt">#opyright</span>
248
- <span class="ruby-identifier">exit</span>
249
- <span class="ruby-keyword kw">end</span>
250
-
251
- <span class="ruby-keyword kw">begin</span>
252
- <span class="ruby-identifier">opts</span>.<span class="ruby-identifier">parse!</span>(<span class="ruby-constant">ARGV</span>)
253
- <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">OptionParser</span><span class="ruby-operator">::</span><span class="ruby-constant">InvalidOption</span>
254
- <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-identifier">$!</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">capitalize</span>
255
- <span class="ruby-identifier">exit</span> <span class="ruby-value">1</span>
256
- <span class="ruby-keyword kw">end</span>
257
-
258
- <span class="ruby-keyword kw">begin</span>
259
- <span class="ruby-identifier">installer</span>.<span class="ruby-identifier">__send__</span>(<span class="ruby-node">&quot;exec_#{task}&quot;</span>)
260
- <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">SetupError</span>
261
- <span class="ruby-identifier">raise</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$DEBUG</span>
262
- <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-identifier">$!</span>.<span class="ruby-identifier">message</span>
263
- <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;Try 'ruby #{$0} --help' for detailed usage.&quot;</span>
264
- <span class="ruby-identifier">exit</span> <span class="ruby-value">1</span>
265
- <span class="ruby-keyword kw">end</span>
266
- <span class="ruby-keyword kw">end</span>
267
- </pre>
268
- </div>
269
- </div>
270
- </div>
271
- </div>
272
-
273
- </div>
274
-
275
- </body>
276
- </html>
@@ -1,622 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
- <html>
6
- <head>
7
- <title>Class: Setup::ConfigTable</title>
8
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
9
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
10
-
11
- <script language="JavaScript" type="text/javascript">
12
- // <![CDATA[
13
-
14
- function toggleSource( id )
15
- {
16
- var elem
17
- var link
18
-
19
- if( document.getElementById )
20
- {
21
- elem = document.getElementById( id )
22
- link = document.getElementById( "l_" + id )
23
- }
24
- else if ( document.all )
25
- {
26
- elem = eval( "document.all." + id )
27
- link = eval( "document.all.l_" + id )
28
- }
29
- else
30
- return false;
31
-
32
- if( elem.style.display == "block" )
33
- {
34
- elem.style.display = "none"
35
- link.innerHTML = "+"
36
- }
37
- else
38
- {
39
- elem.style.display = "block"
40
- link.innerHTML = "-"
41
- }
42
- }
43
-
44
- function openCode( url )
45
- {
46
- window.open( url, "SOURCE_CODE", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=480,width=750" ).focus();
47
- }
48
- // ]]>
49
- </script>
50
- </head>
51
-
52
- <body>
53
- <table width="100%" border='0' cellpadding='0' cellspacing='0' class='banner'><tr>
54
- <td class="file-title"><span class="file-title-prefix">Class</span><br />Setup::ConfigTable</td>
55
- <td align="right">
56
- <table cellspacing="0" cellpadding="2">
57
- <tr valign="top">
58
- <td>In:</td>
59
- <td>
60
- <a href="../../files/lib/setup/config_rb.html">lib/setup/config.rb</a>
61
- </td>
62
- </tr>
63
- <tr>
64
- <td>Parent:</td>
65
- <td>
66
- Object
67
- </td>
68
- </tr>
69
- </table>
70
- </td>
71
- </tr>
72
- </table>
73
- <!-- banner header -->
74
-
75
- <div id="bodyContent">
76
- <div id="content">
77
-
78
- <div class="description"><p>
79
- Config stores platform information.
80
- </p>
81
- </div>
82
-
83
-
84
-
85
- <div class="sectiontitle">Methods</div>
86
- <span style="padding-right: 5px;"><a href="#M000005">attr_accessor</a></span>
87
- <span style="padding-right: 5px;"><a href="#M000006">attr_boolean</a></span>
88
- <span style="padding-right: 5px;"><a href="#M000004">attr_pathlist</a></span>
89
- <span style="padding-right: 5px;"><a href="#M000003">attr_pathname</a></span>
90
- <span style="padding-right: 5px;"><a href="#M000017">compiles?</a></span>
91
- <span style="padding-right: 5px;"><a href="#M000011">env_config</a></span>
92
- <span style="padding-right: 5px;"><a href="#M000015">extconfs</a></span>
93
- <span style="padding-right: 5px;"><a href="#M000016">extensions</a></span>
94
- <span style="padding-right: 5px;"><a href="#M000010">initialize_defaults</a></span>
95
- <span style="padding-right: 5px;"><a href="#M000008">installdirs=</a></span>
96
- <span style="padding-right: 5px;"><a href="#M000012">load_config</a></span>
97
- <span style="padding-right: 5px;"><a href="#M000009">new</a></span>
98
- <span style="padding-right: 5px;"><a href="#M000013">save_config</a></span>
99
- <span style="padding-right: 5px;"><a href="#M000007">shebang=</a></span>
100
- <span style="padding-right: 5px;"><a href="#M000014">show</a></span>
101
-
102
-
103
-
104
-
105
- <div class="sectiontitle">Constants</div>
106
- <table border='0' cellpadding='5'>
107
- <tr valign='top'>
108
- <td class="attr-name">RBCONFIG</td>
109
- <td>=</td>
110
- <td class="attr-value">::Config::CONFIG</td>
111
- </tr>
112
- <tr valign='top'>
113
- <td class="attr-name">CONFIGFILE</td>
114
- <td>=</td>
115
- <td class="attr-value">'.config'</td>
116
- </tr>
117
- <tr valign='top'>
118
- <td class="attr-name">DESCRIPTIONS</td>
119
- <td>=</td>
120
- <td class="attr-value">[ [:prefix , :path, 'path prefix of target environment'], [:bindir , :path, 'directory for commands'], [:libdir , :path, 'directory for libraries'], [:datadir , :path, 'directory for shared data'], [:mandir , :path, 'directory for man pages'], [:docdir , :path, 'Directory for documentation'], [:sysconfdir , :path, 'directory for system configuration files'], [:localstatedir , :path, 'directory for local state data'], [:libruby , :path, 'directory for ruby libraries'], [:librubyver , :path, 'directory for standard ruby libraries'], [:librubyverarch , :path, 'directory for standard ruby extensions'], [:siteruby , :path, 'directory for version-independent aux ruby libraries'], [:siterubyver , :path, 'directory for aux ruby libraries'], [:siterubyverarch , :path, 'directory for aux ruby binaries'], [:rbdir , :path, 'directory for ruby scripts'], [:sodir , :path, 'directory for ruby extentions'], [:rubypath , :prog, 'path to set to #! line'], [:rubyprog , :prog, 'ruby program using for installation'], [:makeprog , :prog, 'make program to compile ruby extentions'], [:extconfopt , :name, 'options to pass-thru to extconf.rb'], [:without_ext , :bool, 'do not compile/install ruby extentions'], [:without_doc , :bool, 'do not generate html documentation'], [:shebang , :pick, 'shebang line (#!) editing mode (all,ruby,never)'], [:doctemplate , :pick, 'document template to use (html|xml)'], [:testrunner , :pick, 'Runner to use for testing (auto|console|tk|gtk|gtk2)'], [:installdirs , :pick, 'install location mode (std,site,home :: libruby,site_ruby,$HOME)']</td>
121
- </tr>
122
- <tr valign='top'>
123
- <td class="attr-name">OPTIONS</td>
124
- <td>=</td>
125
- <td class="attr-value">DESCRIPTIONS.collect{ |(k,t,v)| k.to_s }</td>
126
- </tr>
127
- <tr valign='top'>
128
- <td>&nbsp;</td>
129
- <td colspan="2" class="attr-desc">
130
- List of configurable options.
131
-
132
- </td>
133
- </tr>
134
- </table>
135
-
136
-
137
- <div class="sectiontitle">Public Class methods</div>
138
- <div class="method">
139
- <div class="title">
140
- <a name="M000005"></a><b>attr_accessor</b>(*names)
141
- </div>
142
- <div class="description">
143
- <p>
144
- Adds boolean support.
145
- </p>
146
- </div>
147
- <div class="sourcecode">
148
- <p class="source-link">[ <a href="javascript:toggleSource('M000005_source')" id="l_M000005_source">+</a> ]</p>
149
- <div id="M000005_source" class="dyn-source">
150
- <pre>
151
- <span class="ruby-comment cmt"># File lib/setup/config.rb, line 79</span>
152
- <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">attr_accessor</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">names</span>)
153
- <span class="ruby-identifier">bools</span>, <span class="ruby-identifier">attrs</span> = <span class="ruby-identifier">names</span>.<span class="ruby-identifier">partition</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">name</span><span class="ruby-operator">|</span> <span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/\?$/</span> }
154
- <span class="ruby-identifier">attr_boolean</span> <span class="ruby-operator">*</span><span class="ruby-identifier">bools</span>
155
- <span class="ruby-keyword kw">super</span> <span class="ruby-operator">*</span><span class="ruby-identifier">attrs</span>
156
- <span class="ruby-keyword kw">end</span>
157
- </pre>
158
- </div>
159
- </div>
160
- </div>
161
- <div class="method">
162
- <div class="title">
163
- <a name="M000006"></a><b>attr_boolean</b>(*names)
164
- </div>
165
- <div class="description">
166
- <p>
167
- Boolean attribute. Can be assigned true, false, nil, or a string matching
168
- yes|true|y|t or no|false|n|f.
169
- </p>
170
- </div>
171
- <div class="sourcecode">
172
- <p class="source-link">[ <a href="javascript:toggleSource('M000006_source')" id="l_M000006_source">+</a> ]</p>
173
- <div id="M000006_source" class="dyn-source">
174
- <pre>
175
- <span class="ruby-comment cmt"># File lib/setup/config.rb, line 87</span>
176
- <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">attr_boolean</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">names</span>)
177
- <span class="ruby-identifier">names</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span><span class="ruby-operator">|</span>
178
- <span class="ruby-identifier">name</span> = <span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">chomp</span>(<span class="ruby-value str">'?'</span>)
179
- <span class="ruby-identifier">attr_reader</span> <span class="ruby-identifier">name</span> <span class="ruby-comment cmt"># MAYBE: Deprecate</span>
180
- <span class="ruby-identifier">code</span> = <span class="ruby-node">%{
181
- def #{name}?; @#{name}; end
182
- def #{name}=(val)
183
- case val
184
- when true, false, nil
185
- @#{name} = val
186
- else
187
- case val.to_s.downcase
188
- when 'y', 'yes', 't', 'true'
189
- @#{name} = true
190
- when 'n', 'no', 'f', 'false'
191
- @#{name} = false
192
- else
193
- raise SetupError, &quot;bad config: use #{name.upcase}=(yes|no) [\#{val}]&quot;
194
- end
195
- end
196
- end
197
- }</span>
198
- <span class="ruby-identifier">class_eval</span> <span class="ruby-identifier">code</span>
199
- <span class="ruby-keyword kw">end</span>
200
- <span class="ruby-keyword kw">end</span>
201
- </pre>
202
- </div>
203
- </div>
204
- </div>
205
- <div class="method">
206
- <div class="title">
207
- <a name="M000004"></a><b>attr_pathlist</b>(name)
208
- </div>
209
- <div class="description">
210
- <p>
211
- List of pathnames. These are not expanded though.
212
- </p>
213
- </div>
214
- <div class="sourcecode">
215
- <p class="source-link">[ <a href="javascript:toggleSource('M000004_source')" id="l_M000004_source">+</a> ]</p>
216
- <div id="M000004_source" class="dyn-source">
217
- <pre>
218
- <span class="ruby-comment cmt"># File lib/setup/config.rb, line 62</span>
219
- <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">attr_pathlist</span>(<span class="ruby-identifier">name</span>)
220
- <span class="ruby-identifier">class_eval</span> <span class="ruby-node">%{
221
- def #{name}
222
- @#{name}
223
- end
224
- def #{name}=(pathlist)
225
- case pathlist
226
- when Array
227
- @#{name} = pathlist
228
- else
229
- @#{name} = pathlist.to_s.split(/[:;,]/)
230
- end
231
- end
232
- }</span>
233
- <span class="ruby-keyword kw">end</span>
234
- </pre>
235
- </div>
236
- </div>
237
- </div>
238
- <div class="method">
239
- <div class="title">
240
- <a name="M000003"></a><b>attr_pathname</b>(name)
241
- </div>
242
- <div class="description">
243
- <p>
244
- Pathname attribute. Pathnames are automatically expanded unless they start
245
- with &#8217;$&#8217;, a path variable.
246
- </p>
247
- </div>
248
- <div class="sourcecode">
249
- <p class="source-link">[ <a href="javascript:toggleSource('M000003_source')" id="l_M000003_source">+</a> ]</p>
250
- <div id="M000003_source" class="dyn-source">
251
- <pre>
252
- <span class="ruby-comment cmt"># File lib/setup/config.rb, line 49</span>
253
- <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">attr_pathname</span>(<span class="ruby-identifier">name</span>)
254
- <span class="ruby-identifier">class_eval</span> <span class="ruby-node">%{
255
- def #{name}
256
- @#{name}.gsub(%r&lt;\\$([^/]+)&gt;){ self[$1] }
257
- end
258
- def #{name}=(path)
259
- raise SetupError, &quot;bad config: #{name.to_s.upcase} requires argument&quot; unless path
260
- @#{name} = (path[0,1] == '$' ? path : File.expand_path(path))
261
- end
262
- }</span>
263
- <span class="ruby-keyword kw">end</span>
264
- </pre>
265
- </div>
266
- </div>
267
- </div>
268
- <div class="method">
269
- <div class="title">
270
- <a name="M000009"></a><b>new</b>(values=nil)
271
- </div>
272
- <div class="description">
273
- <p>
274
- New <a href="ConfigTable.html">ConfigTable</a>
275
- </p>
276
- </div>
277
- <div class="sourcecode">
278
- <p class="source-link">[ <a href="javascript:toggleSource('M000009_source')" id="l_M000009_source">+</a> ]</p>
279
- <div id="M000009_source" class="dyn-source">
280
- <pre>
281
- <span class="ruby-comment cmt"># File lib/setup/config.rb, line 160</span>
282
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">values</span>=<span class="ruby-keyword kw">nil</span>)
283
- <span class="ruby-identifier">initialize_defaults</span>
284
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">values</span>
285
- <span class="ruby-identifier">values</span>.<span class="ruby-identifier">each</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-identifier">__send__</span>(<span class="ruby-node">&quot;#{k}=&quot;</span>, <span class="ruby-identifier">v</span>) }
286
- <span class="ruby-keyword kw">end</span>
287
- <span class="ruby-identifier">yeild</span>(<span class="ruby-keyword kw">self</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">block_given?</span>
288
- <span class="ruby-identifier">load_config</span> <span class="ruby-keyword kw">if</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">file?</span>(<span class="ruby-constant">CONFIGFILE</span>)
289
- <span class="ruby-keyword kw">end</span>
290
- </pre>
291
- </div>
292
- </div>
293
- </div>
294
- <div class="sectiontitle">Public Instance methods</div>
295
- <div class="method">
296
- <div class="title">
297
- <a name="M000017"></a><b>compiles?</b>()
298
- </div>
299
- <div class="sourcecode">
300
- <p class="source-link">[ <a href="javascript:toggleSource('M000017_source')" id="l_M000017_source">+</a> ]</p>
301
- <div id="M000017_source" class="dyn-source">
302
- <pre>
303
- <span class="ruby-comment cmt"># File lib/setup/config.rb, line 315</span>
304
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">compiles?</span>
305
- <span class="ruby-operator">!</span><span class="ruby-identifier">extensions</span>.<span class="ruby-identifier">empty?</span>
306
- <span class="ruby-keyword kw">end</span>
307
- </pre>
308
- </div>
309
- </div>
310
- </div>
311
- <div class="method">
312
- <div class="title">
313
- <a name="M000011"></a><b>env_config</b>()
314
- </div>
315
- <div class="description">
316
- <p>
317
- Get configuration from environment.
318
- </p>
319
- </div>
320
- <div class="sourcecode">
321
- <p class="source-link">[ <a href="javascript:toggleSource('M000011_source')" id="l_M000011_source">+</a> ]</p>
322
- <div id="M000011_source" class="dyn-source">
323
- <pre>
324
- <span class="ruby-comment cmt"># File lib/setup/config.rb, line 255</span>
325
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">env_config</span>
326
- <span class="ruby-constant">OPTIONS</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span><span class="ruby-operator">|</span>
327
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">value</span> = <span class="ruby-constant">ENV</span>[<span class="ruby-identifier">name</span>]
328
- <span class="ruby-identifier">__send__</span>(<span class="ruby-node">&quot;#{name}=&quot;</span>,<span class="ruby-identifier">value</span>)
329
- <span class="ruby-keyword kw">end</span>
330
- <span class="ruby-keyword kw">end</span>
331
- <span class="ruby-keyword kw">end</span>
332
- </pre>
333
- </div>
334
- </div>
335
- </div>
336
- <div class="method">
337
- <div class="title">
338
- <a name="M000015"></a><b>extconfs</b>()
339
- </div>
340
- <div class="sourcecode">
341
- <p class="source-link">[ <a href="javascript:toggleSource('M000015_source')" id="l_M000015_source">+</a> ]</p>
342
- <div id="M000015_source" class="dyn-source">
343
- <pre>
344
- <span class="ruby-comment cmt"># File lib/setup/config.rb, line 307</span>
345
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">extconfs</span>
346
- <span class="ruby-ivar">@extconfs</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Dir</span>[<span class="ruby-value str">'ext/**/extconf.rb'</span>]
347
- <span class="ruby-keyword kw">end</span>
348
- </pre>
349
- </div>
350
- </div>
351
- </div>
352
- <div class="method">
353
- <div class="title">
354
- <a name="M000016"></a><b>extensions</b>()
355
- </div>
356
- <div class="sourcecode">
357
- <p class="source-link">[ <a href="javascript:toggleSource('M000016_source')" id="l_M000016_source">+</a> ]</p>
358
- <div id="M000016_source" class="dyn-source">
359
- <pre>
360
- <span class="ruby-comment cmt"># File lib/setup/config.rb, line 311</span>
361
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">extensions</span>
362
- <span class="ruby-ivar">@extensions</span> <span class="ruby-operator">||=</span> <span class="ruby-identifier">extconfs</span>.<span class="ruby-identifier">collect</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">dirname</span>(<span class="ruby-identifier">f</span>) }
363
- <span class="ruby-keyword kw">end</span>
364
- </pre>
365
- </div>
366
- </div>
367
- </div>
368
- <div class="method">
369
- <div class="title">
370
- <a name="M000010"></a><b>initialize_defaults</b>()
371
- </div>
372
- <div class="description">
373
- <p>
374
- Assign CONFIG defaults
375
- </p>
376
- <p>
377
- TODO: Does this handle &#8216;nmake&#8217; on windows?
378
- </p>
379
- </div>
380
- <div class="sourcecode">
381
- <p class="source-link">[ <a href="javascript:toggleSource('M000010_source')" id="l_M000010_source">+</a> ]</p>
382
- <div id="M000010_source" class="dyn-source">
383
- <pre>
384
- <span class="ruby-comment cmt"># File lib/setup/config.rb, line 172</span>
385
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize_defaults</span>
386
- <span class="ruby-identifier">prefix</span> = <span class="ruby-constant">RBCONFIG</span>[<span class="ruby-value str">'prefix'</span>]
387
-
388
- <span class="ruby-identifier">rubypath</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-constant">RBCONFIG</span>[<span class="ruby-value str">'bindir'</span>], <span class="ruby-constant">RBCONFIG</span>[<span class="ruby-value str">'ruby_install_name'</span>] <span class="ruby-operator">+</span> <span class="ruby-constant">RBCONFIG</span>[<span class="ruby-value str">'EXEEXT'</span>])
389
-
390
- <span class="ruby-identifier">major</span> = <span class="ruby-constant">RBCONFIG</span>[<span class="ruby-value str">'MAJOR'</span>].<span class="ruby-identifier">to_i</span>
391
- <span class="ruby-identifier">minor</span> = <span class="ruby-constant">RBCONFIG</span>[<span class="ruby-value str">'MINOR'</span>].<span class="ruby-identifier">to_i</span>
392
- <span class="ruby-identifier">teeny</span> = <span class="ruby-constant">RBCONFIG</span>[<span class="ruby-value str">'TEENY'</span>].<span class="ruby-identifier">to_i</span>
393
- <span class="ruby-identifier">version</span> = <span class="ruby-node">&quot;#{major}.#{minor}&quot;</span>
394
-
395
- <span class="ruby-comment cmt"># ruby ver. &gt;= 1.4.4?</span>
396
- <span class="ruby-identifier">newpath_p</span> = ((<span class="ruby-identifier">major</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">2</span>) <span class="ruby-keyword kw">or</span>
397
- ((<span class="ruby-identifier">major</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>) <span class="ruby-keyword kw">and</span>
398
- ((<span class="ruby-identifier">minor</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">5</span>) <span class="ruby-keyword kw">or</span>
399
- ((<span class="ruby-identifier">minor</span> <span class="ruby-operator">==</span> <span class="ruby-value">4</span>) <span class="ruby-keyword kw">and</span> (<span class="ruby-identifier">teeny</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value">4</span>)))))
400
-
401
- <span class="ruby-keyword kw">if</span> <span class="ruby-constant">RBCONFIG</span>[<span class="ruby-value str">'rubylibdir'</span>]
402
- <span class="ruby-comment cmt"># V &gt; 1.6.3</span>
403
- <span class="ruby-identifier">libruby</span> = <span class="ruby-node">&quot;#{prefix}/lib/ruby&quot;</span>
404
- <span class="ruby-identifier">librubyver</span> = <span class="ruby-constant">RBCONFIG</span>[<span class="ruby-value str">'rubylibdir'</span>]
405
- <span class="ruby-identifier">librubyverarch</span> = <span class="ruby-constant">RBCONFIG</span>[<span class="ruby-value str">'archdir'</span>]
406
- <span class="ruby-identifier">siteruby</span> = <span class="ruby-constant">RBCONFIG</span>[<span class="ruby-value str">'sitedir'</span>]
407
- <span class="ruby-identifier">siterubyver</span> = <span class="ruby-constant">RBCONFIG</span>[<span class="ruby-value str">'sitelibdir'</span>]
408
- <span class="ruby-identifier">siterubyverarch</span> = <span class="ruby-constant">RBCONFIG</span>[<span class="ruby-value str">'sitearchdir'</span>]
409
- <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">newpath_p</span>
410
- <span class="ruby-comment cmt"># 1.4.4 &lt;= V &lt;= 1.6.3</span>
411
- <span class="ruby-identifier">libruby</span> = <span class="ruby-node">&quot;#{prefix}/lib/ruby&quot;</span>
412
- <span class="ruby-identifier">librubyver</span> = <span class="ruby-node">&quot;#{prefix}/lib/ruby/#{version}&quot;</span>
413
- <span class="ruby-identifier">librubyverarch</span> = <span class="ruby-node">&quot;#{prefix}/lib/ruby/#{version}/#{c['arch']}&quot;</span>
414
- <span class="ruby-identifier">siteruby</span> = <span class="ruby-constant">RBCONFIG</span>[<span class="ruby-value str">'sitedir'</span>]
415
- <span class="ruby-identifier">siterubyver</span> = <span class="ruby-node">&quot;$siteruby/#{version}&quot;</span>
416
- <span class="ruby-identifier">siterubyverarch</span> = <span class="ruby-node">&quot;$siterubyver/#{RBCONFIG['arch']}&quot;</span>
417
- <span class="ruby-keyword kw">else</span>
418
- <span class="ruby-comment cmt"># V &lt; 1.4.4</span>
419
- <span class="ruby-identifier">libruby</span> = <span class="ruby-node">&quot;#{prefix}/lib/ruby&quot;</span>
420
- <span class="ruby-identifier">librubyver</span> = <span class="ruby-node">&quot;#{prefix}/lib/ruby/#{version}&quot;</span>
421
- <span class="ruby-identifier">librubyverarch</span> = <span class="ruby-node">&quot;#{prefix}/lib/ruby/#{version}/#{c['arch']}&quot;</span>
422
- <span class="ruby-identifier">siteruby</span> = <span class="ruby-node">&quot;#{prefix}/lib/ruby/#{version}/site_ruby&quot;</span>
423
- <span class="ruby-identifier">siterubyver</span> = <span class="ruby-identifier">siteruby</span>
424
- <span class="ruby-identifier">siterubyverarch</span> = <span class="ruby-node">&quot;$siterubyver/#{RBCONFIG['arch']}&quot;</span>
425
- <span class="ruby-keyword kw">end</span>
426
-
427
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">arg</span> = <span class="ruby-constant">RBCONFIG</span>[<span class="ruby-value str">'configure_args'</span>].<span class="ruby-identifier">split</span>.<span class="ruby-identifier">detect</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">arg</span><span class="ruby-operator">|</span> <span class="ruby-regexp re">/--with-make-prog=/</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">arg</span> }
428
- <span class="ruby-identifier">makeprog</span> = <span class="ruby-identifier">arg</span>.<span class="ruby-identifier">sub</span>(<span class="ruby-regexp re">/'/</span>, <span class="ruby-value str">''</span>).<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">/=/</span>, <span class="ruby-value">2</span>)[<span class="ruby-value">1</span>]
429
- <span class="ruby-keyword kw">else</span>
430
- <span class="ruby-identifier">makeprog</span> = <span class="ruby-value str">'make'</span>
431
- <span class="ruby-keyword kw">end</span>
432
-
433
- <span class="ruby-identifier">parameterize</span> = <span class="ruby-identifier">lambda</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">path</span><span class="ruby-operator">|</span>
434
- <span class="ruby-identifier">val</span> = <span class="ruby-constant">RBCONFIG</span>[<span class="ruby-identifier">path</span>]
435
- <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Unknown path -- #{path}&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">val</span>.<span class="ruby-identifier">nil?</span>
436
- <span class="ruby-identifier">val</span>.<span class="ruby-identifier">sub</span>(<span class="ruby-node">/\A#{Regexp.quote(prefix)}/</span>, <span class="ruby-value str">'$prefix'</span>)
437
- <span class="ruby-keyword kw">end</span>
438
-
439
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">prefix</span> = <span class="ruby-identifier">prefix</span>
440
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">bindir</span> = <span class="ruby-identifier">parameterize</span>[<span class="ruby-value str">'bindir'</span>]
441
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">libdir</span> = <span class="ruby-identifier">parameterize</span>[<span class="ruby-value str">'libdir'</span>]
442
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">datadir</span> = <span class="ruby-identifier">parameterize</span>[<span class="ruby-value str">'datadir'</span>]
443
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">mandir</span> = <span class="ruby-identifier">parameterize</span>[<span class="ruby-value str">'mandir'</span>]
444
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">docdir</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">dirname</span>(<span class="ruby-identifier">parameterize</span>[<span class="ruby-value str">'docdir'</span>]) <span class="ruby-comment cmt"># b/c of trailing $(PACKAGE)</span>
445
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">sysconfdir</span> = <span class="ruby-identifier">parameterize</span>[<span class="ruby-value str">'sysconfdir'</span>]
446
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">localstatedir</span> = <span class="ruby-identifier">parameterize</span>[<span class="ruby-value str">'localstatedir'</span>]
447
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">libruby</span> = <span class="ruby-identifier">libruby</span>
448
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">librubyver</span> = <span class="ruby-identifier">librubyver</span>
449
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">librubyverarch</span> = <span class="ruby-identifier">librubyverarch</span>
450
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">siteruby</span> = <span class="ruby-identifier">siteruby</span>
451
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">siterubyver</span> = <span class="ruby-identifier">siterubyver</span>
452
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">siterubyverarch</span> = <span class="ruby-identifier">siterubyverarch</span>
453
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">rbdir</span> = <span class="ruby-value str">'$siterubyver'</span>
454
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">sodir</span> = <span class="ruby-value str">'$siterubyverarch'</span>
455
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">rubypath</span> = <span class="ruby-identifier">rubypath</span>
456
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">rubyprog</span> = <span class="ruby-identifier">rubypath</span>
457
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">makeprog</span> = <span class="ruby-identifier">makeprog</span>
458
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">extconfopt</span> = <span class="ruby-value str">''</span>
459
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">shebang</span> = <span class="ruby-value str">'ruby'</span>
460
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">without_ext</span> = <span class="ruby-value str">'no'</span>
461
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">without_doc</span> = <span class="ruby-value str">'yes'</span>
462
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">doctemplate</span> = <span class="ruby-value str">'html'</span>
463
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">testrunner</span> = <span class="ruby-value str">'auto'</span>
464
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">installdirs</span> = <span class="ruby-value str">'site'</span>
465
- <span class="ruby-keyword kw">end</span>
466
- </pre>
467
- </div>
468
- </div>
469
- </div>
470
- <div class="method">
471
- <div class="title">
472
- <a name="M000008"></a><b>installdirs=</b>(val)
473
- </div>
474
- <div class="description">
475
- <p>
476
- installdirs has only three options; and it has side-effects.
477
- </p>
478
- </div>
479
- <div class="sourcecode">
480
- <p class="source-link">[ <a href="javascript:toggleSource('M000008_source')" id="l_M000008_source">+</a> ]</p>
481
- <div id="M000008_source" class="dyn-source">
482
- <pre>
483
- <span class="ruby-comment cmt"># File lib/setup/config.rb, line 140</span>
484
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">installdirs=</span>(<span class="ruby-identifier">val</span>)
485
- <span class="ruby-ivar">@installdirs</span> = <span class="ruby-identifier">val</span>
486
- <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">val</span>.<span class="ruby-identifier">to_s</span>
487
- <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'std'</span>
488
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">rbdir</span> = <span class="ruby-value str">'$librubyver'</span>
489
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">sodir</span> = <span class="ruby-value str">'$librubyverarch'</span>
490
- <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'site'</span>
491
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">rbdir</span> = <span class="ruby-value str">'$siterubyver'</span>
492
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">sodir</span> = <span class="ruby-value str">'$siterubyverarch'</span>
493
- <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'home'</span>
494
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">SetupError</span>, <span class="ruby-value str">'HOME is not set.'</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-constant">ENV</span>[<span class="ruby-value str">'HOME'</span>]
495
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">prefix</span> = <span class="ruby-constant">ENV</span>[<span class="ruby-value str">'HOME'</span>]
496
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">rbdir</span> = <span class="ruby-value str">'$libdir/ruby'</span>
497
- <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">sodir</span> = <span class="ruby-value str">'$libdir/ruby'</span>
498
- <span class="ruby-keyword kw">else</span>
499
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">SetupError</span>, <span class="ruby-node">&quot;bad config: use INSTALLDIRS=(std|site|home|local) [#{val}]&quot;</span>
500
- <span class="ruby-keyword kw">end</span>
501
- <span class="ruby-keyword kw">end</span>
502
- </pre>
503
- </div>
504
- </div>
505
- </div>
506
- <div class="method">
507
- <div class="title">
508
- <a name="M000012"></a><b>load_config</b>()
509
- </div>
510
- <div class="description">
511
- <p>
512
- Load configuration.
513
- </p>
514
- </div>
515
- <div class="sourcecode">
516
- <p class="source-link">[ <a href="javascript:toggleSource('M000012_source')" id="l_M000012_source">+</a> ]</p>
517
- <div id="M000012_source" class="dyn-source">
518
- <pre>
519
- <span class="ruby-comment cmt"># File lib/setup/config.rb, line 264</span>
520
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">load_config</span>
521
- <span class="ruby-comment cmt">#if File.file?(CONFIGFILE)</span>
522
- <span class="ruby-keyword kw">begin</span>
523
- <span class="ruby-constant">File</span>.<span class="ruby-identifier">foreach</span>(<span class="ruby-constant">CONFIGFILE</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span>
524
- <span class="ruby-identifier">k</span>, <span class="ruby-identifier">v</span> = <span class="ruby-operator">*</span><span class="ruby-identifier">line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">/=/</span>, <span class="ruby-value">2</span>)
525
- <span class="ruby-identifier">k</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-value str">'-'</span>,<span class="ruby-value str">'_'</span>)
526
- <span class="ruby-identifier">__send__</span>(<span class="ruby-node">&quot;#{k}=&quot;</span>,<span class="ruby-identifier">v</span>.<span class="ruby-identifier">strip</span>) <span class="ruby-comment cmt">#self[k] = v.strip</span>
527
- <span class="ruby-keyword kw">end</span>
528
- <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Errno</span><span class="ruby-operator">::</span><span class="ruby-constant">ENOENT</span>
529
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">SetupError</span>, <span class="ruby-identifier">$!</span>.<span class="ruby-identifier">message</span> <span class="ruby-operator">+</span> <span class="ruby-node">&quot;\n#{File.basename($0)} config first&quot;</span>
530
- <span class="ruby-keyword kw">end</span>
531
- <span class="ruby-comment cmt">#end</span>
532
- <span class="ruby-keyword kw">end</span>
533
- </pre>
534
- </div>
535
- </div>
536
- </div>
537
- <div class="method">
538
- <div class="title">
539
- <a name="M000013"></a><b>save_config</b>()
540
- </div>
541
- <div class="description">
542
- <p>
543
- Save configuration.
544
- </p>
545
- </div>
546
- <div class="sourcecode">
547
- <p class="source-link">[ <a href="javascript:toggleSource('M000013_source')" id="l_M000013_source">+</a> ]</p>
548
- <div id="M000013_source" class="dyn-source">
549
- <pre>
550
- <span class="ruby-comment cmt"># File lib/setup/config.rb, line 279</span>
551
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">save_config</span>
552
- <span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-constant">CONFIGFILE</span>, <span class="ruby-value str">'w'</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
553
- <span class="ruby-constant">OPTIONS</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span><span class="ruby-operator">|</span>
554
- <span class="ruby-identifier">val</span> = <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">name</span>]
555
- <span class="ruby-identifier">f</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;#{name}=#{val}\n&quot;</span>
556
- <span class="ruby-keyword kw">end</span>
557
- <span class="ruby-keyword kw">end</span>
558
- <span class="ruby-keyword kw">end</span>
559
- </pre>
560
- </div>
561
- </div>
562
- </div>
563
- <div class="method">
564
- <div class="title">
565
- <a name="M000007"></a><b>shebang=</b>(val)
566
- </div>
567
- <div class="description">
568
- <p>
569
- shebang has only three options.
570
- </p>
571
- </div>
572
- <div class="sourcecode">
573
- <p class="source-link">[ <a href="javascript:toggleSource('M000007_source')" id="l_M000007_source">+</a> ]</p>
574
- <div id="M000007_source" class="dyn-source">
575
- <pre>
576
- <span class="ruby-comment cmt"># File lib/setup/config.rb, line 131</span>
577
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">shebang=</span>(<span class="ruby-identifier">val</span>)
578
- <span class="ruby-keyword kw">if</span> <span class="ruby-node">%w(all ruby never)</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">val</span>)
579
- <span class="ruby-ivar">@shebang</span> = <span class="ruby-identifier">val</span>
580
- <span class="ruby-keyword kw">else</span>
581
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">SetupError</span>, <span class="ruby-node">&quot;bad config: use SHEBANG=(all|ruby|never) [#{val}]&quot;</span>
582
- <span class="ruby-keyword kw">end</span>
583
- <span class="ruby-keyword kw">end</span>
584
- </pre>
585
- </div>
586
- </div>
587
- </div>
588
- <div class="method">
589
- <div class="title">
590
- <a name="M000014"></a><b>show</b>()
591
- </div>
592
- <div class="sourcecode">
593
- <p class="source-link">[ <a href="javascript:toggleSource('M000014_source')" id="l_M000014_source">+</a> ]</p>
594
- <div id="M000014_source" class="dyn-source">
595
- <pre>
596
- <span class="ruby-comment cmt"># File lib/setup/config.rb, line 288</span>
597
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">show</span>
598
- <span class="ruby-identifier">fmt</span> = <span class="ruby-value str">&quot;%-20s %s\n&quot;</span>
599
- <span class="ruby-constant">OPTIONS</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span><span class="ruby-operator">|</span>
600
- <span class="ruby-identifier">value</span> = <span class="ruby-keyword kw">self</span>[<span class="ruby-identifier">name</span>]
601
- <span class="ruby-identifier">reslv</span> = <span class="ruby-identifier">__send__</span>(<span class="ruby-identifier">name</span>)
602
- <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">reslv</span>
603
- <span class="ruby-keyword kw">when</span> <span class="ruby-constant">String</span>
604
- <span class="ruby-identifier">reslv</span> = <span class="ruby-value str">&quot;(none)&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">reslv</span>.<span class="ruby-identifier">empty?</span>
605
- <span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">false</span>, <span class="ruby-keyword kw">nil</span>
606
- <span class="ruby-identifier">reslv</span> = <span class="ruby-value str">&quot;no&quot;</span>
607
- <span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">true</span>
608
- <span class="ruby-identifier">reslv</span> = <span class="ruby-value str">&quot;yes&quot;</span>
609
- <span class="ruby-keyword kw">end</span>
610
- <span class="ruby-identifier">printf</span> <span class="ruby-identifier">fmt</span>, <span class="ruby-identifier">name</span>, <span class="ruby-identifier">reslv</span>
611
- <span class="ruby-keyword kw">end</span>
612
- <span class="ruby-keyword kw">end</span>
613
- </pre>
614
- </div>
615
- </div>
616
- </div>
617
- </div>
618
-
619
- </div>
620
-
621
- </body>
622
- </html>