Opened 7 years ago

Last modified 6 years ago

#53093 closed defect

poll call is broken on 10.12 — at Initial Version

Reported by: jwhowarth Owned by:
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: python27

Description

As reported in https://bugs.python.org/issue28456 and radar://28372390 as well ashttps://daniel.haxx.se/blog/2016/10/11/poll-on-mac-10-12-is-broken/ Apple broke the poll() call again in Sierra resulting in failures in the python test suite at...

======================================================================
FAIL: test_handle_expt (test.test_asyncore.TestAPI_UsePoll)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/sw/src/fink.build/python27-2.7.12-1/Python-2.7.12/Lib/test/test_asyncore.py", line 620, in test_handle_expt
    self.loop_waiting_for_flag(client)
  File "/sw/src/fink.build/python27-2.7.12-1/Python-2.7.12/Lib/test/test_asyncore.py", line 519, in loop_waiting_for_flag
    self.fail("flag not set")
AssertionError: flag not set

----------------------------------------------------------------------
Ran 41 tests in 6.847s

FAILED (failures=1)
test test_asyncore failed -- Traceback (most recent call last):
  File "/sw/src/fink.build/python27-2.7.12-1/Python-2.7.12/Lib/test/test_asyncore.py", line 620, in test_handle_expt
    self.loop_waiting_for_flag(client)
  File "/sw/src/fink.build/python27-2.7.12-1/Python-2.7.12/Lib/test/test_asyncore.py", line 519, in loop_waiting_for_flag
    self.fail("flag not set")
AssertionError: flag not set

1 test failed again:
    test_asyncore
make: [test] Error 1 (ignored)

Since the configure in python 2.7.12 doesn't have fine enough control to eliminate the usage of the poll() calls, I resorted to...

		perl -pi -e 's|\#define HAVE_POLL 1||' ./pyconfig.h
		perl -pi -e 's|\#define HAVE_POLL_H 1||g' ./pyconfig.h
		perl -pi -e 's|\#define HAVE_SYS_POLL_H 1||g' ./pyconfig.h

post-configure which allowed fink's python27 package to successfully pass 'make check'. MacPorts will need similar hack for the 10.12 python package builds.

Change History (0)

Note: See TracTickets for help on using tickets.