diff --git a/lang/Makefile b/lang/Makefile index e06eab84f296..88e79f415f38 100644 --- a/lang/Makefile +++ b/lang/Makefile @@ -1,394 +1,395 @@ COMMENT = Programming languages SUBDIR += abcl SUBDIR += alchemist.el SUBDIR += algol68g SUBDIR += angelscript SUBDIR += antimony SUBDIR += apache-commons-jelly SUBDIR += asm-lsp SUBDIR += asn1c SUBDIR += atlast SUBDIR += awka SUBDIR += bas2tap SUBDIR += basic256 SUBDIR += bsh SUBDIR += bwbasic SUBDIR += c SUBDIR += cairo SUBDIR += cbmbasic SUBDIR += ccl SUBDIR += ceylon SUBDIR += cfortran SUBDIR += chaiscript SUBDIR += chez-scheme SUBDIR += chibi-scheme SUBDIR += chicken SUBDIR += cim SUBDIR += cjs SUBDIR += cling SUBDIR += clips SUBDIR += clisp SUBDIR += clojure SUBDIR += clojure-mode.el SUBDIR += clover SUBDIR += cocor SUBDIR += coffeescript SUBDIR += colm SUBDIR += cparser SUBDIR += crumb SUBDIR += crystal SUBDIR += csharp-mode.el SUBDIR += cython SUBDIR += cython-devel SUBDIR += cython3 SUBDIR += dhall SUBDIR += dlang-tools SUBDIR += dotnet SUBDIR += duktape SUBDIR += duktape-lib SUBDIR += ecl SUBDIR += eisl SUBDIR += elixir SUBDIR += elixir-devel SUBDIR += elixir-mode.el SUBDIR += elk SUBDIR += elm SUBDIR += emacs-lisp-intro SUBDIR += emilua SUBDIR += erlang SUBDIR += erlang-doc SUBDIR += erlang-java SUBDIR += erlang-man SUBDIR += erlang-runtime21 SUBDIR += erlang-runtime22 SUBDIR += erlang-runtime23 SUBDIR += erlang-runtime24 SUBDIR += erlang-runtime25 SUBDIR += erlang-runtime26 SUBDIR += erlang-wx SUBDIR += execline SUBDIR += expect SUBDIR += f2c SUBDIR += fasm SUBDIR += fennel SUBDIR += ferite SUBDIR += ficl SUBDIR += fpc SUBDIR += fpc-devel SUBDIR += fpc-devel-source SUBDIR += fpc-docs SUBDIR += fpc-source SUBDIR += frawk SUBDIR += fsharp SUBDIR += fth SUBDIR += gambit-c SUBDIR += gauche SUBDIR += gawk SUBDIR += gcc SUBDIR += gcc10 SUBDIR += gcc11 SUBDIR += gcc11-devel SUBDIR += gcc12 SUBDIR += gcc12-devel SUBDIR += gcc13 SUBDIR += gcc13-devel SUBDIR += gcc14-devel SUBDIR += gcc48 SUBDIR += gcc6-aux SUBDIR += gcc9 SUBDIR += gforth SUBDIR += ghc SUBDIR += ghc810 SUBDIR += ghc92 SUBDIR += ghc94 SUBDIR += gir-to-d SUBDIR += gjs SUBDIR += gleam SUBDIR += gluon SUBDIR += gnat12 SUBDIR += gnat13 SUBDIR += gnatcross-binutils-aarch64 SUBDIR += gnatcross-sysroot-aarch64 SUBDIR += gnatdroid-binutils SUBDIR += gnatdroid-binutils-x86 SUBDIR += gnatdroid-sysroot SUBDIR += gnatdroid-sysroot-x86 SUBDIR += gnu-apl SUBDIR += gnu-cobol SUBDIR += gnustep-base SUBDIR += go SUBDIR += go-devel SUBDIR += go119 SUBDIR += go120 SUBDIR += go121 SUBDIR += go122 SUBDIR += gomacro SUBDIR += gprolog SUBDIR += gravity SUBDIR += groovy SUBDIR += gscheme SUBDIR += guile SUBDIR += guile-aclocal SUBDIR += guile1 SUBDIR += guile2 SUBDIR += guile3 SUBDIR += halide SUBDIR += harec SUBDIR += haskell-mode.el SUBDIR += hermes SUBDIR += hla SUBDIR += hs-brainfuck SUBDIR += hs-futhark SUBDIR += hs-koka SUBDIR += hs-unlambda SUBDIR += huc SUBDIR += icc SUBDIR += inko SUBDIR += intel-compute-runtime SUBDIR += intercal SUBDIR += io SUBDIR += io-devel SUBDIR += itcl SUBDIR += itcl4 SUBDIR += janet SUBDIR += jimtcl SUBDIR += jpm SUBDIR += jruby SUBDIR += julia SUBDIR += jython SUBDIR += kawa SUBDIR += kf5-kross SUBDIR += kotlin SUBDIR += kross-interpreters SUBDIR += kturtle SUBDIR += lafontaine SUBDIR += lci SUBDIR += ldc SUBDIR += lfe SUBDIR += lfortran SUBDIR += libhx SUBDIR += libobjc2 SUBDIR += librep SUBDIR += libstdc++_stldoc_4.2.2 SUBDIR += linux-c7-tcl85 SUBDIR += linux-dotnet-cli SUBDIR += linux-dotnet-runtime SUBDIR += linux-dotnet-sdk SUBDIR += linux-dotnet10-runtime SUBDIR += linux-dotnet11-runtime SUBDIR += linux-dotnet11-sdk SUBDIR += linux-j SUBDIR += lua51 SUBDIR += lua52 SUBDIR += lua53 SUBDIR += lua54 SUBDIR += luajit SUBDIR += luajit-devel SUBDIR += luajit-openresty SUBDIR += malbolge SUBDIR += maude SUBDIR += mawk SUBDIR += mdk SUBDIR += mecrisp-stellaris SUBDIR += micropython SUBDIR += mit-scheme SUBDIR += mixal SUBDIR += mlkit SUBDIR += mlton SUBDIR += mmix SUBDIR += mono SUBDIR += mono-basic SUBDIR += mono5.10 SUBDIR += mono5.20 SUBDIR += mono6.8 SUBDIR += mosh SUBDIR += mosml SUBDIR += mtasc SUBDIR += mujs SUBDIR += munger SUBDIR += myrddin SUBDIR += nawk SUBDIR += nbfc SUBDIR += neko SUBDIR += neocmakelsp SUBDIR += nesasm SUBDIR += newlisp SUBDIR += nhc98 SUBDIR += nickle SUBDIR += nim SUBDIR += njs SUBDIR += nll SUBDIR += nqc SUBDIR += numbat SUBDIR += nwcc SUBDIR += nx SUBDIR += nyan SUBDIR += ocaml SUBDIR += ocaml-autoconf SUBDIR += ocaml-camlidl SUBDIR += ocaml-nox11 SUBDIR += oo2c SUBDIR += opencoarrays SUBDIR += opensycl SUBDIR += ott SUBDIR += owl-lisp SUBDIR += p5-Data-JavaScript SUBDIR += p5-Error SUBDIR += p5-Expect SUBDIR += p5-ExtUtils-F77 SUBDIR += p5-Interpolation SUBDIR += p5-JSAN SUBDIR += p5-JavaScript-Squish SUBDIR += p5-JavaScript-Value-Escape SUBDIR += p5-List-MoreUtils SUBDIR += p5-List-MoreUtils-XS SUBDIR += p5-Marpa SUBDIR += p5-Marpa-PP SUBDIR += p5-Marpa-XS SUBDIR += p5-Modern-Perl SUBDIR += p5-Perl6-Subs SUBDIR += p5-Promises SUBDIR += p5-Pugs-Compiler-Rule SUBDIR += p5-Quantum-Superpositions SUBDIR += p5-Scalar-List-Utils SUBDIR += p5-Switch SUBDIR += p5-Tcl SUBDIR += p5-Test-XPath SUBDIR += p5-Try-Catch SUBDIR += p5-Try-Tiny SUBDIR += p5-Try-Tiny-Retry SUBDIR += p5-TryCatch SUBDIR += p5-ePerl SUBDIR += p5-signatures SUBDIR += p5-v6 SUBDIR += parrot SUBDIR += pbasic SUBDIR += pcc SUBDIR += perl5-devel SUBDIR += perl5.34 SUBDIR += perl5.36 SUBDIR += perl5.38 SUBDIR += petite-chez SUBDIR += pfe SUBDIR += pharo SUBDIR += php-mode.el SUBDIR += php81 SUBDIR += php81-extensions SUBDIR += php82 SUBDIR += php82-extensions SUBDIR += php83 SUBDIR += php83-extensions SUBDIR += picoc + SUBDIR += picolisp SUBDIR += plexil SUBDIR += pocl SUBDIR += polyml SUBDIR += pomsky SUBDIR += prql SUBDIR += ptoc SUBDIR += purescript SUBDIR += py-hy SUBDIR += py-lupa SUBDIR += py-textX SUBDIR += python SUBDIR += python-doc-html SUBDIR += python-doc-pdf-a4 SUBDIR += python-doc-pdf-letter SUBDIR += python-doc-text SUBDIR += python-mode.el SUBDIR += python-tools SUBDIR += python2 SUBDIR += python27 SUBDIR += python3 SUBDIR += python310 SUBDIR += python311 SUBDIR += python38 SUBDIR += python39 SUBDIR += qmasm SUBDIR += qscheme SUBDIR += quickjs SUBDIR += quilc SUBDIR += racket SUBDIR += racket-minimal SUBDIR += ratfor SUBDIR += referenceassemblies-pcl SUBDIR += retro12 SUBDIR += rexx-imc SUBDIR += rexx-regina SUBDIR += rexx-regutil SUBDIR += rexx-wrapper SUBDIR += rhino SUBDIR += rizin SUBDIR += ruby30 SUBDIR += ruby31 SUBDIR += ruby32 SUBDIR += ruby33 SUBDIR += rubygem-rb_sys SUBDIR += rubygem-ruby_language_server SUBDIR += runawk SUBDIR += rust SUBDIR += rust-bootstrap SUBDIR += rust-nightly SUBDIR += rustpython SUBDIR += s7 SUBDIR += sagittarius-scheme SUBDIR += sather-specification SUBDIR += sather-tutorial SUBDIR += sbcl SUBDIR += scala SUBDIR += scheme48 SUBDIR += scm SUBDIR += scratch SUBDIR += sdcc SUBDIR += see SUBDIR += seed7 SUBDIR += silq SUBDIR += siod SUBDIR += sisc SUBDIR += sketchy SUBDIR += slib SUBDIR += slib-guile SUBDIR += slisp SUBDIR += smalltalk SUBDIR += smlnj SUBDIR += snobol4 SUBDIR += solidity SUBDIR += spidermonkey102 SUBDIR += spidermonkey78 SUBDIR += spidermonkey91 SUBDIR += spl SUBDIR += squeak SUBDIR += squirrel SUBDIR += swi-pl SUBDIR += tauthon SUBDIR += tcbasic SUBDIR += tcc SUBDIR += tcl-manual SUBDIR += tcl-wrapper SUBDIR += tcl85 SUBDIR += tcl86 SUBDIR += tcl87 SUBDIR += tcl9 SUBDIR += tclX SUBDIR += tolua SUBDIR += tolua++ SUBDIR += tuareg-mode.el SUBDIR += twelf SUBDIR += typstfmt SUBDIR += ucc SUBDIR += urweb SUBDIR += v SUBDIR += v8 SUBDIR += v8-beta SUBDIR += vala SUBDIR += voc SUBDIR += yabasic SUBDIR += yap SUBDIR += yorick SUBDIR += ypsilon SUBDIR += zephir SUBDIR += zig SUBDIR += zig-devel SUBDIR += zig010 .include diff --git a/lang/picolisp/Makefile b/lang/picolisp/Makefile new file mode 100644 index 000000000000..5882a62cf62b --- /dev/null +++ b/lang/picolisp/Makefile @@ -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 diff --git a/lang/picolisp/distinfo b/lang/picolisp/distinfo new file mode 100644 index 000000000000..2975ab4ed6b4 --- /dev/null +++ b/lang/picolisp/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1708416014 +SHA256 (picoLisp-23.12.tgz) = a0633c191c813ae7e6b595713b68979273ddd68c4b6508a2fdb02f0c7bb60aae +SIZE (picoLisp-23.12.tgz) = 1089366 diff --git a/lang/picolisp/pkg-descr b/lang/picolisp/pkg-descr new file mode 100644 index 000000000000..a912b05091a3 --- /dev/null +++ b/lang/picolisp/pkg-descr @@ -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. diff --git a/lang/picolisp/pkg-plist b/lang/picolisp/pkg-plist new file mode 100644 index 000000000000..06fcca57ac7f --- /dev/null +++ b/lang/picolisp/pkg-plist @@ -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