X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=blobdiff_plain;f=lang%2Fruby%2FMakefile;h=17041f1bc068d732ccdaf15f7d5b8caebe495a15;hp=893536077b3a1939a86751866fdfd217f7500d62;hb=9fe33f444b0e8287a07eff99de8b00279b024c0e;hpb=ef4e7a37361661eed00de082d1ff8ec421e640e9;ds=sidebyside diff --git a/lang/ruby/Makefile b/lang/ruby/Makefile index 893536077b..17041f1bc0 100644 --- a/lang/ruby/Makefile +++ b/lang/ruby/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006 OpenWrt.org +# Copyright (C) 2006-2008 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,101 +9,183 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ruby -PKG_VERSION:=1.8.6 -PKG_RELEASE:=3 +PKG_VERSION:=1.8.6-p287 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=ftp://ftp.ruby-lang.org/pub/ruby/1.8/ -PKG_MD5SUM:=e558a0e00ae318d43bf6ff9af452bad2 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) -PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install +PKG_MD5SUM:=80b5f3db12531d36e6c81fac6d05dda9 include $(INCLUDE_DIR)/package.mk define Package/ruby/Default + SUBMENU:=Ruby SECTION:=lang CATEGORY:=Languages - TITLE:=Ruby object-oriented scripting language interpreter - DESCRIPTION:=\ - Ruby is the interpreted scripting language for quick and \\\ - easy object-oriented programming. It has many features to \\\ - process text files and to do system management tasks (as in \\\ - perl). It is simple, straight-forward, and extensible. + TITLE:=Ruby scripting language URL:=http://www.ruby-lang.org/ endef +define Package/ruby/Default/description + Ruby is the interpreted scripting language for quick and easy + object-oriented programming. It has many features to process text files + and to do system management tasks (as in perl). It is simple, + straight-forward, and extensible. +endef + define Package/ruby - $(call Package/ruby/Default) +$(call Package/ruby/Default) + TITLE+= (interpreter) DEPENDS:=+libruby - DESCRIPTION+=\\\ - \\\ - The ruby master. - MENU:=1 +endef + +define Package/ruby/description +$(call Package/ruby/Default/description) endef define Package/libruby +$(call Package/ruby/Default) + SUBMENU:= SECTION:=libs CATEGORY:=Libraries - TITLE:=Libraries necessary to run Ruby - URL:=http://www.ruby-lang.org/ + TITLE+= (shared library) endef -# NOTE: it would be a *lot* of work to attempt to break down Ruby's -# standard library bundle into coherent pieces, and work out the dependencies -# between them. This could be useful, e.g. if you don't want to do any XML or -# YAML handling, why carry all that code? However, squashfs does a good -# job of fitting it all into flash. -define Package/rubylibs - $(call Package/ruby/Default) - DEPENDS:=ruby +# Ongoing work to break up ruby's standard library into coherent pieces +# with minimal dependencies between them + +define Package/ruby-core +$(call Package/ruby/Default) TITLE:=Ruby standard libraries - URL:=http://www.ruby-lang.org/ + DEPENDS:=ruby endef -# But this one is a quarter of a meg by itself -define Package/rubylib-nkf - $(call Package/ruby/Default) +define Package/ruby-cgi +$(call Package/ruby/Default) + TITLE:= Ruby CGI support toolkit DEPENDS:=ruby - TITLE:=Ruby Network Kanji Filter - URL:=http://www.ruby-lang.org/ endef -# erb appears to depend only on strscan.so. Separate it? define Package/ruby-erb - $(call Package/ruby/Default) - DEPENDS:=ruby +libruby +rubylibs - TITLE:=Embedded Ruby interpreter - URL:=http://www.ruby-lang.org/ +$(call Package/ruby/Default) + TITLE+= (embedded interpreter) + DEPENDS:=ruby +endef + +define Package/ruby-gdbm +$(call Package/ruby/Default) + TITLE:=Ruby support for gdbm + DEPENDS:=ruby +libgdbm endef define Package/ruby-irb - $(call Package/ruby/Default) - DEPENDS:=ruby +libruby +rubylibs - TITLE:=Interactive Ruby shell - URL:=http://www.ruby-lang.org/ +$(call Package/ruby/Default) + TITLE+= (interactive shell) + DEPENDS:=ruby +endef + +define Package/ruby-ncurses +$(call Package/ruby/Default) + TITLE:=Ruby support for ncurses + DEPENDS:=ruby +libncurses +endef + +define Package/ruby-nkf +$(call Package/ruby/Default) + TITLE:=Ruby Network Kanji Filter + DEPENDS:=ruby +endef + +define Package/ruby-openssl +$(call Package/ruby/Default) + TITLE:=Ruby support for openssl + DEPENDS:=ruby +libopenssl endef define Package/ruby-rdoc - $(call Package/ruby/Default) - DEPENDS:=ruby +libruby +rubylibs - TITLE:=Ruby documentation generator - URL:=http://www.ruby-lang.org/ +$(call Package/ruby/Default) + TITLE+= (documentation generator) + DEPENDS:=ruby endef -define Package/ruby-testrb - $(call Package/ruby/Default) - DEPENDS:=ruby +libruby +rubylibs - TITLE:=Ruby unit testing - URL:=http://www.ruby-lang.org/ +define Package/ruby-readline +$(call Package/ruby/Default) + TITLE:=Ruby support for readline + DEPENDS:=ruby +libncurses +libreadline +endef + +define Package/ruby-rexml +$(call Package/ruby/Default) + TITLE:=Ruby XML toolkit + DEPENDS:=ruby +endef + +define Package/ruby-rss +$(call Package/ruby/Default) + TITLE:=Ruby RSS toolkit + DEPENDS:=ruby +endef + +define Package/ruby-soap +$(call Package/ruby/Default) + TITLE:=Ruby SOAP toolkit + DEPENDS:=ruby +endef + +define Package/ruby-unit +$(call Package/ruby/Default) + TITLE:=Ruby unit testing toolkit + DEPENDS:=ruby +endef + +define Package/ruby-webrick +$(call Package/ruby/Default) + TITLE:=Ruby Web server toolkit + DEPENDS:=ruby +endef + +define Package/ruby-wsdl +$(call Package/ruby/Default) + TITLE:=Ruby WSDL 1.1 toolkit + DEPENDS:=ruby +endef + +define Package/ruby-xmlrpc +$(call Package/ruby/Default) + TITLE:=Ruby XML-RPC toolkit + DEPENDS:=ruby +endef + +define Package/ruby-xsd +$(call Package/ruby/Default) + TITLE:=Ruby XML Schema Datatypes toolkit + DEPENDS:=ruby +endef + +define Package/ruby-yaml +$(call Package/ruby/Default) + TITLE:=Ruby YAML toolkit + DEPENDS:=ruby +endef + +define Package/ruby-zlib +$(call Package/ruby/Default) + TITLE:=Ruby support for zlib + DEPENDS:=ruby +zlib endef + CONFIGURE_ARGS += \ --enable-shared \ + --enable-static \ + --disable-rpath \ --disable-ipv6 \ - , \ + +CONFIGURE_VARS += \ ac_cv_func_setpgrp_void=yes +TARGET_LDFLAGS += -L$(PKG_BUILD_DIR) + MAKE_FLAGS += \ DESTDIR="$(PKG_INSTALL_DIR)" \ SHELL="/bin/bash" \ @@ -116,26 +198,86 @@ endef define Package/libruby/install $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libruby.so* $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libruby.so.* $(1)/usr/lib/ endef -define Package/rubylibs/install +define Package/ruby-core/install $(INSTALL_DIR) $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby $(1)/usr/lib/ - rm -f $(1)/usr/lib/ruby/1.8/erb.rb - rm -f $(1)/usr/lib/ruby/1.8/irb.rb - rm -rf $(1)/usr/lib/ruby/1.8/irb - rm -rf $(1)/usr/lib/ruby/1.8/rdoc - rm -rf $(1)/usr/lib/ruby/1.8/test - rm -rf $(1)/usr/lib/ruby/1.8/runit - rm -f $(1)/usr/lib/ruby/1.8/irb.rb + rm -rf \ + $(1)/usr/lib/ruby/1.8/*/curses.so \ + \ + $(1)/usr/lib/ruby/1.8/*/gdbm.so \ + \ + $(1)/usr/lib/ruby/1.8/kconv.rb \ + $(1)/usr/lib/ruby/1.8/*/nkf.so \ + \ + $(1)/usr/lib/ruby/1.8/digest \ + $(1)/usr/lib/ruby/1.8/digest.rb \ + $(1)/usr/lib/ruby/1.8/*/digest \ + $(1)/usr/lib/ruby/1.8/*/digest.so \ + $(1)/usr/lib/ruby/1.8/openssl \ + $(1)/usr/lib/ruby/1.8/openssl.rb \ + $(1)/usr/lib/ruby/1.8/*/openssl.so \ + $(1)/usr/lib/ruby/1.8/md5.rb \ + $(1)/usr/lib/ruby/1.8/rmd160.rb \ + $(1)/usr/lib/ruby/1.8/sha1.rb \ + $(1)/usr/lib/ruby/1.8/sha2.rb \ + $(1)/usr/lib/ruby/1.8/drb/ssl.rb \ + $(1)/usr/lib/ruby/1.8/net/ftptls.rb \ + $(1)/usr/lib/ruby/1.8/net/https.rb \ + $(1)/usr/lib/ruby/1.8/net/telnets.rb \ + $(1)/usr/lib/ruby/1.8/webrick/ssl.rb \ + \ + $(1)/usr/lib/ruby/1.8/*/readline.so \ + $(1)/usr/lib/ruby/1.8/irb/completion.rb \ + $(1)/usr/lib/ruby/1.8/irb/ext/save-history.rb \ + \ + $(1)/usr/lib/ruby/1.8/*/zlib.so \ + \ + $(1)/usr/lib/ruby/1.8/erb.rb \ + \ + $(1)/usr/lib/ruby/1.8/irb.rb \ + $(1)/usr/lib/ruby/1.8/irb \ + \ + $(1)/usr/lib/ruby/1.8/rdoc \ + \ + $(1)/usr/lib/ruby/1.8/cgi \ + $(1)/usr/lib/ruby/1.8/cgi.rb \ + $(1)/usr/lib/ruby/1.8/cgi-lib.rb \ + \ + $(1)/usr/lib/ruby/1.8/rexml \ + \ + $(1)/usr/lib/ruby/1.8/rss \ + $(1)/usr/lib/ruby/1.8/rss.rb \ + \ + $(1)/usr/lib/ruby/1.8/soap \ + \ + $(1)/usr/lib/ruby/1.8/rubyunit.rb \ + $(1)/usr/lib/ruby/1.8/runit \ + $(1)/usr/lib/ruby/1.8/test \ + \ + $(1)/usr/lib/ruby/1.8/webrick \ + $(1)/usr/lib/ruby/1.8/webrick.rb \ + \ + $(1)/usr/lib/ruby/1.8/wsdl \ + \ + $(1)/usr/lib/ruby/1.8/xmlrpc \ + \ + $(1)/usr/lib/ruby/1.8/xsd \ + \ + $(1)/usr/lib/ruby/1.8/yaml \ + $(1)/usr/lib/ruby/1.8/yaml.rb \ + $(1)/usr/lib/ruby/1.8/*/syck.so \ + find $(1) -name '*.h' | xargs rm -f - find $(1) -name 'nkf.so' | xargs rm -f endef -define Package/rubylib-nkf/install - ( cd $(PKG_INSTALL_DIR); $(TAR) -cf - usr/lib/ruby/1.8/*/nkf.so ) | \ - ( cd $(1); $(TAR) -xf - ) +define Package/ruby-cgi/install + $(INSTALL_DIR) $(1)/usr/lib/ruby/1.8 + $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/cgi $(1)/usr/lib/ruby/1.8/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/cgi.rb $(1)/usr/lib/ruby/1.8/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/cgi-lib.rb $(1)/usr/lib/ruby/1.8/ endef define Package/ruby-erb/install @@ -145,12 +287,52 @@ define Package/ruby-erb/install $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/erb.rb $(1)/usr/lib/ruby/1.8/ endef +define Package/ruby-gdbm/install + ( cd $(PKG_INSTALL_DIR); $(TAR) -cf - \ + usr/lib/ruby/1.8/*/gdbm.so \ + ) | ( cd $(1); $(TAR) -xf - ) +endef + define Package/ruby-irb/install $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/irb $(1)/usr/bin/ $(INSTALL_DIR) $(1)/usr/lib/ruby/1.8 - $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/irb.rb $(1)/usr/lib/ruby/1.8/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/irb $(1)/usr/lib/ruby/1.8/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/irb.rb $(1)/usr/lib/ruby/1.8/ +endef + +define Package/ruby-ncurses/install + ( cd $(PKG_INSTALL_DIR); $(TAR) -cf - \ + usr/lib/ruby/1.8/*/curses.so \ + ) | ( cd $(1); $(TAR) -xf - ) +endef + +define Package/ruby-nkf/install + ( cd $(PKG_INSTALL_DIR); $(TAR) -cf - \ + usr/lib/ruby/1.8/kconv.rb \ + usr/lib/ruby/1.8/*/nkf.so \ + ) | ( cd $(1); $(TAR) -xf - ) +endef + +define Package/ruby-openssl/install + ( cd $(PKG_INSTALL_DIR); $(TAR) -cf - \ + usr/lib/ruby/1.8/digest \ + usr/lib/ruby/1.8/digest.rb \ + usr/lib/ruby/1.8/*/digest.so \ + usr/lib/ruby/1.8/*/digest/*.so \ + usr/lib/ruby/1.8/openssl \ + usr/lib/ruby/1.8/openssl.rb \ + usr/lib/ruby/1.8/*/openssl.so \ + usr/lib/ruby/1.8/md5.rb \ + usr/lib/ruby/1.8/rmd160.rb \ + usr/lib/ruby/1.8/sha1.rb \ + usr/lib/ruby/1.8/sha2.rb \ + usr/lib/ruby/1.8/drb/ssl.rb \ + usr/lib/ruby/1.8/net/ftptls.rb \ + usr/lib/ruby/1.8/net/https.rb \ + usr/lib/ruby/1.8/net/telnets.rb \ + usr/lib/ruby/1.8/webrick/ssl.rb \ + ) | ( cd $(1); $(TAR) -xf - ) endef define Package/ruby-rdoc/install @@ -161,23 +343,98 @@ define Package/ruby-rdoc/install $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/rdoc $(1)/usr/lib/ruby/1.8/ endef -define Package/ruby-testrb/install +define Package/ruby-readline/install + ( cd $(PKG_INSTALL_DIR); $(TAR) -cf - \ + usr/lib/ruby/1.8/*/readline.so \ + usr/lib/ruby/1.8/irb/completion.rb \ + usr/lib/ruby/1.8/irb/ext/save-history.rb \ + ) | ( cd $(1); $(TAR) -xf - ) +endef + +define Package/ruby-rexml/install + $(INSTALL_DIR) $(1)/usr/lib/ruby/1.8 + $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/rexml $(1)/usr/lib/ruby/1.8/ +endef + +define Package/ruby-rss/install + $(INSTALL_DIR) $(1)/usr/lib/ruby/1.8 + $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/rss $(1)/usr/lib/ruby/1.8/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/rss.rb $(1)/usr/lib/ruby/1.8/ +endef + +define Package/ruby-soap/install + $(INSTALL_DIR) $(1)/usr/lib/ruby/1.8 + $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/soap $(1)/usr/lib/ruby/1.8/ +endef + +define Package/ruby-unit/install $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/testrb $(1)/usr/bin/ $(INSTALL_DIR) $(1)/usr/lib/ruby/1.8 - $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/test $(1)/usr/lib/ruby/1.8/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/rubyunit.rb $(1)/usr/lib/ruby/1.8/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/runit $(1)/usr/lib/ruby/1.8/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/test $(1)/usr/lib/ruby/1.8/ +endef + +define Package/ruby-webrick/install + $(INSTALL_DIR) $(1)/usr/lib/ruby/1.8 + $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/webrick $(1)/usr/lib/ruby/1.8/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/webrick.rb $(1)/usr/lib/ruby/1.8/ +endef + +define Package/ruby-wsdl/install + $(INSTALL_DIR) $(1)/usr/lib/ruby/1.8 + $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/wsdl $(1)/usr/lib/ruby/1.8/ +endef + +define Package/ruby-xmlrpc/install + $(INSTALL_DIR) $(1)/usr/lib/ruby/1.8 + $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/xmlrpc $(1)/usr/lib/ruby/1.8/ +endef + +define Package/ruby-xsd/install + $(INSTALL_DIR) $(1)/usr/lib/ruby/1.8 + $(CP) $(PKG_INSTALL_DIR)/usr/lib/ruby/1.8/xsd $(1)/usr/lib/ruby/1.8/ +endef + +define Package/ruby-yaml/install + ( cd $(PKG_INSTALL_DIR); $(TAR) -cf - \ + usr/lib/ruby/1.8/yaml \ + usr/lib/ruby/1.8/yaml.rb \ + usr/lib/ruby/1.8/*/syck.so \ + ) | ( cd $(1); $(TAR) -xf - ) +endef + +define Package/ruby-zlib/install + ( cd $(PKG_INSTALL_DIR); $(TAR) -cf - \ + usr/lib/ruby/1.8/*/zlib.so \ + ) | ( cd $(1); $(TAR) -xf - ) endef $(eval $(call BuildPackage,ruby)) $(eval $(call BuildPackage,libruby)) -$(eval $(call BuildPackage,rubylibs)) -$(eval $(call BuildPackage,rubylib-nkf)) +$(eval $(call BuildPackage,ruby-core)) +$(eval $(call BuildPackage,ruby-cgi)) $(eval $(call BuildPackage,ruby-erb)) +$(eval $(call BuildPackage,ruby-gdbm)) $(eval $(call BuildPackage,ruby-irb)) +$(eval $(call BuildPackage,ruby-ncurses)) +$(eval $(call BuildPackage,ruby-nkf)) +$(eval $(call BuildPackage,ruby-openssl)) $(eval $(call BuildPackage,ruby-rdoc)) -$(eval $(call BuildPackage,ruby-testrb)) +$(eval $(call BuildPackage,ruby-readline)) +$(eval $(call BuildPackage,ruby-rexml)) +$(eval $(call BuildPackage,ruby-rss)) +$(eval $(call BuildPackage,ruby-soap)) +$(eval $(call BuildPackage,ruby-unit)) +$(eval $(call BuildPackage,ruby-webrick)) +$(eval $(call BuildPackage,ruby-wsdl)) +$(eval $(call BuildPackage,ruby-xmlrpc)) +$(eval $(call BuildPackage,ruby-xsd)) +$(eval $(call BuildPackage,ruby-yaml)) +$(eval $(call BuildPackage,ruby-zlib)) $(eval $(call RequireCommand,ruby, \ $(PKG_NAME) requires ruby installed on the host-system. \ )) +