ports/75286: [patch] add master/slave port Makevars to bsd.port.mk
Mark Linimon
linimon at FreeBSD.org
Mon Dec 20 05:50:22 UTC 2004
>Number: 75286
>Category: ports
>Synopsis: [patch] add master/slave port Makevars to bsd.port.mk
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Mon Dec 20 05:50:21 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator: Mark Linimon
>Release: FreeBSD 4.10-STABLE i386
>Organization:
FreeBSD
>Environment:
System: FreeBSD freefall.freebsd.org 4.10-STABLE FreeBSD 4.10-STABLE #14: Sun Nov 21 01:22:46 GMT 2004 kensmith at freefall.freebsd.org:/c/src/sys/compile/FREEFALL i386
>Description:
It is not currently possible to quickly find out if any given port
is a master or slave port. Both FreshPorts and portsmon need this
information to quickly update their port metadata when a change
is committed to CVS. (It is infeasible to use 'make index' for
this purpose since it can take tens of minutes; it is undesirable
to wait for the daily index build before doing the updates, as
the databases quickly become stale.
The following patch introduces two new Makevars, IS_SLAVE_PORT
and MASTERPORT, to fill this purpose, which can quickly be
queried with 'make -V'. In all but a few cases these defaults
are accurate. However, for a few ports with very problematic
Makefiles, patches are needed to set these variables. (Some
of the various port Makefile that were at one time problematic
with this patch have over the last few months been reworked to
be "proper" master/slave ports in accordance with the suggestions
of "best practices" in the Porter's Handbook.)
There are probably a few pathological cases that this technology
will not correctly detect; this is a tradeoff done for performance.
(The alternative would be to keep a tree-structured parsing of
all port Makefiles up-to-date -- this would have the advantage
of always being exactly correct, but at a cost of much added
complexity. In practice, a careful examination of the state
of the various Makefile .include statements suggest that such
cases are quite rare -- and arguably, shouldn't be allowed in
the Ports Collection in any case.)
Further, it should be noted that the results from these
variables is only used as "advisory" information -- i.e. not
to actually update installed ports or the CVS repository itself,
so the tradeoff of performance vs. complexity is probably a
good one.
Finally, both FreshPorts and portsmon have been running with
the bsd.port.mk patch for a number of months without any
problems. A regression test on the lonesome.com machines
shows that a recursive evaluation of these variables throughout
the entire ports collection produces the expected results.
A note on performance measurements:
Here is how much extra time is added to 'make index' with the bsd.port.mk
changes:
Without change:
1977.10 real 1295.92 user 652.95 sys
With changes:
1991.24 real 1308.68 user 656.84 sys
As measured on quatloo on 12/12/2004 (12061 ports). ~1msec/port; not
quite 1%.
CPU: Intel(R) Pentium(R) 4 CPU 1500MHz (1495.16-MHz 686-class CPU)
real memory = 536870912 (512 MB)
avail memory = 515706880 (491 MB)
>How-To-Repeat:
(n/a)
>Fix:
Index: Mk/bsd.port.mk
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/Mk/bsd.port.mk,v
retrieving revision 1.501
diff -u -r1.501 bsd.port.mk
--- Mk/bsd.port.mk 9 Dec 2004 21:44:48 -0000 1.501
+++ Mk/bsd.port.mk 20 Dec 2004 00:41:35 -0000
@@ -1006,6 +1006,16 @@
MASTERDIR?= ${.CURDIR}
+# Try to determine if we are a slave port. These variables are used by
+# FreshPorts and portsmon, but not yet by the ports framework itself.
+.if ${MASTERDIR} != ${.CURDIR}
+IS_SLAVE_PORT?= yes
+MASTERPORT?= ${MASTERDIR:C/[^\/]+\/\.\.\///:C/[^\/]+\/\.\.\///:C/^.*\/([^\/]+\/[^\/]+)$/\\1/}
+.else
+IS_SLAVE_PORT?= no
+MASTERPORT?=
+.endif
+
# If they exist, include Makefile.inc, then architecture/operating
# system specific Makefiles, then local Makefile.local.
Index: chinese/xemacs21/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/chinese/xemacs21/Makefile,v
retrieving revision 1.10
diff -u -r1.10 Makefile
--- chinese/xemacs21/Makefile 15 Nov 2003 10:29:35 -0000 1.10
+++ chinese/xemacs21/Makefile 11 Jun 2004 03:55:10 -0000
@@ -20,6 +20,9 @@
# xemacs21-mule-common needs this.
WRKDIR= ${WRKDIRPREFIX}${.CURDIR}/../../editors/xemacs21-mule/work
+IS_SLAVE_PORT= yes
+MASTERPORT= editors/xemacs21-mule
+
post-install::
@${MKDIR} ${PREFIX}/lib/xemacs-${XEMACS_VER}/etc/app-defaults/zh_TW.Big5
@${INSTALL_DATA} ${.CURDIR}/../xemacs/files/Emacs ${PREFIX}/lib/xemacs-${XEMACS_VER}/etc/app-defaults/zh_TW.Big5
Index: databases/db42/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/db42/Makefile,v
retrieving revision 1.61
diff -u -r1.61 Makefile
--- databases/db42/Makefile 26 Jun 2004 11:13:16 -0000 1.61
+++ databases/db42/Makefile 5 Jul 2004 23:55:26 -0000
@@ -18,6 +18,8 @@
MASTERDIR?= ${.CURDIR}
+IS_SLAVE_PORT= FALSE
+
.include <${MASTERDIR}/Makefile.db>
.include <bsd.port.pre.mk>
Index: databases/p5-postgresql-plperl/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/p5-postgresql-plperl/Makefile,v
retrieving revision 1.14
diff -u -r1.14 Makefile
--- databases/p5-postgresql-plperl/Makefile 6 Dec 2004 03:59:43 -0000 1.14
+++ databases/p5-postgresql-plperl/Makefile 17 Dec 2004 06:15:00 -0000
@@ -17,6 +17,9 @@
POSTGRESQL_SUBPORT=YES
.include "../../${POSTGRESQL_PORT}/Makefile"
+IS_SLAVE_PORT= yes
+MASTERPORT= ${POSTGRESQL_PORT}
+
RUN_DEPENDS= postgres:${PORTSDIR}/${POSTGRESQL_PORT}
USE_PERL5= yes
Index: databases/postgresql-contrib/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/postgresql-contrib/Makefile,v
retrieving revision 1.7
diff -u -r1.7 Makefile
--- databases/postgresql-contrib/Makefile 6 Dec 2004 03:59:47 -0000 1.7
+++ databases/postgresql-contrib/Makefile 17 Dec 2004 06:15:01 -0000
@@ -18,6 +18,9 @@
POSTGRESQL_SUBPORT=YES
.include <${.CURDIR}/../../${POSTGRESQL_PORT}/Makefile>
+IS_SLAVE_PORT= yes
+MASTERPORT= ${POSTGRESQL_PORT}
+
INSTALLS_SHLIB= yes
USE_BISON= yes
Index: databases/postgresql-docs/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/postgresql-docs/Makefile,v
retrieving revision 1.10
diff -u -r1.10 Makefile
--- databases/postgresql-docs/Makefile 6 Dec 2004 03:59:49 -0000 1.10
+++ databases/postgresql-docs/Makefile 17 Dec 2004 06:15:02 -0000
@@ -19,6 +19,9 @@
.undef GNU_CONFIGURE
NO_BUILD= YES
+IS_SLAVE_PORT= yes
+MASTERPORT= ${POSTGRESQL_PORT}
+
do-install:
@ $(MKDIR) ${DOCSDIR}/html; \
${GZIP_CMD} -dc ${WRKSRC}/doc/postgres.tar.gz | \
Index: databases/postgresql-jdbc/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/postgresql-jdbc/Makefile,v
retrieving revision 1.14
diff -u -r1.14 Makefile
--- databases/postgresql-jdbc/Makefile 6 Dec 2004 03:59:49 -0000 1.14
+++ databases/postgresql-jdbc/Makefile 17 Dec 2004 06:15:02 -0000
@@ -18,6 +18,9 @@
POSTGRESQL_SUBPORT=YES
.include <${.CURDIR}/../../${POSTGRESQL_PORT}/Makefile>
+IS_SLAVE_PORT= yes
+MASTERPORT= ${POSTGRESQL_PORT}
+
CONFIGURE_ARGS= --with-java
USE_JAVA= 1.1+
Index: databases/postgresql-pltcl/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/postgresql-pltcl/Makefile,v
retrieving revision 1.13
diff -u -r1.13 Makefile
--- databases/postgresql-pltcl/Makefile 6 Dec 2004 03:59:49 -0000 1.13
+++ databases/postgresql-pltcl/Makefile 17 Dec 2004 06:15:03 -0000
@@ -16,6 +16,9 @@
POSTGRESQL_SUBPORT=YES
.include "../../${POSTGRESQL_PORT}/Makefile"
+IS_SLAVE_PORT= yes
+MASTERPORT= ${POSTGRESQL_PORT}
+
LIB_DEPENDS= tcl${TCLVERSION:S/.//}:${PORTSDIR}/lang/tcl${TCLVERSION:S/.//}
RUN_DEPENDS= postgres:${PORTSDIR}/${POSTGRESQL_PORT}
Index: databases/postgresql-tcltk/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/postgresql-tcltk/Makefile,v
retrieving revision 1.14
diff -u -r1.14 Makefile
--- databases/postgresql-tcltk/Makefile 6 Dec 2004 03:59:50 -0000 1.14
+++ databases/postgresql-tcltk/Makefile 17 Dec 2004 06:15:03 -0000
@@ -16,6 +16,9 @@
POSTGRESQL_SUBPORT=YES
.include <${.CURDIR}/../../${POSTGRESQL_PORT}/Makefile>
+IS_SLAVE_PORT= yes
+MASTERPORT= ${POSTGRESQL_PORT}
+
LIB_DEPENDS= tcl${TCLVERSION:S/.//}:${PORTSDIR}/lang/tcl${TCLVERSION:S/.//} \
pq:${PORTSDIR}/${POSTGRESQL_PORT}
Index: databases/ruby-dbd_interbase/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/ruby-dbd_interbase/Makefile,v
retrieving revision 1.3
diff -u -r1.3 Makefile
--- databases/ruby-dbd_interbase/Makefile 18 Feb 2003 04:37:37 -0000 1.3
+++ databases/ruby-dbd_interbase/Makefile 14 Jun 2004 06:41:41 -0000
@@ -23,6 +23,9 @@
USE_RUBY= yes
USE_RUBY_SETUP= yes
+IS_SLAVE_PORT= yes
+MASTERPORT= databases/ruby-dbi
+
WRKSRC= ${RUBY_DBI_WRKSRC}
CONFIGURE_ARGS= --with=lib/${PORTNAME}
Index: databases/ruby-dbd_msql/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/ruby-dbd_msql/Makefile,v
retrieving revision 1.3
diff -u -r1.3 Makefile
--- databases/ruby-dbd_msql/Makefile 18 Feb 2003 04:37:37 -0000 1.3
+++ databases/ruby-dbd_msql/Makefile 14 Jun 2004 06:41:15 -0000
@@ -23,6 +23,9 @@
USE_RUBY= yes
USE_RUBY_SETUP= yes
+IS_SLAVE_PORT= yes
+MASTERPORT= databases/ruby-dbi
+
WRKSRC= ${RUBY_DBI_WRKSRC}
CONFIGURE_ARGS= --with=lib/${PORTNAME}
Index: databases/ruby-dbd_mysql/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/ruby-dbd_mysql/Makefile,v
retrieving revision 1.6
diff -u -r1.6 Makefile
--- databases/ruby-dbd_mysql/Makefile 18 Feb 2003 04:37:37 -0000 1.6
+++ databases/ruby-dbd_mysql/Makefile 14 Jun 2004 06:40:36 -0000
@@ -23,6 +23,9 @@
USE_RUBY= yes
USE_RUBY_SETUP= yes
+IS_SLAVE_PORT= yes
+MASTERPORT= databases/ruby-dbi
+
WRKSRC= ${RUBY_DBI_WRKSRC}
CONFIGURE_ARGS= --with=lib/${PORTNAME}
Index: databases/ruby-dbd_odbc/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/ruby-dbd_odbc/Makefile,v
retrieving revision 1.3
diff -u -r1.3 Makefile
--- databases/ruby-dbd_odbc/Makefile 18 Feb 2003 04:37:37 -0000 1.3
+++ databases/ruby-dbd_odbc/Makefile 14 Jun 2004 06:40:15 -0000
@@ -23,6 +23,9 @@
USE_RUBY= yes
USE_RUBY_SETUP= yes
+IS_SLAVE_PORT= yes
+MASTERPORT= databases/ruby-dbi
+
WRKSRC= ${RUBY_DBI_WRKSRC}
CONFIGURE_ARGS= --with=lib/${PORTNAME}
Index: databases/ruby-dbd_pg/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/ruby-dbd_pg/Makefile,v
retrieving revision 1.5
diff -u -r1.5 Makefile
--- databases/ruby-dbd_pg/Makefile 4 Feb 2004 05:19:08 -0000 1.5
+++ databases/ruby-dbd_pg/Makefile 14 Jun 2004 06:39:48 -0000
@@ -24,6 +24,9 @@
USE_RUBY= yes
USE_RUBY_SETUP= yes
+IS_SLAVE_PORT= yes
+MASTERPORT= databases/ruby-dbi
+
WRKSRC= ${RUBY_DBI_WRKSRC}
CONFIGURE_ARGS= --with=lib/${PORTNAME}
Index: databases/ruby-dbd_proxy/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/ruby-dbd_proxy/Makefile,v
retrieving revision 1.5
diff -u -r1.5 Makefile
--- databases/ruby-dbd_proxy/Makefile 31 Oct 2003 18:52:19 -0000 1.5
+++ databases/ruby-dbd_proxy/Makefile 14 Jun 2004 06:39:18 -0000
@@ -23,6 +23,9 @@
USE_RUBY_FEATURES= drb
USE_RUBY_SETUP= yes
+IS_SLAVE_PORT= yes
+MASTERPORT= databases/ruby-dbi
+
WRKSRC= ${RUBY_DBI_WRKSRC}
CONFIGURE_ARGS= --with=bin/proxyserver,lib/${PORTNAME}
Index: databases/ruby-dbd_sqlite/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/ruby-dbd_sqlite/Makefile,v
retrieving revision 1.7
diff -u -r1.7 Makefile
--- databases/ruby-dbd_sqlite/Makefile 18 Feb 2003 04:37:38 -0000 1.7
+++ databases/ruby-dbd_sqlite/Makefile 14 Jun 2004 06:38:43 -0000
@@ -23,6 +23,9 @@
USE_RUBY= yes
USE_RUBY_SETUP= yes
+IS_SLAVE_PORT= yes
+MASTERPORT= databases/ruby-dbi
+
WRKSRC= ${RUBY_DBI_WRKSRC}
CONFIGURE_ARGS= --with=ext/${PORTNAME}
Index: databases/ruby-dbd_sqlrelay/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/databases/ruby-dbd_sqlrelay/Makefile,v
retrieving revision 1.5
diff -u -r1.5 Makefile
--- databases/ruby-dbd_sqlrelay/Makefile 4 Feb 2004 05:19:08 -0000 1.5
+++ databases/ruby-dbd_sqlrelay/Makefile 14 Jun 2004 06:38:21 -0000
@@ -24,6 +24,9 @@
USE_RUBY= yes
USE_RUBY_SETUP= yes
+IS_SLAVE_PORT= yes
+MASTERPORT= databases/ruby-dbi
+
WRKSRC= ${RUBY_DBI_WRKSRC}
CONFIGURE_ARGS= --with=lib/${PORTNAME}
Index: german/linux-eagle/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/german/linux-eagle/Makefile,v
retrieving revision 1.10
diff -u -r1.10 Makefile
--- german/linux-eagle/Makefile 13 Dec 2004 10:16:37 -0000 1.10
+++ german/linux-eagle/Makefile 17 Dec 2004 06:18:20 -0000
@@ -14,4 +14,7 @@
CONFLICTS= linux-eagle-*
+IS_SLAVE_PORT= yes
+MASTERPORT= cad/linux-eagle
+
.include "../../cad/linux-eagle/Makefile"
Index: graphics/ruby-gdk_imlib/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/graphics/ruby-gdk_imlib/Makefile,v
retrieving revision 1.10
diff -u -r1.10 Makefile
--- graphics/ruby-gdk_imlib/Makefile 4 Feb 2004 05:21:05 -0000 1.10
+++ graphics/ruby-gdk_imlib/Makefile 14 Jun 2004 06:37:33 -0000
@@ -25,6 +25,9 @@
USE_XLIB= yes
USE_GNOME= imlib
+IS_SLAVE_PORT= yes
+MASTERPORT= x11/ruby-gnome
+
.include "${.CURDIR}/../../x11/ruby-gnome/Makefile.common"
WRKSRC= ${RUBY_GNOME_WRKSRC}/${PORTNAME}
Index: graphics/ruby-gdk_pixbuf/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/graphics/ruby-gdk_pixbuf/Makefile,v
retrieving revision 1.11
diff -u -r1.11 Makefile
--- graphics/ruby-gdk_pixbuf/Makefile 4 Feb 2004 05:21:05 -0000 1.11
+++ graphics/ruby-gdk_pixbuf/Makefile 14 Jun 2004 06:43:00 -0000
@@ -25,6 +25,9 @@
USE_XLIB= yes
USE_GNOME= glib12 libcapplet gdkpixbuf
+IS_SLAVE_PORT= yes
+MASTERPORT= x11/ruby-gnome
+
.include "${.CURDIR}/../../x11/ruby-gnome/Makefile.common"
WRKSRC= ${RUBY_GNOME_WRKSRC}/${PORTNAME}
Index: graphics/ruby-gnomecanvas2/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/graphics/ruby-gnomecanvas2/Makefile,v
retrieving revision 1.14
diff -u -r1.14 Makefile
--- graphics/ruby-gnomecanvas2/Makefile 15 Nov 2004 06:18:33 -0000 1.14
+++ graphics/ruby-gnomecanvas2/Makefile 27 Nov 2004 10:00:26 -0000
@@ -25,6 +25,9 @@
USE_GNOME= libgnomecanvas
USE_RUBY_EXTCONF= yes
+IS_SLAVE_PORT= yes
+MASTERPORT= x11/ruby-gnome
+
.include "${.CURDIR}/../../x11/ruby-gnome2/Makefile.common"
WRKSRC= ${RUBY_GNOME_WRKSRC}/gnomecanvas
Index: graphics/ruby-libart/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/graphics/ruby-libart/Makefile,v
retrieving revision 1.4
diff -u -r1.4 Makefile
--- graphics/ruby-libart/Makefile 18 Feb 2003 11:13:56 -0000 1.4
+++ graphics/ruby-libart/Makefile 14 Jun 2004 06:54:03 -0000
@@ -24,6 +24,9 @@
USE_RUBY= yes
USE_RUBY_EXTCONF= yes
+IS_SLAVE_PORT= yes
+MASTERPORT= x11/ruby-gnome
+
.include "${.CURDIR}/../../x11/ruby-gnome/Makefile.common"
WRKSRC= ${RUBY_GNOME_WRKSRC}/${PORTNAME}
Index: mail/qmail-ldap/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/mail/qmail-ldap/Makefile,v
retrieving revision 1.33
diff -u -r1.33 Makefile
--- mail/qmail-ldap/Makefile 13 Apr 2004 23:26:09 -0000 1.33
+++ mail/qmail-ldap/Makefile 6 Jun 2004 20:30:13 -0000
@@ -49,6 +49,9 @@
QMAIL_PORT_PREFIX!= cd ${QMAIL_PORT} && ${MAKE} -V PREFIX
QMAIL_PORT_PATCHDIR!= cd ${QMAIL_PORT} && ${MAKE} -V PATCHDIR
+IS_SLAVE_PORT= yes
+MASTERPORT= mail/qmail
+
DOCFILES+= ${WRKSRC}/QLDAPINSTALL ${WRKSRC}/QLDAPNEWS \
${WRKSRC}/POPBEFORESMTP \
${WRKSRC}/QLDAPTODO ${WRKSRC}/QLDAPPICTURE
Index: mail/qmail-mysql/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/mail/qmail-mysql/Makefile,v
retrieving revision 1.11
diff -u -r1.11 Makefile
--- mail/qmail-mysql/Makefile 7 Mar 2004 21:08:27 -0000 1.11
+++ mail/qmail-mysql/Makefile 6 Jun 2004 20:30:36 -0000
@@ -36,6 +36,9 @@
QMAIL_PORT= ${.CURDIR}/../qmail
QMAIL_PORT_PREFIX!= cd ${QMAIL_PORT} && ${MAKE} -V PREFIX
+IS_SLAVE_PORT= yes
+MASTERPORT= mail/qmail
+
# Yet anther ugly hack (works due to code inside the main qmail port)
slaveport-post-patch: qmail-mysql-post-patch
Index: mail/qmail-tls/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/mail/qmail-tls/Makefile,v
retrieving revision 1.14
diff -u -r1.14 Makefile
--- mail/qmail-tls/Makefile 7 Mar 2004 21:08:27 -0000 1.14
+++ mail/qmail-tls/Makefile 6 Jun 2004 20:30:58 -0000
@@ -28,6 +28,9 @@
PREFIX?= ${QMAIL_PORT_PREFIX}
#PREFIX= /var/qmail-tls
+IS_SLAVE_PORT= yes
+MASTERPORT= mail/qmail
+
.if !defined(PRE_MK_INCLUDED)
.include <bsd.port.pre.mk>
.endif
Index: mail/squirrelmail/Makefile
===================================================================
RCS file: /home/FreeBSD/pcvs/ports/mail/squirrelmail/Makefile,v
retrieving revision 1.32
diff -u -r1.32 Makefile
--- mail/squirrelmail/Makefile 19 Dec 2004 20:38:22 -0000 1.32
+++ mail/squirrelmail/Makefile 20 Dec 2004 00:51:34 -0000
@@ -45,10 +45,6 @@
PLIST_SUB+= PORTVERSION=${PORTVERSION} \
SQUIRRELDIR="${SQUIRRELDIR:S,^${PREFIX}/,,}"
-.if !defined(MASTERDIR)
-MASTERDIR= ${.CURDIR}
-.endif
-
pre-everything::
@${ECHO_CMD} "SquirrelMail is installed into ${SQUIRRELDIR}"
@${ECHO_CMD} "To use the old location ${PREFIX}/squirrelmail define"
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list