[ python-Bugs-793764 ] pyconfig.h defines _POSIX_C_SOURCE, conflicting with feature

SourceForge.net noreply at sourceforge.net
Thu Jan 11 10:13:39 CET 2007


Bugs item #793764, was opened at 2003-08-23 16:19
Message generated for change (Comment added) made by doko
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=793764&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Installation
Group: Python 2.3
Status: Closed
Resolution: Invalid
Priority: 5
Private: No
Submitted By: Matthias Klose (doko)
Assigned to: Nobody/Anonymous (nobody)
Summary: pyconfig.h defines _POSIX_C_SOURCE, conflicting with feature

Initial Comment:
[forwarded from http://bugs.debian.org/206805]

the installed include/python2.3/pyconfig.h defines
_POSIX_C_SOURCE, which leaks
down into packages built against python-2.3.  AFAIK,
_POSIX_C_SOURCE
is reserved for use by the C library, and is of course
defined in
/usr/include/features.h.

Example excerpt from a build log:

In file included from /usr/include/python2.3/Python.h:8,
                 from sg_config.h:22,
                 from sg.h:29,
                 from sg_project_autosave.c:26:
/usr/include/python2.3/pyconfig.h:844:1: Warnung:
"_POSIX_C_SOURCE" redefined
In file included from /usr/include/stdlib.h:25,
                 from sg_project_autosave.c:19:
/usr/include/features.h:171:1: Warnung: this is the
location of the previous definition




----------------------------------------------------------------------

>Comment By: Matthias Klose (doko)
Date: 2007-01-11 10:13

Message:
Logged In: YES 
user_id=60903
Originator: YES

8. For the C programming language, shall define _POSIX_C_SOURCE to be
    200112L before any header is included

_POSIX_C_SOURCE should be defined "before any header is included".

That phrase was taken from the following comments:

	https://sourceforge.net/tracker/?func=detail&atid=105470&aid=793764&group_id=5470

It's described at:

	Single Unix Specification 3:
	"2.2.1 Strictly Conforming POSIX Application" 8.


----------------------------------------------------------------------

Comment By: Martin v. Löwis (loewis)
Date: 2003-08-31 19:26

Message:
Logged In: YES 
user_id=21627

_POSIX_C_SOURCE is not reserved for the C library, but for
the application, see

http://www.opengroup.org/onlinepubs/007904975/basedefs/xbd_chap02.html
(section "Strictly Conforming POSIX Application")

A conforming POSIX application *must* define
_POSIX_C_SOURCE, so if your C library also defines it, it is
a bug in the C library.

Most likely, the author failed to include Python.h before
other system headers, as required per

http://www.python.org/doc/current/api/includes.html

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=793764&group_id=5470


More information about the Python-bugs-list mailing list