1e478b9b4SSascha Wildner.\" 2e478b9b4SSascha Wildner.\" Copyright (c) 2010 3e478b9b4SSascha Wildner.\" The DragonFly Project. All rights reserved. 4e478b9b4SSascha Wildner.\" 5e478b9b4SSascha Wildner.\" Redistribution and use in source and binary forms, with or without 6e478b9b4SSascha Wildner.\" modification, are permitted provided that the following conditions 7e478b9b4SSascha Wildner.\" are met: 8e478b9b4SSascha Wildner.\" 9e478b9b4SSascha Wildner.\" 1. Redistributions of source code must retain the above copyright 10e478b9b4SSascha Wildner.\" notice, this list of conditions and the following disclaimer. 11e478b9b4SSascha Wildner.\" 2. Redistributions in binary form must reproduce the above copyright 12e478b9b4SSascha Wildner.\" notice, this list of conditions and the following disclaimer in 13e478b9b4SSascha Wildner.\" the documentation and/or other materials provided with the 14e478b9b4SSascha Wildner.\" distribution. 15e478b9b4SSascha Wildner.\" 3. Neither the name of The DragonFly Project nor the names of its 16e478b9b4SSascha Wildner.\" contributors may be used to endorse or promote products derived 17e478b9b4SSascha Wildner.\" from this software without specific, prior written permission. 18e478b9b4SSascha Wildner.\" 19e478b9b4SSascha Wildner.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 20e478b9b4SSascha Wildner.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 21e478b9b4SSascha Wildner.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 22e478b9b4SSascha Wildner.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 23e478b9b4SSascha Wildner.\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 24e478b9b4SSascha Wildner.\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING, 25e478b9b4SSascha Wildner.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 26e478b9b4SSascha Wildner.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 27e478b9b4SSascha Wildner.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 28e478b9b4SSascha Wildner.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 29e478b9b4SSascha Wildner.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 30e478b9b4SSascha Wildner.\" SUCH DAMAGE. 31e478b9b4SSascha Wildner.\" 32*224ee6b3SSascha Wildner.Dd July 4, 2010 33e478b9b4SSascha Wildner.Dt STANDARDS 7 34e478b9b4SSascha Wildner.Os 35e478b9b4SSascha Wildner.Sh NAME 36e478b9b4SSascha Wildner.Nm standards 37e478b9b4SSascha Wildner.Nd standards supported by DragonFly 38e478b9b4SSascha Wildner.Sh SYNOPSIS 39*224ee6b3SSascha Wildner.Fd "#define _XOPEN_SOURCE 600" 40*224ee6b3SSascha Wildner.Pp 41e478b9b4SSascha Wildner.In sys/cdefs.h 42e478b9b4SSascha Wildner.Sh DESCRIPTION 43*224ee6b3SSascha WildnerA number of 44*224ee6b3SSascha Wildner.Dq feature test macros , 45*224ee6b3SSascha Wildnernamely 46*224ee6b3SSascha Wildner.Dv _POSIX_C_SOURCE 47*224ee6b3SSascha Wildnerand 48*224ee6b3SSascha Wildner.Dv _XOPEN_SOURCE , 49*224ee6b3SSascha Wildnercan be used by applications to indicate desired sets of features (beyond 50*224ee6b3SSascha Wildnerthose specified by the C standard) in the programming environment supplied by 51*224ee6b3SSascha Wildner.Dx . 52*224ee6b3SSascha WildnerThese macros determine which prototypes are exposed by header files and so on. 53*224ee6b3SSascha Wildner.Pp 54*224ee6b3SSascha WildnerIf neither 55*224ee6b3SSascha Wildner.Dv _POSIX_C_SOURCE 56*224ee6b3SSascha Wildnerand 57*224ee6b3SSascha Wildner.Dv _XOPEN_SOURCE 58*224ee6b3SSascha Wildnerare set, the programming environment defaults to 59*224ee6b3SSascha Wildner.St -susv3 . 60*224ee6b3SSascha WildnerIn addition, a number of 61*224ee6b3SSascha Wildner.Bx 62*224ee6b3SSascha Wildnerspecific prototypes, definitions etc.\& are made visible. 63*224ee6b3SSascha Wildner.Ss POSIX Standards (_POSIX_C_SOURCE) 64e478b9b4SSascha WildnerThe value of the 65e478b9b4SSascha Wildner.Dv _POSIX_C_SOURCE 66e478b9b4SSascha Wildnermacro determines which 67e478b9b4SSascha Wildner.Tn POSIX 68e478b9b4SSascha Wildnerstandard the programming environment conforms to. 69e478b9b4SSascha Wildner.Bl -tag -width ".Li 199009" 70e478b9b4SSascha Wildner.It Li 1 71e478b9b4SSascha WildnerMake definitions conforming to 72e478b9b4SSascha Wildner.St -p1003.1-90 73e478b9b4SSascha Wildnervisible. 74e478b9b4SSascha WildnerImplies 75e478b9b4SSascha Wildner.St -isoC-90 . 76e478b9b4SSascha Wildner.It Li 2 77e478b9b4SSascha WildnerAdditionally, make definitions conforming to 78e478b9b4SSascha Wildner.St -p1003.2-92 79e478b9b4SSascha Wildnervisible. 80e478b9b4SSascha Wildner.It Li 199009 81e478b9b4SSascha WildnerSame as 82e478b9b4SSascha Wildner.Li 1 . 83e478b9b4SSascha Wildner.It Li 199209 84e478b9b4SSascha WildnerSame as 85e478b9b4SSascha Wildner.Li 2 . 86e478b9b4SSascha Wildner.It Li 199309 87e478b9b4SSascha WildnerAdditionally, make definitions conforming to 88e478b9b4SSascha Wildner.St -p1003.1b-93 89e478b9b4SSascha Wildnervisible. 90e478b9b4SSascha Wildner.It Li 199506 91e478b9b4SSascha WildnerAdditionally, make definitions conforming to 92e478b9b4SSascha Wildner.St -p1003.1c-95 93e478b9b4SSascha Wildnervisible. 94e478b9b4SSascha Wildner.It Li 200112 95e478b9b4SSascha WildnerAdditionally, make definitions conforming to 96e478b9b4SSascha Wildner.St -p1003.1-2001 97e478b9b4SSascha Wildnervisible. 98e478b9b4SSascha WildnerImplies 99e478b9b4SSascha Wildner.St -isoC-99 . 100e478b9b4SSascha WildnerThis is the default. 101e478b9b4SSascha Wildner.El 102e478b9b4SSascha Wildner.Pp 103e478b9b4SSascha WildnerDefining 104e478b9b4SSascha Wildner.Dv _POSIX_C_SOURCE 105e478b9b4SSascha Wildnerto any value lower than 106e478b9b4SSascha Wildner.Li 199009 107e478b9b4SSascha Wildner(other than 108e478b9b4SSascha Wildner.Li 1 109e478b9b4SSascha Wildneror 110e478b9b4SSascha Wildner.Li 2 ) 111e478b9b4SSascha Wildnermakes it default to 112e478b9b4SSascha Wildner.Li 198808 113e478b9b4SSascha Wildnerwhich makes definitions conforming to 114e478b9b4SSascha Wildner.St -p1003.1-88 115e478b9b4SSascha Wildnervisible. 116e478b9b4SSascha WildnerNo C standard is implied in this case. 117e478b9b4SSascha Wildner.Pp 118e478b9b4SSascha WildnerDefining the obsolete 119e478b9b4SSascha Wildner.Dv _POSIX_SOURCE 120e478b9b4SSascha Wildnermacro without defining 121e478b9b4SSascha Wildner.Dv _POSIX_C_SOURCE 122e478b9b4SSascha Wildneris equivalent to defining 123e478b9b4SSascha Wildner.Dv _POSIX_C_SOURCE 124e478b9b4SSascha Wildnerto 125e478b9b4SSascha Wildner.Li 198808 . 126*224ee6b3SSascha Wildner.Ss X/Open CAE Specifications (_XOPEN_SOURCE) 127e478b9b4SSascha WildnerThe value of the 128e478b9b4SSascha Wildner.Dv _XOPEN_SOURCE 129e478b9b4SSascha Wildnermacro determines which X/Open CAE specification the programming 130e478b9b4SSascha Wildnerenvironment conforms to. 131e478b9b4SSascha Wildner.Bl -tag -width ".Li 500" 132e478b9b4SSascha Wildner.It Li 500 133e478b9b4SSascha WildnerMake defintions conforming to the 134e478b9b4SSascha Wildner.St -susv2 135e478b9b4SSascha Wildnervisible. 136e478b9b4SSascha WildnerImplies defining 137e478b9b4SSascha Wildner.Dv _POSIX_C_SOURCE 138e478b9b4SSascha Wildnerto 139e478b9b4SSascha Wildner.Li 199506 . 140e478b9b4SSascha Wildner.It Li 600 141e478b9b4SSascha WildnerMake definitions conforming to the 142e478b9b4SSascha Wildner.St -susv3 143e478b9b4SSascha Wildnervisible. 144e478b9b4SSascha WildnerImplies defining 145e478b9b4SSascha Wildner.Dv _POSIX_C_SOURCE 146e478b9b4SSascha Wildnerto 147e478b9b4SSascha Wildner.Li 200112 . 148e478b9b4SSascha WildnerThis is the default. 149e478b9b4SSascha Wildner.El 150e478b9b4SSascha Wildner.Pp 151e478b9b4SSascha WildnerIf both CAE and POSIX conformance is required, only 152e478b9b4SSascha Wildner.Dv _XOPEN_SOURCE 153e478b9b4SSascha Wildnercan be set. 154e478b9b4SSascha Wildner.\".Ss Miscellaneous Macros 155e478b9b4SSascha Wildner.\".Dv _ANSI_SOURCE 156e478b9b4SSascha Wildner.\".Dv _C99_SOURCE 157e478b9b4SSascha Wildner.\".Dv _DRAGONFLY_SOURCE 158e478b9b4SSascha Wildner.\".Dv _NETBSD_SOURCE 159e478b9b4SSascha Wildner.Sh HISTORY 160e478b9b4SSascha WildnerA 161e478b9b4SSascha Wildner.Nm 162e478b9b4SSascha Wildnermanual page first appeared in 163e478b9b4SSascha Wildner.Dx 2.7 . 164