summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-shells
diff options
context:
space:
mode:
authorArmin Kuster <akuster808@gmail.com>2017-10-26 13:20:47 -0700
committerArmin Kuster <akuster808@gmail.com>2018-03-01 16:10:35 -0800
commitb836c5b810898cf51baa012c8debe816a715717a (patch)
treee63c90a263e9d848ada145826fbcc204a49625f1 /meta-oe/recipes-shells
parent7da35538ab4901671dbe441382ac118965513149 (diff)
downloadmeta-openembedded-b836c5b810898cf51baa012c8debe816a715717a.tar.gz
tcsh: move to recipes-shells
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Diffstat (limited to 'meta-oe/recipes-shells')
-rw-r--r--meta-oe/recipes-shells/tcsh/tcsh/0001-Enable-system-malloc-on-all-linux.patch30
-rw-r--r--meta-oe/recipes-shells/tcsh/tcsh/0002-Add-debian-csh-scripts.patch60
-rw-r--r--meta-oe/recipes-shells/tcsh/tcsh_6.20.00.bb44
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 000000000..ff2f6a3b6
--- /dev/null
+++ b/meta-oe/recipes-shells/tcsh/tcsh/0001-Enable-system-malloc-on-all-linux.patch
@@ -0,0 +1,30 @@
1From 0553455813a1f717ef50cc911e4db73da3d23c32 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 22 Mar 2017 18:47:40 -0700
4Subject: [PATCH 1/2] Enable system malloc on all linux
5
6Dont trigger on being just android or glibc
7internal malloc falls flat on musl based systems
8as well. So switch to using system malloc
9
10Signed-off-by: Khem Raj <raj.khem@gmail.com>
11---
12 config_f.h | 2 +-
13 1 file changed, 1 insertion(+), 1 deletion(-)
14
15diff --git a/config_f.h b/config_f.h
16index 6a632a5..0a66960 100644
17--- a/config_f.h
18+++ b/config_f.h
19@@ -139,7 +139,7 @@
20 * This can be much slower and no memory statistics will be
21 * provided.
22 */
23-#if defined(__MACHTEN__) || defined(PURIFY) || defined(MALLOC_TRACE) || defined(_OSD_POSIX) || defined(__MVS__) || defined (__CYGWIN__) || defined(__GLIBC__) || defined(__OpenBSD__) || defined(__APPLE__) || defined (__ANDROID__)
24+#if defined(__MACHTEN__) || defined(PURIFY) || defined(MALLOC_TRACE) || defined(_OSD_POSIX) || defined(__MVS__) || defined (__CYGWIN__) || defined(__linux__) || defined(__OpenBSD__) || defined(__APPLE__)
25 # define SYSMALLOC
26 #else
27 # undef SYSMALLOC
28--
292.12.1
30
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 000000000..e4de6f7fe
--- /dev/null
+++ b/meta-oe/recipes-shells/tcsh/tcsh/0002-Add-debian-csh-scripts.patch
@@ -0,0 +1,60 @@
1From 60271713025f6b17dda29721be012a8428e77185 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 22 Mar 2017 18:56:49 -0700
4Subject: [PATCH 2/2] Add debian csh scripts
5
6Signed-off-by: Khem Raj <raj.khem@gmail.com>
7---
8 csh.cshrc | 15 +++++++++++++++
9 csh.login | 8 ++++++++
10 csh.logout | 1 +
11 3 files changed, 24 insertions(+)
12 create mode 100644 csh.cshrc
13 create mode 100644 csh.login
14 create mode 100644 csh.logout
15
16diff --git a/csh.cshrc b/csh.cshrc
17new file mode 100644
18index 0000000..29c934a
19--- /dev/null
20+++ b/csh.cshrc
21@@ -0,0 +1,15 @@
22+# /etc/csh.cshrc: system-wide .cshrc file for csh(1) and tcsh(1)
23+
24+if ($?tcsh && $?prompt) then
25+
26+ bindkey "\e[1~" beginning-of-line # Home
27+ bindkey "\e[7~" beginning-of-line # Home rxvt
28+ bindkey "\e[2~" overwrite-mode # Ins
29+ bindkey "\e[3~" delete-char # Delete
30+ bindkey "\e[4~" end-of-line # End
31+ bindkey "\e[8~" end-of-line # End rxvt
32+
33+ set autoexpand
34+ set autolist
35+ set prompt = "%U%m%u:%B%~%b%# "
36+endif
37diff --git a/csh.login b/csh.login
38new file mode 100644
39index 0000000..2455c3c
40--- /dev/null
41+++ b/csh.login
42@@ -0,0 +1,8 @@
43+# /etc/csh.login: system-wide .login file for csh(1) and tcsh(1)
44+
45+# allow for other packages/system admins to customize the shell environment
46+if (-e /etc/csh/login.d && `/bin/ls /etc/csh/login.d` != "") then
47+ foreach FILE (`/bin/ls /etc/csh/login.d/*`)
48+ source $FILE;
49+ end;
50+endif
51diff --git a/csh.logout b/csh.logout
52new file mode 100644
53index 0000000..a207eba
54--- /dev/null
55+++ b/csh.logout
56@@ -0,0 +1 @@
57+# /etc/csh.logout: system-wide .logout file for csh(1) and tcsh(1)
58--
592.12.1
60
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 000000000..b59d88f5d
--- /dev/null
+++ b/meta-oe/recipes-shells/tcsh/tcsh_6.20.00.bb
@@ -0,0 +1,44 @@
1DESCRIPTION = "TENEX C Shell, an enhanced version of Berkeley csh \
2 The TENEX C Shell is an enhanced version of the Berkeley Unix C shell. \
3 It includes all features of 4.4BSD C shell, plus a command-line editor, \
4 programmable word completion, spelling correction and more."
5
6HOMEPAGE = "http://www.tcsh.org/"
7LICENSE = "BSD-3-Clause"
8LIC_FILES_CHKSUM = "file://Copyright;md5=575cf2715c3bf894e1f79aec1d4eaaf5"
9SECTION = "base"
10DEPENDS = "ncurses gettext-native"
11SRC_URI = " \
12 http://ftp.funet.fi/pub/mirrors/ftp.astron.com/pub/tcsh/${BP}.tar.gz \
13 file://0001-Enable-system-malloc-on-all-linux.patch \
14 file://0002-Add-debian-csh-scripts.patch \
15"
16SRC_URI[md5sum] = "59d40ef40a68e790d95e182069431834"
17SRC_URI[sha256sum] = "b89de7064ab54dac454a266cfe5d8bf66940cb5ed048d0c30674ea62e7ecef9d"
18
19EXTRA_OEMAKE += "CC_FOR_GETHOST='${BUILD_CC}'"
20inherit autotools
21
22do_compile_prepend() {
23 oe_runmake CC_FOR_GETHOST='${BUILD_CC}' CFLAGS='${BUILD_CFLAGS}' gethost
24}
25
26do_install_append () {
27 oe_runmake install.man DESTDIR=${D}
28
29 install -d ${D}${base_bindir}
30 ln -s /usr/bin/tcsh ${D}${base_bindir}/tcsh
31 ln -s /usr/bin/tcsh ${D}${base_bindir}/csh
32 install -d ${D}${sysconfdir}/csh/login.d
33 install -m 0644 ${S}/csh.cshrc ${S}/csh.login ${S}/csh.logout ${S}/complete.tcsh ${D}${sysconfdir}
34 install -D -m 0644 ${S}/csh-mode.el ${D}${datadir}/emacs/site-lisp/csh-mode.el
35}
36
37FILES_${PN} += "${datadir}/emacs/site-lisp/csh-mode.el"
38
39
40pkg_postinst_${PN} () {
41#!/bin/sh -e
42echo /usr/bin/tcsh >> $D/etc/shells
43echo /usr/bin/csh >> $D/etc/shells
44}