summaryrefslogtreecommitdiff
path: root/lang/snobol
diff options
context:
space:
mode:
authorjakllsch <jakllsch@pkgsrc.org>2014-07-06 17:46:12 +0000
committerjakllsch <jakllsch@pkgsrc.org>2014-07-06 17:46:12 +0000
commit02397afe68efed46546e21acaf27b0dc3f4d9a0c (patch)
tree1c8aace247d97ea75c9ddb844c9c8b867c2111a5 /lang/snobol
parentd5673fe0021ff03cc10ed150f780630b02c33e11 (diff)
downloadpkgsrc-02397afe68efed46546e21acaf27b0dc3f4d9a0c.tar.gz
restore (broken) lang/snobol package to state before removal
Diffstat (limited to 'lang/snobol')
-rw-r--r--lang/snobol/DESCR22
-rw-r--r--lang/snobol/Makefile56
-rw-r--r--lang/snobol/PLIST39
-rw-r--r--lang/snobol/distinfo10
-rw-r--r--lang/snobol/patches/patch-aa10
-rw-r--r--lang/snobol/patches/patch-ab14
6 files changed, 151 insertions, 0 deletions
diff --git a/lang/snobol/DESCR b/lang/snobol/DESCR
new file mode 100644
index 00000000000..1e8f3229f2c
--- /dev/null
+++ b/lang/snobol/DESCR
@@ -0,0 +1,22 @@
+This is a C implementation of the original Macro SIL (SNOBOL4 Implementation
+Language) version of SNOBOL4, originally developed at ATT Bell Labs.
+
+SNOBOL4, primarily known as a string processing language, excels at any task
+involving symbolic manipulations. The interpreter provides run-time typing,
+garbage collection, user defined data types, and on-the-fly sub-interpretation
+within a running program. Its primary weakness is a simple syntax, and a lack
+of "structured" constructs, although many would consider these to be strengths
+when compared to some "modern" and ever-changing agglomerations such as Perl.
+
+While not computationally speedy, it is handy for minimizing development time
+and effort when creating data conversion tools. This is because of its data
+manipulation functions, associative memory data structures, and an extensive
+set of sophisticated built-in string pattern matching primatives.
+
+SNOBOL4 consists of one relatively small executable file, without the scads
+of associated libraries and modules that make package management difficult.
+
+Although developed in the early 1960s (the SNOBOL3 primer was published by the
+MIT press in 1967), some feel that it is still ahead of its time today. While
+it is fully functional and extensively tested, it is no longer evolving, having
+reached the desirable stable plateau in any programming language's life cycle.
diff --git a/lang/snobol/Makefile b/lang/snobol/Makefile
new file mode 100644
index 00000000000..7ea2a3e6283
--- /dev/null
+++ b/lang/snobol/Makefile
@@ -0,0 +1,56 @@
+# $NetBSD: Makefile,v 1.27 2014/07/06 17:46:12 jakllsch Exp $
+#
+
+DISTNAME= snobol4-1.3
+PKGNAME= snobol-1.3
+CATEGORIES= lang
+MASTER_SITES= ftp://ftp.snobol4.org/snobol/ \
+ ftp://ftp.ultimate.com/snobol/
+DISTFILES= ${DISTNAME}${EXTRACT_SUFX} vanilla.tar.gz
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://www.snobol4.org/csnobol4/curr/
+COMMENT= Macro implementation of SNOBOL4 in C
+LICENSE= 2-clause-bsd
+
+BROKEN= Distfile doesn't match
+
+EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
+
+SUBST_CLASSES+= snobol-config
+SUBST_STAGE.snobol-config= post-patch
+SUBST_FILES.snobol-config= Makefile
+SUBST_SED.snobol-config+= -e s\|M4=m4\|M4=${TOOLS_PATH.m4:Q}\|
+
+HAS_CONFIGURE=yes
+CONFIGURE_ARGS+=--prefix=${PREFIX}
+# not yet
+#CONFIGURE_ARGS+=--with-tcl
+#CONFIGURE_ARGS+=--with-tk
+
+BUILD_TARGET= all pv
+
+USE_TOOLS+= gzip m4 unzip
+INSTALLATION_DIRS= bin ${PKGMANDIR}/man1
+MAKE_JOBS_SAFE= NO
+
+post-build:
+ ${CP} ${WRKSRC}/doc/head ${WRKSRC}/doc/tutorial
+ unzip -d ${WRKSRC} -joqqLC ${DISTDIR}/vanilla.zip pm.exe
+ unzip -p -opaaqqLC ${WRKSRC}/pm.exe >> ${WRKSRC}/doc/tutorial
+ ${GZIP_CMD} ${WRKSRC}/doc/tutorial
+
+post-install:
+ ${INSTALL_DATA_DIR} ${DESTDIR}${PREFIX}/share/doc/snobol4
+ cd ${WRKSRC} && ${INSTALL_DATA} README \
+ ${DESTDIR}${PREFIX}/share/doc/snobol4
+ cd ${WRKSRC}/doc && ${INSTALL_DATA} load.txt design.txt tutorial.gz \
+ ${DESTDIR}${PREFIX}/share/doc/snobol4
+ @${ECHO} ''
+ @${ECHO} '***********************************************************'
+ @${ECHO} '* A helpful tutorial is at share/doc/snobol4/tutorial.gz *'
+ @${ECHO} '* within your package tree. *'
+ @${ECHO} '***********************************************************'
+ @${ECHO} ''
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/lang/snobol/PLIST b/lang/snobol/PLIST
new file mode 100644
index 00000000000..43ae301ac06
--- /dev/null
+++ b/lang/snobol/PLIST
@@ -0,0 +1,39 @@
+@comment $NetBSD: PLIST,v 1.6 2014/07/06 17:46:12 jakllsch Exp $
+bin/snobol4
+bin/snobol4-${PKGVERSION}
+lib/snobol4/bq.sno
+lib/snobol4/chars.sno
+lib/snobol4/config.h
+lib/snobol4/dt.h
+lib/snobol4/dynamic.sno
+lib/snobol4/equ.h
+lib/snobol4/fence.sno
+lib/snobol4/file.sno
+lib/snobol4/ftp.sno
+lib/snobol4/h.h
+lib/snobol4/host.sno
+lib/snobol4/http.sno
+lib/snobol4/load.h
+lib/snobol4/logic.sno
+lib/snobol4/macros.h
+lib/snobol4/ndbm.sno
+lib/snobol4/not.sno
+lib/snobol4/serv.sno
+lib/snobol4/smtp.sno
+lib/snobol4/snobol4+.sno
+lib/snobol4/snotypes.h
+lib/snobol4/spitbol.sno
+lib/snobol4/stcl.sno
+lib/snobol4/tcp.sno
+lib/snobol4/unique.sno
+lib/snobol4/url.sno
+lib/snobol4/utf.sno
+lib/snobol4/wrapper.sno
+man/man1/snobol4.1
+man/man3/snobol4dbm.3
+man/man3/snobol4tcl.3
+man/man3/snolib.3
+share/doc/snobol4/README
+share/doc/snobol4/design.txt
+share/doc/snobol4/load.txt
+share/doc/snobol4/tutorial.gz
diff --git a/lang/snobol/distinfo b/lang/snobol/distinfo
new file mode 100644
index 00000000000..b8fbddd22b9
--- /dev/null
+++ b/lang/snobol/distinfo
@@ -0,0 +1,10 @@
+$NetBSD: distinfo,v 1.12 2014/07/06 17:46:12 jakllsch Exp $
+
+SHA1 (snobol4-1.3.tar.gz) = 8c44fbe03083ae7d3a68305e4a8980777bdd7d5a
+RMD160 (snobol4-1.3.tar.gz) = a7f4c3d3b92072900603914ba0b02c04c9deaccf
+Size (snobol4-1.3.tar.gz) = 663194 bytes
+SHA1 (vanilla.tar.gz) = d72c86620862b8b61ef64dbfe8b646c2688d30ff
+RMD160 (vanilla.tar.gz) = 0d553d50584302fef69a4fc7d4de65e68517d10e
+Size (vanilla.tar.gz) = 188502 bytes
+SHA1 (patch-aa) = 02b759eb25bd46678d96eb281247ae326822d8f4
+SHA1 (patch-ab) = f9d5017a5f65fbafa8c483ea84ec9ec6ff2a4169
diff --git a/lang/snobol/patches/patch-aa b/lang/snobol/patches/patch-aa
new file mode 100644
index 00000000000..a419ed9c4a6
--- /dev/null
+++ b/lang/snobol/patches/patch-aa
@@ -0,0 +1,10 @@
+$NetBSD: patch-aa,v 1.5 2014/07/06 17:46:12 jakllsch Exp $
+
+--- doc/head.orig Thu Jan 25 07:23:12 2001
++++ doc/head Thu Jan 25 07:22:50 2001
+@@ -0,0 +1,5 @@
++[This document is publically posted at ftp://ftp.snobol4.com/vanilla.zip
++ and zipped within PM.EXE as SNOBOL4.MAN. This is actually for the MSDOS
++ version of SNOBOL4, but is a very good starting point to learn the Unix
++ version. Pardon the references to DOS. References to code snippets may
++ be found in vanilla.zip. This is a NetBSD package, John Refling, 2001.]
diff --git a/lang/snobol/patches/patch-ab b/lang/snobol/patches/patch-ab
new file mode 100644
index 00000000000..7797ae6a1fd
--- /dev/null
+++ b/lang/snobol/patches/patch-ab
@@ -0,0 +1,14 @@
+$NetBSD: patch-ab,v 1.6 2014/07/06 17:46:12 jakllsch Exp $
+
+--- Makefile2.m4.orig 2005-12-06 21:10:59.000000000 -0500
++++ Makefile2.m4 2008-07-14 00:02:37.000000000 -0400
+@@ -537,7 +537,8 @@
+ # generated SNOLIB files (host.sno generated at top level)
+ GENSNOLIB=host.sno
+
+-SNOLIB_FILES=snolib/*.sno $(INSTALL_H) doc/load.txt README $(GENSNOLIB)
++SNOLIB_FILES=snolib/*.sno $(INSTALL_H) $(GENSNOLIB)
++# doc/load.txt README # installed by package makefile
+
+ VERS=`./pv`
+ install: snobol4 pv