ruby.mk 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. #############################################################
  2. #
  3. # ruby
  4. #
  5. #############################################################
  6. RUBY_VERSION:=1.8.2
  7. RUBY_SOURCE:=ruby-$(RUBY_VERSION).tar.gz
  8. RUBY_SITE:=ftp://ftp.ruby-lang.org/pub/ruby/1.8
  9. RUBY_DIR:=$(BUILD_DIR)/ruby-$(RUBY_VERSION)
  10. RUBY_CAT:=$(ZCAT)
  11. RUBY_BINARY:=ruby
  12. RUBY_TARGET_BINARY:=usr/bin/ruby
  13. $(DL_DIR)/$(RUBY_SOURCE):
  14. $(call DOWNLOAD,$(RUBY_SITE),$(RUBY_SOURCE))
  15. ruby-source: $(DL_DIR)/$(RUBY_SOURCE)
  16. $(RUBY_DIR)/.unpacked: $(DL_DIR)/$(RUBY_SOURCE)
  17. $(RUBY_CAT) $(DL_DIR)/$(RUBY_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
  18. toolchain/patch-kernel.sh $(RUBY_DIR) package/ruby/ ruby-\*.patch
  19. (cd $(RUBY_DIR); autoreconf)
  20. touch $(RUBY_DIR)/.unpacked
  21. $(RUBY_DIR)/.configured: $(RUBY_DIR)/.unpacked
  22. (cd $(RUBY_DIR); rm -rf config.cache; \
  23. $(TARGET_CONFIGURE_OPTS) \
  24. $(TARGET_CONFIGURE_ARGS) \
  25. ./configure \
  26. --target=$(GNU_TARGET_NAME) \
  27. --host=$(GNU_TARGET_NAME) \
  28. --build=$(GNU_HOST_NAME) \
  29. --prefix=/usr \
  30. --exec-prefix=/usr \
  31. --bindir=/usr/bin \
  32. --sbindir=/usr/sbin \
  33. --libdir=/lib \
  34. --libexecdir=/usr/lib \
  35. --sysconfdir=/etc \
  36. --datadir=/usr/share \
  37. --localstatedir=/var \
  38. --mandir=/usr/man \
  39. --infodir=/usr/info \
  40. $(DISABLE_NLS) \
  41. $(DISABLE_LARGEFILE) \
  42. )
  43. touch $(RUBY_DIR)/.configured
  44. $(RUBY_DIR)/$(RUBY_BINARY): $(RUBY_DIR)/.configured
  45. $(MAKE) -C $(RUBY_DIR)
  46. $(TARGET_DIR)/$(RUBY_TARGET_BINARY): $(RUBY_DIR)/$(RUBY_BINARY)
  47. $(MAKE) DESTDIR=$(TARGET_DIR) -C $(RUBY_DIR) install
  48. rm -rf $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
  49. ruby: uclibc $(TARGET_DIR)/$(RUBY_TARGET_BINARY)
  50. ruby-clean:
  51. $(MAKE) DESTDIR=$(TARGET_DIR) -C $(RUBY_DIR) uninstall
  52. -$(MAKE) -C $(RUBY_DIR) clean
  53. ruby-dirclean:
  54. rm -rf $(RUBY_DIR)
  55. #############################################################
  56. #
  57. # Toplevel Makefile options
  58. #
  59. #############################################################
  60. ifeq ($(BR2_PACKAGE_RUBY),y)
  61. TARGETS+=ruby
  62. endif