From owner-freebsd-hackers Tue Mar 12 18:40:13 2002 Delivered-To: freebsd-hackers@freebsd.org Received: from loquat.bbn.com (crodrigues.bbn.com [128.89.72.49]) by hub.freebsd.org (Postfix) with ESMTP id 3609C37B400 for ; Tue, 12 Mar 2002 18:40:08 -0800 (PST) Received: (from crodrigu@localhost) by loquat.bbn.com (8.11.2/8.11.2) id g2D2e7302592 for freebsd-hackers@freebsd.org; Tue, 12 Mar 2002 21:40:07 -0500 Date: Tue, 12 Mar 2002 21:40:07 -0500 From: Craig Rodrigues To: freebsd-hackers@freebsd.org Subject: Re: How to correctly detect POSIX 1003.1b features on FreeBSD? Message-ID: <20020312214007.A2526@bbn.com> References: <20020312140904.A799@bbn.com> <3C8E742C.7C2E63B8@mindspring.com> <20020312193514.A2226@bbn.com> <20020313005940.GB32410@elvis.mu.org> <20020312201314.A2345@bbn.com> <3C8EB31E.19382903@mindspring.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <3C8EB31E.19382903@mindspring.com>; from tlambert2@mindspring.com on Tue, Mar 12, 2002 at 06:02:06PM -0800 Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Tue, Mar 12, 2002 at 06:02:06PM -0800, Terry Lambert wrote: > I told you twice already: I got the e-mail from Albert Perlstein telling me to check __FreeBSD_Version before I got your e-mail telling me to check for _POSIX_REALTIME_SIGNALS. Sorry for the cross-traffic. > > #ifdef _POSIX_REALTIME_SIGNALS > > or > > #if defined(_POSIX_REALTIME_SIGNALS) && defined(SIGRTMIN) > > Isn't this covered in the reference where you are finding the > definition of these functions so that you are able to even know > how to call them correctly in the first place? No it is not covered. My reference has been the posix4(9) man page, and which is available on FreeBSD 4.3. I am a contributor to ACE, a cross-platform C++ library for doing systems programming: http://www.cs.wustl.edu/~schmidt/ACE.html. My intent is to fix the macros in ACE which define the configuration on FreeBSD (all FreeBSD specific configuration data is in ACE's config-freebsd-pthread.h). Right now the ACE macros which detect AIO and RT signals are broken, so I am trying to fix these macros, hence my questions on this mailing list. I'm not looking to specifically use POSIX RT signals on FreeBSD, I just want to get ACE to cleanly compile on FreeBSD, so that FreeBSD users can use and enjoy ACE on their projects if they choose. > The POSIX > standard clearly covers all the feature test macros for the > optional implementation parts of the standard, which includes > the RT extensions. I wasn't referring to the POSIX standard, I was referring to the and posix4(9) man page which came with FreeBSD. I'll refer to the POSIX standard from now on. > When (if) the feature is ever actuallysupported by FreeBSD, > the manifest constant _POSIX_REALTIME_SIGNALS will be > defined. Ahh! OK, this is the information that I am most interested in. So, I am now confident to re-write the test in ACE to: #ifdef _POSIX_REALTIME_SIGNALS /* use sigqueue(), etc. */ #endif This test will work for ACE users on older and newer versions of FreeBSD, and when POSIX RT signals are fully implemented on FreeBSD, ACE will use them. Thanks for your help! > If you want to support it by writing the code for FreeBSD > support yourself, the Linux code is available from: > > http://hegel.ittc.ukans.edu/projects/posix/signals.html I do not intend to implement POSIX realtime signals for FreeBSD at this time. -- Craig Rodrigues Distributed Systems and Logistics, Office 6/304 crodrigu@bbn.com BBN Technologies, a Verizon company (617) 873-4725 Cambridge, MA To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message