From 4d499de94a8392a541fd27fcb33f691ef2d374a6 Mon Sep 17 00:00:00 2001 From: luka Date: Mon, 4 Feb 2013 00:10:08 +0000 Subject: [PATCH] [packages] zsh: add version 5.0.2 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 git-svn-id: svn://svn.openwrt.org/openwrt/packages@35474 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- 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 000000000..2282b832d --- /dev/null +++ b/utils/zsh/Makefile @@ -0,0 +1,75 @@ +# +# Copyright (C) 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)) -- 2.11.0