diff --git a/lang/unicon/Makefile b/lang/unicon/Makefile new file mode 100644 index 00000000000..6b54588a2bb --- /dev/null +++ b/lang/unicon/Makefile @@ -0,0 +1,68 @@ +# $OpenBSD: Makefile,v 1.1.1.1 2000/10/08 18:25:01 espie Exp $ + +CATEGORIES= lang +DISTNAME= unicon-10.0beta +DISTFILES= uni.zip + +HOMEPAGE= http://icon.cs.unlv.edu/ + +MASTER_SITES= http://icon.cs.unlv.edu/v9/ +MAINTAINER= Marc Espie + +# GPL +PERMIT_DISTFILES_FTP= Yes +PERMIT_DISTFILES_CDROM= Yes +PERMIT_PACKAGE_FTP= Yes +PERMIT_PACKAGE_CDROM= Yes + +WRKDIST= ${WRKDIR} + +LIB_DEPENDS= gdbm.::databases/gdbm + +SCRIPTS_ENV= ARCH="${MACHINE_ARCH}" +MAKE_ENV= ARCH="${MACHINE_ARCH}" +CONF_DIR= ${WRKSRC}/config/unix/openbsd +ALL_TARGET= Unicon + +pre-configure: + cp -R ${FILESDIR}/openbsd ${WRKSRC}/config/unix + if [ -f ${CONF_DIR}/${ARCH}_rswitch.c ] ; then \ + ln -f ${CONF_DIR}/${ARCH}_rswitch.c ${CONF_DIR}/rswitch.c ;\ + else \ + touch ${CONF_DIR}/rswitch.c ;\ + fi + +# We put a wrapper around icont for finding the library files when +# they're installed +# The icon manpage is available separately... I've included it along +# with the package. Ludicrous to get through a ftp connexion for such +# a small file... +pre-install: +.for i in unicon ivib + cd ${WRKBUILD}/bin && mv $i $i.bak && \ + sed -e s,`pwd -P`,${TRUEPREFIX}/bin, <$i.bak >$i +.endfor + +do-install: + perl ${SCRIPTDIR}/mk_icont ${TRUEPREFIX} >${WRKBUILD}/icont + ${INSTALL_PROGRAM} ${WRKBUILD}/bin/icont ${PREFIX}/lib + ${INSTALL_PROGRAM} ${WRKBUILD}/bin/iconx ${PREFIX}/bin + ${INSTALL_PROGRAM} ${WRKBUILD}/bin/miconx ${PREFIX}/bin + ${INSTALL_PROGRAM} ${WRKBUILD}/bin/rtt ${PREFIX}/bin + ${INSTALL_SCRIPT} ${WRKBUILD}/icont ${PREFIX}/bin + ${INSTALL_MAN} ${FILESDIR}/icon.1 ${PREFIX}/man/man1/icont.1 + cd ${PREFIX}/man/man1 && ln -f icont.1 iconx.1 + ${INSTALL_DATA} ${WRKBUILD}/bin/rt.h ${PREFIX}/include + cd ${PREFIX}/bin && ${WRKBUILD}/bin/patchstr ${PREFIX}/lib/icont ${TRUEPREFIX}/bin/iconx + ${INSTALL_SCRIPT} ${WRKBUILD}/bin/unicon ${PREFIX}/bin + ${INSTALL_SCRIPT} ${WRKBUILD}/bin/ivib ${PREFIX}/bin + ${INSTALL_DATA_DIR} ${PREFIX}/share/ipl/lib + ${INSTALL_DATA_DIR} ${PREFIX}/share/ipl/include + for i in ${WRKBUILD}/ipl/lib/*.u; do \ + ${INSTALL_DATA} $$i ${PREFIX}/share/ipl/lib; \ + done + for i in ${WRKBUILD}/ipl/{incl,gincl}/*.icn; do \ + ${INSTALL_DATA} $$i ${PREFIX}/share/ipl/include; \ + done + +.include diff --git a/lang/unicon/files/icon.1 b/lang/unicon/files/icon.1 new file mode 100644 index 00000000000..c7274adf585 --- /dev/null +++ b/lang/unicon/files/icon.1 @@ -0,0 +1,244 @@ +.co \" IPD244d: Manual page for Version 9 icon(1) +.ds I \fHicont\fR and \fHiconc\fR +.TH ICON 1 "29 November 1996 IPD244d" +.SH NAME +icon \- interpret or compile Icon programs +.SH SYNOPSIS +\fHicont\fR [ option ... ] file ... [ \fH\-x\fR arg ... ] +.br +\fHiconc\fR [ option ... ] file ... [ \fH\-x\fR arg ... ] +.SH DESCRIPTION +\*I each convert an Icon source program into executable form. +\fHicont\fR translates quickly and provides interpretive execution. +\fHiconc\fR takes longer to compile but produces programs that +execute faster. +\fHicont\fR and \fHiconc\fR for the most part can be used interchangeably. +.PP +This manual page describes both \*I. Where there +there are differences in usage between \*I, these are noted. +.PP +\fBFile Names:\fR Files whose names end in \fH.icn\fR are assumed +to be Icon source files. The \fH.icn\fR suffix may be omitted; +if it is not present, it is supplied. The character \fH\-\fR can +be used to indicate an Icon source file given in standard input. +Several source files can be given on the same command line; if so, they +are combined to produce a single program. +.PP +The name of the executable file is the base name of the +first input file, +formed by deleting the suffix, if present. \fHstdin\fR is used for +source programs given in standard input. +.PP +\fBProcessing:\fR As noted in the synopsis above, \*I accept options followed +by file names, optionally followed by \fH\-x\fR and arguments. If \fH\-x\fR +is given, the program is executed automatically and any following +arguments are passed to it. +.PP +\fHicont\fR: The processing performed by \fHicont\fR consists of two phases: +\fItranslation\fR and \fIlinking\fR. During translation, +each Icon source file is translated into an intermediate language called +\fIucode\fR. Two ucode files are produced for each +source file, with base names from the +source file and suffixes \fH.u1\fR and \fH.u2\fR. +During linking, the one or more pairs of ucode files are combined to +produce a single +\fIicode\fR file. +The ucode files are deleted after the icode file is created. +.PP +Processing by \fHicont\fR can be terminated after translation by the +\fH\-c\fR option. In this case, the ucode files are not deleted. +The names of \fH.u1\fR files from previous translations can be given on the +\fHicont\fR command line. +These files and the corresponding \fH.u2\fR +files are included in the linking phase after the translation of any source +files. +The suffix \fH.u\fR can be used in place of \fH.u1\fR; in this case +the \fH1\fR is supplied automatically. +Ucode files that are explicitly named are not deleted. +.PP +\fHiconc\fR: The processing performed by \fHiconc\fR consists of two +phases: \fIcode generation\fR and \fIcompilation and linking\fR. The +code generation phase produces C code, consisting of a \fH.c\fR and a \fH.h\fR +file, with the base name of the first source file. These files are +then compiled and linked to produce an executable binary file. +The C files normally are deleted after compilation and linking. +.PP +Processing by \fHiconc\fR can be terminated after code generation by +the \fH\-c\fR option. In this case, the C files are not deleted. +.SH OPTIONS +The following options are recognized by \*I: +.TP 4 +\fH\-c\fR +Stop after producing intermediate files and do not delete them. +.TP 4 +\fH\-e\fR \fIfile\fR +Redirect standard error output to \fIfile\fR. +.TP +\fH\-f s\fR +Enable full string invocation. +.TP +\fH\-o \fIname\fR +Name the output file \fIname\fR. +.TP +\fH\-s\fR +Suppress informative messages. +Normally, both informative messages and error messages are sent +to standard error output. +.TP +\fH\-t\fR +Arrange for \fH&trace\fR to have an initial value of \-1 +when the program is executed and for \fHiconc\fR enable debugging features. +.TP +\fH\-u\fR +Issue warning messages for undeclared identifiers in the program. +.TP +\fH\-v \fIi\fR +Set verbosity level of informative messages to \fIi\fH +.TP +\fH\-E\fR +Direct the results of preprocessing to standard output and inhibit +further processing. +.PP +The following additional options are recognized by \fHiconc\fR: +.TP 4 +\fH\-f \fIstring\fR +Enable features as indicated by the letters in \fIstring\fR: +.TP 8 + \fHa\fR +all, equivalent to \fHdelns\fR +.TP 8 + \fHd\fR +enable debugging features: \fHdisplay()\fR, +\fHname()\fR, \fHvariable()\fR, error +trace back, and the effect of \fH\-f n\fR (see below) +.TP 8 + \fHe\fR +enable error conversion +.TP 8 + \fHl\fR +enable large-integer arithmetic +.TP 8 + \fHn\fR +produce code that keeps track of line numbers and file names in the source code +.TP 8 + \fHs\fR +enable full string invocation +.TP 4 +\fH\-n \fIstring\fR +Disable specific optimizations. These are indicated by the +letters in \fIstring\fR: +.TP 8 + \fHa\fR +all, equivalent to \fHcest\fR +.TP 8 + \fHc\fR +control flow optimizations other than switch statement optimizations +.TP 8 + \fHe\fR +expand operations in-line when reasonable +(keywords are always put in-line) +.TP 8 + \fHs\fR +optimize switch statements associated with operation invocations +.TP 8 + \fHt\fR +type inference +.TP 4 +\fH\-p \fIarg\fR +Pass \fIarg\fR on to the C compiler used by \fHiconc\fR +.TP 4 +\fH\-r \fIpath\fR +Use the run-time system at \fIpath\fR, which must end with a slash. +.TP 4 +.TP 4 +\fH\-C \fIprg\fR +Have \fHiconc\fR use the C compiler given by \fIprg\fH +.SH "ENVIRONMENT VARIABLES" +When an Icon program is executed, several environment variables +are examined to determine certain execution parameters. +Values in parentheses are the default values. +.TP 4 +\fHBLKSIZE\fR (500000) +The initial size of the allocated block region, in bytes. +.TP +\fHCOEXPSIZE\fR (2000) +The size, in words, of each co-expression block. +.TP +\fHDBLIST\fR +The location of data bases +for \fHiconc\fR to search before the standard one. +The value of \fHDBLIST\fR should be a blank-separated +string of the form \fIp1\0p2 ...\0 pn\fR where the \fIpi\fR name directories. +.TP +\fHICONCORE\fR +If set, a core dump is produced for error termination. +.TP 4 +\fHICONX\fR +The location of \fHiconx\fR, the executor for icode files, is +built into an icode file when it +is produced. This location can be overridden by setting the +environment variable \fHICONX\fR. +If \fHICONX\fR is set, its value is used in place of the location +built into the icode file. +.TP 4 +\fHIPATH\fR +The location of ucode files +specified in link declarations for \fHicont\fR. +\fHIPATH\fR is a blank-separated list of directories. +The current directory is always searched first, regardless of the value of +\fHIPATH\fR. +.TP 4 +\fHLPATH\fR +The location of source files +specified in preprocessor \fH$include\fR directives and in link +declarations for \fHiconc\fR. +\fHLPATH\fR is otherwise similar to \fHIPATH\fR. +.TP +\fHMSTKSIZE\fR (10000) +The size, in words, of the main interpreter stack for \fHicont\fR. +.TP +\fHNOERRBUF\fR +By default, \fH&errout\fR is buffered. If this variable is set, \fH&errout\fR +is not buffered. +.TP +\fHQLSIZE\fR (5000) +The size, in bytes, of the region used for pointers +to strings during garbage collection. +.TP +\fHSTRSIZE\fR (500000) +The initial size of the string space, in bytes. +.TP +\fHTRACE\fR +The initial value of \fH&trace\fR. +If this variable has a value, it overrides the translation-time +\fH\-t\fR +option. +.SH FILES +.ta \w'\fHicont\fR 'u +\fHicont\fR Icon translator +.br +\fHiconc\fR Icon compiler +.br +\fHiconx\fR Icon executor +.br +.SH SEE ALSO +\fIThe Icon Programming Language\fR, +Ralph E. Griswold and Madge T. Griswold, +Peer-to-Peer Communications, Inc., Third Edition, 1996. +.LP +\fIVersion 9.3 of Icon\fR, Ralph E. Griswold, Clinton L. Jeffery, +and Gregg M. Townsend, IPD278, +Department of Computer Science, The University of Arizona, 1996. +.LP +\fIVersion 9 of the Icon Compiler\fR, +Ralph E. Griswold, IPD237, Department of Computer Science, +The University of Arizona, 1995. +.LP +icon_vt(1) +.SH "LIMITATIONS AND BUGS" +.LP +The icode files for the +interpreter do not stand alone; the Icon run-time system (\fHiconx\fR) must be +present. +.LP +Stack overflow is checked using a heuristic that is not always effective. diff --git a/lang/unicon/files/md5 b/lang/unicon/files/md5 new file mode 100644 index 00000000000..905fec98a1a --- /dev/null +++ b/lang/unicon/files/md5 @@ -0,0 +1,3 @@ +MD5 (uni.zip) = 7fa1a79c03d637ce25bb0bea933c8e94 +RMD160 (uni.zip) = 5aeba6fa4fc5f89aa0b98b7375162d0077cf879f +SHA1 (uni.zip) = 1df70de3ec04e7d3f8daa354a5debba4b1200ec4 diff --git a/lang/unicon/files/openbsd/common.hdr b/lang/unicon/files/openbsd/common.hdr new file mode 100644 index 00000000000..a5216932637 --- /dev/null +++ b/lang/unicon/files/openbsd/common.hdr @@ -0,0 +1,10 @@ +# The -D$D option to CFLAGS makes it possible to specify a definition +# at the Make command level without revising the Makefile, as +# in +# +# make D=Debug +# +D=NOTHING +CFLAGS+= -D$D -I/usr/X11R6/include +SHELL=/bin/sh +RSWITCH=rswitch.c diff --git a/lang/unicon/files/openbsd/copybin.c b/lang/unicon/files/openbsd/copybin.c new file mode 100644 index 00000000000..71add19f7ba --- /dev/null +++ b/lang/unicon/files/openbsd/copybin.c @@ -0,0 +1,3 @@ +#include "../../../src/h/define.h" +#include "paths.h" +#include "../Generic/copybin.h" diff --git a/lang/unicon/files/openbsd/define.h b/lang/unicon/files/openbsd/define.h new file mode 100644 index 00000000000..16d7213041e --- /dev/null +++ b/lang/unicon/files/openbsd/define.h @@ -0,0 +1,25 @@ +#define Standard +#define IconGcvt +#define IconEcvt +#define index strchr +#define rindex strrchr +#define GetHost +#define Hz 100 +#define MaxHdr 13400 +#define MaxStatSize 20480 + +#define GenericBSD +#define HAS_WCOREDUMP 1 +#define BSD_4_4_LITE 1 /* This is new, for 4.4Lite specific stuff */ +#define UNIX 1 +#define LoadFunc +/* #define ExecImages */ + +#define KeyboardFncs +#define HaveTioc +#define USE_OLD_TTY +#define NEED_UTIME +#define AllowConst +#define SysOpt +#define CComp "gcc" +#define COpts "-O2 -I/usr/X11R6/include" diff --git a/lang/unicon/files/openbsd/i386_rswitch.c b/lang/unicon/files/openbsd/i386_rswitch.c new file mode 100644 index 00000000000..e65c5f5e127 --- /dev/null +++ b/lang/unicon/files/openbsd/i386_rswitch.c @@ -0,0 +1,28 @@ +/* + * This is the co-expression context switch for the Intel 80386 + * under Microport Unix System V/386 + */ + +/* + * coswitch + */ + +coswitch(old_cs, new_cs, first) +int *old_cs, *new_cs; +int first; + { + asm(" movl 8(%ebp),%eax"); + asm(" movl %esp,0(%eax)"); + asm(" movl %ebp,4(%eax)"); + asm(" movl 12(%ebp),%eax"); + if (first == 0) { /* this is the first activation */ + asm(" movl 0(%eax),%esp"); + asm(" movl $0,%ebp"); + new_context(0, 0); + syserr("interp() returned in coswitch"); + } + else { + asm(" movl 0(%eax),%esp"); + asm(" movl 4(%eax),%ebp"); + } + } diff --git a/lang/unicon/files/openbsd/icon_pi.c b/lang/unicon/files/openbsd/icon_pi.c new file mode 100644 index 00000000000..4a1eb779d65 --- /dev/null +++ b/lang/unicon/files/openbsd/icon_pi.c @@ -0,0 +1,2 @@ +#include "paths.h" +#include "../Generic/icon_pi.h" diff --git a/lang/unicon/files/openbsd/iconc.hdr b/lang/unicon/files/openbsd/iconc.hdr new file mode 100644 index 00000000000..a2f27513a84 --- /dev/null +++ b/lang/unicon/files/openbsd/iconc.hdr @@ -0,0 +1,9 @@ +# The -D$D option to CFLAGS makes it possible to specify a definition +# at the Make command level without revising the Makefile, as +# in +# +# make D=Debug +# +D=NOTHING +CFLAGS+= -D$D -I/usr/X11R6/include +SHELL=/bin/sh diff --git a/lang/unicon/files/openbsd/icont.hdr b/lang/unicon/files/openbsd/icont.hdr new file mode 100644 index 00000000000..8834b6e3007 --- /dev/null +++ b/lang/unicon/files/openbsd/icont.hdr @@ -0,0 +1,2 @@ +SHELL=/bin/sh +CFLAGS+=-I/usr/X11R6/include diff --git a/lang/unicon/files/openbsd/iconx.hdr b/lang/unicon/files/openbsd/iconx.hdr new file mode 100644 index 00000000000..b39023e9fa8 --- /dev/null +++ b/lang/unicon/files/openbsd/iconx.hdr @@ -0,0 +1,7 @@ +SHELL=/bin/sh +# the seek stuff is defined in a header file that they don't +# include. This is the easiest. -Dconst= causes const to +# be ignored. This is needed because otherwise we get complaints +# due to stdio.h defining some functions with const when they +# are not defined that way in Icon's header files +RSWITCH=rswitch.c diff --git a/lang/unicon/files/openbsd/paths.h b/lang/unicon/files/openbsd/paths.h new file mode 100644 index 00000000000..0872786c280 --- /dev/null +++ b/lang/unicon/files/openbsd/paths.h @@ -0,0 +1,3 @@ +#define RootPath "/usr/local" +#define IcontPath "/usr/local/lib/icon/icont" +#define IconxPath "/usr/local/lib/icon/iconx" diff --git a/lang/unicon/files/openbsd/pi.hdr b/lang/unicon/files/openbsd/pi.hdr new file mode 100644 index 00000000000..35601708ee2 --- /dev/null +++ b/lang/unicon/files/openbsd/pi.hdr @@ -0,0 +1,2 @@ +SHELL=/bin/sh +CFLAGS+=-DPersInterp -I/usr/X11R6/include diff --git a/lang/unicon/files/openbsd/preproc.hdr b/lang/unicon/files/openbsd/preproc.hdr new file mode 100644 index 00000000000..9c5b23a9832 --- /dev/null +++ b/lang/unicon/files/openbsd/preproc.hdr @@ -0,0 +1,10 @@ +# The -D$D option to CFLAGS makes it possible to specify a definition +# at the Make command level without revising the Makefile, as +# in +# +# make D=Debug +# +D=NOTHING +CC=cc +CFLAGS+= -O -D$D +SHELL=/bin/sh diff --git a/lang/unicon/files/openbsd/rtt.hdr b/lang/unicon/files/openbsd/rtt.hdr new file mode 100644 index 00000000000..60573e28a15 --- /dev/null +++ b/lang/unicon/files/openbsd/rtt.hdr @@ -0,0 +1,2 @@ +CFLAGS+= -DTokDotH="\"../rtt/ltoken.h\"" -I../gdbm -I../libtp -O2 -I/usr/X11R6/include +SHELL=/bin/sh diff --git a/lang/unicon/files/openbsd/runtime.hdr b/lang/unicon/files/openbsd/runtime.hdr new file mode 100644 index 00000000000..9cba86928ba --- /dev/null +++ b/lang/unicon/files/openbsd/runtime.hdr @@ -0,0 +1,4 @@ +SHELL=/bin/sh +CFLAGS+=-I/usr/X11R6/include -I/usr/local/include -I../libtp +LIBS=-lm -lXpm -L/usr/local/lib -lgdbm -L../libtp -ltp +LIBTP=libtp diff --git a/lang/unicon/files/openbsd/setpath.c b/lang/unicon/files/openbsd/setpath.c new file mode 100644 index 00000000000..3be6ee1b3b3 --- /dev/null +++ b/lang/unicon/files/openbsd/setpath.c @@ -0,0 +1,2 @@ +#include "paths.h" +#include "../Generic/setpath.h" diff --git a/lang/unicon/files/openbsd/status b/lang/unicon/files/openbsd/status new file mode 100644 index 00000000000..8beb94ade06 --- /dev/null +++ b/lang/unicon/files/openbsd/status @@ -0,0 +1,29 @@ +System configuration: + + OpenBSD >= 2.4 + +Latest Icon version: + + Version 9.3.1 + +Installer: + + Marc Espie + + +Missing features: + + Executable images, coexpr (on some archs) + +Known bugs: + + None. + +Comments: + + Some things to check yet, like building dynamic libraries, and + jpeg/giff/png support + +Date: + + September 29, 1998 diff --git a/lang/unicon/files/openbsd/vt.hdr b/lang/unicon/files/openbsd/vt.hdr new file mode 100644 index 00000000000..a9934e5b6f3 --- /dev/null +++ b/lang/unicon/files/openbsd/vt.hdr @@ -0,0 +1,2 @@ +SHELL=/bin/sh +CFLAGS+= -DVarTran diff --git a/lang/unicon/files/openbsd/xiconx.mak b/lang/unicon/files/openbsd/xiconx.mak new file mode 100644 index 00000000000..bb7165d6eaf --- /dev/null +++ b/lang/unicon/files/openbsd/xiconx.mak @@ -0,0 +1,3 @@ +# If you define EventMon, add the -lgmon below to get profil(2) under Linux +#XLIB= -lX11 -lgmon +XLIB= -L/usr/X11R6/lib -lX11 diff --git a/lang/unicon/files/openbsd/xpm.hdr b/lang/unicon/files/openbsd/xpm.hdr new file mode 100644 index 00000000000..205541468d9 --- /dev/null +++ b/lang/unicon/files/openbsd/xpm.hdr @@ -0,0 +1 @@ +DEFINES= -DZPIPE diff --git a/lang/unicon/patches/patch-config_unix_Config_common_make b/lang/unicon/patches/patch-config_unix_Config_common_make new file mode 100644 index 00000000000..8c83f9d1337 --- /dev/null +++ b/lang/unicon/patches/patch-config_unix_Config_common_make @@ -0,0 +1,14 @@ +$OpenBSD: patch-config_unix_Config_common_make,v 1.1.1.1 2000/10/08 18:25:03 espie Exp $ +--- config/unix/Config/common.make.orig Sat Sep 9 02:52:49 2000 ++++ config/unix/Config/common.make Thu Oct 5 00:13:39 2000 +@@ -21,9 +21,7 @@ libtp: + -(test -f ../../NoRanlib) || (ranlib ../../bin/libtp.a) + + xpm: +- cd ../xpm/lib; $(MAKE) libXpm.a +- cp ../xpm/lib/libXpm.a ../../bin +- -(test -f ../../NoRanlib) || (ranlib ../../bin/libXpm.a) ++ touch xpm + + $(OBJS): ../h/define.h ../h/config.h ../h/cstructs.h ../h/mproto.h ../h/path.h\ + ../h/typedefs.h ../h/proto.h ../h/cpuconf.h diff --git a/lang/unicon/patches/patch-src_runtime_fxposix_ri b/lang/unicon/patches/patch-src_runtime_fxposix_ri new file mode 100644 index 00000000000..52a4c50a420 --- /dev/null +++ b/lang/unicon/patches/patch-src_runtime_fxposix_ri @@ -0,0 +1,11 @@ +--- src/runtime/fxposix.ri.orig Tue Sep 26 09:37:21 2000 ++++ src/runtime/fxposix.ri Thu Oct 5 11:31:12 2000 +@@ -1599,7 +1599,7 @@ function{0,1} wait(pid, options) + #ifdef Linux + if (WIFSIGNALED(status) && status & 0200 ) /* core dump */ + #else +-#if !defined(FreeBSD) && defined(BSD_4_4_LITE) || (defined(BSD) && defined(SUN)) ++#if !defined(FreeBSD) && !defined(HAS_WCOREDUMP) && defined(BSD_4_4_LITE) || (defined(BSD) && defined(SUN)) + if (WIFSIGNALED(status) && ((union __wait*)&status)->w_T.w_Coredump) + #else + if (WCOREDUMP(status)) diff --git a/lang/unicon/pkg/COMMENT b/lang/unicon/pkg/COMMENT new file mode 100644 index 00000000000..aabbb0d5522 --- /dev/null +++ b/lang/unicon/pkg/COMMENT @@ -0,0 +1 @@ +programming language with generators, X11 graphics and more diff --git a/lang/unicon/pkg/DESCR b/lang/unicon/pkg/DESCR new file mode 100644 index 00000000000..b4562b96edc --- /dev/null +++ b/lang/unicon/pkg/DESCR @@ -0,0 +1,6 @@ +Unicon is the latest generation of Icon. It features: +- system functions to access directories, fork processes, etc, +- object oriented features, and packages, +- a larger library. + +WWW: ${HOMEPAGE} diff --git a/lang/unicon/pkg/PLIST b/lang/unicon/pkg/PLIST new file mode 100644 index 00000000000..ed1d0832ace --- /dev/null +++ b/lang/unicon/pkg/PLIST @@ -0,0 +1,397 @@ +@comment $OpenBSD: PLIST,v 1.1.1.1 2000/10/08 18:25:03 espie Exp $ +@pkgcfl icon_interp-* +@pkgcfl icon_lib-* +bin/icont +bin/iconx +bin/ivib +bin/miconx +bin/rtt +bin/unicon +include/rt.h +lib/icont +man/man1/icont.1 +man/man1/iconx.1 +share/ipl/include/invkdefs.icn +share/ipl/include/keysyms.icn +share/ipl/include/lshade.icn +share/ipl/include/maccolor.icn +share/ipl/include/opdefs.icn +share/ipl/include/posix.icn +share/ipl/include/vdefns.icn +share/ipl/include/xcolors.icn +share/ipl/include/xnames.icn +share/ipl/lib/abkform.u +share/ipl/lib/adjuncts.u +share/ipl/lib/adlutils.u +share/ipl/lib/allof.u +share/ipl/lib/allpat.u +share/ipl/lib/ansi.u +share/ipl/lib/apply.u +share/ipl/lib/argparse.u +share/ipl/lib/array.u +share/ipl/lib/asciinam.u +share/ipl/lib/attribs.u +share/ipl/lib/autopost.u +share/ipl/lib/barchart.u +share/ipl/lib/base64.u +share/ipl/lib/basename.u +share/ipl/lib/bevel.u +share/ipl/lib/binary.u +share/ipl/lib/bincvt.u +share/ipl/lib/binop.u +share/ipl/lib/bitint.u +share/ipl/lib/bitplane.u +share/ipl/lib/bitstr.u +share/ipl/lib/bitstrm.u +share/ipl/lib/bkutil.u +share/ipl/lib/bold.u +share/ipl/lib/bufread.u +share/ipl/lib/button.u +share/ipl/lib/calendat.u +share/ipl/lib/calls.u +share/ipl/lib/capture.u +share/ipl/lib/cardbits.u +share/ipl/lib/caseless.u +share/ipl/lib/cells.u +share/ipl/lib/cgi.u +share/ipl/lib/clip.u +share/ipl/lib/clipping.u +share/ipl/lib/clrnames.u +share/ipl/lib/clrutils.u +share/ipl/lib/codeobj.u +share/ipl/lib/colmize.u +share/ipl/lib/color.u +share/ipl/lib/colormap.u +share/ipl/lib/colortyp.u +share/ipl/lib/colorway.u +share/ipl/lib/colrlist.u +share/ipl/lib/colrmodl.u +share/ipl/lib/colrspec.u +share/ipl/lib/complete.u +share/ipl/lib/complex.u +share/ipl/lib/conffile.u +share/ipl/lib/convert.u +share/ipl/lib/created.u +share/ipl/lib/currency.u +share/ipl/lib/curves.u +share/ipl/lib/cwutils.u +share/ipl/lib/datecomp.u +share/ipl/lib/datefns.u +share/ipl/lib/datetime.u +share/ipl/lib/decay.u +share/ipl/lib/dialog.u +share/ipl/lib/dialogs.u +share/ipl/lib/dif.u +share/ipl/lib/digitcnt.u +share/ipl/lib/distance.u +share/ipl/lib/drag.u +share/ipl/lib/drawcard.u +share/ipl/lib/drawlab.u +share/ipl/lib/dsetup.u +share/ipl/lib/ebcdic.u +share/ipl/lib/em_setup.u +share/ipl/lib/empgsup.u +share/ipl/lib/emptygen.u +share/ipl/lib/emutils.u +share/ipl/lib/enqueue.u +share/ipl/lib/equiv.u +share/ipl/lib/escape.u +share/ipl/lib/escapesq.u +share/ipl/lib/eval.u +share/ipl/lib/evallist.u +share/ipl/lib/evaltree.u +share/ipl/lib/event.u +share/ipl/lib/eventgen.u +share/ipl/lib/everycat.u +share/ipl/lib/evinit.u +share/ipl/lib/evmux.u +share/ipl/lib/evnames.u +share/ipl/lib/evplay.u +share/ipl/lib/evrecord.u +share/ipl/lib/evsyms.u +share/ipl/lib/evtmap.u +share/ipl/lib/evutils.u +share/ipl/lib/exprfile.u +share/ipl/lib/factors.u +share/ipl/lib/fastfncs.u +share/ipl/lib/fetchpat.u +share/ipl/lib/feval.u +share/ipl/lib/filedim.u +share/ipl/lib/filenseq.u +share/ipl/lib/findre.u +share/ipl/lib/fstars.u +share/ipl/lib/fstartbl.u +share/ipl/lib/ftype.u +share/ipl/lib/fullimag.u +share/ipl/lib/gauss.u +share/ipl/lib/gdisable.u +share/ipl/lib/gdl.u +share/ipl/lib/gdl2.u +share/ipl/lib/gen.u +share/ipl/lib/gener.u +share/ipl/lib/genrfncs.u +share/ipl/lib/getchlib.u +share/ipl/lib/getcolrs.u +share/ipl/lib/getkeys.u +share/ipl/lib/getmail.u +share/ipl/lib/getpaths.u +share/ipl/lib/gettext.u +share/ipl/lib/gifsize.u +share/ipl/lib/glabels.u +share/ipl/lib/glib.u +share/ipl/lib/gobject.u +share/ipl/lib/gpxlib.u +share/ipl/lib/gpxop.u +share/ipl/lib/graphics.u +share/ipl/lib/graphpak.u +share/ipl/lib/grecords.u +share/ipl/lib/gtrace.u +share/ipl/lib/hetero.u +share/ipl/lib/hexcvt.u +share/ipl/lib/hexlib.u +share/ipl/lib/hostname.u +share/ipl/lib/html.u +share/ipl/lib/ibench.u +share/ipl/lib/ichartp.u +share/ipl/lib/identgen.u +share/ipl/lib/identity.u +share/ipl/lib/ifg.u +share/ipl/lib/ifncs.u +share/ipl/lib/iftrace.u +share/ipl/lib/image.u +share/ipl/lib/imagedim.u +share/ipl/lib/imageseq.u +share/ipl/lib/imgcolor.u +share/ipl/lib/imrutils.u +share/ipl/lib/imscanon.u +share/ipl/lib/imscolor.u +share/ipl/lib/imsutils.u +share/ipl/lib/imutils.u +share/ipl/lib/imxform.u +share/ipl/lib/inbits.u +share/ipl/lib/indices.u +share/ipl/lib/inserts.u +share/ipl/lib/interact.u +share/ipl/lib/intpdco.u +share/ipl/lib/intstr.u +share/ipl/lib/io.u +share/ipl/lib/iolib.u +share/ipl/lib/iscreen.u +share/ipl/lib/isdplot.u +share/ipl/lib/isort.u +share/ipl/lib/ispf.u +share/ipl/lib/iterfncs.u +share/ipl/lib/itlib.u +share/ipl/lib/itlibdos.u +share/ipl/lib/itokens.u +share/ipl/lib/itrcline.u +share/ipl/lib/ivalue.u +share/ipl/lib/joinpair.u +share/ipl/lib/jolygs.u +share/ipl/lib/jumpque.u +share/ipl/lib/kmap.u +share/ipl/lib/labeler.u +share/ipl/lib/lastc.u +share/ipl/lib/lastname.u +share/ipl/lib/lcseval.u +share/ipl/lib/linddefs.u +share/ipl/lib/linddraw.u +share/ipl/lib/lindgen.u +share/ipl/lib/lindrec.u +share/ipl/lib/lindterp.u +share/ipl/lib/list2tab.u +share/ipl/lib/lists.u +share/ipl/lib/loadfile.u +share/ipl/lib/longstr.u +share/ipl/lib/lrgapprx.u +share/ipl/lib/lsystem.u +share/ipl/lib/lu.u +share/ipl/lib/mapbit.u +share/ipl/lib/mapstr.u +share/ipl/lib/matchlib.u +share/ipl/lib/math.u +share/ipl/lib/matrix.u +share/ipl/lib/memlog.u +share/ipl/lib/memrfncs.u +share/ipl/lib/mirror.u +share/ipl/lib/models.u +share/ipl/lib/modlines.u +share/ipl/lib/morse.u +share/ipl/lib/mset.u +share/ipl/lib/namepfx.u +share/ipl/lib/navitrix.u +share/ipl/lib/ngrams.u +share/ipl/lib/noncase.u +share/ipl/lib/numbers.u +share/ipl/lib/openchk.u +share/ipl/lib/opname.u +share/ipl/lib/opnames.u +share/ipl/lib/opsyms.u +share/ipl/lib/options.u +share/ipl/lib/optwindw.u +share/ipl/lib/orbits.u +share/ipl/lib/outbits.u +share/ipl/lib/overlay.u +share/ipl/lib/packunpk.u +share/ipl/lib/palettes.u +share/ipl/lib/parscond.u +share/ipl/lib/partit.u +share/ipl/lib/pascal.u +share/ipl/lib/pascltri.u +share/ipl/lib/patch.u +share/ipl/lib/patterns.u +share/ipl/lib/patutils.u +share/ipl/lib/patword.u +share/ipl/lib/patxform.u +share/ipl/lib/pbkform.u +share/ipl/lib/pdae.u +share/ipl/lib/pdco.u +share/ipl/lib/phoname.u +share/ipl/lib/pixelmap.u +share/ipl/lib/plural.u +share/ipl/lib/polystuf.u +share/ipl/lib/popen.u +share/ipl/lib/popular.u +share/ipl/lib/posix.u +share/ipl/lib/printcol.u +share/ipl/lib/printf.u +share/ipl/lib/prockind.u +share/ipl/lib/procname.u +share/ipl/lib/progary.u +share/ipl/lib/pscript.u +share/ipl/lib/psrecord.u +share/ipl/lib/ptutils.u +share/ipl/lib/putpixel.u +share/ipl/lib/randarea.u +share/ipl/lib/randfigs.u +share/ipl/lib/random.u +share/ipl/lib/rational.u +share/ipl/lib/rawimage.u +share/ipl/lib/readcpt.u +share/ipl/lib/readtbl.u +share/ipl/lib/rec2tab.u +share/ipl/lib/recog.u +share/ipl/lib/records.u +share/ipl/lib/recrfncs.u +share/ipl/lib/recurmap.u +share/ipl/lib/reduce.u +share/ipl/lib/regexp.u +share/ipl/lib/repeats.u +share/ipl/lib/repetit.u +share/ipl/lib/revadd.u +share/ipl/lib/rewrap.u +share/ipl/lib/rexx.u +share/ipl/lib/rgbcomp.u +share/ipl/lib/rgbrec.u +share/ipl/lib/rng.u +share/ipl/lib/rpolys.u +share/ipl/lib/rstars.u +share/ipl/lib/rstartbl.u +share/ipl/lib/sandgen.u +share/ipl/lib/scan.u +share/ipl/lib/scanmodl.u +share/ipl/lib/scanset.u +share/ipl/lib/segment.u +share/ipl/lib/select.u +share/ipl/lib/senten1.u +share/ipl/lib/sentence.u +share/ipl/lib/seqimage.u +share/ipl/lib/serial.u +share/ipl/lib/sername.u +share/ipl/lib/sets.u +share/ipl/lib/showtbl.u +share/ipl/lib/shquote.u +share/ipl/lib/signed.u +share/ipl/lib/slider.u +share/ipl/lib/sort.u +share/ipl/lib/soundex.u +share/ipl/lib/soundex1.u +share/ipl/lib/speedo.u +share/ipl/lib/spin.u +share/ipl/lib/spirals.u +share/ipl/lib/spokes.u +share/ipl/lib/statemap.u +share/ipl/lib/step.u +share/ipl/lib/str2toks.u +share/ipl/lib/strings.u +share/ipl/lib/strip.u +share/ipl/lib/stripcom.u +share/ipl/lib/stripunb.u +share/ipl/lib/strpchrt.u +share/ipl/lib/subturtl.u +share/ipl/lib/symrand.u +share/ipl/lib/tab2list.u +share/ipl/lib/tab2rec.u +share/ipl/lib/tables.u +share/ipl/lib/tclass.u +share/ipl/lib/tile.u +share/ipl/lib/tiler.u +share/ipl/lib/title.u +share/ipl/lib/titleset.u +share/ipl/lib/tmpname.u +share/ipl/lib/tokgen.u +share/ipl/lib/trees.u +share/ipl/lib/tst.u +share/ipl/lib/tuple.u +share/ipl/lib/turtle.u +share/ipl/lib/twists.u +share/ipl/lib/typebind.u +share/ipl/lib/typecode.u +share/ipl/lib/typesyms.u +share/ipl/lib/unsigned.u +share/ipl/lib/usage.u +share/ipl/lib/varsub.u +share/ipl/lib/vbuttons.u +share/ipl/lib/vcoupler.u +share/ipl/lib/vdialog.u +share/ipl/lib/version.u +share/ipl/lib/vframe.u +share/ipl/lib/vgrid.u +share/ipl/lib/vidgets.u +share/ipl/lib/viewpack.u +share/ipl/lib/viface.u +share/ipl/lib/visprocs.u +share/ipl/lib/vlist.u +share/ipl/lib/vmenu.u +share/ipl/lib/vpane.u +share/ipl/lib/vquery.u +share/ipl/lib/vradio.u +share/ipl/lib/vrml.u +share/ipl/lib/vrml1lib.u +share/ipl/lib/vrml2lib.u +share/ipl/lib/vscroll.u +share/ipl/lib/vsetup.u +share/ipl/lib/vslider.u +share/ipl/lib/vstd.u +share/ipl/lib/vstyle.u +share/ipl/lib/vtext.u +share/ipl/lib/wattrib.u +share/ipl/lib/wdiag.u +share/ipl/lib/weighted.u +share/ipl/lib/wildcard.u +share/ipl/lib/win.u +share/ipl/lib/window.u +share/ipl/lib/winsnap.u +share/ipl/lib/wipe.u +share/ipl/lib/wopen.u +share/ipl/lib/word.u +share/ipl/lib/wrap.u +share/ipl/lib/writecpt.u +share/ipl/lib/xbfont.u +share/ipl/lib/xcode.u +share/ipl/lib/xcodes.u +share/ipl/lib/xcolor.u +share/ipl/lib/xcompat.u +share/ipl/lib/xform.u +share/ipl/lib/xformimg.u +share/ipl/lib/xforms.u +share/ipl/lib/xgtrace.u +share/ipl/lib/ximage.u +share/ipl/lib/xio.u +share/ipl/lib/xplane.u +share/ipl/lib/xputpixl.u +share/ipl/lib/xqueue.u +share/ipl/lib/xrotate.u +share/ipl/lib/xutils.u +@dirrm share/ipl/lib +@dirrm share/ipl/include diff --git a/lang/unicon/scripts/configure b/lang/unicon/scripts/configure new file mode 100644 index 00000000000..ae5341b5572 --- /dev/null +++ b/lang/unicon/scripts/configure @@ -0,0 +1 @@ +cd ${WRKSRC} && make X-Configure name=openbsd diff --git a/lang/unicon/scripts/mk_icont b/lang/unicon/scripts/mk_icont new file mode 100644 index 00000000000..2c8e1cc5138 --- /dev/null +++ b/lang/unicon/scripts/mk_icont @@ -0,0 +1,13 @@ +#!/usr/bin/perl + +$PREFIX=shift; +# This small script does build a suitable shell wrapper that calls +# icont, according to env variables. + +print <<"EOF"; +#!/bin/sh +IPATH="\${IPATH-} $PREFIX/share/ipl/ucode" +LPATH="\${LPATH-} $PREFIX/share/ipl/ginclude $PREFIX/share/ipl/include" +export IPATH LPATH +exec $PREFIX/lib/icont "\$@" +EOF