1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-23 04:23:08 +00:00

The ``easy shell'', a small shell with Lisp-like syntax.

This commit is contained in:
Jacques Vidrine 1999-05-28 21:01:51 +00:00
parent af10ff898c
commit 5f65a2b3dd
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=19045
7 changed files with 97 additions and 0 deletions

34
shells/esh/Makefile Normal file
View File

@ -0,0 +1,34 @@
# Ports collection Makefile for: esh
# Version required: 0.8
# Date created: 05/20/1999
# Whom: nectar@FreeBSD.ORG
#
# $Id$
#
DISTNAME= esh-0.8
CATEGORIES= shells
MASTER_SITES= http://esh.netpedia.net/ \
http://www.nectar.cc/distfiles/
MAINTAINER= nectar@FreeBSD.ORG
WRKSRC= ${WRKDIR}/esh
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/esh ${PREFIX}/bin/esh
@${ECHO} "updating /etc/shells"
@${CP} /etc/shells /etc/shells.bak
@(${GREP} -v ${PREFIX}/bin/esh /etc/shells.bak; \
${ECHO} ${PREFIX}/bin/esh) > /etc/shells
@${RM} /etc/shells.bak
.if !defined(NOPORTDOCS)
if [ -f ${PREFIX}/info/dir ]; then \
${SED} -ne '1,/Menu:/p' /usr/share/info/dir > \
${PREFIX}/info/dir; \
fi
${INSTALL_DATA} ${WRKSRC}/doc/esh.info ${PREFIX}/info/esh.info
install-info ${PREFIX}/info/esh.info ${PREFIX}/info/dir
.endif
.include <bsd.port.mk>

1
shells/esh/distinfo Normal file
View File

@ -0,0 +1 @@
MD5 (esh-0.8.tar.gz) = b59022b88bae24420156d25869b8be54

20
shells/esh/files/patch-aa Normal file
View File

@ -0,0 +1,20 @@
--- Makefile.orig Thu May 20 14:08:23 1999
+++ Makefile Thu May 20 14:10:30 1999
@@ -1,8 +1,3 @@
-
-# Your C compiler.
-
-CC=gcc
-
# Where your readline library is.
# You can compile with a hacked replacement of readline instead by
# doing this:
@@ -18,7 +13,7 @@
# -DMEM_DEBUG Check for memory leaks.
#
-CFLAGS=-g -Wall -DMEM_DEBUG $(INC) -pg
+CFLAGS+=$(INC)
# No need to change this stuff.

20
shells/esh/files/patch-ab Normal file
View File

@ -0,0 +1,20 @@
--- esh.c.orig Thu May 20 14:13:25 1999
+++ esh.c Thu May 20 14:22:34 1999
@@ -657,7 +656,9 @@
void job_wait(job_t* job) {
int tmp;
+ sig_t oldsig;
+ oldsig = signal(SIGCHLD, SIG_DFL);
if (interactive) {
waitpid(job->last_pid, &tmp, WUNTRACED);
@@ -676,6 +677,7 @@
} else {
waitpid(job->last_pid, &tmp, WUNTRACED);
}
+ signal(SIGCHLD, oldsig);
}

1
shells/esh/pkg-comment Normal file
View File

@ -0,0 +1 @@
The ``easy shell'', a small shell with Lisp-like syntax.

14
shells/esh/pkg-descr Normal file
View File

@ -0,0 +1,14 @@
esh is a new shell for Unix, written completely from scratch. It is
very small, both in number of lines of source code and in memory
consumption. The whole shell is about 5000 lines of C source code, and
occupies about twice as little memory as bash in some cases.
However, esh is also extremely flexible, with a real programming
language at the core. The syntax is a simplified form of Scheme. The
current version is 0.8, though it is already stable and
featureful. The reason for the low version number is lack of
real-world testing. It is released under the GPL, of course.
WWW:http://esh.netpedia.net/
Jacques Vidrine <nectar@FreeBSD.ORG>

7
shells/esh/pkg-plist Normal file
View File

@ -0,0 +1,7 @@
bin/esh
@exec echo "updating /etc/shells"; cp /etc/shells /etc/shells.bak; (grep -v %D/%F /etc/shells.bak; echo %D/%F) >/etc/shells
@unexec echo "updating /etc/shells"; cp /etc/shells /etc/shells.bak; (grep -v %D/%F /etc/shells.bak) >/etc/shells
@unexec install-info --delete %D/info/esh.info %D/info/dir
info/esh.info
@exec test -f %D/info/dir || sed -ne '1,/Menu:/p' /usr/share/info/dir > %D/info/dir
@exec install-info %D/info/esh.info %D/info/dir