diff options
author | Martin v. Löwis <martin@v.loewis.de> | 2003-06-14 21:03:05 (GMT) |
---|---|---|
committer | Martin v. Löwis <martin@v.loewis.de> | 2003-06-14 21:03:05 (GMT) |
commit | 19d173486b2263a269260343d65ac3929c89297e (patch) | |
tree | 2e95896d03cf0851f9e9a59a974b9a7080225424 | |
parent | 61e2c9a402106664142fa1e26ac5d938b2f95d1b (diff) | |
download | cpython-19d173486b2263a269260343d65ac3929c89297e.zip cpython-19d173486b2263a269260343d65ac3929c89297e.tar.gz cpython-19d173486b2263a269260343d65ac3929c89297e.tar.bz2 |
Patch #752671: NetBSD needs to link libintl to _locale.so.
-rw-r--r-- | Modules/Setup.dist | 3 | ||||
-rwxr-xr-x | configure | 66 | ||||
-rw-r--r-- | configure.in | 4 | ||||
-rw-r--r-- | pyconfig.h.in | 3 | ||||
-rw-r--r-- | setup.py | 4 |
5 files changed, 77 insertions, 3 deletions
diff --git a/Modules/Setup.dist b/Modules/Setup.dist index 7d486dc..3ca6dab 100644 --- a/Modules/Setup.dist +++ b/Modules/Setup.dist @@ -173,7 +173,8 @@ GLHACK=-Dclear=__GLclear #unicodedata unicodedata.c # static Unicode character database -#_locale _localemodule.c # access to ISO C locale support +# access to ISO C locale support +#_locale _localemodule.c # -lintl # Modules with some UNIX dependencies -- on by default: @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in Revision: 1.416 . +# From configure.in Revision: 1.417 . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.53 for python 2.3. # @@ -9930,6 +9930,70 @@ fi # 'Real Time' functions on Solaris # posix4 on Solaris 2.6 # pthread (first!) on Linux +# check if we need libintl for locale functions +echo "$as_me:$LINENO: checking for textdomain in -lintl" >&5 +echo $ECHO_N "checking for textdomain in -lintl... $ECHO_C" >&6 +if test "${ac_cv_lib_intl_textdomain+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lintl $LIBS" +cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" +#include "confdefs.h" + +/* Override any gcc2 internal prototype to avoid an error. */ +#ifdef __cplusplus +extern "C" +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char textdomain (); +#ifdef F77_DUMMY_MAIN +# ifdef __cplusplus + extern "C" +# endif + int F77_DUMMY_MAIN() { return 1; } +#endif +int +main () +{ +textdomain (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -s conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_lib_intl_textdomain=yes +else + echo "$as_me: failed program was:" >&5 +cat conftest.$ac_ext >&5 +ac_cv_lib_intl_textdomain=no +fi +rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +echo "$as_me:$LINENO: result: $ac_cv_lib_intl_textdomain" >&5 +echo "${ECHO_T}$ac_cv_lib_intl_textdomain" >&6 +if test $ac_cv_lib_intl_textdomain = yes; then + +cat >>confdefs.h <<\_ACEOF +#define WITH_LIBINTL 1 +_ACEOF + +fi + # checks for system dependent C++ extensions support case "$ac_sys_system" in diff --git a/configure.in b/configure.in index 1bd0f61..fb1c962 100644 --- a/configure.in +++ b/configure.in @@ -1346,6 +1346,10 @@ AC_CHECK_LIB(dld, shl_load) # Dynamic linking for HP-UX AC_SEARCH_LIBS(sem_init, pthread rt posix4) # 'Real Time' functions on Solaris # posix4 on Solaris 2.6 # pthread (first!) on Linux +# check if we need libintl for locale functions +AC_CHECK_LIB(intl, textdomain, + AC_DEFINE(WITH_LIBINTL, 1, + [Define to 1 if libintl is needed for locale functions.])) # checks for system dependent C++ extensions support case "$ac_sys_system" in diff --git a/pyconfig.h.in b/pyconfig.h.in index 2f14b84..e0e2f5b 100644 --- a/pyconfig.h.in +++ b/pyconfig.h.in @@ -781,6 +781,9 @@ Dyld is necessary to support frameworks. */ #undef WITH_DYLD +/* Define to 1 if libintl is needed for locale functions. */ +#undef WITH_LIBINTL + /* Define if you want to produce an OpenStep/Rhapsody framework (shared library plus accessory files). */ #undef WITH_NEXT_FRAMEWORK @@ -339,7 +339,9 @@ class PyBuildExt(build_ext): if have_unicode: exts.append( Extension('unicodedata', ['unicodedata.c']) ) # access to ISO C locale support - if platform in ['cygwin', 'aix4']: + data = open('pyconfig.h').read() + m = re.search(r"#s*define\s+WITH_LIBINTL\s+1\s*", data) + if m is not None: locale_libs = ['intl'] else: locale_libs = [] |