Issue 26308: Solaris 10 build issues (original) (raw)
When building on Solaris 10 I had to patch
Modules/_posixsubprocess.c -> dirfd issues Modules/socketmodule.c -> sethostname declaration setup.py -> ncurses detection
See the attached patch for details.
I built it like this:
CC=gcc CXX=g++ LDFLAGS="-m64 -L/opt/csw/lib/64 -R/opt/csw/lib/64" CPPFLAGS="-I/opt/csw/include -I/opt/csw/include/ncursesw" CFLAGS="-m64 -D_XOPEN_SOURCE=600 -std=gnu99" CXXFLAGS="-m64" ./configure --prefix=/usr/local/python-3.5.1
Note that /opt/csw/ is popular open source repository for Solaris 10; it is the first place to go to get relatively recent stuff like gcc 4.9 etc.
The first 2 hunks of the patch aren't very controversial, I guess. The Solaris-ncurses detection can be done in several ways, of course.
Also, one could change ncurses package build such that the global CFLAGS (especially -D_XOPEN_SOURCE=600) are picked up.
Another variation - the configure could try to detect if _XOPEN_SOURCE=600 is supported and - in case it is - automatically set it.