In issue 1759169 people have been demanding for quite some time that the definition of _XOPEN_SOURCE on Solaris should be dropped, as it was unneeded and caused problems for other software.
Now, issue 8864 reports that the multiprocessing module fails to compile, and indeed, if _XOPEN_SOURCE is not defined, control messages stop working. Several of the CMSG interfaces are only available if _XPG4_2 is defined (and, AFAICT, under no other condition); this, in turn, apparently is only defined if _XOPEN_SOURCE is 500, 600, or (has an arbitrary value and _XOPEN_SOURCE_EXTENDED is 1).
So how should I go about fixing that? a) revert the patch for #1759169, documentating that Python compilation actually requires _XOPEN_SOURCE to be defined, or b) define _XOPEN_SOURCE only for the multiprocessing module.
Any input appreciated.