Subject: Re: pkg/28946: new package: lang/agfl
To: None <pkg-manager@netbsd.org, gnats-admin@netbsd.org,>
From: Rhialto <rhialto@azenomei.knuffel.net>
List: pkgsrc-bugs
Date: 02/14/2005 11:07:01
The following reply was made to PR pkg/28946; it has been noted by GNATS.

From: Rhialto <rhialto@azenomei.knuffel.net>
To: Alistair Crooks <agc@pkgsrc.org>
Cc: Rhialto <rhialto@azenomei.knuffel.net>, pkg-manager@NetBSD.org,
	gnats-admin@NetBSD.org, pkgsrc-bugs@NetBSD.org, gnats-bugs@NetBSD.org
Subject: Re: pkg/28946: new package: lang/agfl
Date: Mon, 14 Feb 2005 12:06:08 +0100

 After the feedback, I have updated the pkg and here I present the
 result.
 
 # This is a shell archive.  Save it in a file, remove anything before
 # this line, and then unpack it by entering "sh file".  Note, it may
 # create directories; files and directories will be owned by you and
 # have default permissions.
 #
 # This archive contains:
 #
 #	lang/agfl
 #	lang/agfl/DESCR
 #	lang/agfl/Makefile
 #	lang/agfl/PLIST
 #	lang/agfl/buildlink3.mk
 #	lang/agfl/distinfo
 #	lang/agfl/patches
 #	lang/agfl/patches/patch-aa
 #	lang/agfl/patches/patch-ab
 #	lang/agfl/patches/patch-ac
 #	lang/agfl/patches/patch-ad
 #	lang/agfl/patches/patch-ae
 #	lang/agfl/patches/patch-af
 #	lang/agfl/patches/patch-ag
 #	lang/agfl/patches/patch-ah
 #	lang/agfl/patches/patch-ai
 #	lang/agfl/patches/patch-aj
 #	lang/cdl3/buildlink3.mk
 #
 echo c - lang/agfl
 mkdir -p lang/agfl > /dev/null 2>&1
 echo x - lang/agfl/DESCR
 sed 's/^X//' >lang/agfl/DESCR << 'END-of-lang/agfl/DESCR'
 XThe AGFL formalism for the syntactic description of Natural Languages
 Xhas been developed by the Computer Science Department of the Radboud
 XUniversity of Nijmegen.  It is a formalism in which large context free
 Xgrammars can be described in a compact way. AGFLs belong to the family
 Xof two level grammars, along with attribute grammars: a first,
 Xcontext-free level is augmented with set-valued features for expressing
 Xagreement between parts of speech.
 X
 XThe AGFL parser generation system for Natural Languages generates
 Xefficient parsers from AGFL grammars. It includes a lexicon system
 Xsuitable for the large lexica needed in real-life NLP applications.
 END-of-lang/agfl/DESCR
 echo x - lang/agfl/Makefile
 sed 's/^X//' >lang/agfl/Makefile << 'END-of-lang/agfl/Makefile'
 X# $NetBSD$
 X
 XDISTNAME=	agfl-${AGFL_VERSION}
 XCATEGORIES=	lang
 XMASTER_SITES=	ftp://ftp.cs.ru.nl/pub/agfl/${AGFL_VERSION}/unix/sources/
 XDISTFILES+=	${DISTNAME}${EXTRACT_SUFX} ${DOC_FILE}
 X
 XMAINTAINER=	olafs@cs.ru.nl
 XHOMEPAGE=	http://www.cs.ru.nl/agfl/
 XCOMMENT=	Formalism for the syntactic description of Natural Languages
 X
 XDOC_FILE=	manual.ps.gz
 XSITES_${DOC_FILE}= http://www.cs.ru.nl/agfl/papers/
 X
 XDIST_SUBDIR=	agfl-${AGFL_VERSION}
 X
 XPKG_INSTALLATION_TYPES=	pkgviews overwrite
 X
 XAGFL_VERSION=	2.3
 X
 XCONFIGURE_ARGS += --with-cdl3=${BUILDLINK_PREFIX.cdl3}
 X
 X# We use ${PREFIX}/lib but also ${VIEWBASE}/lib for the rpath to have
 X# a better chance that compiled grammars keep working if you upgrade
 X# to a newer version of AGFL. It's not perfect though.
 XSUBST_CLASSES += rpath
 XSUBST_STAGE.rpath = pre-configure
 XSUBST_MESSAGE.rpath = Editing rpath ${PREFIX}/lib and ${VIEWBASE}/lib into gen
 XSUBST_FILES.rpath = gen/src/gen.c
 XSUBST_SED.rpath = "s!define RPATH.*\"\"!define RPATH \"-Wl,-R,${PREFIX}/lib -Wl,-R,${VIEWBASE}/lib \"!"
 X
 Xpost-extract:
 X	${RM} ${WRKSRC}/gen/rts/[np]mrts/*.[ch]
 X
 Xpost-install:
 X	${INSTALL_DATA_DIR} ${PREFIX}/share/doc/agfl
 X	${INSTALL_DATA} ${WRKDIR}/manual.ps ${PREFIX}/share/doc/agfl/manual.ps
 X
 XUSE_BUILDLINK3=		yes
 XUSE_GNU_TOOLS+=		make
 XUSE_LIBTOOL=		yes
 XGNU_CONFIGURE=		yes
 X
 X.include "../../devel/glib/buildlink3.mk"
 X.include "../../lang/cdl3/buildlink3.mk"
 X.include "../../mk/bsd.pkg.mk"
 END-of-lang/agfl/Makefile
 echo x - lang/agfl/PLIST
 sed 's/^X//' >lang/agfl/PLIST << 'END-of-lang/agfl/PLIST'
 X@comment $NetBSD$
 Xbin/datconvert
 Xbin/gen
 Xbin/gra2o
 Xbin/lexgen
 Xbin/mygen
 Xinclude/lexicon.h
 Xinclude/lexiconutil.h
 Xinclude/str_util.h
 Xlib/liblexicon.la
 Xlib/libnmrts.la
 Xlib/libpmrts.la
 Xman/man1/agfl.1
 Xman/man1/gen.1
 Xman/man1/gra2o.1
 Xman/man1/lexgen.1
 Xshare/doc/agfl/manual.ps
 END-of-lang/agfl/PLIST
 echo x - lang/agfl/buildlink3.mk
 sed 's/^X//' >lang/agfl/buildlink3.mk << 'END-of-lang/agfl/buildlink3.mk'
 X# $NetBSD$
 X#
 X# This buildlink file is needed because the AGFL compiler calls gcc
 X# and gcc is subject to the buildlink tricks.
 X# XXX How to add gen to the list of wrapped tools?
 X
 XBUILDLINK_DEPTH:=       ${BUILDLINK_DEPTH}+
 XAGFL_BUILDLINK3_MK:=    ${AGFL_BUILDLINK3_MK}+
 X
 X.include "../../mk/bsd.prefs.mk"
 X
 X.if !empty(BUILDLINK_DEPTH:M+)
 XBUILDLINK_DEPENDS+=     agfl
 X.endif
 X
 XBUILDLINK_PACKAGES:=    ${BUILDLINK_PACKAGES:Nagfl}
 XBUILDLINK_PACKAGES+=    agfl
 X
 X.if !empty(AGFL_BUILDLINK3_MK:M+)
 XBUILDLINK_DEPENDS.agfl+=        agfl>=2.3
 XBUILDLINK_PKGSRCDIR.agfl?=      ../../lang/agfl
 X
 X# Packages that link against shared libraries need a full dependency,
 X# and agfl-programs need the runtime library.
 XBUILDLINK_DEPMETHOD.agfl+=      full
 X.endif  # AGFL_BUILDLINK3_MK
 X
 XBUILDLINK_DEPTH:=       ${BUILDLINK_DEPTH:S/+$//}
 END-of-lang/agfl/buildlink3.mk
 echo x - lang/agfl/distinfo
 sed 's/^X//' >lang/agfl/distinfo << 'END-of-lang/agfl/distinfo'
 X$NetBSD$
 X
 XSHA1 (agfl-2.3/agfl-2.3.tar.gz) = 2d1fc5ea1259e71bdcbeb61da7b134538466a4a0
 XSize (agfl-2.3/agfl-2.3.tar.gz) = 1022438 bytes
 XSHA1 (agfl-2.3/manual.ps.gz) = 49cb5debb68c5fc9f4bc605570ef5d9ba691ab44
 XSize (agfl-2.3/manual.ps.gz) = 275360 bytes
 XSHA1 (patch-aa) = 4a266fadf7265f81defc2f3729ab9b4541328b0b
 XSHA1 (patch-ab) = c4a7697190525b3dfeb5f9d58488cf675e01b512
 XSHA1 (patch-ac) = cb8cae29953280efc30d7fcc3dfb542fccb5bcf9
 XSHA1 (patch-ad) = b554f34c9703d0cd2c54592eb40c4438d3ef44e9
 XSHA1 (patch-ae) = 30fd905772361e6075943c07bb6abf195d5dd5af
 XSHA1 (patch-af) = de1579b5b0e3e404740210d8000edad617956317
 XSHA1 (patch-ag) = 73ad08ce34aecdec106a574893107b07a022ea62
 XSHA1 (patch-ah) = 2ef3c7594dff4b48dfceb0938a62464a6ee25980
 XSHA1 (patch-ai) = 730257b437f063868f15f73378ebcfa258a56556
 XSHA1 (patch-aj) = 42e46e0786dc27a73c11cb2e721426c2d358c712
 END-of-lang/agfl/distinfo
 echo c - lang/agfl/patches
 mkdir -p lang/agfl/patches > /dev/null 2>&1
 echo x - lang/agfl/patches/patch-aa
 sed 's/^X//' >lang/agfl/patches/patch-aa << 'END-of-lang/agfl/patches/patch-aa'
 X$NetBSD$
 X
 XAdd system detection.
 X
 X--- configure.dist	2003-10-28 17:48:54.000000000 +0100
 X+++ configure	2005-01-05 18:09:46.000000000 +0100
 X@@ -4245,6 +4245,14 @@
 X 
 X echo 'Checking which machdep to use...'
 X MACHDEPHOSTVAL=""
 X+if test "`uname -m`" = "alpha"; then
 X+  if test `uname -s` = "NetBSD" ; then
 X+    MACHDEPHOSTVAL=machdep.alpha-netbsd
 X+  fi
 X+  if test "X$MACHDEPHOSTVAL" = "X" ; then
 X+    echo '-- Unsupported OS on Alpha architecture'
 X+  fi
 X+fi
 X if test "`uname -m`" = "sun4u" -o "`uname -m`" = "sun4m" -o "`uname -m`" = "sparc"; then
 X   if test `uname -s` = "SunOS" ; then
 X     MACHDEPHOSTVAL=machdep.sparc-solaris
 X@@ -4266,6 +4274,9 @@
 X   if test "`uname -s`" = 'dos' ; then
 X     MACHDEPHOSTVAL=machdep.dos
 X   fi
 X+  if test "`uname -s`" = 'NetBSD'; then
 X+    MACHDEPHOSTVAL=machdep.i386-netbsd
 X+  fi
 X   if test "`uname -s`" = 'FreeBSD'; then
 X     MACHDEPHOSTVAL=machdep.i386-freebsd
 X   fi
 END-of-lang/agfl/patches/patch-aa
 echo x - lang/agfl/patches/patch-ab
 sed 's/^X//' >lang/agfl/patches/patch-ab << 'END-of-lang/agfl/patches/patch-ab'
 X$NetBSD$
 X
 XA "negative" unsigned value is not a good idea.
 X
 X--- gen/rts/posmemo.c.dist	2003-07-22 15:32:07.000000000 +0200
 X+++ gen/rts/posmemo.c	2005-01-05 23:16:03.000000000 +0100
 X@@ -447,7 +447,7 @@
 X     };
 X     /* copy sons by copying PMPROD entries from frame */
 X     for(i = 0;i < nr_sons;i++) {
 X-	VALUE son = variables[-(nr_formals+nr_locals+i)];
 X+	VALUE son = variables[-(long)(nr_formals+nr_locals+i)];
 X 	if (pointsIntoStack((VALUE *)(son.text_par)))
 X 	    /* copy the PMPROD entry */
 X 	    new_memo->variables[nr_formals+nr_locals+i] = 
 END-of-lang/agfl/patches/patch-ab
 echo x - lang/agfl/patches/patch-ac
 sed 's/^X//' >lang/agfl/patches/patch-ac << 'END-of-lang/agfl/patches/patch-ac'
 X$NetBSD$
 X
 XA "negative" unsigned value is not a good idea.
 X
 X--- gen/rts/rtsagfl.c.orig	2003-08-15 22:04:43.000000000 +0200
 X+++ gen/rts/rtsagfl.c	2005-01-06 11:02:11.000000000 +0100
 X@@ -278,7 +278,7 @@
 X #endif /* DEBUG_NEGMEMO */
 X 
 X /*#define DEBUG_POSMEMO*/
 X-#ifdef DEBUG_POSMEMO
 X+#if defined(PMRTS) && defined(DEBUG_POSMEMO)
 X     if (pos_memo_option) {
 X         posmemo_dump_table(trellis);
 X     }
 X@@ -367,11 +367,11 @@
 X 
 X #define NR_FORMALS      (fp[NR_FORMALS_OFF].arg)
 X #define NR_LOCALS       (fp[NR_LOCALS_OFF].arg)
 X-#define VARIABLE(nr)    (fp[- (VAR_OFFSET + nr)])
 X+#define VARIABLE(nr)    (fp[-(long)(VAR_OFFSET + (nr))])
 X 
 X #define NR_SONS         (fp[NR_SONS_OFF].arg)
 X #define NONT_NR         (fp[NONT_NR_OFF].arg)
 X-#define SON_FP(nr)      (fp[-(VAR_OFFSET + NR_FORMALS + NR_LOCALS + nr)].data)
 X+#define SON_FP(nr)      (fp[-(long)(VAR_OFFSET + NR_FORMALS + NR_LOCALS + (nr))].data)
 X 
 X #define START_INPUT_STATE (fp[ISTATE].input_state)
 X 
 X@@ -2186,7 +2186,7 @@
 X                                                           trellis);
 X #ifdef TRACE_MATCH
 X                 fprintf(stderr, "new state = %p pos=%u\n",
 X-                                      i_state, STATE_POS(i_state));
 X+			    i_state, i_state ? STATE_POS(i_state) : -1);
 X 
 X #endif /* TRACE_MATCH */
 X 
 END-of-lang/agfl/patches/patch-ac
 echo x - lang/agfl/patches/patch-ad
 sed 's/^X//' >lang/agfl/patches/patch-ad << 'END-of-lang/agfl/patches/patch-ad'
 X$NetBSD$
 X
 XAn apparent typo.
 X
 X--- gen/rts/rtslex.h.dist	2003-07-20 15:28:52.000000000 +0200
 X+++ gen/rts/rtslex.h	2005-01-05 20:52:10.000000000 +0100
 X@@ -328,7 +328,7 @@
 X typedef Position StateIndicator;
 X #  define STATE_POS(ind)	(ind)
 X #  define STATE_MEMOS(trel,ind)	(trel->states_row[ind]->neg_memos)
 X-#  define SET_FIRST_POS(trel,pos)  trellis->first_pos = pos
 X+#  define SET_FIRST_POS(trel,pos)  trel->first_pos = pos
 X #  define GET_FIRST_STATE_INDICATOR(trel)  (trel->first_pos)
 X #  define GET_FIRST_STATE_PTR(trel)	   (trel->states_row[trel->first_pos])
 X #else
 END-of-lang/agfl/patches/patch-ad
 echo x - lang/agfl/patches/patch-ae
 sed 's/^X//' >lang/agfl/patches/patch-ae << 'END-of-lang/agfl/patches/patch-ae'
 X$NetBSD$
 X
 XAvoid double definitions.
 X
 X--- gen/src/pattern.c.dist	2001-10-17 11:30:15.000000000 +0200
 X+++ gen/src/pattern.c	2005-01-05 18:02:07.000000000 +0100
 X@@ -82,7 +82,6 @@
 X #endif /* RTS */
 X 
 X #include "regex.h"
 X-#include "regex.c"
 X 
 X 
 X RegExp*
 END-of-lang/agfl/patches/patch-ae
 echo x - lang/agfl/patches/patch-af
 sed 's/^X//' >lang/agfl/patches/patch-af << 'END-of-lang/agfl/patches/patch-af'
 X$NetBSD$
 X
 XPatch in RPATH; it will be edited again from make post-patch.
 Xmygen.c depends on and is made from gen.c
 X
 X--- gen/src/gen.c.dist	2003-10-30 15:26:52.000000000 +0100
 X+++ gen/src/gen.c	2005-01-05 21:01:30.000000000 +0100
 X@@ -505,15 +505,18 @@
 X #define GENBIN		DIR_SEP "bin"
 X #define GENLIB		DIR_SEP "lib"
 X #define GENINCLUDE	DIR_SEP "include"
 X+#ifndef RPATH
 X+#define RPATH		""
 X+#endif
 X 
 X #define LEXGEN		GENBIN DIR_SEP "lexgen" EXE
 X #define AGFL		GENBIN DIR_SEP "gra2o" EXE
 X #define LIBNMRTS	GENLIB DIR_SEP "libnmrts.a"
 X-#define LINKNMRTS       "-lnmrts"
 X+#define LINKNMRTS       RPATH "-lnmrts"
 X #define LIBPMRTS	GENLIB DIR_SEP "libpmrts.a"
 X-#define LINKPMRTS       "-lpmrts"
 X+#define LINKPMRTS       RPATH "-lpmrts"
 X #define LIBRTSLOG	GENLIB DIR_SEP "librtslog.a"
 X-#define LINKGENRTS      "-lgenrts"
 X+#define LINKGENRTS      RPATH "-lgenrts"
 X #define LIBGENRTS       GENLIB DIR_SEP "libgenrts.a"
 X #define LINKDEBUGRTS    "-ldebugrts -lpthread -lgtk -lgdk -lgthread"
 X #define LIBDEBUGRTS     GENLIB DIR_SEP "libdebugrts.a"
 END-of-lang/agfl/patches/patch-af
 echo x - lang/agfl/patches/patch-ag
 sed 's/^X//' >lang/agfl/patches/patch-ag << 'END-of-lang/agfl/patches/patch-ag'
 X$NetBSD$
 X
 XMachdep file for NetBSD/alpha
 X
 X--- /dev/null	2005-01-05 18:16:07.000000000 +0100
 X+++ gen/src/machdep.alpha-netbsd	2005-01-05 18:14:54.000000000 +0100
 X@@ -0,0 +1,30 @@
 X+/* machdep.alpha-netbsd -- NetBSD/alpha specific part of machdep.h 
 X+ *
 X+ * Copyright 2005, Rhialto.
 X+ *
 X+ * This program is free software; you can redistribute it and/or modify
 X+ * it under the terms of the GNU General Public License as published by
 X+ * the Free Software Foundation; either version 2 of the License, or
 X+ * (at your option) any later version.
 X+ *
 X+ * This program is distributed in the hope that it will be useful,
 X+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
 X+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 X+ * GNU Library General Public License for more details.
 X+ *
 X+ * You should have received a copy of the GNU Library General Public License
 X+ * along with this program; if not, write to the Free Software
 X+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 X+ */
 X+
 X+/* From Id: machdep.i386-freebsd,v 1.1 2001/10/17 12:47:00 ejv Exp */
 X+
 X+#define LONG_MAX				0x7fffffffffffffff
 X+#define GLOBAL(name)				.globl	name
 X+#define	LONG(nr)				.quad	nr
 X+#define BYTE(nr)				.byte	nr
 X+#define	TEXT(string)				.asciz	string
 X+#define ALIGN					.align	8
 X+#define	STARTCODE				.data 
 X+#define	ENDCODE					.quad	0
 X+#define	INSTR					.quad
 END-of-lang/agfl/patches/patch-ag
 echo x - lang/agfl/patches/patch-ah
 sed 's/^X//' >lang/agfl/patches/patch-ah << 'END-of-lang/agfl/patches/patch-ah'
 X$NetBSD$
 X
 XMachdep file for NetBSD/i386
 X
 X--- /dev/null 2005-01-05 18:16:13.000000000 +0100
 X+++ gen/src/machdep.i386-netbsd	2005-01-05 18:13:34.000000000 +0100
 X@@ -0,0 +1,30 @@
 X+/* machdep.i386-netbsd -- NetBSD/i386 specific part of machdep.h 
 X+ *
 X+ * Copyright 2001, KUN.
 X+ *
 X+ * This program is free software; you can redistribute it and/or modify
 X+ * it under the terms of the GNU General Public License as published by
 X+ * the Free Software Foundation; either version 2 of the License, or
 X+ * (at your option) any later version.
 X+ *
 X+ * This program is distributed in the hope that it will be useful,
 X+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
 X+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 X+ * GNU Library General Public License for more details.
 X+ *
 X+ * You should have received a copy of the GNU Library General Public License
 X+ * along with this program; if not, write to the Free Software
 X+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 X+ */
 X+
 X+/* From Id: machdep.i386-freebsd,v 1.1 2001/10/17 12:47:00 ejv Exp */
 X+
 X+#define LONG_MAX				2147483647
 X+#define GLOBAL(name)				.globl	name
 X+#define	LONG(nr)				.long	nr
 X+#define BYTE(nr)				.byte	nr
 X+#define	TEXT(string)				.asciz	string
 X+#define ALIGN					.align	8
 X+#define	STARTCODE				.data 
 X+#define	ENDCODE					.long	0
 X+#define	INSTR					.long
 END-of-lang/agfl/patches/patch-ah
 echo x - lang/agfl/patches/patch-ai
 sed 's/^X//' >lang/agfl/patches/patch-ai << 'END-of-lang/agfl/patches/patch-ai'
 X$NetBSD$
 X
 XAvoid a warning, potential error.
 X
 X--- lexgen/src/insout.h.dist	2003-11-08 12:24:43.000000000 +0100
 X+++ lexgen/src/insout.h	2005-01-05 18:37:42.000000000 +0100
 X@@ -139,7 +139,7 @@
 X template<class T, class Iterator> inline const InsOutNode<T>*
 X InsOutTable<T, Iterator>::enter(const T& elem, const InsOutNode<T>* next)
 X {
 X-    pair<InsOutTable::iterator, bool> p = insert(InsOutNode<T>(elem, next));
 X+    pair<typename InsOutTable::iterator, bool> p = insert(InsOutNode<T>(elem, next));
 X 
 X     nr_requested++;
 X 
 X@@ -152,7 +152,7 @@
 X     const InsOutNode<T>* next = 0;
 X 
 X     while (first < last) {
 X-        pair<InsOutTable::iterator, bool> p = insert(InsOutNode<T>(*--last, next));
 X+        pair<typename InsOutTable::iterator, bool> p = insert(InsOutNode<T>(*--last, next));
 X 
 X         nr_requested++;
 END-of-lang/agfl/patches/patch-ai
 echo x - lang/agfl/patches/patch-aj
 sed 's/^X//' >lang/agfl/patches/patch-aj << 'END-of-lang/agfl/patches/patch-aj'
 X$NetBSD$
 X
 XMake one of the examples actually work.
 X
 X--- gen/test/verb.gra.dist	2000-08-25 12:54:11.000000000 +0200
 X+++ gen/test/verb.gra	2005-01-05 20:26:08.000000000 +0100
 X@@ -1,3 +1,5 @@
 X+GRAMMAR verb.
 X+
 X ROOT sentence.
 X 
 X PERSON :: first | second | third.
 END-of-lang/agfl/patches/patch-aj
 echo x - lang/cdl3/buildlink3.mk
 sed 's/^X//' >lang/cdl3/buildlink3.mk << 'END-of-lang/cdl3/buildlink3.mk'
 X# $NetBSD$
 X#
 X# This buildlink file is needed because the CDL3 compiler calls gcc
 X# and gcc is subject to the buildlink tricks.
 X# In case of a call cdlc -L /usr/pkg/include/ general.k3,
 X# predef.k3 is read from /usr/pkg/include/ .
 X# XXX How to add cdlc to the list of wrapped tools?
 X
 XBUILDLINK_DEPTH:=       ${BUILDLINK_DEPTH}+
 XCDL3_BUILDLINK3_MK:=    ${CDL3_BUILDLINK3_MK}+
 X
 X.include "../../mk/bsd.prefs.mk"
 X
 X.if !empty(BUILDLINK_DEPTH:M+)
 XBUILDLINK_DEPENDS+=     cdl3
 X.endif
 X
 XBUILDLINK_PACKAGES:=    ${BUILDLINK_PACKAGES:Ncdl3}
 XBUILDLINK_PACKAGES+=    cdl3
 X
 X.if !empty(CDL3_BUILDLINK3_MK:M+)
 XBUILDLINK_DEPENDS.cdl3+=        cdl3>=1.2.5
 XBUILDLINK_PKGSRCDIR.cdl3?=      ../../lang/cdl3
 X
 X# Packages that link against shared libraries need a full dependency,
 X# and cdl3-programs need the runtime library.
 XBUILDLINK_DEPMETHOD.cdl3+=      full
 X.endif  # CDL3_BUILDLINK3_MK
 X
 XBUILDLINK_DEPTH:=       ${BUILDLINK_DEPTH:S/+$//}
 END-of-lang/cdl3/buildlink3.mk
 exit
 
 -Olaf.
 -- 
 ___ Olaf 'Rhialto' Seibert                            --  rhialto/at/falu.nl
 \X/ Hi! I'm a signature virus! Copy me to your .signature to help me spread!