ruby.mk 1.9 KB

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