lang/picolisp: new port
PicoLisp is a minimal Lisp interpreter with a focus on simplicity. https://picolisp.com
This commit is contained in:
parent
6de8754569
commit
7c937353d3
5 changed files with 223 additions and 0 deletions
|
@ -280,6 +280,7 @@
|
|||
SUBDIR += php83
|
||||
SUBDIR += php83-extensions
|
||||
SUBDIR += picoc
|
||||
SUBDIR += picolisp
|
||||
SUBDIR += plexil
|
||||
SUBDIR += pocl
|
||||
SUBDIR += polyml
|
||||
|
|
45
lang/picolisp/Makefile
Normal file
45
lang/picolisp/Makefile
Normal file
|
@ -0,0 +1,45 @@
|
|||
PORTNAME= picolisp
|
||||
PORTVERSION= 23.12
|
||||
CATEGORIES= lang
|
||||
MASTER_SITES= https://software-lab.de/
|
||||
DISTNAME= picoLisp-${PORTVERSION}
|
||||
|
||||
MAINTAINER= gahr@FreeBSD.org
|
||||
COMMENT= Minimal Lisp interpreter with a focus on simplicity
|
||||
WWW= https://picolisp.com
|
||||
|
||||
LICENSE= MIT
|
||||
|
||||
LIB_DEPENDS= libffi.so:devel/libffi
|
||||
|
||||
USES= gmake llvm:17,lib pkgconfig readline ssl tar:tgz
|
||||
|
||||
WRKSRC= ${WRKDIR}/pil21/src
|
||||
|
||||
post-patch:
|
||||
${REINPLACE_CMD} \
|
||||
-e 's|clang|clang${LLVM_VERSION}|' \
|
||||
-e 's|opt|opt${LLVM_VERSION}|' \
|
||||
-e 's|llc|llc${LLVM_VERSION}|' \
|
||||
-e 's|llvm-link|llvm-link${LLVM_VERSION}|' \
|
||||
-e 's|llvm-config|${LLVM_CONFIG}|' \
|
||||
-e '/^MAIN/s|$$| -L${LOCALBASE}/lib|' \
|
||||
-e '/^.SILENT:/d' \
|
||||
${WRKSRC}/Makefile
|
||||
${REINPLACE_CMD} -i '' -e 's|/usr|${PREFIX}|g' ${WRKSRC}/../bin/*
|
||||
|
||||
post-build:
|
||||
${GZIP_CMD} ${WRKSRC}/../man/man1/picolisp.1 ${WRKSRC}/../man/man1/pil.1
|
||||
|
||||
do-install:
|
||||
${MKDIR} ${STAGEDIR}${PREFIX}/lib/picolisp
|
||||
cd ${WRKSRC}/.. && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/lib/picolisp "! -name '*.bak'"
|
||||
${RM} -r ${STAGEDIR}${PREFIX}/lib/picolisp/src ${STAGEDIR}${PREFIX}/lib/picolisp/test
|
||||
${FIND} ${STAGEDIR}${PREFIX}/lib/picolisp/bin -exec ${CHMOD} a+x {} \;
|
||||
${LN} -s ../lib/picolisp/bin/picolisp ${STAGEDIR}${PREFIX}/bin/
|
||||
${LN} -s ../lib/picolisp/bin/pil ${STAGEDIR}${PREFIX}/bin/
|
||||
${MKDIR} ${STAGEDIR}${PREFIX}/share/man/man1
|
||||
${LN} -s ../../lib/picolisp/man/man1/picolisp.1.gz ${STAGEDIR}/${PREFIX}/man/man1
|
||||
${LN} -s ../../lib/picolisp/man/man1/pil.1.gz ${STAGEDIR}/${PREFIX}/man/man1
|
||||
|
||||
.include <bsd.port.mk>
|
3
lang/picolisp/distinfo
Normal file
3
lang/picolisp/distinfo
Normal file
|
@ -0,0 +1,3 @@
|
|||
TIMESTAMP = 1708416014
|
||||
SHA256 (picoLisp-23.12.tgz) = a0633c191c813ae7e6b595713b68979273ddd68c4b6508a2fdb02f0c7bb60aae
|
||||
SIZE (picoLisp-23.12.tgz) = 1089366
|
7
lang/picolisp/pkg-descr
Normal file
7
lang/picolisp/pkg-descr
Normal file
|
@ -0,0 +1,7 @@
|
|||
PicoLisp is quite different from other Lisps. The main reason is its focus on
|
||||
data. PicoLisp has one single internal data type: The "cell". On the language
|
||||
level it has only three data types: Numbers, symbols and cons pairs. They are
|
||||
all built from cells. What may sound like a restriction is actually a big
|
||||
advantage. The simple internal structure results in high start-up and execution
|
||||
speeds. Cells can be manipulated freely in any conceivable way, giving full
|
||||
control to the programmer.
|
167
lang/picolisp/pkg-plist
Normal file
167
lang/picolisp/pkg-plist
Normal file
|
@ -0,0 +1,167 @@
|
|||
bin/picolisp
|
||||
bin/pil
|
||||
lib/picolisp/COPYING
|
||||
lib/picolisp/INSTALL
|
||||
lib/picolisp/README
|
||||
lib/picolisp/bin/balance
|
||||
lib/picolisp/bin/httpGate
|
||||
lib/picolisp/bin/picolisp
|
||||
lib/picolisp/bin/pil
|
||||
lib/picolisp/bin/psh
|
||||
lib/picolisp/bin/pty
|
||||
lib/picolisp/bin/ssl
|
||||
lib/picolisp/bin/vip
|
||||
lib/picolisp/bin/watchdog
|
||||
lib/picolisp/doc/ChangeLog
|
||||
lib/picolisp/doc/Tracks
|
||||
lib/picolisp/doc/des.html
|
||||
lib/picolisp/doc/doc.css
|
||||
lib/picolisp/doc/faq.html
|
||||
lib/picolisp/doc/httpGate.html
|
||||
lib/picolisp/doc/man.html
|
||||
lib/picolisp/doc/microTemplates
|
||||
lib/picolisp/doc/native.html
|
||||
lib/picolisp/doc/rc.sample
|
||||
lib/picolisp/doc/ref.html
|
||||
lib/picolisp/doc/refA.html
|
||||
lib/picolisp/doc/refB.html
|
||||
lib/picolisp/doc/refC.html
|
||||
lib/picolisp/doc/refD.html
|
||||
lib/picolisp/doc/refE.html
|
||||
lib/picolisp/doc/refF.html
|
||||
lib/picolisp/doc/refG.html
|
||||
lib/picolisp/doc/refH.html
|
||||
lib/picolisp/doc/refI.html
|
||||
lib/picolisp/doc/refJ.html
|
||||
lib/picolisp/doc/refK.html
|
||||
lib/picolisp/doc/refL.html
|
||||
lib/picolisp/doc/refM.html
|
||||
lib/picolisp/doc/refN.html
|
||||
lib/picolisp/doc/refO.html
|
||||
lib/picolisp/doc/refP.html
|
||||
lib/picolisp/doc/refQ.html
|
||||
lib/picolisp/doc/refR.html
|
||||
lib/picolisp/doc/refS.html
|
||||
lib/picolisp/doc/refT.html
|
||||
lib/picolisp/doc/refU.html
|
||||
lib/picolisp/doc/refV.html
|
||||
lib/picolisp/doc/refW.html
|
||||
lib/picolisp/doc/refX.html
|
||||
lib/picolisp/doc/refY.html
|
||||
lib/picolisp/doc/refZ.html
|
||||
lib/picolisp/doc/ref_.html
|
||||
lib/picolisp/doc/search
|
||||
lib/picolisp/doc/search.html
|
||||
lib/picolisp/doc/select.html
|
||||
lib/picolisp/doc/structures
|
||||
lib/picolisp/doc/tut.html
|
||||
lib/picolisp/doc/viprc.sample
|
||||
lib/picolisp/ext.l
|
||||
lib/picolisp/img/go.png
|
||||
lib/picolisp/img/no.png
|
||||
lib/picolisp/lib.css
|
||||
lib/picolisp/lib.l
|
||||
lib/picolisp/lib/adm.l
|
||||
lib/picolisp/lib/android.l
|
||||
lib/picolisp/lib/app.l
|
||||
lib/picolisp/lib/bash_completion
|
||||
lib/picolisp/lib/btree.l
|
||||
lib/picolisp/lib/canvas.js
|
||||
lib/picolisp/lib/canvas.l
|
||||
lib/picolisp/lib/clang.l
|
||||
lib/picolisp/lib/complete.l
|
||||
lib/picolisp/lib/db.l
|
||||
lib/picolisp/lib/dbgc.l
|
||||
lib/picolisp/lib/debug.l
|
||||
lib/picolisp/lib/ext.so
|
||||
lib/picolisp/lib/form.js
|
||||
lib/picolisp/lib/form.l
|
||||
lib/picolisp/lib/frac.l
|
||||
lib/picolisp/lib/gis.js
|
||||
lib/picolisp/lib/gis.l
|
||||
lib/picolisp/lib/heartbeat.l
|
||||
lib/picolisp/lib/ht.so
|
||||
lib/picolisp/lib/http.l
|
||||
lib/picolisp/lib/json.l
|
||||
lib/picolisp/lib/lint.l
|
||||
lib/picolisp/lib/map
|
||||
lib/picolisp/lib/math.l
|
||||
lib/picolisp/lib/misc.l
|
||||
lib/picolisp/lib/net.l
|
||||
lib/picolisp/lib/pilog.l
|
||||
lib/picolisp/lib/plio.js
|
||||
lib/picolisp/lib/replica.l
|
||||
lib/picolisp/lib/role.l
|
||||
lib/picolisp/lib/simul.l
|
||||
lib/picolisp/lib/sq.l
|
||||
lib/picolisp/lib/svg.l
|
||||
lib/picolisp/lib/sysdefs
|
||||
lib/picolisp/lib/term.l
|
||||
lib/picolisp/lib/test.l
|
||||
lib/picolisp/lib/tinymce.l
|
||||
lib/picolisp/lib/too.l
|
||||
lib/picolisp/lib/user.l
|
||||
lib/picolisp/lib/vip.l
|
||||
lib/picolisp/lib/vip/draw.l
|
||||
lib/picolisp/lib/vip/html.l
|
||||
lib/picolisp/lib/xhtml.l
|
||||
lib/picolisp/lib/xhtml/area
|
||||
lib/picolisp/lib/xhtml/field
|
||||
lib/picolisp/lib/xhtml/grid
|
||||
lib/picolisp/lib/xhtml/html
|
||||
lib/picolisp/lib/xhtml/input
|
||||
lib/picolisp/lib/xhtml/layout
|
||||
lib/picolisp/lib/xhtml/menu
|
||||
lib/picolisp/lib/xhtml/select
|
||||
lib/picolisp/lib/xhtml/submit
|
||||
lib/picolisp/lib/xhtml/tab
|
||||
lib/picolisp/lib/xhtml/table
|
||||
lib/picolisp/lib/xm.l
|
||||
lib/picolisp/loc/AE.l
|
||||
lib/picolisp/loc/AR.l
|
||||
lib/picolisp/loc/CH.l
|
||||
lib/picolisp/loc/CKB.l
|
||||
lib/picolisp/loc/CN.l
|
||||
lib/picolisp/loc/DE.l
|
||||
lib/picolisp/loc/ES.l
|
||||
lib/picolisp/loc/FR.l
|
||||
lib/picolisp/loc/GB.l
|
||||
lib/picolisp/loc/GR.l
|
||||
lib/picolisp/loc/HR.l
|
||||
lib/picolisp/loc/IT.l
|
||||
lib/picolisp/loc/JP.l
|
||||
lib/picolisp/loc/NIL.l
|
||||
lib/picolisp/loc/NO.l
|
||||
lib/picolisp/loc/RU.l
|
||||
lib/picolisp/loc/SE.l
|
||||
lib/picolisp/loc/TR.l
|
||||
lib/picolisp/loc/UA.l
|
||||
lib/picolisp/loc/UK.l
|
||||
lib/picolisp/loc/US.l
|
||||
lib/picolisp/loc/ar
|
||||
lib/picolisp/loc/ca
|
||||
lib/picolisp/loc/ch
|
||||
lib/picolisp/loc/ckb
|
||||
lib/picolisp/loc/cn
|
||||
lib/picolisp/loc/de
|
||||
lib/picolisp/loc/el
|
||||
lib/picolisp/loc/es
|
||||
lib/picolisp/loc/fr
|
||||
lib/picolisp/loc/gr
|
||||
lib/picolisp/loc/hr
|
||||
lib/picolisp/loc/it
|
||||
lib/picolisp/loc/ja
|
||||
lib/picolisp/loc/jp
|
||||
lib/picolisp/loc/no
|
||||
lib/picolisp/loc/ru
|
||||
lib/picolisp/loc/sv
|
||||
lib/picolisp/loc/tr
|
||||
lib/picolisp/loc/uk
|
||||
lib/picolisp/man/man1/picolisp.1.gz
|
||||
lib/picolisp/man/man1/pil.1.gz
|
||||
lib/picolisp/misc/bigtest
|
||||
lib/picolisp/misc/stress.l
|
||||
lib/picolisp/pil
|
||||
lib/picolisp/vip
|
||||
man/man1/picolisp.1.gz
|
||||
man/man1/pil.1.gz
|
Loading…
Reference in a new issue