2 # Copyright (C) 2006-2014 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
10 # - split up encodings
11 # - allow selection of either native or pure version of a library where supported
12 # +-> some native libraries are probably only supported if ruby-dl is enabled
15 include $(TOPDIR
)/rules.mk
23 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.bz2
24 PKG_SOURCE_URL
:=http
://cache.ruby-lang.org
/pub
/ruby
/$(PKG_LIBVER
)/
25 PKG_MD5SUM
:=ed9b8565bdeccb401d628ec8d54a0774
26 PKG_MAINTAINER
:=Luiz Angelo Daros de Luca
<luizluca@gmail.com
>
27 PKG_LICENSE
:=BSD-2-Clause
28 PKG_LICENSE_FILE
:=COPYING
30 PKG_BUILD_DEPENDS
:=ruby
/host
35 HOST_BUILD_DEPENDS
:=gmp
/host
37 include $(INCLUDE_DIR
)/host-build.mk
38 include $(INCLUDE_DIR
)/package.mk
39 include $(INCLUDE_DIR
)/nls.mk
41 define Package
/ruby
/Default
45 TITLE
:=Ruby scripting language
46 URL
:=http
://www.ruby-lang.org
/
49 define Package
/ruby
/Default
/description
50 Ruby is the interpreted scripting language for quick and easy
51 object-oriented programming. It has many features to process text files
52 and to do system management tasks
(as in perl
). It is simple
,
53 straight-forward
, and extensible.
57 $(call Package
/ruby
/Default
)
62 define Package
/ruby
/description
63 $(call Package
/ruby
/Default
/description
)
66 define Package
/libruby
67 $(call Package
/ruby
/Default
)
71 TITLE
+= (shared library
)
72 DEPENDS
+= +libpthread
+librt
+libgmp
75 # Ongoing work to break up ruby's standard library into coherent pieces
76 # with minimal dependencies between them
78 define Package
/ruby-core
79 $(call Package
/ruby
/Default
)
80 TITLE
:=Ruby standard libraries
81 DEPENDS
:=ruby
+libdb47
+libffi
84 define Package
/ruby-cgi
85 $(call Package
/ruby
/Default
)
86 TITLE
:=Ruby CGI support toolkit
90 define Package
/ruby-dl
91 $(call Package
/ruby
/Default
)
92 TITLE
+= (dynamic linker support
) (adds
5MB
+)
96 define Package
/ruby-enc
97 $(call Package
/ruby
/Default
)
98 TITLE
+= (character re-coding library
) (adds
2MB
+)
102 define Package
/ruby-erb
103 $(call Package
/ruby
/Default
)
104 TITLE
+= (embedded interpreter
)
108 define Package
/ruby-gdbm
109 $(call Package
/ruby
/Default
)
110 TITLE
:=Ruby support for gdbm
111 DEPENDS
:=ruby
+libgdbm
114 define Package
/ruby-gems
115 $(call Package
/ruby
/Default
)
116 TITLE
:=Ruby gems packet management
117 DEPENDS
:=ruby
+ruby-yaml
+ruby-zlib
+ruby-openssl
+ruby-webrick
+ruby-erb
120 define Package
/ruby-irb
121 $(call Package
/ruby
/Default
)
122 TITLE
+= (interactive
shell)
123 DEPENDS
:=ruby
+ruby-core
126 define Package
/ruby-json
127 $(call Package
/ruby
/Default
)
128 TITLE
:=Ruby support for JSON
132 define Package
/ruby-ncurses
133 $(call Package
/ruby
/Default
)
134 TITLE
:=Ruby support for ncurses
135 DEPENDS
:=ruby
+libncurses
+libncursesw
138 define Package
/ruby-nkf
139 $(call Package
/ruby
/Default
)
140 TITLE
:=Ruby Network Kanji Filter
144 define Package
/ruby-openssl
145 $(call Package
/ruby
/Default
)
146 TITLE
:=Ruby support for openssl
147 DEPENDS
:=ruby
+libopenssl
150 define Package
/ruby-rdoc
151 $(call Package
/ruby
/Default
)
152 TITLE
+= (documentation generator
)
156 define Package
/ruby-rake
157 $(call Package
/ruby
/Default
)
158 TITLE
+=Ruby Rake
(make replacement
)
162 define Package
/ruby-readline
163 $(call Package
/ruby
/Default
)
164 TITLE
:=Ruby support for readline
165 DEPENDS
:=ruby
+libncurses
+libreadline
168 define Package
/ruby-rexml
169 $(call Package
/ruby
/Default
)
170 TITLE
:=Ruby XML toolkit
174 define Package
/ruby-rss
175 $(call Package
/ruby
/Default
)
176 TITLE
:=Ruby RSS toolkit
180 define Package
/ruby-unit
181 $(call Package
/ruby
/Default
)
182 TITLE
:=Ruby unit testing toolkit
186 define Package
/ruby-webrick
187 $(call Package
/ruby
/Default
)
188 TITLE
:=Ruby Web server toolkit
192 define Package
/ruby-xmlrpc
193 $(call Package
/ruby
/Default
)
194 TITLE
:=Ruby XML-RPC toolkit
198 define Package
/ruby-yaml
199 $(call Package
/ruby
/Default
)
200 TITLE
:=Ruby YAML toolkit
204 define Package
/ruby-zlib
205 $(call Package
/ruby
/Default
)
206 TITLE
:=Ruby support for zlib
210 HOST_CONFIGURE_ARGS
+= \
211 --disable-install-doc \
212 --disable-install-rdoc \
213 --disable-install-capi
220 --with-ruby-version
=minor \
221 --with-iconv-dir
=$(ICONV_PREFIX
) \
223 TARGET_LDFLAGS
+= -L
$(PKG_BUILD_DIR
)
226 DESTDIR
="$(PKG_INSTALL_DIR)" \
229 define Package
/ruby
/install
230 $(INSTALL_DIR
) $(1)/usr
/bin
231 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/ruby
$(1)/usr
/bin
/
234 define Package
/libruby
/install
235 $(INSTALL_DIR
) $(1)/usr
/lib
236 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libruby.so.
* $(1)/usr
/lib
/
239 define Package
/ruby-core
/install
240 $(INSTALL_DIR
) $(1)/usr
/lib
241 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
$(1)/usr
/lib
/
243 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/*/curses.so \
245 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/*/gdbm.so \
247 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/kconv.rb \
248 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/*/nkf.so \
250 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/digest \
251 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/digest.rb \
252 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/*/digest \
253 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/*/digest.so \
254 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/openssl \
255 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/openssl.rb \
256 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/*/openssl.so \
257 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/drb
/ssl.rb \
258 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/net
/https.rb \
259 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/webrick
/ssl.rb \
261 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/*/dl.so \
263 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/*/enc \
265 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/*/readline.so \
266 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/irb
/completion.rb \
267 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/irb
/ext
/save-history.rb \
269 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/*/zlib.so \
271 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/erb.rb \
273 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/json.rb \
274 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/json \
275 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/*/json \
277 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/irb.rb \
278 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/irb \
280 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/rdoc \
282 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/rake.rb \
283 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/rake \
285 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/rubygems.rb \
286 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/rubygems \
288 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/cgi.rb \
289 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/cgi \
291 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/rexml \
293 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/rss \
294 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/rss.rb \
296 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/test \
298 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/webrick \
299 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/webrick.rb \
301 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/xmlrpc \
303 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/yaml \
304 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/yaml.rb \
305 $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/*/syck.so \
307 find
$(1) -name
'*.h' | xargs
rm -f
310 define Package
/ruby-cgi
/install
311 $(INSTALL_DIR
) $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)
312 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/cgi
$(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
313 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/cgi.rb
$(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
316 define Package
/ruby-dl
/install
317 ( cd
$(PKG_INSTALL_DIR
); $(TAR
) -cf
- \
318 usr
/lib
/ruby
/$(PKG_LIBVER
)/*/dl.so \
319 ) |
( cd
$(1); $(TAR
) -xf
- )
322 define Package
/ruby-enc
/install
323 ( cd
$(PKG_INSTALL_DIR
); $(TAR
) -cf
- \
324 usr
/lib
/ruby
/$(PKG_LIBVER
)/*/enc \
325 ) |
( cd
$(1); $(TAR
) -xf
- )
328 define Package
/ruby-erb
/install
329 $(INSTALL_DIR
) $(1)/usr
/bin
330 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/erb
$(1)/usr
/bin
/
331 $(INSTALL_DIR
) $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
332 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/erb.rb
$(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
335 define Package
/ruby-gdbm
/install
336 ( cd
$(PKG_INSTALL_DIR
); $(TAR
) -cf
- \
337 usr
/lib
/ruby
/$(PKG_LIBVER
)/*/gdbm.so \
338 ) |
( cd
$(1); $(TAR
) -xf
- )
341 define Package
/ruby-gems
/install
342 $(INSTALL_DIR
) $(1)/usr
/bin
343 $(CP
) $(PKG_INSTALL_DIR
)/usr
/bin
/gem
$(1)/usr
/bin
/
344 $(INSTALL_DIR
) $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)
345 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/rubygems.rb
$(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
346 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/rubygems
$(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
349 define Package
/ruby-irb
/install
350 $(INSTALL_DIR
) $(1)/usr
/bin
351 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/irb
$(1)/usr
/bin
/
352 $(INSTALL_DIR
) $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)
353 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/irb
$(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
354 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/irb.rb
$(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
357 define Package
/ruby-json
/install
358 ( cd
$(PKG_INSTALL_DIR
); $(TAR
) -cf
- \
359 usr
/lib
/ruby
/$(PKG_LIBVER
)/json.rb \
360 usr
/lib
/ruby
/$(PKG_LIBVER
)/json \
361 usr
/lib
/ruby
/$(PKG_LIBVER
)/*/json \
362 ) |
( cd
$(1); $(TAR
) -xf
- )
365 define Package
/ruby-ncurses
/install
366 ( cd
$(PKG_INSTALL_DIR
); $(TAR
) -cf
- \
367 usr
/lib
/ruby
/$(PKG_LIBVER
)/*/curses.so \
368 ) |
( cd
$(1); $(TAR
) -xf
- )
371 define Package
/ruby-nkf
/install
372 ( cd
$(PKG_INSTALL_DIR
); $(TAR
) -cf
- \
373 usr
/lib
/ruby
/$(PKG_LIBVER
)/kconv.rb \
374 usr
/lib
/ruby
/$(PKG_LIBVER
)/*/nkf.so \
375 ) |
( cd
$(1); $(TAR
) -xf
- )
378 define Package
/ruby-openssl
/install
379 ( cd
$(PKG_INSTALL_DIR
); $(TAR
) -cf
- \
380 usr
/lib
/ruby
/$(PKG_LIBVER
)/digest \
381 usr
/lib
/ruby
/$(PKG_LIBVER
)/digest.rb \
382 usr
/lib
/ruby
/$(PKG_LIBVER
)/*/digest.so \
383 usr
/lib
/ruby
/$(PKG_LIBVER
)/*/digest
/*.so \
384 usr
/lib
/ruby
/$(PKG_LIBVER
)/openssl \
385 usr
/lib
/ruby
/$(PKG_LIBVER
)/openssl.rb \
386 usr
/lib
/ruby
/$(PKG_LIBVER
)/*/openssl.so \
387 usr
/lib
/ruby
/$(PKG_LIBVER
)/drb
/ssl.rb \
388 usr
/lib
/ruby
/$(PKG_LIBVER
)/net
/https.rb \
389 ) |
( cd
$(1); $(TAR
) -xf
- )
392 define Package
/ruby-rdoc
/install
393 $(INSTALL_DIR
) $(1)/usr
/bin
394 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/rdoc
$(1)/usr
/bin
/
395 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/ri
$(1)/usr
/bin
/
396 $(INSTALL_DIR
) $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)
397 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/rdoc
$(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
400 define Package
/ruby-rake
/install
401 $(INSTALL_DIR
) $(1)/usr
/bin
402 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/rake
$(1)/usr
/bin
/
403 $(INSTALL_DIR
) $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)
404 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/rake.rb
$(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
405 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/rake
$(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
408 define Package
/ruby-readline
/install
409 ( cd
$(PKG_INSTALL_DIR
); $(TAR
) -cf
- \
410 usr
/lib
/ruby
/$(PKG_LIBVER
)/*/readline.so \
411 ) |
( cd
$(1); $(TAR
) -xf
- )
414 define Package
/ruby-rexml
/install
415 $(INSTALL_DIR
) $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)
416 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/rexml
$(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
420 define Package
/ruby-rss
/install
421 $(INSTALL_DIR
) $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)
422 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/rss
$(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
423 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/rss.rb
$(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
426 define Package
/ruby-unit
/install
427 $(INSTALL_DIR
) $(1)/usr
/bin
428 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/testrb
$(1)/usr
/bin
/
429 $(INSTALL_DIR
) $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)
430 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/test $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
433 define Package
/ruby-webrick
/install
434 $(INSTALL_DIR
) $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)
435 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/webrick
$(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
436 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/webrick.rb
$(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
439 define Package
/ruby-xmlrpc
/install
440 $(INSTALL_DIR
) $(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)
441 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/ruby
/$(PKG_LIBVER
)/xmlrpc
$(1)/usr
/lib
/ruby
/$(PKG_LIBVER
)/
444 define Package
/ruby-yaml
/install
445 ( cd
$(PKG_INSTALL_DIR
); $(TAR
) -cf
- \
446 usr
/lib
/ruby
/$(PKG_LIBVER
)/yaml \
447 usr
/lib
/ruby
/$(PKG_LIBVER
)/yaml.rb \
448 usr
/lib
/ruby
/$(PKG_LIBVER
)/*/syck.so \
449 ) |
( cd
$(1); $(TAR
) -xf
- )
452 define Package
/ruby-zlib
/install
453 ( cd
$(PKG_INSTALL_DIR
); $(TAR
) -cf
- \
454 usr
/lib
/ruby
/$(PKG_LIBVER
)/*/zlib.so \
455 ) |
( cd
$(1); $(TAR
) -xf
- )
458 define Build
/InstallDev
459 ( cd
$(PKG_INSTALL_DIR
); $(TAR
) -cf
- \
461 ) |
( cd
$(1); $(TAR
) -xf
- )
464 $(eval
$(call BuildPackage
,ruby
))
465 $(eval
$(call BuildPackage
,libruby
))
466 $(eval
$(call BuildPackage
,ruby-core
))
467 $(eval
$(call BuildPackage
,ruby-cgi
))
468 $(eval
$(call BuildPackage
,ruby-dl
))
469 $(eval
$(call BuildPackage
,ruby-enc
))
470 $(eval
$(call BuildPackage
,ruby-erb
))
471 $(eval
$(call BuildPackage
,ruby-gdbm
))
472 $(eval
$(call BuildPackage
,ruby-gems
))
473 $(eval
$(call BuildPackage
,ruby-json
))
474 $(eval
$(call BuildPackage
,ruby-irb
))
475 $(eval
$(call BuildPackage
,ruby-ncurses
))
476 $(eval
$(call BuildPackage
,ruby-nkf
))
477 $(eval
$(call BuildPackage
,ruby-openssl
))
478 $(eval
$(call BuildPackage
,ruby-rake
))
479 $(eval
$(call BuildPackage
,ruby-rdoc
))
480 $(eval
$(call BuildPackage
,ruby-readline
))
481 $(eval
$(call BuildPackage
,ruby-rexml
))
482 $(eval
$(call BuildPackage
,ruby-rss
))
483 $(eval
$(call BuildPackage
,ruby-unit
))
484 $(eval
$(call BuildPackage
,ruby-webrick
))
485 $(eval
$(call BuildPackage
,ruby-xmlrpc
))
486 $(eval
$(call BuildPackage
,ruby-yaml
))
487 $(eval
$(call BuildPackage
,ruby-zlib
))
488 $(eval
$(call HostBuild
))