diff options
Diffstat (limited to 'meta-oe/recipes-shells')
3 files changed, 134 insertions, 0 deletions
diff --git a/meta-oe/recipes-shells/tcsh/tcsh/0001-Enable-system-malloc-on-all-linux.patch b/meta-oe/recipes-shells/tcsh/tcsh/0001-Enable-system-malloc-on-all-linux.patch new file mode 100644 index 0000000000..ff2f6a3b68 --- /dev/null +++ b/meta-oe/recipes-shells/tcsh/tcsh/0001-Enable-system-malloc-on-all-linux.patch @@ -0,0 +1,30 @@ +From 0553455813a1f717ef50cc911e4db73da3d23c32 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Wed, 22 Mar 2017 18:47:40 -0700 +Subject: [PATCH 1/2] Enable system malloc on all linux + +Dont trigger on being just android or glibc +internal malloc falls flat on musl based systems +as well. So switch to using system malloc + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + config_f.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/config_f.h b/config_f.h +index 6a632a5..0a66960 100644 +--- a/config_f.h ++++ b/config_f.h +@@ -139,7 +139,7 @@ + * This can be much slower and no memory statistics will be + * provided. + */ +-#if defined(__MACHTEN__) || defined(PURIFY) || defined(MALLOC_TRACE) || defined(_OSD_POSIX) || defined(__MVS__) || defined (__CYGWIN__) || defined(__GLIBC__) || defined(__OpenBSD__) || defined(__APPLE__) || defined (__ANDROID__) ++#if defined(__MACHTEN__) || defined(PURIFY) || defined(MALLOC_TRACE) || defined(_OSD_POSIX) || defined(__MVS__) || defined (__CYGWIN__) || defined(__linux__) || defined(__OpenBSD__) || defined(__APPLE__) + # define SYSMALLOC + #else + # undef SYSMALLOC +-- +2.12.1 + diff --git a/meta-oe/recipes-shells/tcsh/tcsh/0002-Add-debian-csh-scripts.patch b/meta-oe/recipes-shells/tcsh/tcsh/0002-Add-debian-csh-scripts.patch new file mode 100644 index 0000000000..e4de6f7fe5 --- /dev/null +++ b/meta-oe/recipes-shells/tcsh/tcsh/0002-Add-debian-csh-scripts.patch @@ -0,0 +1,60 @@ +From 60271713025f6b17dda29721be012a8428e77185 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Wed, 22 Mar 2017 18:56:49 -0700 +Subject: [PATCH 2/2] Add debian csh scripts + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + csh.cshrc | 15 +++++++++++++++ + csh.login | 8 ++++++++ + csh.logout | 1 + + 3 files changed, 24 insertions(+) + create mode 100644 csh.cshrc + create mode 100644 csh.login + create mode 100644 csh.logout + +diff --git a/csh.cshrc b/csh.cshrc +new file mode 100644 +index 0000000..29c934a +--- /dev/null ++++ b/csh.cshrc +@@ -0,0 +1,15 @@ ++# /etc/csh.cshrc: system-wide .cshrc file for csh(1) and tcsh(1) ++ ++if ($?tcsh && $?prompt) then ++ ++ bindkey "\e[1~" beginning-of-line # Home ++ bindkey "\e[7~" beginning-of-line # Home rxvt ++ bindkey "\e[2~" overwrite-mode # Ins ++ bindkey "\e[3~" delete-char # Delete ++ bindkey "\e[4~" end-of-line # End ++ bindkey "\e[8~" end-of-line # End rxvt ++ ++ set autoexpand ++ set autolist ++ set prompt = "%U%m%u:%B%~%b%# " ++endif +diff --git a/csh.login b/csh.login +new file mode 100644 +index 0000000..2455c3c +--- /dev/null ++++ b/csh.login +@@ -0,0 +1,8 @@ ++# /etc/csh.login: system-wide .login file for csh(1) and tcsh(1) ++ ++# allow for other packages/system admins to customize the shell environment ++if (-e /etc/csh/login.d && `/bin/ls /etc/csh/login.d` != "") then ++ foreach FILE (`/bin/ls /etc/csh/login.d/*`) ++ source $FILE; ++ end; ++endif +diff --git a/csh.logout b/csh.logout +new file mode 100644 +index 0000000..a207eba +--- /dev/null ++++ b/csh.logout +@@ -0,0 +1 @@ ++# /etc/csh.logout: system-wide .logout file for csh(1) and tcsh(1) +-- +2.12.1 + diff --git a/meta-oe/recipes-shells/tcsh/tcsh_6.20.00.bb b/meta-oe/recipes-shells/tcsh/tcsh_6.20.00.bb new file mode 100644 index 0000000000..b59d88f5de --- /dev/null +++ b/meta-oe/recipes-shells/tcsh/tcsh_6.20.00.bb @@ -0,0 +1,44 @@ +DESCRIPTION = "TENEX C Shell, an enhanced version of Berkeley csh \ + The TENEX C Shell is an enhanced version of the Berkeley Unix C shell. \ + It includes all features of 4.4BSD C shell, plus a command-line editor, \ + programmable word completion, spelling correction and more." + +HOMEPAGE = "http://www.tcsh.org/" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://Copyright;md5=575cf2715c3bf894e1f79aec1d4eaaf5" +SECTION = "base" +DEPENDS = "ncurses gettext-native" +SRC_URI = " \ + http://ftp.funet.fi/pub/mirrors/ftp.astron.com/pub/tcsh/${BP}.tar.gz \ + file://0001-Enable-system-malloc-on-all-linux.patch \ + file://0002-Add-debian-csh-scripts.patch \ +" +SRC_URI[md5sum] = "59d40ef40a68e790d95e182069431834" +SRC_URI[sha256sum] = "b89de7064ab54dac454a266cfe5d8bf66940cb5ed048d0c30674ea62e7ecef9d" + +EXTRA_OEMAKE += "CC_FOR_GETHOST='${BUILD_CC}'" +inherit autotools + +do_compile_prepend() { + oe_runmake CC_FOR_GETHOST='${BUILD_CC}' CFLAGS='${BUILD_CFLAGS}' gethost +} + +do_install_append () { + oe_runmake install.man DESTDIR=${D} + + install -d ${D}${base_bindir} + ln -s /usr/bin/tcsh ${D}${base_bindir}/tcsh + ln -s /usr/bin/tcsh ${D}${base_bindir}/csh + install -d ${D}${sysconfdir}/csh/login.d + install -m 0644 ${S}/csh.cshrc ${S}/csh.login ${S}/csh.logout ${S}/complete.tcsh ${D}${sysconfdir} + install -D -m 0644 ${S}/csh-mode.el ${D}${datadir}/emacs/site-lisp/csh-mode.el +} + +FILES_${PN} += "${datadir}/emacs/site-lisp/csh-mode.el" + + +pkg_postinst_${PN} () { +#!/bin/sh -e +echo /usr/bin/tcsh >> $D/etc/shells +echo /usr/bin/csh >> $D/etc/shells +} |