[issue9664] Make gzip module not require that underlying file object support seek
Matt Kraai added the comment: I don't know the gzip format well enough, but I was hoping that it would be possible to iterate through the lines of a gzip-compressed stream without having to use any of the functions that would require seeking. -- nosy: +kraai ___ Python tracker <http://bugs.python.org/issue9664> ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue1722225] Build on QNX
Matt Kraai added the comment: I'm willing to maintain the QNX 6 port, but I can't promise that I'll be able to do so for 5 years. I don't know if that's sufficient or not. _ Tracker <[EMAIL PROTECTED]> <http://bugs.python.org/issue175> _ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue1722225] Build on QNX 6
Matt Kraai added the comment: I'm not interested in QNX 4, as that's not what I use. I'd be willing to supporting threads on QNX 6. -- title: Build on QNX -> Build on QNX 6 _ Tracker <[EMAIL PROTECTED]> <http://bugs.python.org/issue175> _ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue1722225] Build on QNX 6
Matt Kraai added the comment: If they're defined, TCGETA, TCSETA, TCSETAW, and TCSETAF are used on lines 702, 714, 717, and 720 of Modules/termios.c as of r60219. They are defined by sys/ioctl.h as #define TCGETA _IOR('T', 1, struct termio) #define TCSETA _IOW('T', 2, struct termio) #define TCSETAW _IOW('T', 3, struct termio) #define TCSETAF _IOW('T', 4, struct termio) These macro definitions expand to ( 0x4000 | (( sizeof( struct termio ) & 0x3fff ) << 16) | (( ( 'T' ) ) << 8) | ( ( 1 ) )) ( 0x8000 | (( sizeof( struct termio ) & 0x3fff ) << 16) | (( ( 'T' ) ) << 8) | ( ( 2 ) )) ( 0x8000 | (( sizeof( struct termio ) & 0x3fff ) << 16) | (( ( 'T' ) ) << 8) | ( ( 3 ) )) ( 0x8000 | (( sizeof( struct termio ) & 0x3fff ) << 16) | (( ( 'T' ) ) << 8) | ( ( 4 ) )) respectively, so struct termio must be declared if any of these macros are used. struct termio is declared in sys/termio.h. Since sys/termio.h isn't included, Modules/termios.c fails to compile with the following error messages: /home/m_kraai/src/python/Modules/termios.c:702: sizeof applied to an incomplete type /home/m_kraai/src/python/Modules/termios.c:714: sizeof applied to an incomplete type /home/m_kraai/src/python/Modules/termios.c:717: sizeof applied to an incomplete type /home/m_kraai/src/python/Modules/termios.c:720: sizeof applied to an incomplete type sys/termio.h checks that it's included before termios.h is first included. If it's not included first, it produces the following error message: /usr/qnx630/target/qnx6/usr/include/sys/termio.h:109: #error termio/termios incompatibility What should configure test for? _ Tracker <[EMAIL PROTECTED]> <http://bugs.python.org/issue175> _ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue1722225] Build on QNX 6
Matt Kraai added the comment: This patch contains two improvements over the previous version: * it uses configure to check whether sys/termio.h is available and uses the result to determine whether to include it and * it makes malloc_closure.c use _SC_PAGESIZE instead of getpagesize if it's available. I believe there are two unresolved issues at this point, the wchar_t definition and the stack size. [n]curses.h defines wchar_t if _XOPEN_SOURCE_EXTENDED is defined and if _WCHAR_T is not defined: #ifdef _XOPEN_SOURCE_EXTENDED #ifndef _WCHAR_T typedef unsigned long wchar_t; #endif /* _WCHAR_T */ #ifndef _WINT_T typedef long int wint_t; #endif /* _WINT_T */ stdlib.h defines wchar_t if __WCHAR_T is defined: #if defined(__WCHAR_T) typedef __WCHAR_T wchar_t; #undef __WCHAR_T #endif I'm afraid I don't quite understand what configure should test for in this case either. Please help! Regarding the stack size, how can I test whether 2MiB is sufficient for the default recursion limit? Added file: http://bugs.python.org/file9273/patch _ Tracker <[EMAIL PROTECTED]> <http://bugs.python.org/issue175> _ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue1722225] Build on QNX 6
Matt Kraai added the comment: Regarding the curses issue, I removed that portion of the patch and the curses module still compiled. It must have been an artifact from before I disabled _XOPEN_SOURCE. Thanks for catching that. Regarding the stack size, without the "-N 2048K" option, "make test" fails as follows: ... test_compare test_compile make: *** [test] segmentation violation (core dumped) The default recursion limit returned by sys.getrecursionlimit() is 1000, and Misc/find_recursionlimit.py says that 1100 is fine. With -N 2048K, test_compile does not produce a segmentation fault and Misc/find_recursionlimit.py says that 4700 is fine. Added file: http://bugs.python.org/file9287/patch _ Tracker <[EMAIL PROTECTED]> <http://bugs.python.org/issue175> _ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue4532] Fails to build on QNX 6.3.2
New submission from Matt Kraai <[EMAIL PROTECTED]>: When I try to build Python 3.0 on QNX 6.3.2, the build has the following error: gcc -c -fno-strict-aliasing -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -I. -IInclude -I./Include -DPy_BUILD_CORE -o Python/pythonrun.o Python/pythonrun.c Python/pythonrun.c: In function `Py_InitializeEx': ... Python/pythonrun.c:180: `LC_CTYPE' undeclared (first use in this function) Python/pythonrun.c:180: (Each undeclared identifier is reported only once Python/pythonrun.c:180: for each function it appears in.) ... make: *** [Python/pythonrun.o] Error 1 LC_CTYPE is defined in locale.h, which isn't included because HAVE_LANGINFO_H isn't defined because QNX 6.3.2 doesn't provide langinfo.h. The setlocale call in the trunk is guarded by HAVE_LANGINFO_H, so maybe that should be done here as well. Once this error has been fixed, the following error occurs: gcc -c -fno-strict-aliasing -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -I. -IInclude -I./Include -DPy_BUILD_CORE -DPYTHONPATH='":plat-qnx6"' \ -DPREFIX='"/usr/local"' \ -DEXEC_PREFIX='"/usr/local"' \ -DVERSION='"3.0"' \ -DVPATH='""' \ -o Modules/getpath.o ./Modules/getpath.c ./Modules/getpath.c:132: invalid initializer ... make: *** [Modules/getpath.o] Error 1 This version of GCC apparently cannot handle wchar_t array initializers. This can be worked around by changing the type of lib_python to a wchar_t pointer instead. -- components: Build files: fix-qnx-build-errors messages: 76912 nosy: kraai severity: normal status: open title: Fails to build on QNX 6.3.2 type: compile error versions: Python 3.0 Added file: http://bugs.python.org/file12224/fix-qnx-build-errors ___ Python tracker <[EMAIL PROTECTED]> <http://bugs.python.org/issue4532> ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue7209] Prevents uint_t from being used on QNX
New submission from Matt Kraai : pyconfig.h defines _POSIX_C_SOURCE to 200112L, which prevents QNX's sys/types.h from defining uint_t. Samba 4 uses this type, so it fails to compile if Python.h is included first (cf. https://bugzilla.samba.org/show_bug.cgi?id=6842). The attached patch fixes this issue by defining _QNX_SOURCE. -- components: Build files: define-_QNX_SOURCE.patch keywords: patch messages: 94493 nosy: kraai severity: normal status: open title: Prevents uint_t from being used on QNX versions: Python 2.7 Added file: http://bugs.python.org/file15202/define-_QNX_SOURCE.patch ___ Python tracker <http://bugs.python.org/issue7209> ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue7209] Prevents uint_t from being used on QNX
Matt Kraai added the comment: Here's an updated patch. The first time I forgot to regenerate pyconfig.h.in. -- Added file: http://bugs.python.org/file15203/define-_QNX_SOURCE.patch ___ Python tracker <http://bugs.python.org/issue7209> ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com