Mon Sep 15 06:26:33 2014 UTC ()
Clarify description of RUBY_NOVERSION, RUBY_PKGPREFIX and RUBY_SUFFIX.


(taca)
diff -r1.123 -r1.124 pkgsrc/lang/ruby/rubyversion.mk

cvs diff -r1.123 -r1.124 pkgsrc/lang/ruby/rubyversion.mk (switch to unified diff)

--- pkgsrc/lang/ruby/rubyversion.mk 2014/08/25 03:25:57 1.123
+++ pkgsrc/lang/ruby/rubyversion.mk 2014/09/15 06:26:33 1.124
@@ -1,639 +1,647 @@ @@ -1,639 +1,647 @@
1# $NetBSD: rubyversion.mk,v 1.123 2014/08/25 03:25:57 taca Exp $ 1# $NetBSD: rubyversion.mk,v 1.124 2014/09/15 06:26:33 taca Exp $
2# 2#
3 3
4# This file determines which Ruby version is used as a dependency for 4# This file determines which Ruby version is used as a dependency for
5# a package. 5# a package.
6# 6#
7# 7#
8# === User-settable variables === 8# === User-settable variables ===
9# 9#
10# RUBY_VERSION_DEFAULT 10# RUBY_VERSION_DEFAULT
11# The preferered Ruby version to use. 11# The preferered Ruby version to use.
12# 12#
13# Possible values: 18 193 200 21 13# Possible values: 18 193 200 21
14# Default: 200 14# Default: 200
15# 15#
16# RUBY_BUILD_RDOC 16# RUBY_BUILD_RDOC
17# Build rdoc of this package and so that install formated 17# Build rdoc of this package and so that install formated
18# documentation. It is also used in each package. 18# documentation. It is also used in each package.
19# 19#
20# Possible values: Yes No 20# Possible values: Yes No
21# Default: Yes 21# Default: Yes
22# 22#
23# RUBY_BUILD_RI 23# RUBY_BUILD_RI
24# Build ri format of this package so that ri command would be 24# Build ri format of this package so that ri command would be
25# display class/module definitions. It is also used in each package. 25# display class/module definitions. It is also used in each package.
26# 26#
27# Possible values: Yes No 27# Possible values: Yes No
28# Default: Yes 28# Default: Yes
29# 29#
30# === Infrastructure variables === 30# === Infrastructure variables ===
31# 31#
32# RUBY_VERSION_REQD 32# RUBY_VERSION_REQD
33# Ruby version to use. This variable should not be set in 33# Ruby version to use. This variable should not be set in
34# packages. Normally it is used by bulk build tools. 34# packages. Normally it is used by bulk build tools.
35# 35#
36# Possible values: ${RUBY_VERSION_SUPPORTED} 36# Possible values: ${RUBY_VERSION_SUPPORTED}
37# Default: ${RUBY_VERSION_DEFAULT} 37# Default: ${RUBY_VERSION_DEFAULT}
38# 38#
39# === Package-settable variables === 39# === Package-settable variables ===
40# 40#
41# RUBY_VERSION_SUPPORTED 41# RUBY_VERSION_SUPPORTED
42# The Ruby versions that are acceptable for the package. 42# The Ruby versions that are acceptable for the package.
43# 43#
44# Possible values: 18 193 200 21 44# Possible values: 18 193 200 21
45# Default: 200 193 18 21 45# Default: 200 193 18 21
46# 46#
47# RUBY_NOVERSION 47# RUBY_NOVERSION
48# If "Yes", the package dosen't depend on any version of Ruby, such 48# If "Yes", the package dosen't depend on any version of Ruby, such
49# as editing mode for emacs. In this case, package's name would begin 49# as editing mode for emacs. In this case, package's name would begin
50# with "ruby-". Otherwise, the package's name is begin with 50# with "ruby-". Otherwise, the package's name is begin with
51# ${RUBY_PKGPREFIX}; "ruby18", "ruby193" , "ruby200" or "ruby21". 51# ${RUBY_PKGPREFIX}.
52# 52#
53# Possible values: Yes No 53# Possible values: Yes No
54# Default: No 54# Default: No
55# 55#
56# RUBY_DYNAMIC_DIRS 56# RUBY_DYNAMIC_DIRS
57# Build dynamic PLIST from directories. 57# Build dynamic PLIST from directories.
58# 58#
59# Default: (empty) 59# Default: (empty)
60# 60#
61# RUBY_ENCODING_ARG 61# RUBY_ENCODING_ARG
62# 62#
63# Optional encoding argument for shbang line. 63# Optional encoding argument for shbang line.
64# 64#
65# Default: (empty) 65# Default: (empty)
66# 66#
67# === Defined variables === 67# === Defined variables ===
68# 68#
69# RUBY_VER 69# RUBY_VER
70# Really selected version of ruby. 70# Really selected version of ruby.
71# 71#
72# Possible values: 18 193 200 21 72# Possible values: 18 193 200 21
73# 73#
74# Use this variable in pkgsrc's Makefile 74# Use this variable in pkgsrc's Makefile
75# 75#
76# RUBY_PKGPREFIX 76# RUBY_PKGPREFIX
77# Prefix part for ruby based packages. It is recommended that to 77# Prefix part for ruby based packages. It is recommended that to
78# use RUBY_PKGPREFIX with ruby related packages since you can supply 78# use RUBY_PKGPREFIX with ruby related packages since you can supply
79# different binary packages as each version of Ruby. 79# different binary packages as each version of Ruby.
 80# The value of RUBY_PKGPREFIX is "ruby-" and concatination of Ruby's
 81# major, minor and teeny version unless RUBY_VER is "18".
 82#
 83# Example values: ruby18 ruby193 ruby200 ruby212
80# 84#
81# RUBY_ABI_VERSION 85# RUBY_ABI_VERSION
82# Ruby's ABI version. 86# Ruby's ABI version.
83# 87#
84# RUBY_DLEXT 88# RUBY_DLEXT
85# Suffix of extention library. 89# Suffix of extention library.
86# 90#
87# RUBY_SLEXT 91# RUBY_SLEXT
88# Suffix of shared library. 92# Suffix of shared library.
89# 93#
90# RUBY 94# RUBY
91# Full path of ruby command. 95# Full path of ruby command.
92# 96#
93# RDOC 97# RDOC
94# Full path of rdoc command. 98# Full path of rdoc command.
95# 99#
96# RUBY_NAME 100# RUBY_NAME
97# Name of ruby command. 101# Name of ruby command.
98# 102#
99# RUBYGEM_NAME 103# RUBYGEM_NAME
100# Name of gem command. 104# Name of gem command.
101# 105#
102# RAKE_NAME 106# RAKE_NAME
103# Name of rake command. 107# Name of rake command.
104# 108#
105# RUBY_SUFFIX 109# RUBY_SUFFIX
106# Extra string for each ruby commands; ruby, irb and so on. 110# Extra string for each ruby commands; ruby, irb and so on.
 111# The value of RUBY_SUFFIX is concatination of Ruby's major, minor
 112# and teeny version unless RUBY_VER is "18".
 113#
 114# Possible values: 18 193 200 212
107# 115#
108# RUBY_VERSION 116# RUBY_VERSION
109# Version of real Ruby's version excluding patchlevel. 117# Version of real Ruby's version excluding patchlevel.
110# 118#
111# RUBY_VERSION_FULL 119# RUBY_VERSION_FULL
112# Version of Ruby including patchlevel. 120# Version of Ruby including patchlevel.
113# 121#
114# RUBY_BASE 122# RUBY_BASE
115# Name of ruby base package's name. 123# Name of ruby base package's name.
116# 124#
117# RUBY_SRCDIR 125# RUBY_SRCDIR
118# Relative path to directory of base ruby package. 126# Relative path to directory of base ruby package.
119# 127#
120# RUBY_SHLIBVER 128# RUBY_SHLIBVER
121# Suffix of libruby shared library's version. 129# Suffix of libruby shared library's version.
122# 130#
123# RUBY_SHLIB 131# RUBY_SHLIB
124# String after libruby shared library. 132# String after libruby shared library.
125# 133#
126# RUBY_SHLIBALIAS 134# RUBY_SHLIBALIAS
127# Symblic link with libruby shared library with major version only. 135# Symblic link with libruby shared library with major version only.
128# 136#
129# RUBY_STATICLIB 137# RUBY_STATICLIB
130# Name of libruby static library. 138# Name of libruby static library.
131# 139#
132# RUBY_VER_DIR 140# RUBY_VER_DIR
133# Name of version directory under each library (and more) directories. 141# Name of version directory under each library (and more) directories.
134# 142#
135# RUBY_ARCH 143# RUBY_ARCH
136# Name of architecture-dependent directory name. 144# Name of architecture-dependent directory name.
137# 145#
138# RUBY_INC 146# RUBY_INC
139# machine independent include directory of ruby. 147# machine independent include directory of ruby.
140# 148#
141# RUBY_ARCHINC 149# RUBY_ARCHINC
142# machine dependent include directory of ruby. 150# machine dependent include directory of ruby.
143# 151#
144# RUBY_LIB_BASE 152# RUBY_LIB_BASE
145# common relative path of ruby's library. 153# common relative path of ruby's library.
146# 154#
147# RUBY_LIB 155# RUBY_LIB
148# version specific relative path of ruby's library. 156# version specific relative path of ruby's library.
149# 157#
150# RUBY_ARCHLIB 158# RUBY_ARCHLIB
151# version specific and machine dependent relative path of ruby's library. 159# version specific and machine dependent relative path of ruby's library.
152# 160#
153# RUBY_SITELIB_BASE 161# RUBY_SITELIB_BASE
154# common site local directory. 162# common site local directory.
155# 163#
156# RUBY_SITELIB 164# RUBY_SITELIB
157# version specific site local directory. 165# version specific site local directory.
158# 166#
159# RUBY_SITEARCHLIB 167# RUBY_SITEARCHLIB
160# version specific and machine dependent site local directory. 168# version specific and machine dependent site local directory.
161# 169#
162# RUBY_VENDORLIB_BASE 170# RUBY_VENDORLIB_BASE
163# common vendor (pkgsrc) directory. 171# common vendor (pkgsrc) directory.
164# 172#
165# RUBY_VENDORLIB 173# RUBY_VENDORLIB
166# version specific vendor local directory. 174# version specific vendor local directory.
167# 175#
168# RUBY_VENDORARCHLIB 176# RUBY_VENDORARCHLIB
169# version specific and machine dependent vendor local directory. 177# version specific and machine dependent vendor local directory.
170# 178#
171# RUBY_DOC 179# RUBY_DOC
172# version specific document direcotry. 180# version specific document direcotry.
173# 181#
174# RUBY_EG 182# RUBY_EG
175# version specific examples direcotry. 183# version specific examples direcotry.
176# 184#
177# RUBY_GEM_BASE 185# RUBY_GEM_BASE
178# common GEM directory. 186# common GEM directory.
179# 187#
180# GEM_HOME 188# GEM_HOME
181# version specific GEM directory. 189# version specific GEM directory.
182# 190#
183# RUBY_RIDIR 191# RUBY_RIDIR
184# common ri directory. 192# common ri directory.
185# 193#
186# RUBY_BASERIDIR 194# RUBY_BASERIDIR
187# version specific ri directory. 195# version specific ri directory.
188# 196#
189# RUBY_SYSRIDIR 197# RUBY_SYSRIDIR
190# version specific system ri directory. 198# version specific system ri directory.
191# 199#
192# RUBY_SITERIDIR 200# RUBY_SITERIDIR
193# version specific site ri directory. 201# version specific site ri directory.
194# 202#
195# Keywords: ruby 203# Keywords: ruby
196# 204#
197 205
198.if !defined(_RUBYVERSION_MK) 206.if !defined(_RUBYVERSION_MK)
199_RUBYVERSION_MK= # defined 207_RUBYVERSION_MK= # defined
200 208
201.include "../../mk/bsd.prefs.mk" 209.include "../../mk/bsd.prefs.mk"
202 210
203.if defined(PKGNAME_REQD) 211.if defined(PKGNAME_REQD)
204. if !empty(PKGNAME_REQD:Mruby[0-9][0-9][0-9]-*) || !empty(PKGNAME_REQD:Mruby[0-9][0-9]-*) 212. if !empty(PKGNAME_REQD:Mruby[0-9][0-9][0-9]-*) || !empty(PKGNAME_REQD:Mruby[0-9][0-9]-*)
205_RUBY_VERSION_REQD:= ${PKGNAME_REQD:C/ruby([0-9][0-9]+)-.*/\1/} 213_RUBY_VERSION_REQD:= ${PKGNAME_REQD:C/ruby([0-9][0-9]+)-.*/\1/}
206. if ${_RUBY_VERSION_REQD} == "18" || ${_RUBY_VERSION_REQD} == "193" 214. if ${_RUBY_VERSION_REQD} == "18" || ${_RUBY_VERSION_REQD} == "193"
207RUBY_VERSION_REQD?= ${PKGNAME_REQD:C/ruby([0-9][0-9])[0-9]-.*/\1/} 215RUBY_VERSION_REQD?= ${PKGNAME_REQD:C/ruby([0-9][0-9])[0-9]-.*/\1/}
208. else 216. else
209RUBY_VERSION_REQD?= ${PKGNAME_REQD:C/ruby([0-9][0-9]+)-.*/\1/} 217RUBY_VERSION_REQD?= ${PKGNAME_REQD:C/ruby([0-9][0-9]+)-.*/\1/}
210. endif 218. endif
211. endif 219. endif
212.endif 220.endif
213 221
214# current supported Ruby's version 222# current supported Ruby's version
215RUBY18_VERSION= 1.8.7 223RUBY18_VERSION= 1.8.7
216RUBY193_VERSION= 1.9.3 224RUBY193_VERSION= 1.9.3
217RUBY200_VERSION= 2.0.0 225RUBY200_VERSION= 2.0.0
218RUBY21_VERSION= 2.1.2 226RUBY21_VERSION= 2.1.2
219 227
220# patch 228# patch
221RUBY18_PATCHLEVEL= pl374 229RUBY18_PATCHLEVEL= pl374
222RUBY193_PATCHLEVEL= p547 230RUBY193_PATCHLEVEL= p547
223RUBY200_PATCHLEVEL= p481 231RUBY200_PATCHLEVEL= p481
224#RUBY21_PATCHLEVEL= p95 232#RUBY21_PATCHLEVEL= p95
225 233
226# current API compatible version; used for version of shared library 234# current API compatible version; used for version of shared library
227RUBY18_API_VERSION= 1.8.7 235RUBY18_API_VERSION= 1.8.7
228RUBY193_API_VERSION= 1.9.1 236RUBY193_API_VERSION= 1.9.1
229RUBY200_API_VERSION= 2.0.0 237RUBY200_API_VERSION= 2.0.0
230RUBY21_API_VERSION= 2.1.0 238RUBY21_API_VERSION= 2.1.0
231 239
232# 240#
233RUBY_VERSION_DEFAULT?= 200 241RUBY_VERSION_DEFAULT?= 200
234 242
235RUBY_VERSION_SUPPORTED?= 200 193 18 21 243RUBY_VERSION_SUPPORTED?= 200 193 18 21
236 244
237.if defined(RUBY_VERSION_REQD) 245.if defined(RUBY_VERSION_REQD)
238. for rv in ${RUBY_VERSION_SUPPORTED} 246. for rv in ${RUBY_VERSION_SUPPORTED}
239. if "${rv}" == ${RUBY_VERSION_REQD} 247. if "${rv}" == ${RUBY_VERSION_REQD}
240RUBY_VER= ${rv} 248RUBY_VER= ${rv}
241. endif 249. endif
242. endfor 250. endfor
243.elif !defined(RUBY_VER) 251.elif !defined(RUBY_VER)
244. for rv in ${RUBY_VERSION_SUPPORTED} 252. for rv in ${RUBY_VERSION_SUPPORTED}
245. if "${rv}" == ${RUBY_VERSION_DEFAULT} 253. if "${rv}" == ${RUBY_VERSION_DEFAULT}
246RUBY_VER= ${rv} 254RUBY_VER= ${rv}
247. endif 255. endif
248. endfor 256. endfor
249.endif 257.endif
250 258
251.if !defined(RUBY_VER) 259.if !defined(RUBY_VER)
252. for rv in ${RUBY_VERSION_SUPPORTED} 260. for rv in ${RUBY_VERSION_SUPPORTED}
253. if !defined(RUBY_VER) 261. if !defined(RUBY_VER)
254RUBY_VER= ${rv} 262RUBY_VER= ${rv}
255. endif 263. endif
256. endfor 264. endfor
257.endif 265.endif
258 266
259RUBY_VER:= ${RUBY_VER_MAP.${RUBY_VER}:U${RUBY_VER}} 267RUBY_VER:= ${RUBY_VER_MAP.${RUBY_VER}:U${RUBY_VER}}
260 268
261RUBY_SUFFIX?= ${_RUBY_VER_MAJOR}${_RUBY_VER_MINOR}${_RUBY_VER_TEENY} 269RUBY_SUFFIX?= ${_RUBY_VER_MAJOR}${_RUBY_VER_MINOR}${_RUBY_VER_TEENY}
262 270
263.if ${RUBY_VER} == "18" 271.if ${RUBY_VER} == "18"
264RUBY_VERSION= ${RUBY18_VERSION} 272RUBY_VERSION= ${RUBY18_VERSION}
265RUBY_VERSION_FULL= ${RUBY_VERSION}${RUBY_PATCHLEVEL:S/pl/./} 273RUBY_VERSION_FULL= ${RUBY_VERSION}${RUBY_PATCHLEVEL:S/pl/./}
266RUBY_ABI_VERSION= ${RUBY18_API_VERSION} 274RUBY_ABI_VERSION= ${RUBY18_API_VERSION}
267 275
268RUBY_RDOC_VERSION= 1.0.1 276RUBY_RDOC_VERSION= 1.0.1
269 277
270RUBY_SUFFIX= ${RUBY_VER} 278RUBY_SUFFIX= ${RUBY_VER}
271 279
272.elif ${RUBY_VER} == "193" 280.elif ${RUBY_VER} == "193"
273RUBY_VERSION= ${RUBY193_VERSION} 281RUBY_VERSION= ${RUBY193_VERSION}
274RUBY_VERSION_FULL= ${RUBY_VERSION}${RUBY_PATCHLEVEL} 282RUBY_VERSION_FULL= ${RUBY_VERSION}${RUBY_PATCHLEVEL}
275RUBY_ABI_VERSION= ${RUBY_VERSION} 283RUBY_ABI_VERSION= ${RUBY_VERSION}
276 284
277RUBY_GEMS_VERSION= 1.8.23 285RUBY_GEMS_VERSION= 1.8.23
278RUBY_RDOC_VERSION= 3.9.4 286RUBY_RDOC_VERSION= 3.9.4
279RUBY_RAKE_VERSION= 0.9.2.2 287RUBY_RAKE_VERSION= 0.9.2.2
280RUBY_JSON_VERSION= 1.5.5 288RUBY_JSON_VERSION= 1.5.5
281 289
282.elif ${RUBY_VER} == "200" 290.elif ${RUBY_VER} == "200"
283RUBY_VERSION= ${RUBY200_VERSION} 291RUBY_VERSION= ${RUBY200_VERSION}
284RUBY_VERSION_FULL= ${RUBY_VERSION}${RUBY_PATCHLEVEL} 292RUBY_VERSION_FULL= ${RUBY_VERSION}${RUBY_PATCHLEVEL}
285RUBY_ABI_VERSION= ${RUBY_VERSION} 293RUBY_ABI_VERSION= ${RUBY_VERSION}
286 294
287RUBY_GEMS_VERSION= 2.0.3 295RUBY_GEMS_VERSION= 2.0.3
288RUBY_RDOC_VERSION= 4.1.0 296RUBY_RDOC_VERSION= 4.1.0
289RUBY_RAKE_VERSION= 0.9.6 297RUBY_RAKE_VERSION= 0.9.6
290RUBY_JSON_VERSION= 1.7.7 298RUBY_JSON_VERSION= 1.7.7
291 299
292.elif ${RUBY_VER} == "21" 300.elif ${RUBY_VER} == "21"
293RUBY_VERSION= ${RUBY21_VERSION} 301RUBY_VERSION= ${RUBY21_VERSION}
294RUBY_VERSION_FULL= ${RUBY_VERSION} 302RUBY_VERSION_FULL= ${RUBY_VERSION}
295RUBY_ABI_VERSION= ${RUBY_VERSION} 303RUBY_ABI_VERSION= ${RUBY_VERSION}
296 304
297RUBY_GEMS_VERSION= 2.2.2 305RUBY_GEMS_VERSION= 2.2.2
298RUBY_RDOC_VERSION= 4.1.0 306RUBY_RDOC_VERSION= 4.1.0
299RUBY_RAKE_VERSION= 10.1.0 307RUBY_RAKE_VERSION= 10.1.0
300RUBY_JSON_VERSION= 1.8.1 308RUBY_JSON_VERSION= 1.8.1
301 309
302.else 310.else
303PKG_FAIL_REASON+= "Unknown Ruby version specified: ${RUBY_VER}." 311PKG_FAIL_REASON+= "Unknown Ruby version specified: ${RUBY_VER}."
304.endif 312.endif
305 313
306.if !empty(RUBY_VERSION) 314.if !empty(RUBY_VERSION)
307RUBY_PATCHLEVEL= ${RUBY${RUBY_VER}_PATCHLEVEL} 315RUBY_PATCHLEVEL= ${RUBY${RUBY_VER}_PATCHLEVEL}
308RUBY_API_VERSION= ${RUBY${RUBY_VER}_API_VERSION} 316RUBY_API_VERSION= ${RUBY${RUBY_VER}_API_VERSION}
309.endif 317.endif
310 318
311# Variable assignment for multi-ruby packages 319# Variable assignment for multi-ruby packages
312MULTI+= RUBY_VER=${RUBY_VERS:U${RUBY_VERSION_DEFAULT}} 320MULTI+= RUBY_VER=${RUBY_VERS:U${RUBY_VERSION_DEFAULT}}
313 321
314# RUBY_NOVERSION should be set to "Yes" if the package dosen't depend on 322# RUBY_NOVERSION should be set to "Yes" if the package dosen't depend on
315# any specific version of ruby command. In this case, package's 323# any specific version of ruby command. In this case, package's
316# name begin with "ruby-". 324# name begin with "ruby-".
317# If RUBY_NOVERSION is "No" (default), the package's name is begin 325# If RUBY_NOVERSION is "No" (default), the package's name is begin
318# with ${RUBY_NAME}; "ruby18", "ruby193", and so on. 326# with ${RUBY_NAME}; "ruby18", "ruby193", and so on.
319# 327#
320# It also affects to RUBY_DOC, RUBY_EG... 328# It also affects to RUBY_DOC, RUBY_EG...
321# 329#
322RUBY_NOVERSION?= No 330RUBY_NOVERSION?= No
323 331
324# _RUBY_VER_MAJOR, _RUBY_VER_MINOR, _RUBY_VER_TEENY and _RUBY_PATCHLEVEL 332# _RUBY_VER_MAJOR, _RUBY_VER_MINOR, _RUBY_VER_TEENY and _RUBY_PATCHLEVEL
325# is defined from version of Ruby. It should not be used in packages' 333# is defined from version of Ruby. It should not be used in packages'
326# Makefile. 334# Makefile.
327# 335#
328_RUBY_VER_MAJOR= ${RUBY_VERSION:C/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/} 336_RUBY_VER_MAJOR= ${RUBY_VERSION:C/([0-9]+)\.([0-9]+)\.([0-9]+)/\1/}
329_RUBY_VER_MINOR= ${RUBY_VERSION:C/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/} 337_RUBY_VER_MINOR= ${RUBY_VERSION:C/([0-9]+)\.([0-9]+)\.([0-9]+)/\2/}
330_RUBY_VER_TEENY= ${RUBY_VERSION:C/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/} 338_RUBY_VER_TEENY= ${RUBY_VERSION:C/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/}
331 339
332_RUBY_API_MAJOR= ${RUBY_API_VERSION:C/([0-9]+)\.([0-9]+)\.([0-9]+)/\1\2/} 340_RUBY_API_MAJOR= ${RUBY_API_VERSION:C/([0-9]+)\.([0-9]+)\.([0-9]+)/\1\2/}
333_RUBY_API_MINOR= ${RUBY_API_VERSION:C/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/} 341_RUBY_API_MINOR= ${RUBY_API_VERSION:C/([0-9]+)\.([0-9]+)\.([0-9]+)/\3/}
334 342
335RUBY_NAME= ruby${RUBY_SUFFIX} 343RUBY_NAME= ruby${RUBY_SUFFIX}
336RUBYGEM_NAME= gem${RUBY_SUFFIX} 344RUBYGEM_NAME= gem${RUBY_SUFFIX}
337RAKE_NAME= rake${RUBY_SUFFIX} 345RAKE_NAME= rake${RUBY_SUFFIX}
338 346
339RUBY_ENCODING_ARG?= 347RUBY_ENCODING_ARG?=
340 348
341RUBY_BASE= ${RUBY_NAME}-base 349RUBY_BASE= ${RUBY_NAME}-base
342 350
343RUBY_PKGPREFIX?= ${RUBY_NAME} 351RUBY_PKGPREFIX?= ${RUBY_NAME}
344 352
345.if ${RUBY_VER} == "18" 353.if ${RUBY_VER} == "18"
346RUBY_VER_DIR= ${_RUBY_VER_MAJOR}.${_RUBY_VER_MINOR} 354RUBY_VER_DIR= ${_RUBY_VER_MAJOR}.${_RUBY_VER_MINOR}
347.else 355.else
348RUBY_VER_DIR= ${RUBY_VERSION} 356RUBY_VER_DIR= ${RUBY_VERSION}
349.endif 357.endif
350 358
351.if empty(RUBY_NOVERSION:M[nN][oO]) 359.if empty(RUBY_NOVERSION:M[nN][oO])
352RUBY_SUFFIX= 360RUBY_SUFFIX=
353RUBY_NAME= ruby 361RUBY_NAME= ruby
354.endif 362.endif
355 363
356RUBY_BUILD_RDOC?= Yes 364RUBY_BUILD_RDOC?= Yes
357RUBY_BUILD_RI?= Yes 365RUBY_BUILD_RI?= Yes
358 366
359RUBY?= ${PREFIX}/bin/${RUBY_NAME} 367RUBY?= ${PREFIX}/bin/${RUBY_NAME}
360RDOC?= ${PREFIX}/bin/rdoc${RUBY_SUFFIX} 368RDOC?= ${PREFIX}/bin/rdoc${RUBY_SUFFIX}
361 369
362RUBY_ARCH?= ${MACHINE_GNU_ARCH}-${LOWER_OPSYS}${APPEND_ELF}${LOWER_OPSYS_VERSUFFIX} 370RUBY_ARCH?= ${MACHINE_GNU_ARCH}-${LOWER_OPSYS}${APPEND_ELF}${LOWER_OPSYS_VERSUFFIX}
363 371
364# 372#
365# Ruby shared and static library version handling. 373# Ruby shared and static library version handling.
366# 374#
367RUBY_SHLIBVER?= ${RUBY_API_VERSION} 375RUBY_SHLIBVER?= ${RUBY_API_VERSION}
368RUBY_SHLIB?= ${RUBY_SUFFIX}.${RUBY_SLEXT}.${RUBY_SHLIBVER} 376RUBY_SHLIB?= ${RUBY_SUFFIX}.${RUBY_SLEXT}.${RUBY_SHLIBVER}
369RUBY_SHLIBALIAS?= @comment 377RUBY_SHLIBALIAS?= @comment
370RUBY_STATICLIB?= ${RUBY_SUFFIX}-static.a 378RUBY_STATICLIB?= ${RUBY_SUFFIX}-static.a
371 379
372.if ${OPSYS} == "NetBSD" || ${OPSYS} == "Interix" 380.if ${OPSYS} == "NetBSD" || ${OPSYS} == "Interix"
373RUBY_SHLIBVER= ${_RUBY_API_MAJOR}.${_RUBY_API_MINOR} 381RUBY_SHLIBVER= ${_RUBY_API_MAJOR}.${_RUBY_API_MINOR}
374_RUBY_SHLIBALIAS= ${RUBY_SUFFIX}.${RUBY_SLEXT}.${_RUBY_API_MAJOR} 382_RUBY_SHLIBALIAS= ${RUBY_SUFFIX}.${RUBY_SLEXT}.${_RUBY_API_MAJOR}
375.elif ${OPSYS} == "FreeBSD" || ${OPSYS} == "DragonFly" 383.elif ${OPSYS} == "FreeBSD" || ${OPSYS} == "DragonFly"
376.if ${RUBY_VER} == "18" 384.if ${RUBY_VER} == "18"
377RUBY_SHLIBVER= ${RUBY_SUFFIX} 385RUBY_SHLIBVER= ${RUBY_SUFFIX}
378.else 386.else
379RUBY_SHLIBVER= ${_RUBY_VER_MAJOR}${_RUBY_VER_MINOR}${_RUBY_API_MINOR} 387RUBY_SHLIBVER= ${_RUBY_VER_MAJOR}${_RUBY_VER_MINOR}${_RUBY_API_MINOR}
380.endif 388.endif
381.elif ${OPSYS} == "OpenBSD" || ${OPSYS} == "MirBSD" 389.elif ${OPSYS} == "OpenBSD" || ${OPSYS} == "MirBSD"
382.if ${_RUBY_VER_MINOR} == 0 390.if ${_RUBY_VER_MINOR} == 0
383RUBY_SHLIBVER= ${_RUBY_VER_MAJOR}.${_RUBY_API_MINOR} 391RUBY_SHLIBVER= ${_RUBY_VER_MAJOR}.${_RUBY_API_MINOR}
384.else 392.else
385RUBY_SHLIBVER= ${_RUBY_VER_MAJOR}.${_RUBY_VER_MINOR}${_RUBY_API_MINOR} 393RUBY_SHLIBVER= ${_RUBY_VER_MAJOR}.${_RUBY_VER_MINOR}${_RUBY_API_MINOR}
386.endif 394.endif
387.elif ${OPSYS} == "Darwin" 395.elif ${OPSYS} == "Darwin"
388RUBY_SHLIB= ${RUBY_SUFFIX}.${RUBY_SHLIBVER}.${RUBY_SLEXT} 396RUBY_SHLIB= ${RUBY_SUFFIX}.${RUBY_SHLIBVER}.${RUBY_SLEXT}
389.if ${RUBY_VER} == "18" 397.if ${RUBY_VER} == "18"
390_RUBY_SHLIBALIAS= ${RUBY_SUFFIX}.${_RUBY_VER_MAJOR}.${_RUBY_VER_MINOR}.${RUBY_SLEXT} 398_RUBY_SHLIBALIAS= ${RUBY_SUFFIX}.${_RUBY_VER_MAJOR}.${_RUBY_VER_MINOR}.${RUBY_SLEXT}
391.else 399.else
392_RUBY_SHLIBALIAS= .${_RUBY_VER_MAJOR}.${_RUBY_VER_MINOR}.${RUBY_SLEXT} 400_RUBY_SHLIBALIAS= .${_RUBY_VER_MAJOR}.${_RUBY_VER_MINOR}.${RUBY_SLEXT}
393RUBY_STATICLIB= ${RUBY_SUFFIX}.${RUBY_API_VERSION}-static.a 401RUBY_STATICLIB= ${RUBY_SUFFIX}.${RUBY_API_VERSION}-static.a
394.endif 402.endif
395.elif ${OPSYS} == "Linux" 403.elif ${OPSYS} == "Linux"
396_RUBY_SHLIBALIAS= ${RUBY_SUFFIX}.${RUBY_SLEXT}.${_RUBY_VER_MAJOR}.${_RUBY_VER_MINOR} 404_RUBY_SHLIBALIAS= ${RUBY_SUFFIX}.${RUBY_SLEXT}.${_RUBY_VER_MAJOR}.${_RUBY_VER_MINOR}
397.elif ${OPSYS} == "SunOS" 405.elif ${OPSYS} == "SunOS"
398RUBY_SHLIBVER= ${_RUBY_VER_MAJOR} 406RUBY_SHLIBVER= ${_RUBY_VER_MAJOR}
399 _RUBY_SHLIBALIAS= ${RUBY_SUFFIX}.${RUBY_SLEXT}.${_RUBY_VER_MAJOR}.${_RUBY_VER_MINOR}.${_RUBY_API_MINOR} 407 _RUBY_SHLIBALIAS= ${RUBY_SUFFIX}.${RUBY_SLEXT}.${_RUBY_VER_MAJOR}.${_RUBY_VER_MINOR}.${_RUBY_API_MINOR}
400.elif ${OPSYS} == "Cygwin" 408.elif ${OPSYS} == "Cygwin"
401RUBY_SHLIB= ${RUBY_SUFFIX}${_RUBY_API_MAJOR}${_RUBY_API_MINOR}.dll.a 409RUBY_SHLIB= ${RUBY_SUFFIX}${_RUBY_API_MAJOR}${_RUBY_API_MINOR}.dll.a
402RUBY_SHLIBALIAS= bin/cygruby${RUBY_SUFFIX}${_RUBY_API_MAJOR}${_RUBY_API_MINOR}.dll 410RUBY_SHLIBALIAS= bin/cygruby${RUBY_SUFFIX}${_RUBY_API_MAJOR}${_RUBY_API_MINOR}.dll
403RUBY_STATICLIB= ${RUBY_SUFFIX}${_RUBY_API_MAJOR}${_RUBY_API_MINOR}-static.a 411RUBY_STATICLIB= ${RUBY_SUFFIX}${_RUBY_API_MAJOR}${_RUBY_API_MINOR}-static.a
404.endif 412.endif
405 413
406.if !empty(_RUBY_SHLIBALIAS) 414.if !empty(_RUBY_SHLIBALIAS)
407RUBY_SHLIBALIAS= lib/libruby${_RUBY_SHLIBALIAS} 415RUBY_SHLIBALIAS= lib/libruby${_RUBY_SHLIBALIAS}
408.endif 416.endif
409 417
410.if ${_OPSYS_SHLIB_TYPE} == "dylib" 418.if ${_OPSYS_SHLIB_TYPE} == "dylib"
411RUBY_DLEXT= bundle 419RUBY_DLEXT= bundle
412RUBY_SLEXT= dylib 420RUBY_SLEXT= dylib
413.else 421.else
414RUBY_DLEXT= so 422RUBY_DLEXT= so
415RUBY_SLEXT= so 423RUBY_SLEXT= so
416.endif 424.endif
417 425
418# 426#
419# Ruby distribution file, few package need it. 427# Ruby distribution file, few package need it.
420# 428#
421_RUBY_PATCHLEVEL= ${RUBY_PATCHLEVEL:S/pl/p/:S/pre/preview/} 429_RUBY_PATCHLEVEL= ${RUBY_PATCHLEVEL:S/pl/p/:S/pre/preview/}
422 430
423.if !empty(_RUBY_PATCHLEVEL) 431.if !empty(_RUBY_PATCHLEVEL)
424RUBY_DISTNAME?= ruby-${RUBY_VERSION}-${_RUBY_PATCHLEVEL} 432RUBY_DISTNAME?= ruby-${RUBY_VERSION}-${_RUBY_PATCHLEVEL}
425.else 433.else
426RUBY_DISTNAME?= ruby-${RUBY_VERSION} 434RUBY_DISTNAME?= ruby-${RUBY_VERSION}
427.endif 435.endif
428 436
429# 437#
430# Use pthread library with Ruby 438# Use pthread library with Ruby
431# 439#
432.if !empty(MACHINE_PLATFORM:MDarwin-9.*-powerpc) 440.if !empty(MACHINE_PLATFORM:MDarwin-9.*-powerpc)
433# Workaround for Ruby Bug #193 441# Workaround for Ruby Bug #193
434# http://redmine.ruby-lang.org/issues/show/193 442# http://redmine.ruby-lang.org/issues/show/193
435RUBY_USE_PTHREAD?= no 443RUBY_USE_PTHREAD?= no
436.else 444.else
437RUBY_USE_PTHREAD?= yes 445RUBY_USE_PTHREAD?= yes
438.endif 446.endif
439 447
440RUBY_DYNAMIC_DIRS?= # empty 448RUBY_DYNAMIC_DIRS?= # empty
441 449
442RUBY_SRCDIR?= ../../lang/ruby${RUBY_VER}-base 450RUBY_SRCDIR?= ../../lang/ruby${RUBY_VER}-base
443 451
444# 452#
445# common paths 453# common paths
446# 454#
447RUBY_INC= include/ruby-${RUBY_VER_DIR} 455RUBY_INC= include/ruby-${RUBY_VER_DIR}
448RUBY_ARCHINC= ${RUBY_INC}/${RUBY_ARCH} 456RUBY_ARCHINC= ${RUBY_INC}/${RUBY_ARCH}
449RUBY_LIB_BASE= lib/ruby 457RUBY_LIB_BASE= lib/ruby
450RUBY_LIB?= ${RUBY_LIB_BASE}/${RUBY_VER_DIR} 458RUBY_LIB?= ${RUBY_LIB_BASE}/${RUBY_VER_DIR}
451RUBY_ARCHLIB?= ${RUBY_LIB}/${RUBY_ARCH} 459RUBY_ARCHLIB?= ${RUBY_LIB}/${RUBY_ARCH}
452RUBY_SITELIB_BASE?= ${RUBY_LIB_BASE}/site_ruby 460RUBY_SITELIB_BASE?= ${RUBY_LIB_BASE}/site_ruby
453RUBY_SITELIB?= ${RUBY_SITELIB_BASE}/${RUBY_VER_DIR} 461RUBY_SITELIB?= ${RUBY_SITELIB_BASE}/${RUBY_VER_DIR}
454RUBY_SITEARCHLIB?= ${RUBY_SITELIB}/${RUBY_ARCH} 462RUBY_SITEARCHLIB?= ${RUBY_SITELIB}/${RUBY_ARCH}
455RUBY_VENDORLIB_BASE?= ${RUBY_LIB_BASE}/vendor_ruby 463RUBY_VENDORLIB_BASE?= ${RUBY_LIB_BASE}/vendor_ruby
456RUBY_VENDORLIB?= ${RUBY_VENDORLIB_BASE}/${RUBY_VER_DIR} 464RUBY_VENDORLIB?= ${RUBY_VENDORLIB_BASE}/${RUBY_VER_DIR}
457RUBY_VENDORARCHLIB?= ${RUBY_VENDORLIB}/${RUBY_ARCH} 465RUBY_VENDORARCHLIB?= ${RUBY_VENDORLIB}/${RUBY_ARCH}
458 466
459RUBY_DOC?= share/doc/${RUBY_NAME} 467RUBY_DOC?= share/doc/${RUBY_NAME}
460RUBY_EG?= share/examples/${RUBY_NAME} 468RUBY_EG?= share/examples/${RUBY_NAME}
461 469
462 470
463RUBY_GEM_BASE?= ${RUBY_LIB_BASE}/gems 471RUBY_GEM_BASE?= ${RUBY_LIB_BASE}/gems
464GEM_HOME?= ${RUBY_GEM_BASE}/${RUBY_VER_DIR} 472GEM_HOME?= ${RUBY_GEM_BASE}/${RUBY_VER_DIR}
465 473
466# 474#
467# ri database relative path 475# ri database relative path
468# 476#
469RUBY_RIDIR?= share/ri 477RUBY_RIDIR?= share/ri
470RUBY_BASERIDIR?= ${RUBY_RIDIR}/${RUBY_VER_DIR} 478RUBY_BASERIDIR?= ${RUBY_RIDIR}/${RUBY_VER_DIR}
471RUBY_SYSRIDIR?= ${RUBY_BASERIDIR}/system 479RUBY_SYSRIDIR?= ${RUBY_BASERIDIR}/system
472RUBY_SITERIDIR?= ${RUBY_BASERIDIR}/site 480RUBY_SITERIDIR?= ${RUBY_BASERIDIR}/site
473 481
474# 482#
475# MAKE_ENV 483# MAKE_ENV
476# 484#
477MAKE_ENV+= RUBY=${RUBY:Q} RUBY_VER=${RUBY_VER:Q} \ 485MAKE_ENV+= RUBY=${RUBY:Q} RUBY_VER=${RUBY_VER:Q} \
478 RUBY_VERSION_DEFAULT=${RUBY_VERSION_DEFAULT:Q} 486 RUBY_VERSION_DEFAULT=${RUBY_VERSION_DEFAULT:Q}
479 487
480MAKEFLAGS+= RUBY_VER=${RUBY_VER:Q} \ 488MAKEFLAGS+= RUBY_VER=${RUBY_VER:Q} \
481 RUBY_VERSION_DEFAULT=${RUBY_VERSION_DEFAULT:Q} 489 RUBY_VERSION_DEFAULT=${RUBY_VERSION_DEFAULT:Q}
482 490
483# 491#
484# PLIST_VARS for x11/ruby-tk package. 492# PLIST_VARS for x11/ruby-tk package.
485# 493#
486PLIST_VARS+= ruby19 ruby200 494PLIST_VARS+= ruby19 ruby200
487.if ${RUBY_VER} != "18" 495.if ${RUBY_VER} != "18"
488PLIST.ruby19= yes 496PLIST.ruby19= yes
489. if ${RUBY_VER} != "193" 497. if ${RUBY_VER} != "193"
490PLIST.ruby200= yes 498PLIST.ruby200= yes
491. endif 499. endif
492.endif 500.endif
493 501
494PLIST_RUBY_DIRS= RUBY_INC=${RUBY_INC:Q} RUBY_ARCHINC=${RUBY_ARCHINC:Q} \ 502PLIST_RUBY_DIRS= RUBY_INC=${RUBY_INC:Q} RUBY_ARCHINC=${RUBY_ARCHINC:Q} \
495 RUBY_LIB_BASE=${RUBY_LIB_BASE:Q} \ 503 RUBY_LIB_BASE=${RUBY_LIB_BASE:Q} \
496 RUBY_LIB=${RUBY_LIB:Q} \ 504 RUBY_LIB=${RUBY_LIB:Q} \
497 RUBY_ARCHLIB=${RUBY_ARCHLIB:Q} \ 505 RUBY_ARCHLIB=${RUBY_ARCHLIB:Q} \
498 RUBY_SITELIB_BASE=${RUBY_SITELIB_BASE:Q} \ 506 RUBY_SITELIB_BASE=${RUBY_SITELIB_BASE:Q} \
499 RUBY_SITELIB=${RUBY_SITELIB:Q} \ 507 RUBY_SITELIB=${RUBY_SITELIB:Q} \
500 RUBY_SITEARCHLIB=${RUBY_SITEARCHLIB:Q} \ 508 RUBY_SITEARCHLIB=${RUBY_SITEARCHLIB:Q} \
501 RUBY_VENDORLIB_BASE=${RUBY_VENDORLIB_BASE:Q} \ 509 RUBY_VENDORLIB_BASE=${RUBY_VENDORLIB_BASE:Q} \
502 RUBY_VENDORLIB=${RUBY_VENDORLIB:Q} \ 510 RUBY_VENDORLIB=${RUBY_VENDORLIB:Q} \
503 RUBY_VENDORARCHLIB=${RUBY_VENDORARCHLIB:Q} \ 511 RUBY_VENDORARCHLIB=${RUBY_VENDORARCHLIB:Q} \
504 RUBY_DOC=${RUBY_DOC:Q} \ 512 RUBY_DOC=${RUBY_DOC:Q} \
505 RUBY_EG=${RUBY_EG:Q} \ 513 RUBY_EG=${RUBY_EG:Q} \
506 RUBY_GEM_BASE=${RUBY_GEM_BASE:Q} \ 514 RUBY_GEM_BASE=${RUBY_GEM_BASE:Q} \
507 GEM_HOME=${GEM_HOME:Q} \ 515 GEM_HOME=${GEM_HOME:Q} \
508 RUBY_RIDIR=${RUBY_RIDIR:Q} \ 516 RUBY_RIDIR=${RUBY_RIDIR:Q} \
509 RUBY_BASERIDIR=${RUBY_BASERIDIR:Q} \ 517 RUBY_BASERIDIR=${RUBY_BASERIDIR:Q} \
510 RUBY_SYSRIDIR=${RUBY_SYSRIDIR:Q} \ 518 RUBY_SYSRIDIR=${RUBY_SYSRIDIR:Q} \
511 RUBY_SITERIDIR=${RUBY_SITERIDIR:Q} 519 RUBY_SITERIDIR=${RUBY_SITERIDIR:Q}
512 520
513# 521#
514# substitutions 522# substitutions
515# 523#
516FILES_SUBST+= RUBY=${RUBY:Q} RUBY_NAME=${RUBY_NAME:Q} \ 524FILES_SUBST+= RUBY=${RUBY:Q} RUBY_NAME=${RUBY_NAME:Q} \
517 RUBY_PKGPREFIX=${RUBY_PKGPREFIX:Q} \ 525 RUBY_PKGPREFIX=${RUBY_PKGPREFIX:Q} \
518 RUBY_SUFFIX=${RUBY_SUFFIX} \ 526 RUBY_SUFFIX=${RUBY_SUFFIX} \
519 RUBY_VER=${RUBY_VER:Q} \ 527 RUBY_VER=${RUBY_VER:Q} \
520 ${PLIST_RUBY_DIRS} 528 ${PLIST_RUBY_DIRS}
521 529
522MESSAGE_SUBST+= RUBY="${RUBY}" RUBY_VER="${RUBY_VER}" \ 530MESSAGE_SUBST+= RUBY="${RUBY}" RUBY_VER="${RUBY_VER}" \
523 RUBY_VERSION="${RUBY_VERSION}" \ 531 RUBY_VERSION="${RUBY_VERSION}" \
524 RUBY_PKGPREFIX="${RUBY_PKGPREFIX}" \ 532 RUBY_PKGPREFIX="${RUBY_PKGPREFIX}" \
525 RUBY_SUFFIX=${RUBY_SUFFIX} \ 533 RUBY_SUFFIX=${RUBY_SUFFIX} \
526 ${PLIST_RUBY_DIRS:S,DIR="${PREFIX}/,DIR=",} 534 ${PLIST_RUBY_DIRS:S,DIR="${PREFIX}/,DIR=",}
527 535
528PLIST_SUBST+= RUBY=${RUBY:Q} RUBY_VER=${RUBY_VER:Q} \ 536PLIST_SUBST+= RUBY=${RUBY:Q} RUBY_VER=${RUBY_VER:Q} \
529 RUBY_PKGPREFIX=${RUBY_PKGPREFIX} \ 537 RUBY_PKGPREFIX=${RUBY_PKGPREFIX} \
530 RUBY_SUFFIX=${RUBY_SUFFIX} \ 538 RUBY_SUFFIX=${RUBY_SUFFIX} \
531 RUBY_VERSION=${RUBY_VERSION:Q} \ 539 RUBY_VERSION=${RUBY_VERSION:Q} \
532 RUBY_VER_DIR=${RUBY_VER_DIR:Q} \ 540 RUBY_VER_DIR=${RUBY_VER_DIR:Q} \
533 RUBY_DLEXT=${RUBY_DLEXT:Q} RUBY_SLEXT=${RUBY_SLEXT:Q} \ 541 RUBY_DLEXT=${RUBY_DLEXT:Q} RUBY_SLEXT=${RUBY_SLEXT:Q} \
534 RUBY_SHLIB=${RUBY_SHLIB:Q} \ 542 RUBY_SHLIB=${RUBY_SHLIB:Q} \
535 RUBY_SHLIBALIAS=${RUBY_SHLIBALIAS:Q} \ 543 RUBY_SHLIBALIAS=${RUBY_SHLIBALIAS:Q} \
536 RUBY_STATICLIB=${RUBY_STATICLIB:Q} \ 544 RUBY_STATICLIB=${RUBY_STATICLIB:Q} \
537 RUBY_ARCH=${RUBY_ARCH:Q} \ 545 RUBY_ARCH=${RUBY_ARCH:Q} \
538 ${PLIST_RUBY_DIRS:S,DIR="${PREFIX}/,DIR=",} 546 ${PLIST_RUBY_DIRS:S,DIR="${PREFIX}/,DIR=",}
539 547
540# 548#
541# make dynamic PLIST 549# make dynamic PLIST
542# 550#
543.if !empty(RUBY_DYNAMIC_DIRS) 551.if !empty(RUBY_DYNAMIC_DIRS)
544 552
545RUBY_PLIST_DYNAMIC= ${WRKDIR}/PLIST.work 553RUBY_PLIST_DYNAMIC= ${WRKDIR}/PLIST.work
546 554
547.if !defined(PLIST_SRC) 555.if !defined(PLIST_SRC)
548. if exists(${PKGDIR}/PLIST.common) 556. if exists(${PKGDIR}/PLIST.common)
549PLIST_SRC+= ${PKGDIR}/PLIST.common 557PLIST_SRC+= ${PKGDIR}/PLIST.common
550. elif exists(${PKGDIR}/PLIST) 558. elif exists(${PKGDIR}/PLIST)
551PLIST_SRC+= ${PKGDIR}/PLIST 559PLIST_SRC+= ${PKGDIR}/PLIST
552. endif 560. endif
553 561
554PLIST_SRC+= ${RUBY_PLIST_DYNAMIC} 562PLIST_SRC+= ${RUBY_PLIST_DYNAMIC}
555 563
556. if exists(${PKGDIR}/PLIST.common_end) 564. if exists(${PKGDIR}/PLIST.common_end)
557PLIST_SRC+= ${PKGDIR}/PLIST.common_end 565PLIST_SRC+= ${PKGDIR}/PLIST.common_end
558. endif 566. endif
559 567
560.endif 568.endif
561 569
562RUBY_PLIST_COMMENT_CMD= \ 570RUBY_PLIST_COMMENT_CMD= \
563 ${ECHO} "@comment The following lines are automatically generated" 571 ${ECHO} "@comment The following lines are automatically generated"
564RUBY_PLIST_FILES_CMD= ( cd ${DESTDIR}${PREFIX}; \ 572RUBY_PLIST_FILES_CMD= ( cd ${DESTDIR}${PREFIX}; \
565 ${FIND} ${RUBY_DYNAMIC_DIRS} \( -type f -o -type l \) -print ) | \ 573 ${FIND} ${RUBY_DYNAMIC_DIRS} \( -type f -o -type l \) -print ) | \
566 ${SORT} -u 574 ${SORT} -u
567RUBY_GENERATE_PLIST = ( \ 575RUBY_GENERATE_PLIST = ( \
568 ${RUBY_PLIST_COMMENT_CMD}; \ 576 ${RUBY_PLIST_COMMENT_CMD}; \
569 ${RUBY_PLIST_FILES_CMD} ) > ${RUBY_PLIST_DYNAMIC} 577 ${RUBY_PLIST_FILES_CMD} ) > ${RUBY_PLIST_DYNAMIC}
570.endif 578.endif
571 579
572PRINT_PLIST_AWK+= /lib\/libruby${RUBY_STATICLIB}$$/ \ 580PRINT_PLIST_AWK+= /lib\/libruby${RUBY_STATICLIB}$$/ \
573 { sub(/${RUBY_STATICLIB}/, "$${RUBY_STATICLIB}"); } 581 { sub(/${RUBY_STATICLIB}/, "$${RUBY_STATICLIB}"); }
574PRINT_PLIST_AWK+= /lib\/libruby${RUBY_VER}\.${RUBY_SLEXT}/ \ 582PRINT_PLIST_AWK+= /lib\/libruby${RUBY_VER}\.${RUBY_SLEXT}/ \
575 { sub(/${RUBY_VER}\.${RUBY_SLEXT}$$/, \ 583 { sub(/${RUBY_VER}\.${RUBY_SLEXT}$$/, \
576 "$${RUBY_VER}.$${RUBY_SLEXT}"); } 584 "$${RUBY_VER}.$${RUBY_SLEXT}"); }
577PRINT_PLIST_AWK+= /${RUBY_SHLIB}$$/ \ 585PRINT_PLIST_AWK+= /${RUBY_SHLIB}$$/ \
578 { sub(/${RUBY_SHLIB}$$/, "$${RUBY_SHLIB}"); } 586 { sub(/${RUBY_SHLIB}$$/, "$${RUBY_SHLIB}"); }
579PRINT_PLIST_AWK+= /${RUBY_SLEXT}\.${RUBY_SHLIBVER}$$/ \ 587PRINT_PLIST_AWK+= /${RUBY_SLEXT}\.${RUBY_SHLIBVER}$$/ \
580 { sub(/${RUBY_SLEXT}\.${RUBY_SHLIBVER}$$/, \ 588 { sub(/${RUBY_SLEXT}\.${RUBY_SHLIBVER}$$/, \
581 "$${RUBY_SLEXT}.$${RUBY_SHLIBVER}"); } 589 "$${RUBY_SLEXT}.$${RUBY_SHLIBVER}"); }
582.if ${RUBY_SHLIBALIAS} != "@comment" 590.if ${RUBY_SHLIBALIAS} != "@comment"
583PRINT_PLIST_AWK+= /${RUBY_SHLIBALIAS:S/\//\\\//}$$/ \ 591PRINT_PLIST_AWK+= /${RUBY_SHLIBALIAS:S/\//\\\//}$$/ \
584 { sub(/${RUBY_SHLIBALIAS:S/\//\\\//}$$/, \ 592 { sub(/${RUBY_SHLIBALIAS:S/\//\\\//}$$/, \
585 "$${RUBY_SHLIBALIAS}"); } 593 "$${RUBY_SHLIBALIAS}"); }
586.endif 594.endif
587PRINT_PLIST_AWK+= /^${RUBY_ARCHINC:S|/|\\/|g}/ \ 595PRINT_PLIST_AWK+= /^${RUBY_ARCHINC:S|/|\\/|g}/ \
588 { gsub(/${RUBY_ARCHINC:S|/|\\/|g}/, "$${RUBY_ARCHINC}"); \ 596 { gsub(/${RUBY_ARCHINC:S|/|\\/|g}/, "$${RUBY_ARCHINC}"); \
589 print; next; } 597 print; next; }
590PRINT_PLIST_AWK+= /^${RUBY_INC:S|/|\\/|g}/ \ 598PRINT_PLIST_AWK+= /^${RUBY_INC:S|/|\\/|g}/ \
591 { gsub(/${RUBY_INC:S|/|\\/|g}/, "$${RUBY_INC}"); \ 599 { gsub(/${RUBY_INC:S|/|\\/|g}/, "$${RUBY_INC}"); \
592 print; next; } 600 print; next; }
593PRINT_PLIST_AWK+= /\.${RUBY_DLEXT}$$/ \ 601PRINT_PLIST_AWK+= /\.${RUBY_DLEXT}$$/ \
594 { gsub(/${RUBY_DLEXT}$$/, "$${RUBY_DLEXT}") } 602 { gsub(/${RUBY_DLEXT}$$/, "$${RUBY_DLEXT}") }
595PRINT_PLIST_AWK+= /^${RUBY_ARCHLIB:S|/|\\/|g}/ \ 603PRINT_PLIST_AWK+= /^${RUBY_ARCHLIB:S|/|\\/|g}/ \
596 { gsub(/${RUBY_ARCHLIB:S|/|\\/|g}/, "$${RUBY_ARCHLIB}"); \ 604 { gsub(/${RUBY_ARCHLIB:S|/|\\/|g}/, "$${RUBY_ARCHLIB}"); \
597 print; next; } 605 print; next; }
598PRINT_PLIST_AWK+= /^${RUBY_VENDORARCHLIB:S|/|\\/|g}/ \ 606PRINT_PLIST_AWK+= /^${RUBY_VENDORARCHLIB:S|/|\\/|g}/ \
599 { gsub(/${RUBY_VENDORARCHLIB:S|/|\\/|g}/, "$${RUBY_VENDORARCHLIB}"); \ 607 { gsub(/${RUBY_VENDORARCHLIB:S|/|\\/|g}/, "$${RUBY_VENDORARCHLIB}"); \
600 print; next; } 608 print; next; }
601PRINT_PLIST_AWK+= /^${RUBY_VENDORLIB:S|/|\\/|g}/ \ 609PRINT_PLIST_AWK+= /^${RUBY_VENDORLIB:S|/|\\/|g}/ \
602 { gsub(/${RUBY_VENDORLIB:S|/|\\/|g}/, "$${RUBY_VENDORLIB}"); \ 610 { gsub(/${RUBY_VENDORLIB:S|/|\\/|g}/, "$${RUBY_VENDORLIB}"); \
603 print; next; } 611 print; next; }
604PRINT_PLIST_AWK+= /^${RUBY_SITEARCHLIB:S|/|\\/|g}/ \ 612PRINT_PLIST_AWK+= /^${RUBY_SITEARCHLIB:S|/|\\/|g}/ \
605 { gsub(/${RUBY_SITEARCHLIB:S|/|\\/|g}/, "$${RUBY_SITEARCHLIB}"); \ 613 { gsub(/${RUBY_SITEARCHLIB:S|/|\\/|g}/, "$${RUBY_SITEARCHLIB}"); \
606 print; next; } 614 print; next; }
607PRINT_PLIST_AWK+= /^${RUBY_SITELIB:S|/|\\/|g}/ \ 615PRINT_PLIST_AWK+= /^${RUBY_SITELIB:S|/|\\/|g}/ \
608 { gsub(/${RUBY_SITELIB:S|/|\\/|g}/, "$${RUBY_SITELIB}"); \ 616 { gsub(/${RUBY_SITELIB:S|/|\\/|g}/, "$${RUBY_SITELIB}"); \
609 print; next; } 617 print; next; }
610PRINT_PLIST_AWK+= /^${RUBY_SITELIB_BASE:S|/|\\/|g}/ \ 618PRINT_PLIST_AWK+= /^${RUBY_SITELIB_BASE:S|/|\\/|g}/ \
611 { gsub(/${RUBY_SITELIB_BASE:S|/|\\/|g}/, "$${RUBY_SITELIB_BASE}"); \ 619 { gsub(/${RUBY_SITELIB_BASE:S|/|\\/|g}/, "$${RUBY_SITELIB_BASE}"); \
612 print; next; } 620 print; next; }
613PRINT_PLIST_AWK+= /^${RUBY_VENDORLIB_BASE:S|/|\\/|g}/ \ 621PRINT_PLIST_AWK+= /^${RUBY_VENDORLIB_BASE:S|/|\\/|g}/ \
614 { gsub(/${RUBY_VENDORLIB_BASE:S|/|\\/|g}/, "$${RUBY_VENDORLIB_BASE}"); \ 622 { gsub(/${RUBY_VENDORLIB_BASE:S|/|\\/|g}/, "$${RUBY_VENDORLIB_BASE}"); \
615 print; next; } 623 print; next; }
616PRINT_PLIST_AWK+= /^${RUBY_LIB:S|/|\\/|g}/ \ 624PRINT_PLIST_AWK+= /^${RUBY_LIB:S|/|\\/|g}/ \
617 { gsub(/${RUBY_LIB:S|/|\\/|g}/, "$${RUBY_LIB}"); \ 625 { gsub(/${RUBY_LIB:S|/|\\/|g}/, "$${RUBY_LIB}"); \
618 print; next; } 626 print; next; }
619PRINT_PLIST_AWK+= /^${RUBY_DOC:S|/|\\/|g}/ \ 627PRINT_PLIST_AWK+= /^${RUBY_DOC:S|/|\\/|g}/ \
620 { gsub(/${RUBY_DOC:S|/|\\/|g}/, "$${RUBY_DOC}"); \ 628 { gsub(/${RUBY_DOC:S|/|\\/|g}/, "$${RUBY_DOC}"); \
621 print; next; } 629 print; next; }
622PRINT_PLIST_AWK+= /^${RUBY_EG:S|/|\\/|g}/ \ 630PRINT_PLIST_AWK+= /^${RUBY_EG:S|/|\\/|g}/ \
623 { gsub(/${RUBY_EG:S|/|\\/|g}/, "$${RUBY_EG}"); \ 631 { gsub(/${RUBY_EG:S|/|\\/|g}/, "$${RUBY_EG}"); \
624 print; next; } 632 print; next; }
625PRINT_PLIST_AWK+= /^${RUBY_SITERIDIR:S|/|\\/|g}/ \ 633PRINT_PLIST_AWK+= /^${RUBY_SITERIDIR:S|/|\\/|g}/ \
626 { gsub(/${RUBY_SITERIDIR:S|/|\\/|g}/, "$${RUBY_SITERIDIR}"); \ 634 { gsub(/${RUBY_SITERIDIR:S|/|\\/|g}/, "$${RUBY_SITERIDIR}"); \
627 print; next; } 635 print; next; }
628PRINT_PLIST_AWK+= /^${RUBY_SYSRIDIR:S|/|\\/|g}\// \ 636PRINT_PLIST_AWK+= /^${RUBY_SYSRIDIR:S|/|\\/|g}\// \
629 { next; } 637 { next; }
630 638
631# Insert part of PRINT_PLIST_AWK from gem.mk 639# Insert part of PRINT_PLIST_AWK from gem.mk
632PRINT_PLIST_AWK+= ${_RUBY_PRINT_PLIST_GEM} 640PRINT_PLIST_AWK+= ${_RUBY_PRINT_PLIST_GEM}
633 641
634PRINT_PLIST_AWK+= /\/${RUBY_NAME}/ \ 642PRINT_PLIST_AWK+= /\/${RUBY_NAME}/ \
635 { sub(/${RUBY_NAME}/, "$${RUBY_NAME}"); } 643 { sub(/${RUBY_NAME}/, "$${RUBY_NAME}"); }
636PRINT_PLIST_AWK+= /^${GEM_HOME:S|/|\\/|g:S|.|\\.|g}/ \ 644PRINT_PLIST_AWK+= /^${GEM_HOME:S|/|\\/|g:S|.|\\.|g}/ \
637 { gsub(/${GEM_HOME:S|/|\\/|g}/, "$${GEM_HOME}"); } 645 { gsub(/${GEM_HOME:S|/|\\/|g}/, "$${GEM_HOME}"); }
638 646
639.endif # _RUBY_MK 647.endif # _RUBY_MK