lang/eisl: New port: Interpreter and compiler compatible with ISLisp standard

This commit is contained in:
Yuri Victorovich 2021-11-09 18:14:18 -08:00
parent 756a109262
commit 99131e98ca
5 changed files with 90 additions and 0 deletions

View File

@ -46,6 +46,7 @@
SUBDIR += duktape
SUBDIR += duktape-lib
SUBDIR += ecl
SUBDIR += eisl
SUBDIR += elixir
SUBDIR += elixir-devel
SUBDIR += elixir-mode.el

26
lang/eisl/Makefile Normal file
View File

@ -0,0 +1,26 @@
PORTNAME= eisl
DISTVERSIONPREFIX= v
DISTVERSION= 2.25
CATEGORIES= lang devel
MAINTAINER= yuri@FreeBSD.org
COMMENT= Interpreter and compiler compatible with ISLisp standard
LICENSE= BSD2CLAUSE
LICENSE_FILE= ${WRKSRC}/documents/license.txt
USES= gmake ncurses:base
USE_GITHUB= yes
GH_ACCOUNT= sasagawa888
ALL_TARGET= ${PORTNAME}
MAKEFILE= makefile
LDFLAGS+= -lncursesw
PLIST_FILES= bin/edlis \
bin/eisl
.include <bsd.port.mk>

3
lang/eisl/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1636509151
SHA256 (sasagawa888-eisl-v2.25_GH0.tar.gz) = b0064798be3f6e782faf03471a7fe6d34d5edb11b6d1089ef3c14a22d1ababb8
SIZE (sasagawa888-eisl-v2.25_GH0.tar.gz) = 1734714

View File

@ -0,0 +1,56 @@
--- function.c.orig 2021-11-10 01:54:06 UTC
+++ function.c
@@ -2127,7 +2127,7 @@ f_read(int arglist)
save,
n,
res;
-#if __linux || __APPLE__ || defined(__OpenBSD__)
+#if __linux || __APPLE__ || defined(__OpenBSD__) || defined(__FreeBSD__)
int save1;
#endif
@@ -2139,7 +2139,7 @@ f_read(int arglist)
if (n > 0 && !input_stream_p(arg1))
error(NOT_IN_STREAM, "read", arg1);
-#if __linux || __APPLE__ || defined(__OpenBSD__)
+#if __linux || __APPLE__ || defined(__OpenBSD__) || defined(__FreeBSD__)
save1 = repl_flag;
repl_flag = 0;
#endif
@@ -2151,7 +2151,7 @@ f_read(int arglist)
res = sread();
input_stream = save;
if (res == FEND) {
-#if __linux || __APPLE__ || defined(__OpenBSD__)
+#if __linux || __APPLE__ || defined(__OpenBSD__) || defined(__FreeBSD__)
repl_flag = save1;
#endif
error(END_STREAM, "read", NIL);
@@ -2163,7 +2163,7 @@ f_read(int arglist)
res = sread();
input_stream = save;
if (res == FEND) {
-#if __linux || __APPLE__ || defined(__OpenBSD__)
+#if __linux || __APPLE__ || defined(__OpenBSD__) || defined(__FreeBSD__)
repl_flag = save1;
#endif
if (nullp(arg2) && n == 2)
@@ -2174,7 +2174,7 @@ f_read(int arglist)
error(END_STREAM, "read", NIL);
}
}
-#if __linux || __APPLE__ || defined(__OpenBSD__)
+#if __linux || __APPLE__ || defined(__OpenBSD__) || defined(__FreeBSD__)
repl_flag = save1;
#endif
return (res);
@@ -2374,7 +2374,7 @@ f_read_line(int arglist)
res,
c;
char rl_buf[LINE_MAX];
-#if __linux || __APPLE__ || defined(__OpenBSD__)
+#if __linux || __APPLE__ || defined(__OpenBSD__) || defined(__FreeBSD__)
int save1;
#endif

4
lang/eisl/pkg-descr Normal file
View File

@ -0,0 +1,4 @@
Easy-ISLisp (EISL) is an interpreter and compiler compatible with the ISLisp
standard.
WWW: https://github.com/sasagawa888/eisl