[ python-Bugs-985154 ] HAVE_FDATASYNC incorrectly set for 2.3.4 under cygwin

SourceForge.net noreply at sourceforge.net
Wed Jul 7 13:12:03 CEST 2004


Bugs item #985154, was opened at 2004-07-05 03:38
Message generated for change (Comment added) made by mwh
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=985154&group_id=5470

Category: Build
Group: Python 2.3
Status: Open
Resolution: None
Priority: 5
Submitted By: Gregory Smith (gregsmith)
Assigned to: Nobody/Anonymous (nobody)
Summary: HAVE_FDATASYNC incorrectly set for 2.3.4 under cygwin

Initial Comment:
Building 2.3.4 from the tarball, 
#define HAVE_FDATASYNC 1
appears in the pyconfig.h file, and
the build of 'posixmodule' fails with
undefined symbol _fdatasync

Workaround is to delete the line
and proceed, of course, but I've
never seen this before when building
under cygwin.

There is no 'fdatasync' mentioned
in any /usr/include/*.h or /usr/local/include/*.h

The cygwin installation is kind of a mongrel
(4 or 5 upgrades since install, some selective)
This is the ID string from the built python:

Python 2.3.4 (#2, Jul  4 2004, 22:10:22)
[GCC 3.3.1 (cygming special)] on cygwin

Let me know of any details of the cygwin install
which might be useful.




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

>Comment By: Michael Hudson (mwh)
Date: 2004-07-07 12:12

Message:
Logged In: YES 
user_id=6656

Well, I guess that's an arguable bug in cygwin, but if you want to 
supply a patch that modifies configure to do the linking test too, 
I'll at least think about applying it :-)

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

Comment By: Gregory Smith (gregsmith)
Date: 2004-07-06 02:58

Message:
Logged In: YES 
user_id=292741

looked into config.log and 'configure' itself.. the compile
for fdatasync succeeded, but the script does not attempt
to link it.  gcc -E  led me to the following 
chunk of /usr/include/sys/unistd.h:

(not inside any #ifdefs, as far as I can tell)

int     _EXFUN(fdatasync, (int __fd));


So it's declared in the header, but it's not in the
library. This symbol is defined in libc.a on a RH8.0
system, I can't find it anywhere on the cygwin system.
 




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

Comment By: Michael Hudson (mwh)
Date: 2004-07-05 14:40

Message:
Logged In: YES 
user_id=6656

That's odd.  Why does configure think you have fdatasync?  Maybe 
config.log will help...

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

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


More information about the Python-bugs-list mailing list