From 42b89e7688093d752de3eee9e42955bbd2fef074 Mon Sep 17 00:00:00 2001 From: rillig Date: Fri, 19 May 2006 07:49:09 +0000 Subject: Imported spl from PR 33508. SPL is a powerful scripting language. It is very feature-rich (hashes, regular expressions, objects, exceptions, built-in template language, etc. pp.) and has a c-style syntax. The Name "SPL" is a left-recursive acronym and expands to "SPL Programming Language". The name was meant to be pronounced as an acronym, but I've already heard people pronouncing it "spell", which is also fine with me. The SPL VM is a pure bytecode interpeter. Support for JIT compilation or generating machine code for the host CPU is not planed and doesn't make much sense for various technical reasons. The entire SPL toolchain (compiler, assembler, virtual machine, etc) is pretty small (about 100k on x86 architectures). The additional memory usage by the applications is rather small too. One of the more advanced VM features is the capability to dump the entire VM state to a file and resume later. It is even possible to resume on another machine with a different architecture. SPL has support for loadable modules. The spl package contains already modules for stuff such as accessing SQL databases (SQLite, Postgres, MySQL), XML (incl. XPATH and XSLT), Terminal and File IO, Web Application development (the CGI, WSF and W2T (Web 2.0 Toolkit) modules), SDL, Qt and much more. SPL currently supports Linux,BSD Systems, other POSIX environments, MacOS-X (Darwin), SGI IRIX, Cygwin and native Win32 (using MinGW). Packaged by Raphael Langerhorst. --- lang/spl/DESCR | 22 ++++++++++++++++++++++ lang/spl/MESSAGE | 11 +++++++++++ lang/spl/Makefile | 34 ++++++++++++++++++++++++++++++++++ lang/spl/PLIST | 43 +++++++++++++++++++++++++++++++++++++++++++ lang/spl/distinfo | 5 +++++ 5 files changed, 115 insertions(+) create mode 100644 lang/spl/DESCR create mode 100644 lang/spl/MESSAGE create mode 100644 lang/spl/Makefile create mode 100644 lang/spl/PLIST create mode 100644 lang/spl/distinfo (limited to 'lang/spl') diff --git a/lang/spl/DESCR b/lang/spl/DESCR new file mode 100644 index 00000000000..c59b8849cc0 --- /dev/null +++ b/lang/spl/DESCR @@ -0,0 +1,22 @@ +SPL is a powerful scripting language. It is very feature-rich (hashes, regular +expressions, objects, exceptions, built-in template language, etc. pp.) and has +a c-style syntax. The Name "SPL" is a left-recursive acronym and expands to "SPL +Programming Language". The name was meant to be pronounced as an acronym, but +I've already heard people pronouncing it "spell", which is also fine with me. + +The SPL VM is a pure bytecode interpeter. Support for JIT compilation or +generating machine code for the host CPU is not planed and doesn't make much +sense for various technical reasons. The entire SPL toolchain (compiler, +assembler, virtual machine, etc) is pretty small (about 100k on x86 +architectures). The additional memory usage by the applications is rather small +too. One of the more advanced VM features is the capability to dump the entire +VM state to a file and resume later. It is even possible to resume on another +machine with a different architecture. + +SPL has support for loadable modules. The spl package contains already modules +for stuff such as accessing SQL databases (SQLite, Postgres, MySQL), XML (incl. +XPATH and XSLT), Terminal and File IO, Web Application development (the CGI, WSF +and W2T (Web 2.0 Toolkit) modules), SDL, Qt and much more. + +SPL currently supports Linux,BSD Systems, other POSIX environments, MacOS-X +(Darwin), SGI IRIX, Cygwin and native Win32 (using MinGW). diff --git a/lang/spl/MESSAGE b/lang/spl/MESSAGE new file mode 100644 index 00000000000..e2b512d2fa1 --- /dev/null +++ b/lang/spl/MESSAGE @@ -0,0 +1,11 @@ +=========================================================================== +$NetBSD: MESSAGE,v 1.1.1.1 2006/05/19 07:49:09 rillig Exp $ +If you want to use WebSPL, you should add something like this +to your httpd.conf file: + + AddType application/x-httpd-webspl .webspl + Action application/x-httpd-webspl /cgi-bin/webspl.cgi + +You might also want to adjust permissions of libexec/cgi-bin/webspl_cache +to make sure only the web server has write permissions. +=========================================================================== diff --git a/lang/spl/Makefile b/lang/spl/Makefile new file mode 100644 index 00000000000..cf99e6b88e7 --- /dev/null +++ b/lang/spl/Makefile @@ -0,0 +1,34 @@ +# $NetBSD: Makefile,v 1.1.1.1 2006/05/19 07:49:09 rillig Exp $ +# + +DISTNAME= spl-0.9h +CATEGORIES= lang +MASTER_SITES= http://www.clifford.at/spl/releases/ + +MAINTAINER= raphael@raphael.g-system.at +HOMEPAGE= http://www.clifford.at/spl +COMMENT= The SPL Programming Language + +USE_LANGUAGES= c +USE_TOOLS+= gmake + +SUBST_CLASSES+= prefix +SUBST_STAGE.prefix= pre-patch +SUBST_FILES.prefix= GNUmakefile +SUBST_SED.prefix+= -e 's,^ prefix.*, prefix = ${PREFIX},g' +SUBST_SED.prefix+= -e 's,^ cgibin_libdir.*, cgibin_libdir = ${PREFIX}/libexec/cgi-bin,g' + +#subst.mk does not correctly detect GNUmakefile as text file +_SUBST_IS_TEXT_FILE=true + +MAKEFILE= GNUmakefile + +post-install: + ${INSTALL_DATA_DIR} ${PREFIX}/libexec/cgi-bin/webspl_cache + ${CHMOD} a+rwx ${PREFIX}/libexec/cgi-bin/webspl_cache + ${LN} -s ${PREFIX}/lib/spl_modules ${PREFIX}/libexec/cgi-bin/spl_modules + +.include "../../devel/ncurses/buildlink3.mk" +.include "../../devel/pcre/buildlink3.mk" +.include "../../devel/readline/buildlink3.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/lang/spl/PLIST b/lang/spl/PLIST new file mode 100644 index 00000000000..1db451faa98 --- /dev/null +++ b/lang/spl/PLIST @@ -0,0 +1,43 @@ +@comment $NetBSD: PLIST,v 1.1.1.1 2006/05/19 07:49:09 rillig Exp $ +bin/spl-config +bin/splrun +include/spl.h +lib/libspl.a +lib/spl_modules/mod_array.so +lib/spl_modules/mod_bits.so +lib/spl_modules/mod_cgi.so +lib/spl_modules/mod_crypt.so +lib/spl_modules/mod_encode_int.splb +lib/spl_modules/mod_encode_js.splb +lib/spl_modules/mod_encode_regex.splb +lib/spl_modules/mod_encode_url.splb +lib/spl_modules/mod_encode_xml.so +lib/spl_modules/mod_environ.so +lib/spl_modules/mod_file.so +lib/spl_modules/mod_format_ini.splb +lib/spl_modules/mod_prime.so +lib/spl_modules/mod_sql.so +lib/spl_modules/mod_sql_utils.splb +lib/spl_modules/mod_system.so +lib/spl_modules/mod_task.so +lib/spl_modules/mod_termio.so +lib/spl_modules/mod_time.so +lib/spl_modules/mod_w2t.splb +lib/spl_modules/mod_webdebug.so +lib/spl_modules/mod_wsf.splb +lib/spl_modules/mod_wsf_action.splb +lib/spl_modules/mod_wsf_debug.splb +lib/spl_modules/mod_wsf_dialog.splb +lib/spl_modules/mod_wsf_display.splb +lib/spl_modules/mod_wsf_edit.splb +lib/spl_modules/mod_wsf_edit_sql.splb +lib/spl_modules/mod_wsf_graph.splb +lib/spl_modules/mod_wsf_menu.splb +lib/spl_modules/mod_wsf_switch.splb +libexec/cgi-bin/spl_modules +libexec/cgi-bin/webspl.cgi +share/aclocal/spl.m4 +@dirrm share/aclocal +@dirrm libexec/cgi-bin/webspl_cache +@dirrm libexec/cgi-bin +@dirrm lib/spl_modules diff --git a/lang/spl/distinfo b/lang/spl/distinfo new file mode 100644 index 00000000000..7c3a5fbadda --- /dev/null +++ b/lang/spl/distinfo @@ -0,0 +1,5 @@ +$NetBSD: distinfo,v 1.1.1.1 2006/05/19 07:49:09 rillig Exp $ + +SHA1 (spl-0.9h.tar.gz) = 030b25a13d52629b75e8fd3d076d9e431c1f7b49 +RMD160 (spl-0.9h.tar.gz) = b794f9590e00dd2cd2c161c1edf5ece4007a0a3d +Size (spl-0.9h.tar.gz) = 329352 bytes -- cgit v1.2.3