A light weight implementation of CAML, a strongly typed functional

language belonging to the ML family.
This commit is contained in:
Joseph Koshy 1998-07-28 06:25:43 +00:00
parent 97f0e91eef
commit a2103efd20
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=12180
10 changed files with 406 additions and 0 deletions

37
lang/caml-light/Makefile Normal file
View file

@ -0,0 +1,37 @@
# New ports collection makefile for: CAML
# Version required: 0.74
# Date created: 21 July 1998
# Whom: jkoshy
#
# $Id$
#
DISTNAME= cl74unix
PKGNAME= caml-0.74
CATEGORIES= lang
MASTER_SITES= ftp://ftp.inria.fr/lang/caml-light/ \
ftp://sunsite.doc.ic.ac.uk/computing/programming/languages/ml/caml-light/ \
ftp://arcadia.informatik.uni-muenchen.de/pub/comp/programming/languages/caml-light/ \
ftp://sunsite.icm.edu.pl/pub/programming/caml/ \
http://wwwfun.kurims.kyoto-u.ac.jp/soft/caml-light/
MAINTAINER= jkoshy@freebsd.org
WRKSRC= ${WRKDIR}/cl74
ALL_TARGET= configure world bootstrap
MAN1= camlc.1 camllex.1 camllibr.1 camllight.1 camlmktop.1 camlrun.1 camlyacc.1 mletags.1 camllorder.1 camlsearch.1
do-build:
cd ${WRKSRC}/src; ${MAKE} ${ALL_TARGET} PREFIX=${PREFIX} \
X11BASE=${X11BASE}
do-install:
cd ${WRKSRC}/src; ${MAKE} ${INSTALL_TARGET} PREFIX=${PREFIX} \
X11BASE=${X11BASE}
# build some contrib stuff too
post-install:
cd ${WRKSRC}/contrib; ${MAKE} all ${INSTALL_TARGET} PREFIX=${PREFIX} \
X11BASE=${X11BASE}
.include <bsd.port.mk>

1
lang/caml-light/distinfo Normal file
View file

@ -0,0 +1 @@
MD5 (cl74unix.tar.gz) = 72c44d8751402f571979ab5d9aa98224

View file

@ -0,0 +1,37 @@
--- src/Makefile.orig Thu Apr 24 20:21:03 1997
+++ src/Makefile Tue Jul 28 08:30:13 1998
@@ -24,19 +24,19 @@
# not all Unix C preprocessors define it.
# If your cpp is too fussy, make tools/clprepro and use this:
# CPP=../../src/tools/clprepro -Dunix
-CPP=/lib/cpp -P -Dunix
+CPP=/usr/bin/cpp -P -Dunix
# The directory where public executables will be installed
-BINDIR=/usr/local/bin
+BINDIR=${PREFIX}/bin
# The directory where the Caml Light standard library will be installed
-LIBDIR=/usr/local/lib/caml-light
+LIBDIR=${PREFIX}/lib/caml-light
# The manual section where the manual pages will be installed
MANEXT=1
# The directory where the manual pages will be installed
-MANDIR=/usr/local/man/man$(MANEXT)
+MANDIR=${PREFIX}/man/man$(MANEXT)
# Some "make"s need this to ensure that they call the Bourne shell,
# not the C shell. Seems harmless on most other "make"s.
@@ -118,8 +118,8 @@
# Install the Caml Light system
install:
- if test -d $(BINDIR); then : ; else mkdir $(BINDIR); fi
- if test -d $(LIBDIR); then : ; else mkdir $(LIBDIR); fi
+ if test -d $(BINDIR); then : ; else mkdir -p $(BINDIR); fi
+ if test -d $(LIBDIR); then : ; else mkdir -p $(LIBDIR); fi
cd runtime; make BINDIR=$(BINDIR) LIBDIR=$(LIBDIR) install
cd launch; make BINDIR=$(BINDIR) LIBDIR=$(LIBDIR) install
cd lib; make BINDIR=$(BINDIR) LIBDIR=$(LIBDIR) install

View file

@ -0,0 +1,71 @@
--- contrib/Makefile-- Mon Dec 1 23:47:01 1997
+++ contrib/Makefile Mon Jul 27 12:27:01 1998
@@ -5,7 +5,7 @@
# Remember that "libunix" is required for
# "debugger", "libgraph", "camltk", "camltk4", and "search_isos".
PACKAGES=libunix libgraph debugger libnum libstr mletags \
- camlmode lorder profiler camltk4 camlsearch
+ camlmode lorder profiler camlsearch
# caml-tex
# caml-latex2e
# camltk
@@ -22,7 +22,7 @@
# and /usr/ccs/lib/cpp under Solaris.
# The -P option suppresses the generation of "# linenum" directives,
# which are not understood by Caml Light.
-CPP=/lib/cpp -P
+CPP=/usr/bin/cpp -P
# Test to see whether ranlib exists on the machine
RANLIBTEST=test -f /usr/bin/ranlib -o -f /bin/ranlib
@@ -31,26 +31,26 @@
RANLIB=ranlib
# The directory where public executables will be installed
-BINDIR=/usr/local/bin
+BINDIR=${PREFIX}/bin
# The directory where library files will be installed
-LIBDIR=/usr/local/lib/caml-light
+LIBDIR=${PREFIX}/lib/caml-light
# The manual section where the manual pages will be installed
MANEXT=1
# The directory where the manual pages will be installed
-MANDIR=/usr/local/man/man$(MANEXT)
+MANDIR=${PREFIX}/man/man$(MANEXT)
# The path to the include directory containing the X11/*.h includes
# (usually /usr/include; for SunOS with OpenLook, /usr/openwin/include)
# Needed for the "libgraph" and "camltk" packages.
-X11_INCLUDES=/usr/X11R6/include
+X11_INCLUDES=${X11BASE}/include
# The path to the directory containing the X11 libraries.
# (usually /usr/lib; for SunOS with OpenLook, /usr/openwin/lib)
# Needed for the "libgraph" and "camltk" packages.
-X11_LIB=/usr/X11R6/lib
+X11_LIB=${X11BASE}/lib
# Name of the target architecture.
# Used only for the libnum library (arbitrary-precision arithmetic), to
@@ -62,15 +62,15 @@
# See the file libnum/README for more explanations.
# If you don't know, leave BIGNUM_ARCH=C, which selects a portable
# C implementation of these routines.
-BIGNUM_ARCH=C
+BIGNUM_ARCH=pentium
# Name of the directory where LaTeX style files should be installed.
# Needed only for the "caml-tex" and "caml-latex2e" packages.
-TEXINPUTDIR=/usr/lib/texmf/tex/latex/etc
+TEXINPUTDIR=${PREFIX}/lib/texmf/tex/latex/etc
# Name of the directory where Emacs Lisp files should be installed.
# Needed only for the "camlmode" package.
-EMACSLISPDIR=/usr/lib/emacs/site-lisp
+EMACSLISPDIR=${PREFIX}/share/emacs/site-lisp
# Name of the directories where the tcl.h and tk.h includes can be found.
# Needed only for the "camltk" package.

View file

@ -0,0 +1,8 @@
--- src/man/Makefile-- Tue Nov 1 23:06:06 1994
+++ src/man/Makefile Tue Jul 28 08:50:22 1998
@@ -3,4 +3,5 @@
MANDIR=/usr/man/man$(MANEXT)
install:
+ mkdir -p ${MANDIR}
for f in $(MAN); do cp $$f $(MANDIR)/`basename $$f .m`.$(MANEXT); done

View file

@ -0,0 +1,13 @@
--- contrib/camlmode/Makefile-- Mon Dec 2 22:13:37 1996
+++ contrib/camlmode/Makefile Tue Jul 28 08:48:02 1998
@@ -11,8 +11,9 @@
all:
install:
+ mkdir -p $(EMACSLISPDIR)
cp $(FILES) $(EMACSLISPDIR)
- dir=`pwd`; cd $(EMACSLISPDIR); $(EMACS) -batch -l $$dir/compile
+ -dir=`pwd`; cd $(EMACSLISPDIR); $(EMACS) -batch -l $$dir/compile
clean:
rm -f *~ #*#

View file

@ -0,0 +1,7 @@
--- contrib/camlsearch/emacs-lisp/Makefile-- Sat Feb 4 23:42:23 1995
+++ contrib/camlsearch/emacs-lisp/Makefile Tue Jul 28 08:49:53 1998
@@ -1,3 +1,4 @@
SOURCES=caml-search.el
install: $(SOURCES)
+ mkdir -p $(ELISPDIR)
cp $(SOURCES) $(ELISPDIR)

View file

@ -0,0 +1 @@
A strongly typed functional language belonging to the ML family.

24
lang/caml-light/pkg-descr Normal file
View file

@ -0,0 +1,24 @@
Caml is a strongly-typed functional programming language from the
ML family, close to Standard ML but slightly different.
URL: http://pauillac.inria.fr/caml/index-eng.html
The Caml Light system comprises the following parts:
- An interactive system, based on a read-eval-print loop.
- A batch compiler and linker, `camlc'. The compiler
produces standalone executable programs.
- A medium-sized standard library.
- A tool to build libraries of frequently-used program modules.
- A parser generator and a lexical analyzer generator, in the
style of lex and yacc.
- Various programming tools:
- A source-level debugger with replay capabilities (``time travel'').
- An hypertext browser for modules.
- A simple Emacs editing mode, plus the ability to run the
- toplevel or the debugger under Emacs.
- Search by types on modules.
- Several interface libraries:
- Portable graphic primitives (simple line and text drawings).
- Interface with the Unix system calls.
- Arbitrary-precision rational arithmetic (extremely efficient).
- High-level string operations (regular expressions, ...).

207
lang/caml-light/pkg-plist Normal file
View file

@ -0,0 +1,207 @@
bin/camlrun
bin/camlc
bin/camllight
bin/camlmktop
bin/camllibr
bin/camllex
bin/camlyacc
bin/camldebug
bin/mletags
bin/camllorder
bin/camlsearch
lib/caml-light/libcaml.a
lib/caml-light/misc.h
lib/caml-light/alloc.h
lib/caml-light/mlvalues.h
lib/caml-light/config.h
lib/caml-light/memory.h
lib/caml-light/header
lib/caml-light/stdlib.zo
lib/caml-light/string.ml
lib/caml-light/stream.ml
lib/caml-light/stack.ml
lib/caml-light/sort.ml
lib/caml-light/set.ml
lib/caml-light/random.ml
lib/caml-light/queue.ml
lib/caml-light/printf.ml
lib/caml-light/printexc.ml
lib/caml-light/parsing.ml
lib/caml-light/pair.ml
lib/caml-light/map.ml
lib/caml-light/list.ml
lib/caml-light/lexing.ml
lib/caml-light/io.ml
lib/caml-light/int.ml
lib/caml-light/hashtbl.ml
lib/caml-light/genlex.ml
lib/caml-light/gc.ml
lib/caml-light/fvect.ml
lib/caml-light/fstring.ml
lib/caml-light/format.ml
lib/caml-light/float.ml
lib/caml-light/filename.ml
lib/caml-light/fchar.ml
lib/caml-light/exc.ml
lib/caml-light/eq.ml
lib/caml-light/char.ml
lib/caml-light/bool.ml
lib/caml-light/baltree.ml
lib/caml-light/arg.ml
lib/caml-light/vect.mli
lib/caml-light/sys.mli
lib/caml-light/string.mli
lib/caml-light/stream.mli
lib/caml-light/stack.mli
lib/caml-light/sort.mli
lib/caml-light/set.mli
lib/caml-light/ref.mli
lib/caml-light/random.mli
lib/caml-light/queue.mli
lib/caml-light/printf.mli
lib/caml-light/printexc.mli
lib/caml-light/parsing.mli
lib/caml-light/pair.mli
lib/caml-light/obj.mli
lib/caml-light/map.mli
lib/caml-light/list.mli
lib/caml-light/lexing.mli
lib/caml-light/camlcomp
lib/caml-light/io.mli
lib/caml-light/int.mli
lib/caml-light/hashtbl.mli
lib/caml-light/genlex.mli
lib/caml-light/gc.mli
lib/caml-light/fvect.mli
lib/caml-light/fstring.mli
lib/caml-light/format.mli
lib/caml-light/float.mli
lib/caml-light/filename.mli
lib/caml-light/fchar.mli
lib/caml-light/exc.mli
lib/caml-light/eq.mli
lib/caml-light/char.mli
lib/caml-light/bool.mli
lib/caml-light/baltree.mli
lib/caml-light/arg.mli
lib/caml-light/vect.zix
lib/caml-light/string.zix
lib/caml-light/stream.zix
lib/caml-light/stack.zix
lib/caml-light/set.zix
lib/caml-light/sort.zix
lib/caml-light/random.zix
lib/caml-light/queue.zix
lib/caml-light/printf.zix
lib/caml-light/printexc.zix
lib/caml-light/parsing.zix
lib/caml-light/pair.zix
lib/caml-light/map.zix
lib/caml-light/list.zix
lib/caml-light/lexing.zix
lib/caml-light/io.zix
lib/caml-light/int.zix
lib/caml-light/hashtbl.zix
lib/caml-light/genlex.zix
lib/caml-light/gc.zix
lib/caml-light/fvect.zix
lib/caml-light/fstring.zix
lib/caml-light/format.zix
lib/caml-light/float.zix
lib/caml-light/filename.zix
lib/caml-light/fchar.zix
lib/caml-light/exc.zix
lib/caml-light/eq.zix
lib/caml-light/char.zix
lib/caml-light/bool.zix
lib/caml-light/baltree.zix
lib/caml-light/arg.zix
lib/caml-light/vect.zi
lib/caml-light/toplevel.zi
lib/caml-light/sys.zi
lib/caml-light/string.zi
lib/caml-light/stream.zi
lib/caml-light/stack.zi
lib/caml-light/sort.zi
lib/caml-light/set.zi
lib/caml-light/ref.zi
lib/caml-light/random.zi
lib/caml-light/queue.zi
lib/caml-light/printf.zi
lib/caml-light/printexc.zi
lib/caml-light/parsing.zi
lib/caml-light/pair.zi
lib/caml-light/obj.zi
lib/caml-light/map.zi
lib/caml-light/list.zi
lib/caml-light/lexing.zi
lib/caml-light/iparsing.zi
lib/caml-light/io.zi
lib/caml-light/int.zi
lib/caml-light/hashtbl.zi
lib/caml-light/genlex.zi
lib/caml-light/gc.zi
lib/caml-light/fvect.zi
lib/caml-light/fstring.zi
lib/caml-light/format.zi
lib/caml-light/float.zi
lib/caml-light/filename.zi
lib/caml-light/fchar.zi
lib/caml-light/exc.zi
lib/caml-light/eq.zi
lib/caml-light/char.zi
lib/caml-light/bool.zi
lib/caml-light/baltree.zi
lib/caml-light/arg.zi
lib/caml-light/vect.ml
lib/caml-light/camllink
lib/caml-light/camltop
lib/caml-light/toplevel.mli
lib/caml-light/provide
lib/caml-light/expunge
lib/caml-light/toplib.zo
lib/caml-light/topmain.zo
lib/caml-light/camlmsgs.txt
lib/caml-light/libunix.a
lib/caml-light/unix.zo
lib/caml-light/unix.zi
lib/caml-light/camlunix
lib/caml-light/libgraph.a
lib/caml-light/graphics.zo
lib/caml-light/graphics.zi
lib/caml-light/camlgraph
lib/caml-light/libnums.a
lib/caml-light/nat.zi
lib/caml-light/ratio.zi
lib/caml-light/num.zi
lib/caml-light/arith_status.zi
lib/caml-light/fnat.zi
lib/caml-light/big_int.zi
lib/caml-light/nums.zo
lib/caml-light/camlnum
lib/caml-light/libstr.a
lib/caml-light/str.zi
lib/caml-light/str.zo
lib/caml-light/camlstr
lib/caml-light/camlinstr
lib/caml-light/profiler.zi
lib/caml-light/prodump.zo
lib/caml-light/stdlibp.zo
man/man1/camlc.1.gz
man/man1/camllex.1.gz
man/man1/camllibr.1.gz
man/man1/camllight.1.gz
man/man1/camlmktop.1.gz
man/man1/camlrun.1.gz
man/man1/camlyacc.1.gz
man/man1/mletags.1.gz
man/man1/camllorder.1.gz
man/man1/camlsearch.1.gz
share/emacs/site-lisp/camldebug.el
share/emacs/site-lisp/inf-caml.el
share/emacs/site-lisp/caml.el
share/emacs/site-lisp/caml.elc
share/emacs/site-lisp/inf-caml.elc
share/emacs/site-lisp/camldebug.elc
share/emacs/site-lisp/caml-search.el
@dirrm lib/caml-light