Date: Sat, 10 Sep 2011 15:48:43 +0100 From: Chris Rees <crees@FreeBSD.org> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/160624: exp-run: Process USE_ flags in both parts of bsd.port.mk Message-ID: <BLU0-SMTP182AE33457913A13C269F19A9000@phx.gbl> Resent-Message-ID: <201109101450.p8AEo7ix078378@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 160624 >Category: ports >Synopsis: exp-run: Process USE_ flags in both parts of 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: Sat Sep 10 14:50:07 UTC 2011 >Closed-Date: >Last-Modified: >Originator: Chris Rees >Release: FreeBSD 8.2-RELEASE-p1 i386 >Organization: >Environment: System: FreeBSD zeus.bayofrum.net 8.2-RELEASE-p1 FreeBSD 8.2-RELEASE-p1 #0: Sat Apr 30 15:09:06 BST 2011 root@zeus.bayofrum.net:/usr/obj/usr/src/sys/ZEUS i386 >Description: As a followup to ports/160361, here is a new version of bsd.include.mk. It solves the inconsistency of some USE_ flags being processed in the pre.mk phase (like emacs, wx) and some in the post.mk phase (such as p hp, openldap) which causes problems illustrated in [1,2]. My original solution was to move all includes to pre.mk, but Pav subsequently pointed out that it would then be impossible to conditionally use USE_ flags depending on something defined in pre.mk, such as ARCH. This new patch causes the USE_ flags to be processed in the pre.mk and the post.mk phase, but only including each file once to avoid repitit ion and possible self-conflicts using the same logic as bsd.port.post.mk uses. Although it looks long-winded, it can be collapsed down into a for loop later on -- I haven't done it here because I want to minimise potent ial breakage. To clarify once again, I'm only requesting an exp-run here, so the comments haven't been polished yet. [1] http://www.bayofrum.net/~crees/examples/include-openldap-wtf.txt [2] http://www.bayofrum.net/~crees/examples/include-pre-post.txt >How-To-Repeat: >Fix: --- bsd-include-mk-II.diff begins here --- Index: bsd.include.mk =================================================================== RCS file: bsd.include.mk diff -N bsd.include.mk --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ bsd.include.mk 10 Sep 2011 14:46:37 -0000 @@ -0,0 +1,272 @@ +#-*- mode: makefile; tab-width: 4; -*- +# ex:ts=4 +# +# $FreeBSD$ +# +# bsd.include.mk +# This file is in the public domain. +# +# Please view me with 4 column tabs! + +# DO NOT COMMIT CHANGES TO THIS FILE BY YOURSELF, EVEN IF YOU DID NOT GET +# A RESPONSE FROM THE MAINTAINER(S) WITHIN A REASONABLE TIMEFRAME! ALL +# UNAUTHORISED CHANGES WILL BE UNCONDITIONALLY REVERTED! + +bsd_include_mk_MAINTAINER= portmgr@FreeBSD.org + +.if defined(USE_LINUX_RPM) +. if !defined(_LINUX_RPMMKINCLUDED) +_LINUX_RPMMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.linux-rpm.mk" +. endif +.endif + +.if defined(USE_LINUX_APPS) +. if !defined(_LINUX_APPSMKINCLUDED) +_LINUX_APPSMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.linux-apps.mk" +. endif +.endif + +.if defined(USE_XORG) || defined(XORG_CAT) +. if !defined(_XORGMKINCLUDED) +_XORGMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.xorg.mk" +. endif +.endif + +.if defined(USE_OPENSSL) +. if !defined(_OPENSSLMKINCLUDED) +_OPENSSLMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.openssl.mk" +. endif +.endif + +.if defined(USE_EMACS) +. if !defined(_EMACSMKINCLUDED) +_EMACSMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.emacs.mk" +. endif +.endif + +.if defined(USE_GNUSTEP) +. if !defined(_GNUSTEPMKINCLUDED) +_GNUSTEPMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.gnustep.mk" +. endif +.endif + +.if !defined(_PERLMKINCLUDED) +_PERLMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.perl.mk" +.endif + +.if defined(USE_PHP) +. if !defined(_PHPMKINCLUDED) +_PHPMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.php.mk" +. endif +.endif + +.if defined(USE_PYTHON) || defined(USE_PYTHON_BUILD) || defined(USE_PYTHON_RUN) +. if !defined(_PYTHONMKINCLUDED) +_PYTHONMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.python.mk" +. endif +.endif + +.if defined(USE_EFL) || defined(WANT_EFL) || defined(USE_EFL_ESMART) +. if !defined(_EFLMKINCLUDED) +_EFLMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.efl.mk" +. endif +.endif + +.if defined(USE_JAVA) +. if !defined(_JAVAMKINCLUDED) +_JAVAMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.java.mk" +. endif +.endif + +.if defined(USE_R_MOD) +. if !defined(_CRANMKINCLUDED) +_CRANMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.cran.mk" +. endif +.endif + +.if defined(USE_RUBY) || defined(USE_LIBRUBY) +. if !defined(_RUBYMKINCLUDED) +_RUBYMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.ruby.mk" +. endif +.endif + +.if defined(USE_OCAML) +. if !defined(_OCAMLMKINCLUDED) +_OCAMLMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.ocaml.mk" +. endif +.endif + +.if defined(USE_TCL) || defined(USE_TCL_BUILD) || defined(USE_TCL_RUN) || defined(USE_TCL_WRAPPER) || defined(USE_TK) || defined(USE_TK_BUILD) || defined(USE_TK_RUN) || defined(USE_TK_WRAPPER) +. if !defined(_TCLMKINCLUDED) +_TCLMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.tcl.mk" +. endif +.endif + +.if defined(USE_APACHE) || defined(USE_APACHE_BUILD) || defined(USE_APACHE_RUN) +. if !defined(_APACHEMKINCLUDED) +_APACHEMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.apache.mk" +. endif +.endif + +.if (defined(USE_QT_VER) && ${USE_QT_VER:L} == 3) || defined(USE_KDELIBS_VER) || defined(USE_KDEBASE_VER) +. if !defined(_KDEMKINCLUDED) +_KDEMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.kde.mk" +. endif +.endif + +.if defined (USE_QT_VER) && ${USE_QT_VER:L} == 4 +. if !defined(_QTMKINCLUDED) +_QTMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.qt.mk" +. endif +.endif + +.if defined(USE_DRUPAL) +. if !defined(_DRUPALMKINCLUDED) +_DRUPALMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.drupal.mk" +. endif +.endif + +.if defined(WANT_GECKO) || defined(USE_GECKO) || defined(USE_FIREFOX) || defined(USE_FIREFOX_BUILD) || defined(USE_SEAMONKEY) || defined(USE_SEAMONKEY_BUILD) || defined(USE_THUNDERBIRD) || defined(USE_THUNDERBIRD_BUILD) +. if !defined(_GECKOMKINCLUDED) +_GECKOMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.gecko.mk" +. endif +.endif + +.if defined(WANT_GNOME) || defined(USE_GNOME) || defined(INSTALLS_ICONS) +. if !defined(_GNOMEMKINCLUDED) +_GNOMEMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.gnome.mk" +. endif +.endif + +.if defined(WANT_LUA) || defined(USE_LUA) || defined(USE_LUA_NOT) +. if !defined(_LUAMKINCLUDED) +_LUAMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.lua.mk" +. endif +.endif + +.if defined(WANT_WX) || defined(USE_WX) || defined(USE_WX_NOT) +. if !defined(_WXMKINCLUDED) +_WXMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.wx.mk" +. endif +.endif + +.if defined(USE_QMAIL) || defined(USE_QMAIL_RUN) || defined(USE_QMAIL_BUILD) || defined(WANT_QMAIL) +. if !defined(_MAILMKINCLUDED) +_MAILMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.mail.mk" +. endif +.endif + +.if defined(USE_KDE4) || defined(KDE4_BUILDENV) +. if !defined(_KDE4MKINCLUDED) +_KDE4MKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.kde4.mk" +. endif +.endif + +.if defined(USE_NCURSES) +. if !defined(_NCURSESMKINCLUDED) +_NCURSESMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.ncurses.mk" +. endif +.endif + +.if defined(USE_GCC) || defined(USE_FORTRAN) +. if !defined(_GCCMKINCLUDED) +_GCCMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.gcc.mk" +. endif +.endif + +.if defined(USE_OPENLDAP) || defined(WANT_OPENLDAP_VER) +. if !defined(_LDAPMKINCLUDED) +_LDAPMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.ldap.mk" +. endif +.endif + +.if defined(USE_MYSQL) || defined(WANT_MYSQL_VER) || \ + defined(USE_PGSQL) || defined(WANT_PGSQL_VER) || \ + defined(USE_BDB) || defined(USE_SQLITE) || defined(USE_FIREBIRD) +. if !defined(_DATABASEMKINCLUDED) +_DATABASEMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.database.mk" +. endif +.endif + +.if defined(WANT_GSTREAMER) || defined(USE_GSTREAMER) || defined(USE_GSTREAMER80) +. if !defined(_GSTREAMERMKINCLUDED) +_GSTREAMERMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.gstreamer.mk" +. endif +.endif + +.if defined(USE_SCONS) +. if !defined(_SCONSMKINCLUDED) +_SCONSMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.scons.mk" +. endif +.endif + +.if defined(USE_SDL) || defined(WANT_SDL) +. if !defined(_SDLMKINCLUDED) +_SDLMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.sdl.mk" +. endif +.endif + +. if !defined(_PERLMKINCLUDED) +_PERLMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.perl.mk" +. endif + +.if defined(USE_AUTOTOOLS) +. if !defined(_AUTOTOOLSMKINCLUDED) +_AUTOTOOLSMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.autotools.mk" +. endif +.endif + +.if defined(USE_FPC) || defined(WANT_FPC_BASE) || defined(WANT_FPC_ALL) +. if !defined(_FPCMKINCLUDED) +_FPCMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.fpc.mk" +. endif +.endif + +.if defined(USE_XFCE) +. if !defined(_XFCEMKINCLUDED) +_XFCEMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.xfce.mk" +. endif +.endif + +.if defined(USE_CMAKE) +. if !defined(_CMAKEMKINCLUDED) +_CMAKEMKINCLUDED= YES +. include "${PORTSDIR}/Mk/bsd.cmake.mk" +. endif +.endif Index: bsd.port.mk =================================================================== RCS file: /home/pcvs/ports/Mk/bsd.port.mk,v retrieving revision 1.695 diff -u -r1.695 bsd.port.mk --- bsd.port.mk 9 Sep 2011 08:10:29 -0000 1.695 +++ bsd.port.mk 10 Sep 2011 14:46:40 -0000 @@ -1361,24 +1361,12 @@ WWWDIR?= ${PREFIX}/www/${PORTNAME} ETCDIR?= ${PREFIX}/etc/${PORTNAME} -.if defined(USE_LINUX_RPM) -.include "${PORTSDIR}/Mk/bsd.linux-rpm.mk" -.endif - -.if defined(USE_LINUX_APPS) -.include "${PORTSDIR}/Mk/bsd.linux-apps.mk" -.endif - .if ${X11BASE} != ${LOCALBASE} .BEGIN: @${ECHO_MSG} "X11BASE is now deprecated. Unset X11BASE in make.conf and try again." @${FALSE} .endif -.if defined(USE_XORG) || defined(XORG_CAT) -.include "${PORTSDIR}/Mk/bsd.xorg.mk" -.endif - .if defined(USE_BZIP2) EXTRACT_SUFX?= .tar.bz2 .elif defined(USE_ZIP) @@ -1415,112 +1403,6 @@ .include "${PORTSDIR}/Mk/bsd.local.mk" .endif -.if defined(USE_OPENSSL) -.include "${PORTSDIR}/Mk/bsd.openssl.mk" -.endif - -.if defined(USE_EMACS) -.include "${PORTSDIR}/Mk/bsd.emacs.mk" -.endif - -.if defined(USE_GNUSTEP) -.include "${PORTSDIR}/Mk/bsd.gnustep.mk" -.endif - -.include "${PORTSDIR}/Mk/bsd.perl.mk" - -.if defined(USE_PHP) -.include "${PORTSDIR}/Mk/bsd.php.mk" -.endif - -.if defined(USE_PYTHON) || defined(USE_PYTHON_BUILD) || defined(USE_PYTHON_RUN) -.include "${PORTSDIR}/Mk/bsd.python.mk" -.endif - -.if defined(USE_EFL) || defined(WANT_EFL) || defined(USE_EFL_ESMART) -.include "${PORTSDIR}/Mk/bsd.efl.mk" -.endif - -.if defined(USE_FPC) || defined(WANT_FPC_BASE) || defined(WANT_FPC_ALL) -.include "${PORTSDIR}/Mk/bsd.fpc.mk" -.endif - -.if defined(USE_JAVA) -.include "${PORTSDIR}/Mk/bsd.java.mk" -.endif - -.if defined(USE_R_MOD) -.include "${PORTSDIR}/Mk/bsd.cran.mk" -.endif - -.if defined(USE_RUBY) || defined(USE_LIBRUBY) -.include "${PORTSDIR}/Mk/bsd.ruby.mk" -.endif - -.if defined(USE_OCAML) -.include "${PORTSDIR}/Mk/bsd.ocaml.mk" -.endif - -.if defined(USE_TCL) || defined(USE_TCL_BUILD) || defined(USE_TCL_RUN) || defined(USE_TCL_WRAPPER) || defined(USE_TK) || defined(USE_TK_BUILD) || defined(USE_TK_RUN) || defined(USE_TK_WRAPPER) -.include "${PORTSDIR}/Mk/bsd.tcl.mk" -.endif - -.if defined(USE_APACHE) || defined(USE_APACHE_BUILD) || defined(USE_APACHE_RUN) -.include "${PORTSDIR}/Mk/bsd.apache.mk" -.endif - -.if (defined(USE_QT_VER) && ${USE_QT_VER:L} == 3) || defined(USE_KDELIBS_VER) || defined(USE_KDEBASE_VER) -.include "${PORTSDIR}/Mk/bsd.kde.mk" -.endif - -.if defined (USE_QT_VER) && ${USE_QT_VER:L} == 4 -.include "${PORTSDIR}/Mk/bsd.qt.mk" -.endif - -.if defined(USE_DRUPAL) -.include "${PORTSDIR}/Mk/bsd.drupal.mk" -.endif - -.if defined(WANT_GECKO) || defined(USE_GECKO) || defined(USE_FIREFOX) || defined(USE_FIREFOX_BUILD) || defined(USE_SEAMONKEY) || defined(USE_SEAMONKEY_BUILD) || defined(USE_THUNDERBIRD) || defined(USE_THUNDERBIRD_BUILD) -.include "${PORTSDIR}/Mk/bsd.gecko.mk" -.endif - -.if defined(WANT_GNOME) || defined(USE_GNOME) || defined(INSTALLS_ICONS) -.include "${PORTSDIR}/Mk/bsd.gnome.mk" -.endif - -.if defined(WANT_LUA) || defined(USE_LUA) || defined(USE_LUA_NOT) -.include "${PORTSDIR}/Mk/bsd.lua.mk" -.endif - -.if defined(WANT_WX) || defined(USE_WX) || defined(USE_WX_NOT) -.include "${PORTSDIR}/Mk/bsd.wx.mk" -.endif - -.if defined(WANT_GSTREAMER) || defined(USE_GSTREAMER) || defined(USE_GSTREAMER80) -.include "${PORTSDIR}/Mk/bsd.gstreamer.mk" -.endif - -.if defined(USE_QMAIL) || defined(USE_QMAIL_RUN) || defined(USE_QMAIL_BUILD) || defined(WANT_QMAIL) -.include "${PORTSDIR}/Mk/bsd.mail.mk" -.endif - -.if defined(USE_SDL) || defined(WANT_SDL) -.include "${PORTSDIR}/Mk/bsd.sdl.mk" -.endif - -.if defined(USE_XFCE) -.include "${PORTSDIR}/Mk/bsd.xfce.mk" -.endif - -.if defined(USE_KDE4) || defined(KDE4_BUILDENV) -.include "${PORTSDIR}/Mk/bsd.kde4.mk" -.endif - -.if defined(USE_NCURSES) -.include "${PORTSDIR}/Mk/bsd.ncurses.mk" -.endif - # You can force skipping these test by defining IGNORE_PATH_CHECKS .if !defined(IGNORE_PATH_CHECKS) .if (${PREFIX:C,(^.).*,\1,} != "/") @@ -1538,6 +1420,8 @@ WWWOWN?= www WWWGRP?= www +.include "${PORTSDIR}/Mk/bsd.include.mk" + .endif # End of pre-makefile section. @@ -1552,6 +1436,8 @@ _POSTMKINCLUDED= yes +.include "${PORTSDIR}/Mk/bsd.include.mk" + WRKDIR?= ${WRKDIRPREFIX}${.CURDIR}/work .if defined(NO_WRKSUBDIR) WRKSRC?= ${WRKDIR} @@ -1679,10 +1565,6 @@ CONFIGURE_ENV+= MAKE=${GMAKE} .endif -.if defined(USE_GCC) || defined(USE_FORTRAN) -.include "${PORTSDIR}/Mk/bsd.gcc.mk" -.endif - .if defined(USE_BINUTILS) && !defined(DISABLE_BINUTILS) BUILD_DEPENDS+= ${LOCALBASE}/bin/as:${PORTSDIR}/devel/binutils BINUTILS?= ADDR2LINE AR AS CPPFILT GPROF LD NM OBJCOPY OBJDUMP RANLIB \ @@ -1699,10 +1581,6 @@ . endfor .endif -.if defined(USE_OPENLDAP) || defined(WANT_OPENLDAP_VER) -.include "${PORTSDIR}/Mk/bsd.ldap.mk" -.endif - .if defined(USE_OPENAL) _OPENAL_ALL= al si soft alut _OPENAL_LIBS= si soft @@ -1995,102 +1873,6 @@ .include "${PORTSDIR}/Mk/bsd.local.mk" .endif -.if defined(USE_XORG) || defined(XORG_CAT) -.include "${PORTSDIR}/Mk/bsd.xorg.mk" -.endif - -.if defined(USE_MYSQL) || defined(WANT_MYSQL_VER) || \ - defined(USE_PGSQL) || defined(WANT_PGSQL_VER) || \ - defined(USE_BDB) || defined(USE_SQLITE) || defined(USE_FIREBIRD) -.include "${PORTSDIR}/Mk/bsd.database.mk" -.endif - -.if defined(WANT_GSTREAMER) || defined(USE_GSTREAMER) || defined(USE_GSTREAMER80) -.include "${PORTSDIR}/Mk/bsd.gstreamer.mk" -.endif - -.if defined(USE_EFL) || defined(WANT_EFL) || defined(USE_EFL_ESMART) -.include "${PORTSDIR}/Mk/bsd.efl.mk" -.endif - -.if defined(USE_JAVA) -.include "${PORTSDIR}/Mk/bsd.java.mk" -.endif - -.if defined(USE_LINUX_RPM) -.include "${PORTSDIR}/Mk/bsd.linux-rpm.mk" -.endif - -.if defined(USE_LINUX_APPS) -.include "${PORTSDIR}/Mk/bsd.linux-apps.mk" -.endif - -.if defined (USE_QT_VER) && ${USE_QT_VER:L} == 4 -.include "${PORTSDIR}/Mk/bsd.qt.mk" -.endif - -.if defined(USE_SCONS) -.include "${PORTSDIR}/Mk/bsd.scons.mk" -.endif - -.if defined(USE_SDL) || defined(WANT_SDL) -.include "${PORTSDIR}/Mk/bsd.sdl.mk" -.endif - -.include "${PORTSDIR}/Mk/bsd.perl.mk" - -.if defined(USE_PHP) -.include "${PORTSDIR}/Mk/bsd.php.mk" -.endif - -.if defined(USE_PYTHON) -.include "${PORTSDIR}/Mk/bsd.python.mk" -.endif - -.if defined(USE_TCL) || defined(USE_TCL_BUILD) || defined(USE_TK) || defined(USE_TK_BUILD) -.include "${PORTSDIR}/Mk/bsd.tcl.mk" -.endif - -.if defined(USE_LUA) || defined(USE_LUA_NOT) -.include "${PORTSDIR}/Mk/bsd.lua.mk" -.endif - -.if defined(USE_WX) || defined(USE_WX_NOT) -.include "${PORTSDIR}/Mk/bsd.wx.mk" -.endif - -.if defined(USE_APACHE) || defined(USE_APACHE_BUILD) || defined(USE_APACHE_RUN) -.include "${PORTSDIR}/Mk/bsd.apache.mk" -.endif - -.if defined(USE_AUTOTOOLS) -.include "${PORTSDIR}/Mk/bsd.autotools.mk" -.endif - -.if defined(USE_FPC) || defined(WANT_FPC_BASE) || defined(WANT_FPC_ALL) -.include "${PORTSDIR}/Mk/bsd.fpc.mk" -.endif - -.if defined(WANT_GECKO) || defined(USE_GECKO) -.include "${PORTSDIR}/Mk/bsd.gecko.mk" -.endif - -.if defined(WANT_GNOME) || defined(USE_GNOME) -.include "${PORTSDIR}/Mk/bsd.gnome.mk" -.endif - -.if defined(USE_XFCE) -.include "${PORTSDIR}/Mk/bsd.xfce.mk" -.endif - -.if defined(USE_KDE4) -.include "${PORTSDIR}/Mk/bsd.kde4.mk" -.endif - -.if defined(USE_CMAKE) -.include "${PORTSDIR}/Mk/bsd.cmake.mk" -.endif - .if exists(${PORTSDIR}/../Makefile.inc) .include "${PORTSDIR}/../Makefile.inc" USE_SUBMAKE= yes --- bsd-include-mk-II.diff ends here --- -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BLU0-SMTP182AE33457913A13C269F19A9000>