From patchwork Fri Jul 28 03:43:05 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rical Jasan X-Patchwork-Id: 794627 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=sourceware.org (client-ip=209.132.180.131; helo=sourceware.org; envelope-from=libc-alpha-return-82506-incoming=patchwork.ozlabs.org@sourceware.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; secure) header.d=sourceware.org header.i=@sourceware.org header.b="rdDX+IYR"; dkim-atps=neutral Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3xJZSY5tMNz9s0Z for ; Fri, 28 Jul 2017 13:43:25 +1000 (AEST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:from:to:cc:subject:date:message-id :mime-version:content-type; q=dns; s=default; b=yR7bhSGhRcB8jXRK wxtMFr5LNCkfHK4qNgdSFUnx1zwu2hukH75IoEQx4timJbzJf5kP6o4yTttxBPT4 HRhqbD48qAT5fA9z+zs9A1tSXOrEWdhMUj5hP2Vw2yNMOvLXAPpk2QsQDOr1oumg PR88FYYn2w/o2H608vx2pO1OUbA= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:from:to:cc:subject:date:message-id :mime-version:content-type; s=default; bh=G02lroV3ktxEDcyOErO5fS c0Sgc=; b=rdDX+IYRa4Bl08RtwCH1mbzdHy5uX6ZqfAd3vm/cMQXA9saQ4eAqvh SPX6MRi4sdrCdnccoJstHEgjZ3OWeBiEFwQP0RjGmlBeuyL8VMkdjUmnL2KOmg15 8Z9jkASCzcSd8FbImLEnpuFLCZJL9GKTxjB1iHZkzr8eqvzcsqBwI= Received: (qmail 84846 invoked by alias); 28 Jul 2017 03:43:16 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 82893 invoked by uid 89); 28 Jul 2017 03:43:15 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-24.6 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RP_MATCHES_RCVD, SPF_PASS autolearn=ham version=3.3.2 spammy=Hx-languages-length:3708 X-HELO: smtp.pacific.net From: Rical Jasan To: libc-alpha Cc: Joseph Myers , Michael Kerrisk , Zack Weinberg , Carlos O'Donell Subject: [PATCH v2] manual: Document missing feature test macros. Date: Thu, 27 Jul 2017 20:43:05 -0700 Message-Id: <20170728034305.13389-1-ricaljasan@pacific.net> MIME-Version: 1.0 Several feature test macros are documented in features.h but absent in the manual, and some documented macros accept undocumented values. This commit updates the manual to mention all the accepted macros, along with any values that hold special meaning. * manual/creature.texi (_POSIX_C_SOURCE): Document special values of 199606L, 200112L, and 200809L. (_XOPEN_SOURCE): Document special values of 600 and 700. (_ISOC11_SOURCE): Document macro. (_ATFILE_SOURCE): Likewise. (_FORTIFY_SOURCE): Likewise. --- Changes in v2: * Refer to base editions of POSIX standards, and mention supported subsequent bug-fix editions explicitly. * Set @standards for _ATFILE_SOURCE and _FORTIFY_SOURCE to GNU. * Minor wording changes * Rebase to master (post-88f9e739). --- manual/creature.texi | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/manual/creature.texi b/manual/creature.texi index 96f8ee0a0c..b8c194f87c 100644 --- a/manual/creature.texi +++ b/manual/creature.texi @@ -61,6 +61,20 @@ If you define this macro to a value greater than or equal to @code{199309L}, then the functionality from the 1993 edition of the POSIX.1b standard (IEEE Standard 1003.1b-1993) is made available. +If you define this macro to a value greater than or equal to +@code{199506L}, then the functionality from the 1995 edition of the +POSIX.1c standard (IEEE Standard 1003.1c-1995) is made available. + +If you define this macro to a value greater than or equal to +@code{200112L}, then the functionality from the 2001 edition of the +POSIX standard (IEEE Standard 1003.1-2001) is made available, as well +as bug-fixes from the 2004 edition (IEEE Standard 1003.1-2004). + +If you define this macro to a value greater than or equal to +@code{200809L}, then the functionality from the 2008 edition of the +POSIX standard (IEEE Standard 1003.1-2008) is made available, as well +as bug-fixes from the 2013 and 2016 editions. + Greater values for @code{_POSIX_C_SOURCE} will enable future extensions. The POSIX standards process will define these values as necessary, and @theglibc{} should support them some time after they become standardized. @@ -87,7 +101,9 @@ available which are necessary for the X/Open Unix brand. If the macro @code{_XOPEN_SOURCE} has the value @math{500} this includes all functionality described so far plus some new definitions from the -Single Unix Specification, @w{version 2}. +Single Unix Specification, @w{version 2}. The value @math{600} +includes definitions from the sixth revision, and @math{700} includes +definitions from the seventh revision. @end defvr @defvr Macro _LARGEFILE_SOURCE @@ -156,6 +172,11 @@ implementation of the new standard and to enable the new features the macro @code{_ISOC99_SOURCE} should be defined. @end defvr +@defvr Macro _ISOC11_SOURCE +@standards{C11, (none)} +If this macro is defined, ISO C11 extensions to ISO C99 are included. +@end defvr + @defvr Macro __STDC_WANT_LIB_EXT2__ @standards{ISO, (none)} If you define this macro to the value @code{1}, features from ISO/IEC @@ -209,6 +230,19 @@ enables those features even when the other options would otherwise cause them to be disabled. @end defvr +@defvr Macro _ATFILE_SOURCE +@standards{GNU, (none)} +If this macro is defined, additional @code{*at} interfaces are +included. +@end defvr + +@defvr Macro _FORTIFY_SOURCE +@standards{GNU, (none)} +If this macro is defined to @math{1}, security hardening is added to +various library functions. If defined to @math{2}, even stricter +checks are applied. +@end defvr + @defvr Macro _REENTRANT @defvrx Macro _THREAD_SAFE @standards{Obsolete, (none)}