diff options
author | steve <steve@FreeBSD.org> | 1999-11-01 11:46:48 +0800 |
---|---|---|
committer | steve <steve@FreeBSD.org> | 1999-11-01 11:46:48 +0800 |
commit | fe9b192ee9fcaf40bfcd499dc8e7f091df4b612a (patch) | |
tree | 67da5452f350213d5be8e10aaca9882951822a86 /lang/wamcc | |
parent | f8ea79cb20e6267006e358dc5e862a6e10a35935 (diff) | |
download | freebsd-ports-gnome-fe9b192ee9fcaf40bfcd499dc8e7f091df4b612a.tar.gz freebsd-ports-gnome-fe9b192ee9fcaf40bfcd499dc8e7f091df4b612a.tar.zst freebsd-ports-gnome-fe9b192ee9fcaf40bfcd499dc8e7f091df4b612a.zip |
Initial import of wamcc version 2.22.
A Prolog-to-C translator from Inria.
PR: 13745
Submitted by: W. Gerald Hicks <wghicks@bellsouth.net>
Diffstat (limited to 'lang/wamcc')
-rw-r--r-- | lang/wamcc/Makefile | 20 | ||||
-rw-r--r-- | lang/wamcc/distinfo | 2 | ||||
-rw-r--r-- | lang/wamcc/files/patch-aa | 68 | ||||
-rw-r--r-- | lang/wamcc/files/patch-ab | 11 | ||||
-rw-r--r-- | lang/wamcc/files/patch-ac | 51 | ||||
-rw-r--r-- | lang/wamcc/files/patch-ad | 36 | ||||
-rw-r--r-- | lang/wamcc/files/patch-ae | 14 | ||||
-rw-r--r-- | lang/wamcc/files/patch-af | 48 | ||||
-rw-r--r-- | lang/wamcc/pkg-comment | 1 | ||||
-rw-r--r-- | lang/wamcc/pkg-descr | 18 | ||||
-rw-r--r-- | lang/wamcc/pkg-plist | 86 |
11 files changed, 355 insertions, 0 deletions
diff --git a/lang/wamcc/Makefile b/lang/wamcc/Makefile new file mode 100644 index 000000000000..d8eb3e31035a --- /dev/null +++ b/lang/wamcc/Makefile @@ -0,0 +1,20 @@ +# New ports collection makefile for: wamcc +# Version required: 2.22 +# Date created: 14 September 1999 +# Whom: Jerry Hicks <wghicks@bellsouth.net> +# +# $FreeBSD$ +# + +DISTNAME= wamcc2.22 +PKGNAME= wamcc-2.22 +CATEGORIES= lang +MASTER_SITES= ftp://ftp.inria.fr/INRIA/Projects/loco/wamcc/ +DISTFILES= wamcc2.22.tar.Z prg.tar.Z + +MAINTAINER= wghicks@bellsouth.net + +DIST_SUBDIR= wamcc +NO_WRKSUBDIR= yes + +.include <bsd.port.mk> diff --git a/lang/wamcc/distinfo b/lang/wamcc/distinfo new file mode 100644 index 000000000000..cdfc5d939d6d --- /dev/null +++ b/lang/wamcc/distinfo @@ -0,0 +1,2 @@ +MD5 (wamcc/wamcc2.22.tar.Z) = dadc24bdee8a3167b4cffa32a936c00b +MD5 (wamcc/prg.tar.Z) = fc9bee37ab3449535a5fb83c601e2da1 diff --git a/lang/wamcc/files/patch-aa b/lang/wamcc/files/patch-aa new file mode 100644 index 000000000000..782e1bdcdee2 --- /dev/null +++ b/lang/wamcc/files/patch-aa @@ -0,0 +1,68 @@ +--- Makefile.orig Tue Mar 7 03:21:05 1995 ++++ Makefile Sun Oct 31 13:03:29 1999 +@@ -5,12 +5,16 @@ + # /* Makefile */ + # /*-----------------------------------------------------------------------*/ + +-# you can change the following paths ++PREFIX?= /usr/local ++INCPATH= $(PREFIX)/include/wamcc ++LIBPATH= $(PREFIX)/lib/wamcc ++BINPATH= $(PREFIX)/bin ++DOCPATH= $(PREFIX)/share/doc/wamcc ++EXAMPLEPATH= $(PREFIX)/share/examples/wamcc ++ ++PROGRAMS= src/$(COMPILER) src/$(BMF) src/hex2pl src/pl2hex ++SCRIPTS= src/$(WCC) + +-ROOTPATH= $(HOME)/$(COMPILER) +-INCPATH = $(ROOTPATH)/include +-LIBPATH = $(ROOTPATH)/lib +-BINPATH = $(ROOTPATH)/bin + + # you can specify the name of the C compiler + +@@ -25,24 +29,28 @@ + + EXECS = $(WCC) $(COMPILER) $(BMF) hex2pl pl2hex + +-install: +- cd src; echo $(ROOTPATH);\ ++all: ++ (cd src; \ + make $(WCC) COMPILER=$(COMPILER) INCPATH=$(INCPATH) \ +- LIBPATH=$(LIBPATH) CC=$(CC) WCC=$(WCC) +- cd Builtin; \ +- make COMPILER=$(COMPILER) CC=$(CC) WCC=../src/$(WCC) +- cd src; \ ++ LIBPATH=$(LIBPATH) CC=$(CC) WCC=$(WCC)) ++ (cd Builtin; \ ++ make COMPILER=$(COMPILER) CC=$(CC) WCC=../src/$(WCC)) ++ (cd src; \ + make COMPILER=$(COMPILER) INCPATH=$(INCPATH) \ +- LIBPATH=$(LIBPATH) CC=$(CC) WCC=$(WCC) +- -mkdir -p $(INCPATH) +- -mkdir -p $(LIBPATH) +- -mkdir -p $(BINPATH) +- cp src/*.h $(INCPATH) +- rm $(INCPATH)/wamcc*.h +- cp src/*.a $(LIBPATH) +- ranlib $(LIBPATH)/*.a +- cp src/$(WCC) src/$(COMPILER) src/$(BMF) src/hex2pl src/pl2hex $(BINPATH) ++ LIBPATH=$(LIBPATH) CC=$(CC) WCC=$(WCC)) + ++install: ++ $(INSTALL) -d $(INCPATH) ++ $(INSTALL) -c -m 444 src/*.h $(INCPATH) ++ $(INSTALL) -d $(LIBPATH) ++ $(INSTALL) -c -m 444 src/*.a $(LIBPATH) ++ $(INSTALL) -d $(DOCPATH) ++ $(INSTALL) -c -m 444 doc/* $(DOCPATH) ++ $(INSTALL) -d $(EXAMPLEPATH) ++ $(INSTALL) -c -m 444 Examples/* $(EXAMPLEPATH) ++ $(INSTALL) -d $(BINPATH) ++ $(INSTALL) -c -m 555 $(SCRIPTS) $(BINPATH) ++ $(INSTALL) -c -s -m 555 $(PROGRAMS) $(BINPATH) + + clean: + cd src; make clean diff --git a/lang/wamcc/files/patch-ab b/lang/wamcc/files/patch-ab new file mode 100644 index 000000000000..0de56c1bd19a --- /dev/null +++ b/lang/wamcc/files/patch-ab @@ -0,0 +1,11 @@ +--- Builtin/Makefile.orig Fri Dec 23 18:10:02 1994 ++++ Builtin/Makefile Tue Sep 14 04:17:29 1999 +@@ -51,7 +51,7 @@ + + + starter.c: build_starter Makefile +- build_starter $(BIPS) >starter.c ++ ./build_starter $(BIPS) >starter.c + + build_starter: build_starter.c + $(CC) $(CFLAGS) $(LFLAGS) -o build_starter build_starter.c diff --git a/lang/wamcc/files/patch-ac b/lang/wamcc/files/patch-ac new file mode 100644 index 000000000000..b3c3dbd3e456 --- /dev/null +++ b/lang/wamcc/files/patch-ac @@ -0,0 +1,51 @@ +--- src/Makefile.orig Wed Jan 29 11:37:54 1997 ++++ src/Makefile Tue Sep 14 04:16:11 1999 +@@ -49,22 +49,22 @@ + + + machine.o: machine.h archi.h wam_engine.h machine.c +- $(WCC) $(CFLAGS) -c machine.c ++ ./$(WCC) $(CFLAGS) -c machine.c + + wam_engine.o: machine.h archi.h wam_engine.h atom_pred.h wam_engine.c +- $(WCC) $(CFLAGS) -c wam_engine.c ++ ./$(WCC) $(CFLAGS) -c wam_engine.c + + wam_engine_pp.o: machine.h archi.h wam_engine.h atom_pred.h wam_engine.c +- $(WCC) $(CFLAGS) -DWAM_PROFILE -c -o wam_engine_pp.o wam_engine.c ++ ./$(WCC) $(CFLAGS) -DWAM_PROFILE -c -o wam_engine_pp.o wam_engine.c + + atom_pred.o: machine.h archi.h wam_engine.h atom_pred.h atom_pred.c +- $(WCC) $(CFLAGS) -c atom_pred.c ++ ./$(WCC) $(CFLAGS) -c atom_pred.c + + debugger.o: machine.h archi.h wam_engine.h atom_pred.h debugger.c +- $(WCC) $(CFLAGS) -c debugger.c ++ ./$(WCC) $(CFLAGS) -c debugger.c + + hash.o: machine.h hash.c +- $(WCC) $(CFLAGS) -c hash.c ++ ./$(WCC) $(CFLAGS) -c hash.c + + + +@@ -79,7 +79,7 @@ + + + $(WCC): configure archi.def +- configure ++ ./configure + chmod a+x $(WCC) + + $(BMF): bmf.c +@@ -95,8 +95,8 @@ + $(CC) $(CFLAGS) $(LFLAGS) -o pl2hex pl2hex.c + + $(COMPILER): +- $(WCC) $(CFLAGS) -c wamcc*.c +- $(WCC) $(CFLAGS) $(LFLAGS) -s -o $(COMPILER) wamcc*.o -l$(COMPILER) ++ ./$(WCC) $(CFLAGS) -c wamcc*.c ++ ./$(WCC) $(CFLAGS) $(LFLAGS) -s -o $(COMPILER) wamcc*.o -l$(COMPILER) + + + diff --git a/lang/wamcc/files/patch-ad b/lang/wamcc/files/patch-ad new file mode 100644 index 000000000000..a8372a5a409f --- /dev/null +++ b/lang/wamcc/files/patch-ad @@ -0,0 +1,36 @@ +--- src/debugger.c.orig Sun Dec 18 12:15:55 1994 ++++ src/debugger.c Tue Sep 14 04:16:44 1999 +@@ -278,7 +278,15 @@ + + #define Y_Storing_Invoc_Nb(e) (Y(e,3)) /* see call.pl */ + ++static void mygets(char *str, int size) ++{ ++ char *p; ++ fgets(str,size,stdin); + ++ p = index(str, '\n'); ++ if(p) ++ *p = '\0'; ++} + + + +@@ -959,7 +967,7 @@ + Lib1(printf," ? "); + + *str='\0'; +- Lib1(gets,str); ++ Lib2(mygets,str,sizeof(str) - 1); + if (*str=='\0') + Lib2(strcpy,str,"creep"); + +@@ -2047,7 +2055,7 @@ + Lib1(printf,"\nNew value: "); + + *str='\0'; +- Lib1(gets,str); ++ Lib2(mygets,str,sizeof(str) - 1); + if (*str=='\0') + return; + diff --git a/lang/wamcc/files/patch-ae b/lang/wamcc/files/patch-ae new file mode 100644 index 000000000000..b8b6e2009d58 --- /dev/null +++ b/lang/wamcc/files/patch-ae @@ -0,0 +1,14 @@ +--- src/machine.c.orig Sun Dec 18 12:15:59 1994 ++++ src/machine.c Tue Sep 14 04:16:29 1999 +@@ -52,7 +52,11 @@ + + #endif + ++#if !defined(M_i386_freebsd) && !defined(M_alpha_freebsd) ++ + extern char *sys_errlist[]; ++ ++#endif + + + diff --git a/lang/wamcc/files/patch-af b/lang/wamcc/files/patch-af new file mode 100644 index 000000000000..4702250322bf --- /dev/null +++ b/lang/wamcc/files/patch-af @@ -0,0 +1,48 @@ +--- src/machine.h.orig Mon Oct 23 10:59:26 1995 ++++ src/machine.h Tue Sep 14 04:13:45 1999 +@@ -33,6 +33,16 @@ + # define M_MACHINE "dec_alpha" + # define M_dec_alpha + ++# elif defined(__FreeBSD__) && defined(i386) ++ ++ #define M_MACHINE "i386_freebsd" ++ #define M_i386_freebsd ++ ++# elif defined(__FreeBSD__) && defined(alpha) ++ ++ #define M_MACHINE "alpha_freebsd" ++ #define M_alpha_freebsd ++ + # elif defined(__linux__) && !defined(__ELF__) + + # define M_MACHINE "pc_linux_a_out" +@@ -101,7 +111,8 @@ + /*---------------------------------*/ + + #if defined(M_sony_news) || defined(M_dec_ultrix) || defined(M_dec_alpha) ||\ +- defined(M_pc_linux_elf) ++ defined(M_pc_linux_elf) || defined(M_i386_freebsd) ||\ ++ defined(M_alpha_freebsd) + + # define M_Asm_Symbol1(name) #name + # define M_Asm_Symbol(name) M_Asm_Symbol1(name) +@@ -122,7 +133,8 @@ + + + #if defined(M_sparc) || defined(M_dec_ultrix) || defined(M_sony_news) || \ +- defined(M_NeXT_hppa) || defined(M_dec_alpha) ++ defined(M_NeXT_hppa) || defined(M_dec_alpha) || defined(M_i386_freebsd) ||\ ++ defined(M_alpha_freebsd) + + # define M_Save_Control_Info + # define M_Restore_Control_Info +@@ -145,7 +157,7 @@ + + + #if defined(M_sparc) || defined(M_dec_ultrix) || defined(M_sony_news) || \ +- defined(M_NeXT_hppa) ++ defined(M_NeXT_hppa) || defined(M_i386_freebsd) || defined(M_alpha_freebsd) + + # define M_Direct_Goto(lab) {lab(); return;} + # define M_Indirect_Goto(p_lab) {(* ((void (*)()) p_lab))();return;} diff --git a/lang/wamcc/pkg-comment b/lang/wamcc/pkg-comment new file mode 100644 index 000000000000..871a8d6092ba --- /dev/null +++ b/lang/wamcc/pkg-comment @@ -0,0 +1 @@ +Prolog-to-C translator from Inria diff --git a/lang/wamcc/pkg-descr b/lang/wamcc/pkg-descr new file mode 100644 index 000000000000..8e954bde8e30 --- /dev/null +++ b/lang/wamcc/pkg-descr @@ -0,0 +1,18 @@ +wamcc is a Prolog Compiler which translates Prolog to C via the WAM +(Warren Abstract Machine). wamcc has a syntax which conforms to the +proposed ISO standard. + +wamcc offers the most usual built-in predicates, a top-level, a Prolog +debugger and a WAM debugger, dynamic and compiled code, modules, +global variables, global arrays...). wamcc is designed to be easily +extended (e.g. clp(FD) is a constraint logic language over Finite +Domains designed on wamcc). + +wamcc tries tries to be conform to the (future) ISO standard Prolog. +The draft ISO standard for Prolog is available by anonymous ftp from +ai.uga.edu:/pub/prolog.standard/ [128.192.12.9]. An unofficial summary +of the draft ISO Prolog standard is available from the same location +as isoprolog.tex or isoprolog.ps.Z. + +The directory /usr/local/share/doc/wamcc contains a user's manual as +a LaTeX file. Examples are installed in /usr/local/share/examples/wamcc. diff --git a/lang/wamcc/pkg-plist b/lang/wamcc/pkg-plist new file mode 100644 index 000000000000..f8f3ac68ccb5 --- /dev/null +++ b/lang/wamcc/pkg-plist @@ -0,0 +1,86 @@ +bin/bmf_wamcc +bin/hex2pl +bin/pl2hex +bin/w_gcc +bin/wamcc +include/wamcc/archi.h +include/wamcc/atom_pred.h +include/wamcc/bool.h +include/wamcc/builtin.h +include/wamcc/debugger.h +include/wamcc/hash.h +include/wamcc/machine.h +include/wamcc/wam_engine.h +include/wamcc/wam_interface.h +include/wamcc/wamcc.h +include/wamcc/wamcc0.h +include/wamcc/wamcc1.h +include/wamcc/wamcc2.h +include/wamcc/wamcc3.h +include/wamcc/wamcc4.h +include/wamcc/wamcc5.h +include/wamcc/wamcc6.h +include/wamcc/wamcc7.h +include/wamcc/wamcc8.h +lib/wamcc/libwamcc.a +lib/wamcc/libwamcc_pp.a +share/doc/wamcc/wamcc_manual.tex +share/examples/wamcc/README +share/examples/wamcc/boyer.mk +share/examples/wamcc/boyer.pl +share/examples/wamcc/boyer.usr +share/examples/wamcc/browse.mk +share/examples/wamcc/browse.pl +share/examples/wamcc/browse.usr +share/examples/wamcc/cal.mk +share/examples/wamcc/cal.pl +share/examples/wamcc/cal.usr +share/examples/wamcc/chat_parser.mk +share/examples/wamcc/chat_parser.pl +share/examples/wamcc/chat_parser.usr +share/examples/wamcc/crypt.mk +share/examples/wamcc/crypt.pl +share/examples/wamcc/crypt.usr +share/examples/wamcc/ham.mk +share/examples/wamcc/ham.pl +share/examples/wamcc/ham.usr +share/examples/wamcc/meta_qsort.mk +share/examples/wamcc/meta_qsort.pl +share/examples/wamcc/meta_qsort.usr +share/examples/wamcc/nand.mk +share/examples/wamcc/nand.pl +share/examples/wamcc/nand.usr +share/examples/wamcc/nrev.mk +share/examples/wamcc/nrev.pl +share/examples/wamcc/nrev.usr +share/examples/wamcc/poly_10.mk +share/examples/wamcc/poly_10.pl +share/examples/wamcc/poly_10.usr +share/examples/wamcc/queens.mk +share/examples/wamcc/queens.pl +share/examples/wamcc/queens.usr +share/examples/wamcc/queens8.mk +share/examples/wamcc/queens8.pl +share/examples/wamcc/queens8.usr +share/examples/wamcc/reducer.mk +share/examples/wamcc/reducer.pl +share/examples/wamcc/reducer.usr +share/examples/wamcc/sdda.mk +share/examples/wamcc/sdda.pl +share/examples/wamcc/sdda.usr +share/examples/wamcc/sendmore.mk +share/examples/wamcc/sendmore.pl +share/examples/wamcc/sendmore.usr +share/examples/wamcc/tak.mk +share/examples/wamcc/tak.pl +share/examples/wamcc/tak.usr +share/examples/wamcc/tak_gvar.mk +share/examples/wamcc/tak_gvar.pl +share/examples/wamcc/tak_gvar.usr +share/examples/wamcc/zebra.mk +share/examples/wamcc/zebra.pl +share/examples/wamcc/zebra.usr +@dirrm include/wamcc +@dirrm lib/wamcc +@dirrm share/doc/wamcc +@dirrm share/examples/wamcc |