aboutsummaryrefslogtreecommitdiff
path: root/lang/nll
diff options
context:
space:
mode:
authorSAKAI Hiroaki <kozos@kozos.jp>2023-09-12 05:07:06 +0000
committerRobert Clausecker <fuz@FreeBSD.org>2023-09-12 14:55:24 +0000
commit7c0a57e68365edb77a8822e4715152aad8b92294 (patch)
tree7e9e6e662eacd7178e93c8fb4337aeef94bc1787 /lang/nll
parent3bd1be2a2e38570464de8a71ccb6a957f88bccef (diff)
downloadports-7c0a57e68365edb77a8822e4715152aad8b92294.tar.gz
ports-7c0a57e68365edb77a8822e4715152aad8b92294.zip
lang/nll: Simple language for programming learning
NLL is a simple language for programming learning Simple script language for beginners for programming learning. Complicated sentence structures are abolished and It is designed to understand if you can go on reading it by a line unit. Integer arithmetic, character string processing, a floating decimal operation are possible. This has text drawing, graphic and sound function and can make simple games. NLL is one implementation in NLUX of programming language HOBBY. PR: 244786
Diffstat (limited to 'lang/nll')
-rw-r--r--lang/nll/Makefile107
-rw-r--r--lang/nll/distinfo3
-rw-r--r--lang/nll/pkg-descr11
3 files changed, 121 insertions, 0 deletions
diff --git a/lang/nll/Makefile b/lang/nll/Makefile
new file mode 100644
index 000000000000..2c8cebfc1541
--- /dev/null
+++ b/lang/nll/Makefile
@@ -0,0 +1,107 @@
+PORTNAME= nll
+PORTVERSION= 20230909a
+CATEGORIES= lang
+MASTER_SITES= https://kozos.jp/nlux/archive/
+DISTNAME= nlux-alpha-20230909
+
+MAINTAINER= kozos@kozos.jp
+COMMENT= Simple language for programming learning
+WWW= https://kozos.jp/nll/
+
+LICENSE= ZLIB
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+FLAVORS= default nosdl
+FLAVOR?= ${FLAVORS:[1]}
+nosdl_PKGNAMESUFFIX= -nosdl
+
+USES= zip
+WRKSRC= ${WRKDIR}/nlux/${PORTNAME}
+MAKE_ARGS= BUILD= ARCH= CCOMPILER=${CC}
+
+PORTDOCS= README.txt AUDIO.txt
+PORTEXAMPLES= *.nll
+
+PLIST_FILES= bin/${PORTNAME} man/man1/${PORTNAME}.1.gz
+
+OPTIONS_DEFINE= DOCS EXAMPLES NCURSES SYSTEM SYSCALL NETWORK
+OPTIONS_DEFAULT?= NCURSES SYSTEM LIBEDIT SDL2
+
+OPTIONS_RADIO= LINEEDIT
+OPTIONS_RADIO_LINEEDIT= LIBEDIT READLINE NLLINE GETLINE FGETS
+
+LINEEDIT_DESC= Line editor
+NLLINE_DESC= Internal readline compatible library
+GETLINE_DESC= Use getline
+FGETS_DESC= Use fgets()
+
+NCURSES_USES= ncurses
+
+SYSTEM_DESC= System function support
+SYSCALL_DESC= System call function support
+NETWORK_DESC= Network support
+
+LIBEDIT_USES= libedit
+READLINE_USES= readline
+
+NCURSES_MAKE_ARGS=
+NCURSES_MAKE_ARGS_OFF= USE_CURSES=
+
+SYSTEM_MAKE_ARGS= USE_SYSTEM_FUNCTION=yes
+SYSTEM_MAKE_ARGS_OFF= USE_SYSTEM_FUNCTION=
+SYSCALL_MAKE_ARGS= USE_SYSCALL_FUNCTION=yes
+SYSCALL_MAKE_ARGS_OFF= USE_SYSCALL_FUNCTION=
+NETWORK_MAKE_ARGS= USE_NETWORK_FUNCTION=yes
+NETWORK_MAKE_ARGS_OFF= USE_NETWORK_FUNCTION=
+
+LIBEDIT_MAKE_ARGS= READLINE=libedit READLINEDIR=${LOCALBASE}
+READLINE_MAKE_ARGS= READLINE=readline READLINEDIR=${LOCALBASE}
+NLLINE_MAKE_ARGS= READLINE=nlline
+GETLINE_MAKE_ARGS= READLINE=getline
+FGETS_MAKE_ARGS= READLINE=fgets
+
+.if ${FLAVOR} == default
+OPTIONS_RADIO+= SDLVER
+OPTIONS_RADIO_SDLVER= NOSDL SDL1 SDL2
+
+SDLVER_DESC= SDL version
+NOSDL_DESC= Disable SDL (limited graphic and audio function)
+SDL1_DESC= Use SDL 1.2
+SDL2_DESC= Use SDL 2.0
+
+SDL1_USES= sdl xorg
+SDL1_USE= XORG=x11 SDL=sdl
+SDL2_USES= sdl xorg
+SDL2_USE= XORG=x11 SDL=sdl2
+
+NOSDL_MAKE_ARGS= USE_SDL1= USE_SDL2=
+NOSDL_MAKE_ARGS_OFF=
+SDL1_MAKE_ARGS= USE_SDL1=yes SDLDIR=${LOCALBASE}
+SDL1_MAKE_ARGS_OFF= USE_SDL1=
+SDL2_MAKE_ARGS= USE_SDL2=yes SDLDIR=${LOCALBASE}
+SDL2_MAKE_ARGS_OFF= USE_SDL2=
+.endif
+
+.if ${FLAVOR} == nosdl
+COMMENT+= (limited graphic and audio function)
+MAKE_ARGS= USE_SDL1= USE_SDL2=
+.endif
+
+post-install:
+ ${INSTALL_PROGRAM} ${WRKDIR}/nlux/bin/${PORTNAME} \
+ ${STAGEDIR}${PREFIX}/bin
+ ${INSTALL_MAN} ${WRKDIR}/nlux/man/man1/${PORTNAME}.1 \
+ ${STAGEDIR}${MANPREFIX}/man/man1
+
+post-install-DOCS-on:
+ ${MKDIR} ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_DATA} ${PORTDOCS:S/^/${WRKSRC}\//} ${STAGEDIR}${DOCSDIR}
+
+post-install-EXAMPLES-on:
+ ${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
+ ${INSTALL_DATA} ${PORTEXAMPLES:S/^/${WRKSRC}\/samples\//} ${STAGEDIR}${EXAMPLESDIR}
+ ${INSTALL_DATA} ${PORTEXAMPLES:S/^/${WRKSRC}\/samples\/graphic\//} ${STAGEDIR}${EXAMPLESDIR}
+ ${INSTALL_DATA} ${PORTEXAMPLES:S/^/${WRKSRC}\/samples\/audio\//} ${STAGEDIR}${EXAMPLESDIR}
+ ${INSTALL_DATA} ${PORTEXAMPLES:S/^/${WRKSRC}\/samples\/network\//} ${STAGEDIR}${EXAMPLESDIR}
+
+.include <bsd.port.mk>
diff --git a/lang/nll/distinfo b/lang/nll/distinfo
new file mode 100644
index 000000000000..5ce1a431307a
--- /dev/null
+++ b/lang/nll/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1694231096
+SHA256 (nlux-alpha-20230909.zip) = 95de3cff019d852872f1870b4838fc939c6394a407659e582f3afc8735a47671
+SIZE (nlux-alpha-20230909.zip) = 998690
diff --git a/lang/nll/pkg-descr b/lang/nll/pkg-descr
new file mode 100644
index 000000000000..4286badd2308
--- /dev/null
+++ b/lang/nll/pkg-descr
@@ -0,0 +1,11 @@
+NLL is a simple language for programming learning
+
+Simple script language for beginners for programming learning.
+
+Complicated sentence structures are abolished and It is designed to understand
+if you can go on reading it by a line unit.
+Integer arithmetic, character string processing, a floating decimal operation
+are possible.
+This has text drawing, graphic and sound function and can make simple games.
+
+NLL is one implementation in NLUX of programming language HOBBY.