From: Paul Eggert <eggert@CS.UCLA.EDU>
Cc: emacs-devel@gnu.org
Subject: Re: [Jim Meyering] Re: [Bug-gnulib] strftime merge from Emacs
Date: 16 Jun 2003 21:15:24 -0700 [thread overview]
Message-ID: <87isr5gx0j.fsf@penguin.cs.ucla.edu> (raw)
In-Reply-To: <rzqfzm9655j.fsf@albion.dl.ac.uk>
Dave Love <d.love@dl.ac.uk> writes:
> Surely it's incorrect not to use them if you want to use the features?
The usual tradition is that hosts enable all extensions unless you
specifically ask that extensions be disabled. Some hosts don't follow
this tradition: instead, they enable only a standard subset by
default, and you have to define some nonstandard feature-test macro
like __EXTENSIONS__ or _GNU_SOURCE in order to enable all extensions.
For such systems, it's obviously OK to define _GNU_SOURCE etc., as
that's the way to say "I want all extensions", which is the normal
thing that Autoconfed packages want to say.
However, I've found that it's usually a mistake to play with
feature-test macros any more than that. In other words, it's usually
a mistake to futz with more-specific feature-test macros like
_XOPEN_SOURCE and _POSIX_SOURCE. This is for two reasons. First,
these macros generally disable some extensions, and that's not what
Autoconfized packages usually want. Second, these macros are rarely
used, so their use often triggers bugs in headers.
> I'm thinking of things like _XOPEN_SOURCE, which won't disable much.
And I'm also thinking of things like _XOPEN_SOURCE. For example,
AC_SYS_LARGEFILE used to "#define _XOPEN_SOURCE 500" when it detected
a certain bug in glibc 2.1.3, to work around that bug. (The bug was
that glibc did not declare fseeko unless you defined _XOPEN_SOURCE.)
But this caused far too many other problems in practice: it disabled
many other useful extensions. When AC_SYS_LARGEFILE stopped mucking
with _XOPEN_SOURCE, the problems largely went away, and this was a win
overall.
next prev parent reply other threads:[~2003-06-17 4:15 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-06-06 10:32 [Jim Meyering] Re: [Bug-gnulib] strftime merge from Emacs Dave Love
2003-06-06 13:24 ` Jason Rumney
2003-06-09 22:53 ` [Jim Meyering] " Andrew Innes
2003-06-10 22:36 ` Dave Love
2003-06-10 22:34 ` Dave Love
2003-06-10 22:51 ` [Jim Meyering] Re: [Bug-gnulib] " Jason Rumney
2003-06-11 10:14 ` Bruno Haible
2003-06-11 10:29 ` Jason Rumney
2003-06-11 17:29 ` [Jim Meyering] " Paul Eggert
2003-06-11 18:38 ` Eli Zaretskii
2003-06-11 18:52 ` [Jim Meyering] Re: [Bug-gnulib] " Paul Eggert
2003-06-11 19:26 ` Bruno Haible
2003-06-12 22:42 ` [Jim Meyering] " Dave Love
2003-06-13 14:53 ` Paul Eggert
2003-06-16 22:15 ` [Jim Meyering] Re: [Bug-gnulib] " Dave Love
2003-06-17 4:15 ` Paul Eggert [this message]
2003-06-17 11:10 ` Stephen J. Turnbull
2003-06-07 10:22 ` [Jim Meyering] " Richard Stallman
2003-06-07 15:28 ` Jim Meyering
2003-06-07 15:50 ` [Jim Meyering] Re: [Bug-gnulib] " Eli Zaretskii
2003-06-07 17:03 ` Bruno Haible
2003-06-07 18:46 ` [Jim Meyering] " Eli Zaretskii
2003-06-09 0:21 ` [Jim Meyering] Re: [Bug-gnulib] " Richard Stallman
2003-06-09 21:10 ` Avoiding WIN* macros in GNU code [was Re: [Jim Meyering] Re: [Bug-gnulib] strftime merge from Emacs] Derek Robert Price
2003-06-12 5:52 ` [Zlib-devel] " Cosmin Truta
2003-06-12 6:31 ` Miles Bader
2003-06-12 20:55 ` Richard Stallman
2003-06-12 22:07 ` [Zlib-devel] Avoiding WIN* macros in GNU code Cosmin Truta
2003-06-13 10:03 ` Jason Rumney
2003-06-15 15:59 ` Richard Stallman
2003-06-10 22:33 ` [Jim Meyering] Re: [Bug-gnulib] strftime merge from Emacs Dave Love
2003-06-12 14:06 ` Richard Stallman
2003-06-12 16:11 ` [Jim Meyering] " Benjamin Riefenstahl
2003-06-12 17:59 ` Jason Rumney
2003-06-12 18:43 ` Eli Zaretskii
2003-06-13 22:03 ` Richard Stallman
2003-06-16 21:55 ` Dave Love
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87isr5gx0j.fsf@penguin.cs.ucla.edu \
--to=eggert@cs.ucla.edu \
--cc=emacs-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.