Import algol68g-2.2.0 as wip/algol68g.

The development of Algol played an important role in establishing
computer science as an academic discipline. The Algol 68 Genie project
preserves Algol 68 out of educational as well as scientific-historical
interest, by making available Algol 68 Genie; a recent, well-featured
implementation written from scratch. Algol 68 Genie is a practically
full implementation of the language defined by the Revised Report. The
implementation is a hybrid compiler-interpreter; units with considerable
interpreter-overhead can optionally be compiled.
This commit is contained in:
Olaf Seibert 2011-07-26 22:50:55 +00:00 committed by Thomas Klausner
parent b1a605d447
commit 0ac0605264
7 changed files with 140 additions and 0 deletions

8
algol68g/DESCR Normal file
View file

@ -0,0 +1,8 @@
The development of Algol played an important role in establishing
computer science as an academic discipline. The Algol 68 Genie project
preserves Algol 68 out of educational as well as scientific-historical
interest, by making available Algol 68 Genie; a recent, well-featured
implementation written from scratch. Algol 68 Genie is a practically
full implementation of the language defined by the Revised Report. The
implementation is a hybrid compiler-interpreter; units with considerable
interpreter-overhead can optionally be compiled.

36
algol68g/Makefile Normal file
View file

@ -0,0 +1,36 @@
# $NetBSD: Makefile,v 1.1.1.1 2011/07/26 22:50:55 rhialto Exp $
DISTNAME= algol68g-${A68G_VERSION}
CATEGORIES= lang
MASTER_SITES= http://jmvdveer.home.xs4all.nl/
DISTFILES+= ${DISTNAME}${EXTRACT_SUFX} ${DOC_FILE}
EXTRACT_SUFX= .tgz
MAINTAINER= olafs@cs.ru.nl
HOMEPAGE= http://jmvdveer.home.xs4all.nl/algol.html
COMMENT= Algol 68genie compiler
PKG_DESTDIR_SUPPORT= user-destdir
DOC_FILE= algol68g.pdf
A68G_VERSION= 2.2.0
USE_TOOLS+= make
USE_TOOLS+= autoreconf autoconf aclocal automake
USE_LIBTOOL= yes
GNU_CONFIGURE= yes
USE_LANGUAGES+= c
LICENSE= gnu-gpl-v3
# We patched configure.ac
pre-configure:
cd ${WRKSRC} && autoreconf
INSTALLATION_DIRS+= share/doc/a68g
post-install:
${INSTALL_DATA} ${WRKDIR}/${DOC_FILE} ${DESTDIR}${PREFIX}/share/doc/a68g/${DOC_FILE}
.include "options.mk"
.include "../../math/gsl/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"

6
algol68g/PLIST Normal file
View file

@ -0,0 +1,6 @@
@comment $NetBSD: PLIST,v 1.1.1.1 2011/07/26 22:50:55 rhialto Exp $
bin/a68g
include/algol68g/a68g-config.h
include/algol68g/a68g.h
man/man1/a68g.1
share/doc/a68g/algol68g.pdf

10
algol68g/distinfo Normal file
View file

@ -0,0 +1,10 @@
$NetBSD: distinfo,v 1.1.1.1 2011/07/26 22:50:55 rhialto Exp $
SHA1 (algol68g-2.2.0.tgz) = 513d6faa865afa0c55b25c419cf22589b4acc9b7
RMD160 (algol68g-2.2.0.tgz) = 9bd631fa9a2b2c6dd666c275f155a0189ab0d955
Size (algol68g-2.2.0.tgz) = 506185 bytes
SHA1 (algol68g.pdf) = dd7b38bdd01c23ff9d182670010acb981af11aad
RMD160 (algol68g.pdf) = 4ee3eb251e1f876d53ce555e6ea23b45dbac8689
Size (algol68g.pdf) = 2980830 bytes
SHA1 (patch-a68g.c) = 6183cb1ba7c9d7e8880a59c6f1a749ed0db680c6
SHA1 (patch-configure.ac) = cfcd93ba1df7f6c3022dba8e281522af348b56a5

22
algol68g/options.mk Normal file
View file

@ -0,0 +1,22 @@
# $NetBSD: options.mk,v 1.1.1.1 2011/07/26 22:50:55 rhialto Exp $
PKG_OPTIONS_VAR= PKG_OPTIONS.a68g
PKG_SUPPORTED_OPTIONS= plotutils pgsql
PKG_SUGGESTED_OPTIONS= plotutils pgsql
.include "../../mk/bsd.options.mk"
.if !empty(PKG_OPTIONS:Mplotutils)
. include "../../graphics/plotutils/buildlink3.mk"
.else
CONFIGURE_ARGS+= --without-plotutils
.endif
# It seems that when including PostgreSQL support it doesn't actually
# need to have it installed at build time, just at run time.
# So maybe this DEPENDS is undesirable.
.if !empty(PKG_OPTIONS:Mpgsql)
#DEPENDS+= postgresql-[0-9]*:../../databases/postgresql90
.else
#CONFIGURE_ARGS+= --without-pgsql
.endif

View file

@ -0,0 +1,15 @@
$NetBSD: patch-a68g.c,v 1.1.1.1 2011/07/26 22:50:55 rhialto Exp $
Add NetBSD compilation support identical to FreeBSD support.
--- a68g.c.orig 2011-07-03 21:31:45.000000000 +0000
+++ a68g.c
@@ -757,7 +757,7 @@ FIXME: One day this should be all portab
/*
Compilation on Linux or FreeBSD
*/
-#if (defined HAVE_LINUX || defined HAVE_FREEBSD)
+#if (defined HAVE_LINUX || defined HAVE_FREEBSD || defined HAVE_NETBSD)
#if defined HAVE_TUNING
ASSERT (snprintf (options, SNPRINTF_SIZE, "%s %s %s -g", extra_inc, optimisation, HAVE_TUNING) >= 0);
#else

View file

@ -0,0 +1,43 @@
$NetBSD: patch-configure.ac,v 1.1.1.1 2011/07/26 22:50:55 rhialto Exp $
Add NetBSD compilation support identical to FreeBSD support.
--- configure.ac.orig 2011-07-06 21:34:24.000000000 +0000
+++ configure.ac
@@ -67,6 +67,14 @@ AC_DEFINE(HAVE_IEEE_754, 1, [Define this
a68g_ac_export=yes
;;
#
+# NetBSD.
+#
+*86-*-netbsd* | *86_64-*-netbsd*)
+AC_DEFINE(HAVE_NETBSD, 1, [Define this if NetBSD was detected])
+AC_DEFINE(HAVE_IEEE_754, 1, [Define this if IEEE_754 compliant])
+a68g_ac_export=yes
+;;
+#
# FreeBSD.
#
*86-*-freebsd* | *86_64-*-freebsd*)
@@ -98,9 +106,10 @@ esac
AC_LANG(C)
AC_PROG_CC([gcc])
-if test "x$CC" = "xgcc"; then
+#if test "x$CC" = "xgcc"; then
+if test "x$GCC" = "xyes"; then
AC_DEFINE(HAVE_GCC, 1, [Define this if GCC was detected])
- GCC="yes"
+ #GCC="yes"
CFLAGS="-g"
A68G_AC_PROG_CC_CFLAGS([-O2])
A68G_AC_PROG_CC_CFLAGS([-Wall])
@@ -331,7 +340,7 @@ AH_BOTTOM([/* Do we have a compiler? */
#undef HAVE_COMPILER
#elif ((defined HAVE_LINUX || defined HAVE_MAC_OS_X) && defined HAVE_LIBDL)
#define HAVE_COMPILER 1
-#elif defined HAVE_FREEBSD
+#elif defined HAVE_FREEBSD || defined HAVE_NETBSD
#define HAVE_COMPILER 1
#else
#undef HAVE_COMPILER