Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
cpython
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
Batuhan Osman TASKAYA
cpython
Commits
17c50cda
Kaydet (Commit)
17c50cda
authored
Ara 02, 2012
tarafından
Mark Dickinson
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
Issue 10052: fix failed uint32_t / uint64_t / int32_t / int64_t detection on some platforms.
üst
b83575b0
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
93 additions
and
8 deletions
+93
-8
pyport.h
Include/pyport.h
+21
-8
configure
configure
+40
-0
configure.ac
configure.ac
+20
-0
pyconfig.h.in
pyconfig.h.in
+12
-0
No files found.
Include/pyport.h
Dosyayı görüntüle @
17c50cda
...
...
@@ -93,9 +93,12 @@ Used in: PY_LONG_LONG
* uint32_t to be such a type unless stdint.h or inttypes.h defines uint32_t.
* However, it doesn't set HAVE_UINT32_T, so we do that here.
*/
#if (defined UINT32_MAX || defined uint32_t)
#ifndef PY_UINT32_T
#ifdef uint32_t
#define HAVE_UINT32_T 1
#endif
#ifdef HAVE_UINT32_T
#ifndef PY_UINT32_T
#define PY_UINT32_T uint32_t
#endif
#endif
...
...
@@ -103,23 +106,33 @@ Used in: PY_LONG_LONG
/* Macros for a 64-bit unsigned integer type; used for type 'twodigits' in the
* long integer implementation, when 30-bit digits are enabled.
*/
#if (defined UINT64_MAX || defined uint64_t)
#ifndef PY_UINT64_T
#ifdef uint64_t
#define HAVE_UINT64_T 1
#endif
#ifdef HAVE_UINT64_T
#ifndef PY_UINT64_T
#define PY_UINT64_T uint64_t
#endif
#endif
/* Signed variants of the above */
#if (defined INT32_MAX || defined int32_t)
#ifndef PY_INT32_T
#ifdef int32_t
#define HAVE_INT32_T 1
#endif
#ifdef HAVE_INT32_T
#ifndef PY_INT32_T
#define PY_INT32_T int32_t
#endif
#endif
#if (defined INT64_MAX || defined int64_t)
#if
ndef PY_INT64_T
#if
def int64_t
#define HAVE_INT64_T 1
#endif
#ifdef HAVE_INT64_T
#ifndef PY_INT64_T
#define PY_INT64_T int64_t
#endif
#endif
...
...
configure
Dosyayı görüntüle @
17c50cda
...
...
@@ -6703,6 +6703,21 @@ $as_echo "#define gid_t int" >>confdefs.h
fi
# There are two separate checks for each of the exact-width integer types we
# need. First we check whether the type is available using the usual
# AC_CHECK_TYPE macro with the default includes (which includes <inttypes.h>
# and <stdint.h> where available). We then also use the special type checks of
# the form AC_TYPE_UINT32_T, which in the case that uint32_t is not available
# directly, #define's uint32_t to be a suitable type.
ac_fn_c_check_type
"
$LINENO
"
"uint32_t"
"ac_cv_type_uint32_t"
"
$ac_includes_default
"
if
test
"x
$ac_cv_type_uint32_t
"
=
xyes
;
then
:
$as_echo
"#define HAVE_UINT32_T 1"
>>
confdefs.h
fi
ac_fn_c_find_uintX_t
"
$LINENO
"
"32"
"ac_cv_c_uint32_t"
case
$ac_cv_c_uint32_t
in
#(
no|yes
)
;;
#(
...
...
@@ -6717,6 +6732,14 @@ _ACEOF
;;
esac
ac_fn_c_check_type
"
$LINENO
"
"uint64_t"
"ac_cv_type_uint64_t"
"
$ac_includes_default
"
if
test
"x
$ac_cv_type_uint64_t
"
=
xyes
;
then
:
$as_echo
"#define HAVE_UINT64_T 1"
>>
confdefs.h
fi
ac_fn_c_find_uintX_t
"
$LINENO
"
"64"
"ac_cv_c_uint64_t"
case
$ac_cv_c_uint64_t
in
#(
no|yes
)
;;
#(
...
...
@@ -6731,6 +6754,14 @@ _ACEOF
;;
esac
ac_fn_c_check_type
"
$LINENO
"
"int32_t"
"ac_cv_type_int32_t"
"
$ac_includes_default
"
if
test
"x
$ac_cv_type_int32_t
"
=
xyes
;
then
:
$as_echo
"#define HAVE_INT32_T 1"
>>
confdefs.h
fi
ac_fn_c_find_intX_t
"
$LINENO
"
"32"
"ac_cv_c_int32_t"
case
$ac_cv_c_int32_t
in
#(
no|yes
)
;;
#(
...
...
@@ -6742,6 +6773,14 @@ _ACEOF
;;
esac
ac_fn_c_check_type
"
$LINENO
"
"int64_t"
"ac_cv_type_int64_t"
"
$ac_includes_default
"
if
test
"x
$ac_cv_type_int64_t
"
=
xyes
;
then
:
$as_echo
"#define HAVE_INT64_T 1"
>>
confdefs.h
fi
ac_fn_c_find_intX_t
"
$LINENO
"
"64"
"ac_cv_c_int64_t"
case
$ac_cv_c_int64_t
in
#(
no|yes
)
;;
#(
...
...
@@ -6753,6 +6792,7 @@ _ACEOF
;;
esac
ac_fn_c_check_type
"
$LINENO
"
"ssize_t"
"ac_cv_type_ssize_t"
"
$ac_includes_default
"
if
test
"x
$ac_cv_type_ssize_t
"
=
xyes
;
then
:
...
...
configure.ac
Dosyayı görüntüle @
17c50cda
...
...
@@ -1517,10 +1517,30 @@ AC_TYPE_PID_T
AC_DEFINE_UNQUOTED([RETSIGTYPE],[void],[assume C89 semantics that RETSIGTYPE is always void])
AC_TYPE_SIZE_T
AC_TYPE_UID_T
# There are two separate checks for each of the exact-width integer types we
# need. First we check whether the type is available using the usual
# AC_CHECK_TYPE macro with the default includes (which includes <inttypes.h>
# and <stdint.h> where available). We then also use the special type checks of
# the form AC_TYPE_UINT32_T, which in the case that uint32_t is not available
# directly, #define's uint32_t to be a suitable type.
AC_CHECK_TYPE(uint32_t,
AC_DEFINE(HAVE_UINT32_T, 1, [Define if your compiler provides uint32_t.]),,)
AC_TYPE_UINT32_T
AC_CHECK_TYPE(uint64_t,
AC_DEFINE(HAVE_UINT64_T, 1, [Define if your compiler provides uint64_t.]),,)
AC_TYPE_UINT64_T
AC_CHECK_TYPE(int32_t,
AC_DEFINE(HAVE_INT32_T, 1, [Define if your compiler provides int32_t.]),,)
AC_TYPE_INT32_T
AC_CHECK_TYPE(int64_t,
AC_DEFINE(HAVE_INT64_T, 1, [Define if your compiler provides int64_t.]),,)
AC_TYPE_INT64_T
AC_CHECK_TYPE(ssize_t,
AC_DEFINE(HAVE_SSIZE_T, 1, [Define if your compiler provides ssize_t]),,)
...
...
pyconfig.h.in
Dosyayı görüntüle @
17c50cda
...
...
@@ -370,6 +370,12 @@
/* Define to 1 if you have the `initgroups' function. */
#undef HAVE_INITGROUPS
/* Define if your compiler provides int32_t. */
#undef HAVE_INT32_T
/* Define if your compiler provides int64_t. */
#undef HAVE_INT64_T
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
...
...
@@ -847,6 +853,12 @@
/* Define this if you have tcl and TCL_UTF_MAX==6 */
#undef HAVE_UCS4_TCL
/* Define if your compiler provides uint32_t. */
#undef HAVE_UINT32_T
/* Define if your compiler provides uint64_t. */
#undef HAVE_UINT64_T
/* Define to 1 if the system has the type `uintptr_t'. */
#undef HAVE_UINTPTR_T
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment