summaryrefslogtreecommitdiff
path: root/lang
diff options
context:
space:
mode:
authorWill Andrews <will@FreeBSD.org>2000-06-30 02:56:21 +0000
committerWill Andrews <will@FreeBSD.org>2000-06-30 02:56:21 +0000
commit42563e847721311865cff6975a8997b77af07cb7 (patch)
tree19697bb98ee7c4cbd609c0b7a6fe1e293b84df87 /lang
parentFix remote buffer overflow vulnerability. (diff)
Add oo2c, an Oberon-2 compiler.
PR: 18215 Submitted by: Oliver Breuninger <ob@seicom.net>
Notes
Notes: svn path=/head/; revision=30006
Diffstat (limited to 'lang')
-rw-r--r--lang/Makefile1
-rw-r--r--lang/oo2c/Makefile29
-rw-r--r--lang/oo2c/distinfo2
-rw-r--r--lang/oo2c/files/oo246
-rw-r--r--lang/oo2c/files/patch-aa11
-rw-r--r--lang/oo2c/files/patch-and8
-rw-r--r--lang/oo2c/files/patch-gc31
-rw-r--r--lang/oo2c/pkg-comment1
-rw-r--r--lang/oo2c/pkg-descr8
-rw-r--r--lang/oo2c/pkg-plist248
10 files changed, 385 insertions, 0 deletions
diff --git a/lang/Makefile b/lang/Makefile
index 00826caa333c..3b79774268f7 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -64,6 +64,7 @@
SUBDIR += o2c
SUBDIR += objc
SUBDIR += ocaml
+ SUBDIR += oo2c
SUBDIR += otcl
SUBDIR += p2c
SUBDIR += p5-Error
diff --git a/lang/oo2c/Makefile b/lang/oo2c/Makefile
new file mode 100644
index 000000000000..98b68d4feb3e
--- /dev/null
+++ b/lang/oo2c/Makefile
@@ -0,0 +1,29 @@
+# New ports collection makefile for: OO2C
+# Date created: December 17, 1999
+# Whom: Oliver Breuninger <ob@seicom.NET>
+#
+# $FreeBSD$
+
+PORTNAME= oo2c
+PORTVERSION= 1.5.2
+CATEGORIES= lang
+MASTER_SITES= http://www.uni-kl.de/OOC/files/oo2c/ \
+ ftp://ftp.de.uu.net/pub/programming/languages/oberon/www.uni-kl.de/OOC/files/oo2c/ \
+ http://reality.sgi.com/boehm_mti/gc_source/
+DISTNAME= ${PORTNAME}_32-${PORTVERSION}
+DISTFILES= ${DISTNAME}${EXTRACT_SUFX} gc4.14.tar.gz
+
+MAINTAINER= ob@seicom.NET
+
+USE_LIBTOOL= yes
+GNU_CONFIGURE= yes
+CONFIGURE_ENV+= INSTALL_SCRIPT="${INSTALL_SCRIPT}"
+MAN1= oo2c.1 oob.1 ooef.1 oocn.1 oowhereis.1
+
+post-extract:
+ @${MV} ${WRKDIR}/gc ${WRKSRC}/gc
+
+post-install:
+ @${INSTALL_SCRIPT} ${FILESDIR}/oo2 ${PREFIX}/bin
+
+.include <bsd.port.mk>
diff --git a/lang/oo2c/distinfo b/lang/oo2c/distinfo
new file mode 100644
index 000000000000..efd7d58e2cdc
--- /dev/null
+++ b/lang/oo2c/distinfo
@@ -0,0 +1,2 @@
+MD5 (oo2c_32-1.5.2.tar.gz) = 82410be0d698909dc6e08a06c279de69
+MD5 (gc4.14.tar.gz) = 2b852a33443116dbaa163494fd423027
diff --git a/lang/oo2c/files/oo2 b/lang/oo2c/files/oo2
new file mode 100644
index 000000000000..2de84d883c18
--- /dev/null
+++ b/lang/oo2c/files/oo2
@@ -0,0 +1,46 @@
+#! /bin/csh
+
+if ( $#argv == 0 ) goto usage
+if ( $1 == "--make" ) goto make
+if ( $1 == "-m" ) goto make
+
+compile:
+#
+# compile files, check extension
+#
+if ( $1 == "-c" ) then
+ set file = $2
+else
+ set file = $1
+endif
+echo Extension $file:e
+if ( $file:e != "Mod" ) then
+ set file = $file".Mod"
+endif
+echo compiling $file "..."
+oo2c $file | ooef | more
+goto end
+
+make:
+#
+# make Oberon program, remove Extension
+#
+echo making $2:r $3:r $4:r $5:r $6:r "..."
+oo2c --make $2:r $3:r $4:r $5:r $6:r
+goto end
+
+usage:
+#
+# show a litle help
+#
+echo ""
+echo " oo2 [option] File "
+echo ""
+echo " option: "
+echo " --make make Project "
+echo " -m make Project "
+echo " -c (default) compile Module "
+echo ""
+
+end:
+
diff --git a/lang/oo2c/files/patch-aa b/lang/oo2c/files/patch-aa
new file mode 100644
index 000000000000..2e32873cbb58
--- /dev/null
+++ b/lang/oo2c/files/patch-aa
@@ -0,0 +1,11 @@
+--- Makefile.in Wed Mar 1 06:44:52 2000
++++ Makefile.in.new Thu Jun 29 22:35:07 2000
+@@ -96,7 +96,7 @@
+ # Allow the user to specify the install program.
+ INSTALL=@INSTALL@
+ INSTALL_PROGRAM=@INSTALL_PROGRAM@
+-INSTALL_SCRIPT=@INSTALL_PROGRAM@
++INSTALL_SCRIPT=@INSTALL_SCRIPT@
+ INSTALL_DATA=@INSTALL_DATA@
+ INSTALL_CMD=@INSTALL_CMD@ # used by installed oo2c
+
diff --git a/lang/oo2c/files/patch-and b/lang/oo2c/files/patch-and
new file mode 100644
index 000000000000..05700fd2ff93
--- /dev/null
+++ b/lang/oo2c/files/patch-and
@@ -0,0 +1,8 @@
+--- src/frontend/Scanner.Mod.orig Tue Oct 19 20:41:03 1999
++++ src/frontend/Scanner.Mod Wed Oct 27 00:36:47 1999
+@@ -1335,4 +1335,5 @@
+ kwStr[i, 0, 0] := 0X; kwStr[i, 1, 0] := 0X
+ END;
++ KW ("AND", and);
+ KW ("ARRAY", array); KW ("BEGIN", begin); KW ("BY", by); KW ("CASE", case);
+ KW ("CONST", const); KW ("DIV", div); KW ("DO", do); KW ("ELSE", else);
diff --git a/lang/oo2c/files/patch-gc b/lang/oo2c/files/patch-gc
new file mode 100644
index 000000000000..3c89cf09bdcf
--- /dev/null
+++ b/lang/oo2c/files/patch-gc
@@ -0,0 +1,31 @@
+--- gc/Makefile.orig Fri Mar 26 00:41:43 1999
++++ gc/Makefile Fri Dec 17 11:49:52 1999
+@@ -255,4 +255,9 @@
+ ln liblinuxgc.so libgc.so
+
++# FreeBSD shared library version of the collector
++libfreebsdgc.so: $(OBJS) dyn_load.o
++ ld -shared $(ABI_FLAG) -o libfreebsdgc.so $(OBJS) dyn_load.o -lc
++ ln libfreebsdgc.so libgc.so
++
+ # Alternative Linux rule. This is preferable, but is likely to break the
+ # Makefile for some non-linux platforms.
+@@ -331,4 +336,12 @@
+ -rm -f *~
+
++copy:
++ cat gc.man | gzip > gc.l.gz
++ cp -p gc.a /usr/local/lib/libgc.a
++ cp -p libgc.so /usr/local/lib/libgc.so.0
++ cp -p gc.h /usr/local/include
++ cp -p gc.l.gz /usr/local/man/manl
++ ln -s libgc.so.0 /usr/local/lib/libgc.so
++
+ gctest: test.o gc.a if_mach if_not_there
+ rm -f gctest
+@@ -417,2 +430,5 @@
+ cp tmp $$file; \
+ done
++
++install: all test libfreebsdgc.so copy
++
diff --git a/lang/oo2c/pkg-comment b/lang/oo2c/pkg-comment
new file mode 100644
index 000000000000..d877b17d1419
--- /dev/null
+++ b/lang/oo2c/pkg-comment
@@ -0,0 +1 @@
+Optimizing Oberon-2 compiler of University of Kaiserslautern, Germany
diff --git a/lang/oo2c/pkg-descr b/lang/oo2c/pkg-descr
new file mode 100644
index 000000000000..3c4f6623a79b
--- /dev/null
+++ b/lang/oo2c/pkg-descr
@@ -0,0 +1,8 @@
+Niklaus Wirth's language Oberon-2 implemented by a german university at
+Kaiserslautern. More information about Oberon is available from its
+webpage at http://www.oberon.ethz.ch/.
+
+WWW: http://www.uni-kl.de/OOC/
+
+- Oliver Breuninger
+ob@seicom.NET
diff --git a/lang/oo2c/pkg-plist b/lang/oo2c/pkg-plist
new file mode 100644
index 000000000000..10de1aef5cba
--- /dev/null
+++ b/lang/oo2c/pkg-plist
@@ -0,0 +1,248 @@
+bin/oo2
+bin/oo2c
+bin/oob
+bin/oobacktrace
+bin/oocn
+bin/ooef
+bin/oowhereis
+@unexec install-info --delete %D/info/OOCref.info %D/info/dir
+info/OOCref.info
+info/OOCref.info-1
+info/OOCref.info-2
+info/OOCref.info-3
+info/OOCref.info-4
+info/OOCref.info-5
+info/OOCref.info-6
+info/OOCref.info-7
+info/OOCref.info-8
+info/OOCref.info-9
+info/OOCref.info-10
+info/OOCref.info-11
+info/OOCref.info-12
+info/OOCref.info-13
+info/OOCref.info-14
+info/OOCref.info-15
+info/OOCref.info-16
+info/OOCref.info-17
+@exec install-info %D/info/OOCref.info %D/info/dir
+lib/liboo2c.a
+lib/liboo2c.la
+lib/liboo2c.so
+lib/liboo2c.so.14
+lib/oo2c/lib/Ascii.Mod
+lib/oo2c/lib/BinaryRider.Mod
+lib/oo2c/lib/C.Mod
+lib/oo2c/lib/Calendar.Mod
+lib/oo2c/lib/Channel.Mod
+lib/oo2c/lib/CharClass.Mod
+lib/oo2c/lib/ComplexMath.Mod
+lib/oo2c/lib/ConvTypes.Mod
+lib/oo2c/lib/Err.Mod
+lib/oo2c/lib/Exception.Mod
+lib/oo2c/lib/Filenames.Mod
+lib/oo2c/lib/Files.Mod
+lib/oo2c/lib/In.Mod
+lib/oo2c/lib/IntConv.Mod
+lib/oo2c/lib/IntStr.Mod
+lib/oo2c/lib/Integers.Mod
+lib/oo2c/lib/JulianDay.Mod
+lib/oo2c/lib/Kernel.Mod
+lib/oo2c/lib/LComplexMath.Mod
+lib/oo2c/lib/LRealConv.Mod
+lib/oo2c/lib/LRealMath.Mod
+lib/oo2c/lib/LRealStr.Mod
+lib/oo2c/lib/LibSummary.Mod
+lib/oo2c/lib/LocNumConv.Mod
+lib/oo2c/lib/LocNumStr.Mod
+lib/oo2c/lib/LocStrings.Mod
+lib/oo2c/lib/LocText.Mod
+lib/oo2c/lib/LocTextRider.Mod
+lib/oo2c/lib/Locales.Mod
+lib/oo2c/lib/Log.Mod
+lib/oo2c/lib/LongInts.Mod
+lib/oo2c/lib/LongStrings.Mod
+lib/oo2c/lib/LowLReal.Mod
+lib/oo2c/lib/LowReal.Mod
+lib/oo2c/lib/Msg.Mod
+lib/oo2c/lib/OakFiles.Mod
+lib/oo2c/lib/OakIn.Mod
+lib/oo2c/lib/OakMath.Mod
+lib/oo2c/lib/OakMathL.Mod
+lib/oo2c/lib/OakOut.Mod
+lib/oo2c/lib/OakStrings.Mod
+lib/oo2c/lib/Out.Mod
+lib/oo2c/lib/PosixFileDescr.Mod
+lib/oo2c/lib/ProgramArgs.Mod
+lib/oo2c/lib/RandomNumbers.Mod
+lib/oo2c/lib/RealConv.Mod
+lib/oo2c/lib/RealMath.Mod
+lib/oo2c/lib/RealStr.Mod
+lib/oo2c/lib/Reals.Mod
+lib/oo2c/lib/Rts.Mod
+lib/oo2c/lib/Signal.Mod
+lib/oo2c/lib/StdChannels.Mod
+lib/oo2c/lib/Strings.Mod
+lib/oo2c/lib/Strings2.Mod
+lib/oo2c/lib/SysClock.Mod
+lib/oo2c/lib/Termination.Mod
+lib/oo2c/lib/TextRider.Mod
+lib/oo2c/lib/Time.Mod
+lib/oo2c/lib/Types.Mod
+lib/oo2c/lib/liboo2c.Mod
+lib/oo2c/lib/Exception.c
+lib/oo2c/lib/Files.c
+lib/oo2c/lib/Kernel.c
+lib/oo2c/lib/LocStrings.c
+lib/oo2c/lib/Locales.c
+lib/oo2c/lib/OakFiles.c
+lib/oo2c/lib/PosixFileDescr.c
+lib/oo2c/lib/Rts.c
+lib/oo2c/lib/Signal.c
+lib/oo2c/lib/SysClock.c
+lib/oo2c/lib/Termination.c
+lib/oo2c/lib/Types.c
+lib/oo2c/lib/__Descr.c
+lib/oo2c/lib/__Descr.h
+lib/oo2c/lib/__Exception.h
+lib/oo2c/lib/__StdTypes.h
+lib/oo2c/lib/__config.h
+lib/oo2c/lib/__gc.h
+lib/oo2c/lib/__libc.h
+lib/oo2c/lib/__mini_gc.h
+lib/oo2c/lib/__oo2c.c
+lib/oo2c/lib/__oo2c.h
+lib/oo2c/lib/__pushcontext.h
+lib/oo2c/sym/Ascii.Sym
+lib/oo2c/sym/BinaryRider.Sym
+lib/oo2c/sym/C.Sym
+lib/oo2c/sym/Calendar.Sym
+lib/oo2c/sym/Channel.Sym
+lib/oo2c/sym/CharClass.Sym
+lib/oo2c/sym/ComplexMath.Sym
+lib/oo2c/sym/ConvTypes.Sym
+lib/oo2c/sym/Err.Sym
+lib/oo2c/sym/Exception.Sym
+lib/oo2c/sym/Filenames.Sym
+lib/oo2c/sym/Files.Sym
+lib/oo2c/sym/In.Sym
+lib/oo2c/sym/IntConv.Sym
+lib/oo2c/sym/IntStr.Sym
+lib/oo2c/sym/Integers.Sym
+lib/oo2c/sym/JulianDay.Sym
+lib/oo2c/sym/Kernel.Sym
+lib/oo2c/sym/LComplexMath.Sym
+lib/oo2c/sym/LRealConv.Sym
+lib/oo2c/sym/LRealMath.Sym
+lib/oo2c/sym/LRealStr.Sym
+lib/oo2c/sym/LocNumConv.Sym
+lib/oo2c/sym/LocNumStr.Sym
+lib/oo2c/sym/LocStrings.Sym
+lib/oo2c/sym/LocText.Sym
+lib/oo2c/sym/LocTextRider.Sym
+lib/oo2c/sym/Locales.Sym
+lib/oo2c/sym/Log.Sym
+lib/oo2c/sym/LongInts.Sym
+lib/oo2c/sym/LongStrings.Sym
+lib/oo2c/sym/LowLReal.Sym
+lib/oo2c/sym/LowReal.Sym
+lib/oo2c/sym/Msg.Sym
+lib/oo2c/sym/OakFiles.Sym
+lib/oo2c/sym/OakIn.Sym
+lib/oo2c/sym/OakMath.Sym
+lib/oo2c/sym/OakMathL.Sym
+lib/oo2c/sym/OakOut.Sym
+lib/oo2c/sym/OakStrings.Sym
+lib/oo2c/sym/Out.Sym
+lib/oo2c/sym/PosixFileDescr.Sym
+lib/oo2c/sym/ProgramArgs.Sym
+lib/oo2c/sym/RandomNumbers.Sym
+lib/oo2c/sym/RealConv.Sym
+lib/oo2c/sym/RealMath.Sym
+lib/oo2c/sym/RealStr.Sym
+lib/oo2c/sym/Reals.Sym
+lib/oo2c/sym/Rts.Sym
+lib/oo2c/sym/Signal.Sym
+lib/oo2c/sym/StdChannels.Sym
+lib/oo2c/sym/Strings.Sym
+lib/oo2c/sym/Strings2.Sym
+lib/oo2c/sym/SysClock.Sym
+lib/oo2c/sym/Termination.Sym
+lib/oo2c/sym/TextRider.Sym
+lib/oo2c/sym/Time.Sym
+lib/oo2c/sym/Types.Sym
+lib/oo2c/sym/liboo2c.Sym
+lib/oo2c/sym/oo2c.Lib
+lib/oo2c/obj/Ascii.h
+lib/oo2c/obj/BinaryRider.h
+lib/oo2c/obj/C.h
+lib/oo2c/obj/Calendar.h
+lib/oo2c/obj/Channel.h
+lib/oo2c/obj/CharClass.h
+lib/oo2c/obj/ComplexMath.h
+lib/oo2c/obj/ConvTypes.h
+lib/oo2c/obj/Err.h
+lib/oo2c/obj/Exception.h
+lib/oo2c/obj/Filenames.h
+lib/oo2c/obj/Files.h
+lib/oo2c/obj/In.h
+lib/oo2c/obj/IntConv.h
+lib/oo2c/obj/IntStr.h
+lib/oo2c/obj/Integers.h
+lib/oo2c/obj/JulianDay.h
+lib/oo2c/obj/Kernel.h
+lib/oo2c/obj/LComplexMath.h
+lib/oo2c/obj/LRealConv.h
+lib/oo2c/obj/LRealMath.h
+lib/oo2c/obj/LRealStr.h
+lib/oo2c/obj/LocNumConv.h
+lib/oo2c/obj/LocNumStr.h
+lib/oo2c/obj/LocStrings.h
+lib/oo2c/obj/LocText.h
+lib/oo2c/obj/LocTextRider.h
+lib/oo2c/obj/Locales.h
+lib/oo2c/obj/Log.h
+lib/oo2c/obj/LongInts.h
+lib/oo2c/obj/LongStrings.h
+lib/oo2c/obj/LowLReal.h
+lib/oo2c/obj/LowReal.h
+lib/oo2c/obj/Msg.h
+lib/oo2c/obj/OakFiles.h
+lib/oo2c/obj/OakIn.h
+lib/oo2c/obj/OakMath.h
+lib/oo2c/obj/OakMathL.h
+lib/oo2c/obj/OakOut.h
+lib/oo2c/obj/OakStrings.h
+lib/oo2c/obj/Out.h
+lib/oo2c/obj/PosixFileDescr.h
+lib/oo2c/obj/ProgramArgs.h
+lib/oo2c/obj/RandomNumbers.h
+lib/oo2c/obj/RealConv.h
+lib/oo2c/obj/RealMath.h
+lib/oo2c/obj/RealStr.h
+lib/oo2c/obj/Reals.h
+lib/oo2c/obj/Rts.h
+lib/oo2c/obj/Signal.h
+lib/oo2c/obj/StdChannels.h
+lib/oo2c/obj/Strings.h
+lib/oo2c/obj/Strings2.h
+lib/oo2c/obj/SysClock.h
+lib/oo2c/obj/Termination.h
+lib/oo2c/obj/TextRider.h
+lib/oo2c/obj/Time.h
+lib/oo2c/obj/Types.h
+lib/oo2c/obj/liboo2c.h
+lib/oo2c/obj/__oo2c.o
+lib/oo2c/gc.a
+lib/oo2c/ooconfig
+lib/oo2c/install-sh
+lib/oo2c/README
+lib/oo2c/oo2crc
+lib/oo2c/Errors.short
+lib/oo2c/Errors.long
+lib/oo2c/oberon2.el
+lib/oo2c/oberon2_18.el
+lib/oo2c/o2-default.el
+@dirrm lib/oo2c/lib
+@dirrm lib/oo2c/obj
+@dirrm lib/oo2c/sym
+@dirrm lib/oo2c