diff options
author | Joel Brobecker <brobecker@gnat.com> | 2010-10-26 18:06:34 +0000 |
---|---|---|
committer | Joel Brobecker <brobecker@gnat.com> | 2010-10-26 18:06:34 +0000 |
commit | aed1781d4015eba1f780f65e2f11ef7841be4c46 (patch) | |
tree | 42e7b9568587f1970ab5fb681980513391f0622b /gdb/python/python-internal.h | |
parent | 1e3fad37be22688d325e2e96ce308e790aa81120 (diff) | |
download | gdb-aed1781d4015eba1f780f65e2f11ef7841be4c46.zip gdb-aed1781d4015eba1f780f65e2f11ef7841be4c46.tar.gz gdb-aed1781d4015eba1f780f65e2f11ef7841be4c46.tar.bz2 |
Fix build failures with python support on sparc-solaris
There were two types of errors, mostly compiler warnings:
1. _FILE_OFFSET_BITS being redefined in pyconfig.h;
This is a problem we're familiar with, having seen similar
issues on GNU/Linux systems. I used a similar solution.
2. GCC 4.5 complains that calls to PyEval_InitThreads and
PyEval_ReleaseLock have no effect. This is because our Python
is built without thread support, leading us to use the dummy
#define in python-internal.h which just gets replaced by `0'.
Since this function returns void (checked versions 2.4 and 2.7),
I simply removed the 0.
gdb/ChangeLog:
python/python-internal.h (_FILE_OFFSET_BITS): Undefine.
(PyEval_InitThreads): Remove duplicate. Define as nothing.
(PyEval_ReleaseLock): Define as nothing.
Diffstat (limited to 'gdb/python/python-internal.h')
-rw-r--r-- | gdb/python/python-internal.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/gdb/python/python-internal.h b/gdb/python/python-internal.h index d00c23e..e18f50a 100644 --- a/gdb/python/python-internal.h +++ b/gdb/python/python-internal.h @@ -36,6 +36,11 @@ #undef _POSIX_C_SOURCE #undef _XOPEN_SOURCE +/* On sparc-solaris, /usr/include/sys/feature_tests.h defines + _FILE_OFFSET_BITS, which pyconfig.h also defines. Same work + arount technique as above. */ +#undef _FILE_OFFSET_BITS + #if HAVE_LIBPYTHON2_4 #include "python2.4/Python.h" #include "python2.4/frameobject.h" @@ -63,10 +68,9 @@ typedef int Py_ssize_t; #ifndef WITH_THREAD #define PyGILState_Ensure() ((PyGILState_STATE) 0) #define PyGILState_Release(ARG) ((void)(ARG)) -#define PyEval_InitThreads() 0 +#define PyEval_InitThreads() #define PyThreadState_Swap(ARG) ((void)(ARG)) -#define PyEval_InitThreads() 0 -#define PyEval_ReleaseLock() 0 +#define PyEval_ReleaseLock() #endif /* In order to be able to parse symtab_and_line_to_sal_object function |