Installs the shell binary, and all applicable completion functions. Completion functions specific for other systems (e.g. AIX/Solaris/Redhat/etc) are not installed.
Compiled against ncurses. Notice the "--with-term-lib=..." at Build/Configure forcing the preference for ncurses (against ncursesw). To build with ncursesw, (i) change the dependencies, (ii) remove the '--with-term-lib=...' (iii) add CPPFLAGS=-I$(STAGING_DIR)/usr/include/ncursesw to the configure command. Signed-off-by: Francisco Borges <[email protected]> --- utils/zsh/Makefile | 75 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 utils/zsh/Makefile diff --git a/utils/zsh/Makefile b/utils/zsh/Makefile new file mode 100644 index 0000000..00e7bda --- /dev/null +++ b/utils/zsh/Makefile @@ -0,0 +1,75 @@ +# +# Copyright (C) 2007-2013 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=zsh +PKG_VERSION:=5.0.2 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 +PKG_SOURCE_URL:=@SF/zsh +PKG_MD5SUM:=b8f2ad691acf58b3252225746480dcad + +include $(INCLUDE_DIR)/package.mk + +define Package/zsh + SECTION:=utils + CATEGORY:=Utilities + TITLE:=The Z shell + DEPENDS:=+libncurses +librt + URL:=http://www.zsh.org/ +endef + +define Package/zsh/description + Zsh is a UNIX command interpreter (shell) usable as an interactive + login shell and as a shell script command processor. Of the standard + shells, zsh most closely resembles ksh but includes many enhancements. + Zsh has command line editing, builtin spelling correction, programmable + command completion, shell functions (with autoloading), a history + mechanism, and a host of other features. +endef + +define Build/Configure + $(call Build/Configure/Default, \ + --bindir=/bin \ + --disable-etcdir \ + --with-term-lib="ncurses ncursesw" \ + ) + # Do not install these functions: + $(SED) 's, Completion/AIX/\*/\*,,g' $(PKG_BUILD_DIR)/config.modules + $(SED) 's, Completion/BSD/\*/\*,,g' $(PKG_BUILD_DIR)/config.modules + $(SED) 's, Completion/Cygwin/\*/\*,,g' $(PKG_BUILD_DIR)/config.modules + $(SED) 's, Completion/Darwin/\*/\*,,g' $(PKG_BUILD_DIR)/config.modules + $(SED) 's, Completion/Debian/\*/\*,,g' $(PKG_BUILD_DIR)/config.modules + $(SED) 's, Completion/Mandriva/\*/\*,,g' $(PKG_BUILD_DIR)/config.modules + $(SED) 's, Completion/Redhat/\*/\*,,g' $(PKG_BUILD_DIR)/config.modules + $(SED) 's, Completion/Solaris/\*/\*,,g' $(PKG_BUILD_DIR)/config.modules + $(SED) 's, Completion/X/\*/\*,,g' $(PKG_BUILD_DIR)/config.modules + $(SED) 's, Completion/openSUSE/\*/\*,,g' $(PKG_BUILD_DIR)/config.modules + # After mucking with 'config.modules', one must call + $(MAKE) -C $(PKG_BUILD_DIR) DESTDIR="$(PKG_INSTALL_DIR)" prep +endef + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) DESTDIR="$(PKG_INSTALL_DIR)" install +endef + +define Package/zsh/postinst +#!/bin/sh +grep zsh $${IPKG_INSTROOT}/etc/shells || \ + echo "/bin/zsh" >> $${IPKG_INSTROOT}/etc/shells +endef + +define Package/zsh/install + $(INSTALL_DIR) $(1)/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/bin/zsh $(1)/bin/ + $(INSTALL_DIR) $(1)/usr/share/zsh/$(PKG_VERSION) + $(CP) $(PKG_INSTALL_DIR)/usr/share/zsh/$(PKG_VERSION)/* $(1)/usr/share/zsh/$(PKG_VERSION)/ +endef + +$(eval $(call BuildPackage,zsh)) -- 1.8.0 _______________________________________________ openwrt-devel mailing list [email protected] https://lists.openwrt.org/mailman/listinfo/openwrt-devel
