Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(1067)

Side by Side Diff: configure.ac

Issue 3754: cross-compilation support for python build
Patch Set: Created 11 months, 2 weeks ago
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
View unified diff | Download patch
« no previous file with comments | « Makefile.pre.in ('k') | pyconfig.h.in » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 dnl *********************************************** 1 dnl ***********************************************
2 dnl * Please run autoreconf to test your changes! * 2 dnl * Please run autoreconf to test your changes! *
3 dnl *********************************************** 3 dnl ***********************************************
4 4
5 # Set VERSION so we only need to edit in one place (i.e., here) 5 # Set VERSION so we only need to edit in one place (i.e., here)
6 m4_define(PYTHON_VERSION, 3.3) 6 m4_define(PYTHON_VERSION, 3.3)
7 7
8 AC_PREREQ(2.65) 8 AC_PREREQ(2.65)
9 9
10 AC_INIT(python, PYTHON_VERSION, http://bugs.python.org/) 10 AC_INIT(python, PYTHON_VERSION, http://bugs.python.org/)
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
57 #endif 57 #endif
58 58
59 #endif /*Py_PYCONFIG_H*/ 59 #endif /*Py_PYCONFIG_H*/
60 ]) 60 ])
61 61
62 # We don't use PACKAGE_ variables, and they cause conflicts 62 # We don't use PACKAGE_ variables, and they cause conflicts
63 # with other autoconf-based packages that include Python.h 63 # with other autoconf-based packages that include Python.h
64 grep -v 'define PACKAGE_' <confdefs.h >confdefs.h.new 64 grep -v 'define PACKAGE_' <confdefs.h >confdefs.h.new
65 rm confdefs.h 65 rm confdefs.h
66 mv confdefs.h.new confdefs.h 66 mv confdefs.h.new confdefs.h
67
68 dnl makefile conditional (for future use)
69 if test "x$cross_compiling" = xyes; then
70 CROSS_ON=''
71 CROSS_OFF='#'
72 else
73 CROSS_ON='#'
74 CROSS_OFF=''
75 fi
76 AC_SUBST(CROSS_ON)
77 AC_SUBST(CROSS_OFF)
78
79 AC_PROG_LN_S
80 if test "x$cross_compiling" = xyes; then
81 AC_MSG_WARN([cross-compilation is incomplete])
82
83 dnl In cross-compilation environment we need python from
84 dnl the build system (for future use)
85 AC_PATH_PROG(SYSPYTHON, python3, [none],
86 [$PATH:/usr/local/bin]
87 )
88 if test "x$PYTHON" = xnone; then
89 AC_MSG_ERROR([python program is required in cross-compilation environment])
90 fi
91 SYSPYOSNAME=`${SYSPYTHON} -c "import os; print(os.name)"`
92 case $SYSPYOSNAME in
93 posix)
94 dnl On posix distutils read variables from installed makefile.
95 dnl We will do some hacks based on distutils internals to overcome
96 dnl this limitation:
97 dnl - we link system python in build directory so that it will
98 dnl read generated file.
99 dnl As result from sysconfig.get_config_vars we will get our
100 dnl setting (for the host system) like SO, CFLAGS, CPPFLAGS,
101 dnl LDFLAGS instead those for the build system.
102 rm -f syspython3
103 ${LN_S} ${SYSPYTHON} syspython3
104 SYSPYTHON=./syspython3
105 esac
106 fi
67 107
68 AC_SUBST(VERSION) 108 AC_SUBST(VERSION)
69 VERSION=PYTHON_VERSION 109 VERSION=PYTHON_VERSION
70 110
71 # Version number of Python's own shared library file. 111 # Version number of Python's own shared library file.
72 AC_SUBST(SOVERSION) 112 AC_SUBST(SOVERSION)
73 SOVERSION=1.0 113 SOVERSION=1.0
74 114
75 # The later defininition of _XOPEN_SOURCE disables certain features 115 # The later defininition of _XOPEN_SOURCE disables certain features
76 # on Linux, so we need _GNU_SOURCE to re-enable them (makedev, tm_zone). 116 # on Linux, so we need _GNU_SOURCE to re-enable them (makedev, tm_zone).
(...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after
281 AC_SUBST(FRAMEWORKALTINSTALLFIRST) 321 AC_SUBST(FRAMEWORKALTINSTALLFIRST)
282 AC_SUBST(FRAMEWORKALTINSTALLLAST) 322 AC_SUBST(FRAMEWORKALTINSTALLLAST)
283 AC_SUBST(FRAMEWORKUNIXTOOLSPREFIX) 323 AC_SUBST(FRAMEWORKUNIXTOOLSPREFIX)
284 AC_SUBST(FRAMEWORKINSTALLAPPSPREFIX) 324 AC_SUBST(FRAMEWORKINSTALLAPPSPREFIX)
285 325
286 ##AC_ARG_WITH(dyld, 326 ##AC_ARG_WITH(dyld,
287 ## AS_HELP_STRING([--with-dyld], 327 ## AS_HELP_STRING([--with-dyld],
288 ## [Use (OpenStep|Rhapsody) dynamic linker])) 328 ## [Use (OpenStep|Rhapsody) dynamic linker]))
289 ## 329 ##
290 # Set name for machine-dependent library files 330 # Set name for machine-dependent library files
331 dnl Now configure script support cross-compilation and detection of host
332 dnl system based on value of $ac_sys_system and/or $ac_sys_release
333 dnl has to be avoided. It is superseded by "host triplet"(cpu-verdor-os).
334 dnl FIXME: replace all cases based on $ac_sys_system and/or $ac_sys_release
335 dnl with case based on $host ("host triplet") or $host_os.
336 dnl Also cases with MACHDEP may be replaces by $host or $host_os. Note
337 dnl script may not set this variable if cross compiling.
338
339 dnl Next two variables are intended to be passed through makefile to other
340 dnl scripts. As example setup.py check for CPU(machine) and OS(platform).
341 HOST_CPU=$host_cpu
342 AC_SUBST(HOST_CPU)
343 HOST_OS=$host_os
344 AC_SUBST(HOST_OS)
345
291 AC_SUBST(MACHDEP) 346 AC_SUBST(MACHDEP)
347 if test "x$cross_compiling" = xyes; then
348 dnl Note that $host_os cannot be translated directly into python
349 dnl specific $MACHDEP.
350 AC_MSG_WARN([
351 May be value of MACHDEP isn't correct if cross-compiling.
352 You may tweak configure script for you host system: $host])
353 fi
292 AC_MSG_CHECKING(MACHDEP) 354 AC_MSG_CHECKING(MACHDEP)
293 if test -z "$MACHDEP" 355 if test -z "$MACHDEP"
294 then 356 then
295 # avoid using uname for cross builds 357 # avoid using uname for cross builds
296 if test "$cross_compiling" = yes; then 358 if test "$cross_compiling" = yes; then
297 # ac_sys_system and ac_sys_release are only used for setting 359 # ac_sys_system and ac_sys_release are only used for setting
298 # `define_xopen_source' in the case statement below. For the 360 # `define_xopen_source' in the case statement below. For the
299 # current supported cross builds, this macro is not adjusted. 361 # current supported cross builds, this macro is not adjusted.
300 case "$host" in 362 case "$host" in
301 *-*-linux*) 363 *-*-linux*)
(...skipping 20 matching lines...) Expand all
322 ac_md_system=`echo $ac_sys_system | 384 ac_md_system=`echo $ac_sys_system |
323 tr -d '[/ ]' | tr '[[A-Z]]' '[[a-z]]'` 385 tr -d '[/ ]' | tr '[[A-Z]]' '[[a-z]]'`
324 ac_md_release=`echo $ac_sys_release | 386 ac_md_release=`echo $ac_sys_release |
325 tr -d '[/ ]' | sed 's/^[[A-Z]]\.//' | sed 's/\..*//'` 387 tr -d '[/ ]' | sed 's/^[[A-Z]]\.//' | sed 's/\..*//'`
326 MACHDEP="$ac_md_system$ac_md_release" 388 MACHDEP="$ac_md_system$ac_md_release"
327 389
328 case $MACHDEP in 390 case $MACHDEP in
329 linux*) MACHDEP="linux";; 391 linux*) MACHDEP="linux";;
330 cygwin*) MACHDEP="cygwin";; 392 cygwin*) MACHDEP="cygwin";;
331 darwin*) MACHDEP="darwin";; 393 darwin*) MACHDEP="darwin";;
332 irix646) MACHDEP="irix6";; 394 » irix646) MACHDEP="irix6";;
333 '') MACHDEP="unknown";; 395 '') MACHDEP="unknown";;
334 esac 396 esac
335 fi 397 fi
336 398
337 # Some systems cannot stand _XOPEN_SOURCE being defined at all; they 399 # Some systems cannot stand _XOPEN_SOURCE being defined at all; they
338 # disable features if it is defined, without any means to access these 400 # disable features if it is defined, without any means to access these
339 # features as extensions. For these systems, we skip the definition of 401 # features as extensions. For these systems, we skip the definition of
340 # _XOPEN_SOURCE. Before adding a system to the list to gain access to 402 # _XOPEN_SOURCE. Before adding a system to the list to gain access to
341 # some feature, make sure there is no alternative way to access this 403 # some feature, make sure there is no alternative way to access this
342 # feature. Also, when using wildcards, make sure you have verified the 404 # feature. Also, when using wildcards, make sure you have verified the
(...skipping 386 matching lines...) Expand 10 before | Expand all | Expand 10 after
729 CYGWIN*) 791 CYGWIN*)
730 enable_shared="yes";; 792 enable_shared="yes";;
731 *) 793 *)
732 enable_shared="no";; 794 enable_shared="no";;
733 esac 795 esac
734 fi 796 fi
735 AC_MSG_RESULT($enable_shared) 797 AC_MSG_RESULT($enable_shared)
736 798
737 AC_MSG_CHECKING(for --enable-profiling) 799 AC_MSG_CHECKING(for --enable-profiling)
738 AC_ARG_ENABLE(profiling, 800 AC_ARG_ENABLE(profiling,
739 AS_HELP_STRING([--enable-profiling], [enable C-level code profilin g]), 801 AS_HELP_STRING([--enable-profiling], [enable C-level code profilin g]))
740 [ac_save_cc="$CC" 802 if test "x$enable_profiling" = xyes; then
741 CC="$CC -pg" 803 py_save_CFLAGS="$CFLAGS"
742 AC_RUN_IFELSE([AC_LANG_SOURCE([[int main() { return 0; }]])], 804 CFLAGS="$CFLAGS -pg"
743 [ac_enable_profiling="yes"], 805 AC_COMPILE_IFELSE([AC_LANG_SOURCE([[]])],
744 [ac_enable_profiling="no"], 806 [],
745 [ac_enable_profiling="no"]) 807 [enable_profiling=no])
746 CC="$ac_save_cc"]) 808 CFLAGS="$py_save_CFLAGS"
747 AC_MSG_RESULT($ac_enable_profiling) 809 else
810 enable_profiling=no
811 fi
812 AC_MSG_RESULT($enable_profiling)
748 813
749 case "$ac_enable_profiling" in 814 if test "x$enable_profiling" = xyes; then
750 "yes") 815 BASECFLAGS="-pg $BASECFLAGS"
751 » BASECFLAGS="-pg $BASECFLAGS" 816 LDFLAGS="-pg $LDFLAGS"
752 » LDFLAGS="-pg $LDFLAGS" 817 fi
753 ;;
754 esac
755 818
756 AC_MSG_CHECKING(LDLIBRARY) 819 AC_MSG_CHECKING(LDLIBRARY)
757 820
758 # MacOSX framework builds need more magic. LDLIBRARY is the dynamic 821 # MacOSX framework builds need more magic. LDLIBRARY is the dynamic
759 # library that we build, but we do not want to link against it (we 822 # library that we build, but we do not want to link against it (we
760 # will find it with a -framework option). For this reason there is an 823 # will find it with a -framework option). For this reason there is an
761 # extra variable BLDLIBRARY against which Python and the extension 824 # extra variable BLDLIBRARY against which Python and the extension
762 # modules are linked, BLDLIBRARY. This is normally the same as 825 # modules are linked, BLDLIBRARY. This is normally the same as
763 # LDLIBRARY, but empty for MacOSX framework builds. 826 # LDLIBRARY, but empty for MacOSX framework builds.
764 if test "$enable_framework" 827 if test "$enable_framework"
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
831 CYGWIN*) 894 CYGWIN*)
832 BLDLIBRARY='$(LIBRARY)' 895 BLDLIBRARY='$(LIBRARY)'
833 LDLIBRARY='libpython$(LDVERSION).dll.a' 896 LDLIBRARY='libpython$(LDVERSION).dll.a'
834 ;; 897 ;;
835 esac 898 esac
836 fi 899 fi
837 900
838 AC_MSG_RESULT($LDLIBRARY) 901 AC_MSG_RESULT($LDLIBRARY)
839 902
840 AC_PROG_RANLIB 903 AC_PROG_RANLIB
841 AC_SUBST(AR) 904 AC_CHECK_TOOLS(AR, ar aal, ar)
842 AC_CHECK_PROGS(AR, ar aal, ar)
843 905
844 # tweak ARFLAGS only if the user didn't set it on the command line 906 # tweak ARFLAGS only if the user didn't set it on the command line
845 AC_SUBST(ARFLAGS) 907 AC_SUBST(ARFLAGS)
846 if test -z "$ARFLAGS" 908 if test -z "$ARFLAGS"
847 then 909 then
848 ARFLAGS="rc" 910 ARFLAGS="rc"
849 fi 911 fi
850 912
851 AC_SUBST(DISABLE_ASDLGEN) 913 AC_SUBST(DISABLE_ASDLGEN)
852 DISABLE_ASDLGEN="" 914 DISABLE_ASDLGEN=""
(...skipping 417 matching lines...) Expand 10 before | Expand all | Expand 10 after
1270 fi 1332 fi
1271 1333
1272 if test $ac_cv_kthread = no -a $ac_cv_pthread_is_default = no 1334 if test $ac_cv_kthread = no -a $ac_cv_pthread_is_default = no
1273 then 1335 then
1274 # -pthread, if available, provides the right #defines 1336 # -pthread, if available, provides the right #defines
1275 # and linker options to make pthread_create available 1337 # and linker options to make pthread_create available
1276 # Some compilers won't report that they do not support -pthread, 1338 # Some compilers won't report that they do not support -pthread,
1277 # so we need to run a program to see whether it really made the 1339 # so we need to run a program to see whether it really made the
1278 # function available. 1340 # function available.
1279 AC_MSG_CHECKING(whether $CC accepts -pthread) 1341 AC_MSG_CHECKING(whether $CC accepts -pthread)
1280 AC_CACHE_VAL(ac_cv_thread, 1342 AC_CACHE_VAL(ac_cv_pthread,
1281 [ac_save_cc="$CC" 1343 [ac_save_cc="$CC"
1282 CC="$CC -pthread" 1344 CC="$CC -pthread"
1283 AC_RUN_IFELSE([AC_LANG_SOURCE([[ 1345 AC_RUN_IFELSE([AC_LANG_SOURCE([[
1284 #include <pthread.h> 1346 #include <pthread.h>
1285 1347
1286 void* routine(void* p){return NULL;} 1348 void* routine(void* p){return NULL;}
1287 1349
1288 int main(){ 1350 int main(){
1289 pthread_t p; 1351 pthread_t p;
1290 if(pthread_create(&p,NULL,routine,NULL)!=0) 1352 if(pthread_create(&p,NULL,routine,NULL)!=0)
(...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after
1577 # if have pthread_t then define SIZEOF_PTHREAD_T 1639 # if have pthread_t then define SIZEOF_PTHREAD_T
1578 ac_save_cc="$CC" 1640 ac_save_cc="$CC"
1579 if test "$ac_cv_kpthread" = "yes" 1641 if test "$ac_cv_kpthread" = "yes"
1580 then CC="$CC -Kpthread" 1642 then CC="$CC -Kpthread"
1581 elif test "$ac_cv_kthread" = "yes" 1643 elif test "$ac_cv_kthread" = "yes"
1582 then CC="$CC -Kthread" 1644 then CC="$CC -Kthread"
1583 elif test "$ac_cv_pthread" = "yes" 1645 elif test "$ac_cv_pthread" = "yes"
1584 then CC="$CC -pthread" 1646 then CC="$CC -pthread"
1585 fi 1647 fi
1586 1648
1587 AC_MSG_CHECKING(for pthread_t) 1649 dnl NOTE: avoid duplicate check for pthread_t(it is done in AC_CHECK_SIZEOF(pthr ead_t...) )
1588 have_pthread_t=no 1650 dnl AC_MSG_CHECKING(for pthread_t)
1589 AC_COMPILE_IFELSE([ 1651 dnl have_pthread_t=no
1590 AC_LANG_PROGRAM([[#include <pthread.h>]], [[pthread_t x; x = *(pthread_t*)0;]] ) 1652 dnl AC_COMPILE_IFELSE([
1591 ],[have_pthread_t=yes],[]) 1653 dnl AC_LANG_PROGRAM([[#include <pthread.h>]], [[pthread_t x; x = *(pthread_t*) 0;]])
1592 AC_MSG_RESULT($have_pthread_t) 1654 dnl ],[have_pthread_t=yes],[])
1593 if test "$have_pthread_t" = yes ; then 1655 dnl AC_MSG_RESULT($have_pthread_t)
1656 dnl if test "$have_pthread_t" = yes ; then
1594 AC_CHECK_SIZEOF(pthread_t, [], [ 1657 AC_CHECK_SIZEOF(pthread_t, [], [
1595 #ifdef HAVE_PTHREAD_H 1658 #ifdef HAVE_PTHREAD_H
1596 #include <pthread.h> 1659 #include <pthread.h>
1597 #endif 1660 #endif
1598 ]) 1661 ])
1599 fi 1662 dnl fi
1600 CC="$ac_save_cc" 1663 CC="$ac_save_cc"
1601 1664
1602 AC_SUBST(OTHER_LIBTOOL_OPT) 1665 AC_SUBST(OTHER_LIBTOOL_OPT)
1603 case $ac_sys_system/$ac_sys_release in 1666 case $ac_sys_system/$ac_sys_release in
1604 Darwin/@<:@01567@:>@\..*) 1667 Darwin/@<:@01567@:>@\..*)
1605 OTHER_LIBTOOL_OPT="-prebind -seg1addr 0x10000000" 1668 OTHER_LIBTOOL_OPT="-prebind -seg1addr 0x10000000"
1606 ;; 1669 ;;
1607 Darwin/*) 1670 Darwin/*)
1608 OTHER_LIBTOOL_OPT="" 1671 OTHER_LIBTOOL_OPT=""
1609 ;; 1672 ;;
(...skipping 897 matching lines...) Expand 10 before | Expand all | Expand 10 after
2507 [AC_MSG_RESULT(no)]) 2570 [AC_MSG_RESULT(no)])
2508 2571
2509 # Check for Python-specific malloc support 2572 # Check for Python-specific malloc support
2510 AC_MSG_CHECKING(for --with-pymalloc) 2573 AC_MSG_CHECKING(for --with-pymalloc)
2511 AC_ARG_WITH(pymalloc, 2574 AC_ARG_WITH(pymalloc,
2512 AS_HELP_STRING([--with(out)-pymalloc], [disable/enable specialized m allocs])) 2575 AS_HELP_STRING([--with(out)-pymalloc], [disable/enable specialized m allocs]))
2513 2576
2514 if test -z "$with_pymalloc" 2577 if test -z "$with_pymalloc"
2515 then 2578 then
2516 with_pymalloc="yes" 2579 with_pymalloc="yes"
2517 ABIFLAGS="${ABIFLAGS}m"
2518 fi 2580 fi
2519 if test "$with_pymalloc" != "no" 2581 if test "$with_pymalloc" != "no"
2520 then 2582 then
2521 AC_DEFINE(WITH_PYMALLOC, 1, 2583 AC_DEFINE(WITH_PYMALLOC, 1,
2522 [Define if you want to compile in Python-specific mallocs]) 2584 [Define if you want to compile in Python-specific mallocs])
2585 ABIFLAGS="${ABIFLAGS}m"
2523 fi 2586 fi
2524 AC_MSG_RESULT($with_pymalloc) 2587 AC_MSG_RESULT($with_pymalloc)
2525 2588
2526 # Check for Valgrind support 2589 # Check for Valgrind support
2527 AC_MSG_CHECKING([for --with-valgrind]) 2590 AC_MSG_CHECKING([for --with-valgrind])
2528 AC_ARG_WITH([valgrind], 2591 AC_ARG_WITH([valgrind],
2529 AS_HELP_STRING([--with-valgrind], [Enable Valgrind support]),, 2592 AS_HELP_STRING([--with-valgrind], [Enable Valgrind support]),,
2530 with_valgrind=no) 2593 with_valgrind=no)
2531 AC_MSG_RESULT([$with_valgrind]) 2594 AC_MSG_RESULT([$with_valgrind])
2532 if test "$with_valgrind" != no; then 2595 if test "$with_valgrind" != no; then
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
2581 # MACHDEP_OBJS can be set to platform-specific object files needed by Python 2644 # MACHDEP_OBJS can be set to platform-specific object files needed by Python
2582 2645
2583 AC_SUBST(MACHDEP_OBJS) 2646 AC_SUBST(MACHDEP_OBJS)
2584 AC_MSG_CHECKING(MACHDEP_OBJS) 2647 AC_MSG_CHECKING(MACHDEP_OBJS)
2585 if test -z "$MACHDEP_OBJS" 2648 if test -z "$MACHDEP_OBJS"
2586 then 2649 then
2587 MACHDEP_OBJS=$extra_machdep_objs 2650 MACHDEP_OBJS=$extra_machdep_objs
2588 else 2651 else
2589 MACHDEP_OBJS="$MACHDEP_OBJS $extra_machdep_objs" 2652 MACHDEP_OBJS="$MACHDEP_OBJS $extra_machdep_objs"
2590 fi 2653 fi
2591 AC_MSG_RESULT(MACHDEP_OBJS) 2654 if test -z "$MACHDEP_OBJS"; then
2655 AC_MSG_RESULT([none])
2656 else
2657 AC_MSG_RESULT([$MACHDEP_OBJS])
2658 fi
2592 2659
2593 # checks for library functions 2660 # checks for library functions
2594 AC_CHECK_FUNCS(alarm accept4 setitimer getitimer bind_textdomain_codeset chown \ 2661 AC_CHECK_FUNCS(alarm accept4 setitimer getitimer bind_textdomain_codeset chown \
2595 clock confstr ctermid execv faccessat fchmod fchmodat fchown fchownat \ 2662 clock confstr ctermid execv faccessat fchmod fchmodat fchown fchownat \
2596 fexecve fdopendir fork fpathconf fstatat ftime ftruncate futimesat \ 2663 fexecve fdopendir fork fpathconf fstatat ftime ftruncate futimesat \
2597 futimens futimes gai_strerror \ 2664 futimens futimes gai_strerror \
2598 getgrouplist getgroups getlogin getloadavg getpeername getpgid getpid \ 2665 getgrouplist getgroups getlogin getloadavg getpeername getpgid getpid \
2599 getpriority getresuid getresgid getpwent getspnam getspent getsid getwd \ 2666 getpriority getresuid getresgid getpwent getspnam getspent getsid getwd \
2600 if_nameindex \ 2667 if_nameindex \
2601 initgroups kill killpg lchmod lchown lockf linkat lstat lutimes mmap \ 2668 initgroups kill killpg lchmod lchown lockf linkat lstat lutimes mmap \
(...skipping 439 matching lines...) Expand 10 before | Expand all | Expand 10 after
3041 [ 3108 [
3042 if test "${enable_ipv6+set}" = set; then 3109 if test "${enable_ipv6+set}" = set; then
3043 ac_cv_buggy_getaddrinfo="no -- configured with --(en|dis)able-ipv6" 3110 ac_cv_buggy_getaddrinfo="no -- configured with --(en|dis)able-ipv6"
3044 else 3111 else
3045 ac_cv_buggy_getaddrinfo=yes 3112 ac_cv_buggy_getaddrinfo=yes
3046 fi])) 3113 fi]))
3047 fi 3114 fi
3048 3115
3049 AC_MSG_RESULT($ac_cv_buggy_getaddrinfo) 3116 AC_MSG_RESULT($ac_cv_buggy_getaddrinfo)
3050 3117
3051 if test $have_getaddrinfo = no -o "$ac_cv_buggy_getaddrinfo" = yes 3118 if test $have_getaddrinfo = no || test "$ac_cv_buggy_getaddrinfo" = yes
3052 then 3119 then
3053 if test $ipv6 = yes 3120 if test $ipv6 = yes
3054 then 3121 then
3055 echo 'Fatal: You must get working getaddrinfo() function.' 3122 echo 'Fatal: You must get working getaddrinfo() function.'
3056 echo ' or you can specify "--disable-ipv6"'. 3123 echo ' or you can specify "--disable-ipv6"'.
3057 exit 1 3124 exit 1
3058 fi 3125 fi
3059 else 3126 else
3060 AC_DEFINE(HAVE_GETADDRINFO, 1, [Define if you have the getaddrinfo funct ion.]) 3127 AC_DEFINE(HAVE_GETADDRINFO, 1, [Define if you have the getaddrinfo funct ion.])
3061 fi 3128 fi
(...skipping 531 matching lines...) Expand 10 before | Expand all | Expand 10 after
3593 [ac_cv_posix_semaphores_enabled=yes]) 3660 [ac_cv_posix_semaphores_enabled=yes])
3594 ) 3661 )
3595 AC_MSG_RESULT($ac_cv_posix_semaphores_enabled) 3662 AC_MSG_RESULT($ac_cv_posix_semaphores_enabled)
3596 if test $ac_cv_posix_semaphores_enabled = no 3663 if test $ac_cv_posix_semaphores_enabled = no
3597 then 3664 then
3598 AC_DEFINE(POSIX_SEMAPHORES_NOT_ENABLED, 1, 3665 AC_DEFINE(POSIX_SEMAPHORES_NOT_ENABLED, 1,
3599 [Define if POSIX semaphores aren't enabled on your system]) 3666 [Define if POSIX semaphores aren't enabled on your system])
3600 fi 3667 fi
3601 3668
3602 # Multiprocessing check for broken sem_getvalue 3669 # Multiprocessing check for broken sem_getvalue
3670 if test $ac_cv_func_sem_getvalue = yes; then
3603 AC_MSG_CHECKING(for broken sem_getvalue) 3671 AC_MSG_CHECKING(for broken sem_getvalue)
3604 AC_CACHE_VAL(ac_cv_broken_sem_getvalue, 3672 AC_CACHE_VAL(ac_cv_broken_sem_getvalue,
3605 AC_RUN_IFELSE([AC_LANG_SOURCE([[ 3673 AC_RUN_IFELSE([AC_LANG_SOURCE([[
3606 #include <unistd.h> 3674 #include <unistd.h>
3607 #include <fcntl.h> 3675 #include <fcntl.h>
3608 #include <stdio.h> 3676 #include <stdio.h>
3609 #include <semaphore.h> 3677 #include <semaphore.h>
3610 #include <sys/stat.h> 3678 #include <sys/stat.h>
3611 3679
3612 int main(void){ 3680 int main(void){
(...skipping 13 matching lines...) Expand all
3626 ]])], 3694 ]])],
3627 [ac_cv_broken_sem_getvalue=no], 3695 [ac_cv_broken_sem_getvalue=no],
3628 [ac_cv_broken_sem_getvalue=yes], 3696 [ac_cv_broken_sem_getvalue=yes],
3629 [ac_cv_broken_sem_getvalue=yes]) 3697 [ac_cv_broken_sem_getvalue=yes])
3630 ) 3698 )
3631 AC_MSG_RESULT($ac_cv_broken_sem_getvalue) 3699 AC_MSG_RESULT($ac_cv_broken_sem_getvalue)
3632 if test $ac_cv_broken_sem_getvalue = yes 3700 if test $ac_cv_broken_sem_getvalue = yes
3633 then 3701 then
3634 AC_DEFINE(HAVE_BROKEN_SEM_GETVALUE, 1, 3702 AC_DEFINE(HAVE_BROKEN_SEM_GETVALUE, 1,
3635 [define to 1 if your sem_getvalue is broken.]) 3703 [define to 1 if your sem_getvalue is broken.])
3704 fi
3636 fi 3705 fi
3637 3706
3638 # determine what size digit to use for Python's longs 3707 # determine what size digit to use for Python's longs
3639 AC_MSG_CHECKING([digit size for Python's longs]) 3708 AC_MSG_CHECKING([digit size for Python's longs])
3640 AC_ARG_ENABLE(big-digits, 3709 AC_ARG_ENABLE(big-digits,
3641 AS_HELP_STRING([--enable-big-digits@<:@=BITS@:>@],[use big digits for Python lon gs [[BITS=30]]]), 3710 AS_HELP_STRING([--enable-big-digits@<:@=BITS@:>@],[use big digits for Python lon gs [[BITS=30]]]),
3642 [case $enable_big_digits in 3711 [case $enable_big_digits in
3643 yes) 3712 yes)
3644 enable_big_digits=30 ;; 3713 enable_big_digits=30 ;;
3645 no) 3714 no)
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after
3813 3882
3814 # check where readline lives 3883 # check where readline lives
3815 # save the value of LIBS so we don't actually link Python with readline 3884 # save the value of LIBS so we don't actually link Python with readline
3816 LIBS_no_readline=$LIBS 3885 LIBS_no_readline=$LIBS
3817 3886
3818 # On some systems we need to link readline to a termcap compatible 3887 # On some systems we need to link readline to a termcap compatible
3819 # library. NOTE: Keep the precedence of listed libraries synchronised 3888 # library. NOTE: Keep the precedence of listed libraries synchronised
3820 # with setup.py. 3889 # with setup.py.
3821 py_cv_lib_readline=no 3890 py_cv_lib_readline=no
3822 AC_MSG_CHECKING([how to link readline libs]) 3891 AC_MSG_CHECKING([how to link readline libs])
3823 for py_libtermcap in "" ncursesw ncurses curses termcap; do 3892 for py_libtermcap in "" tinfo ncursesw ncurses curses termcap; do
3824 if test -z "$py_libtermcap"; then 3893 if test -z "$py_libtermcap"; then
3825 READLINE_LIBS="-lreadline" 3894 READLINE_LIBS="-lreadline"
3826 else 3895 else
3827 READLINE_LIBS="-lreadline -l$py_libtermcap" 3896 READLINE_LIBS="-lreadline -l$py_libtermcap"
3828 fi 3897 fi
3829 LIBS="$READLINE_LIBS $LIBS_no_readline" 3898 LIBS="$READLINE_LIBS $LIBS_no_readline"
3830 AC_LINK_IFELSE( 3899 AC_LINK_IFELSE(
3831 [AC_LANG_CALL([],[readline])], 3900 [AC_LANG_CALL([],[readline])],
3832 [py_cv_lib_readline=yes]) 3901 [py_cv_lib_readline=yes])
3833 if test $py_cv_lib_readline = yes; then 3902 if test $py_cv_lib_readline = yes; then
3834 break 3903 break
3835 fi 3904 fi
3905 READLINE_LIBS=
3836 done 3906 done
3837 # Uncomment this line if you want to use READINE_LIBS in Makefile or scripts 3907 AC_SUBST([READLINE_LIBS])
3838 #AC_SUBST([READLINE_LIBS])
3839 if test $py_cv_lib_readline = no; then 3908 if test $py_cv_lib_readline = no; then
3840 AC_MSG_RESULT([none]) 3909 AC_MSG_RESULT([none])
3841 else 3910 else
3842 AC_MSG_RESULT([$READLINE_LIBS]) 3911 AC_MSG_RESULT([$READLINE_LIBS])
3843 AC_DEFINE(HAVE_LIBREADLINE, 1, 3912 AC_DEFINE(HAVE_LIBREADLINE, 1,
3844 [Define if you have the readline library (-lreadline).]) 3913 [Define if you have the readline library (-lreadline).])
3845 fi 3914 fi
3846 3915
3847 # check for readline 2.1 3916 # check for readline 2.1
3848 AC_CHECK_LIB(readline, rl_callback_handler_install, 3917 AC_CHECK_LIB(readline, rl_callback_handler_install,
(...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after
4074 [ac_cv_mvwdelch_is_expression=no])) 4143 [ac_cv_mvwdelch_is_expression=no]))
4075 AC_MSG_RESULT($ac_cv_mvwdelch_is_expression) 4144 AC_MSG_RESULT($ac_cv_mvwdelch_is_expression)
4076 4145
4077 if test "$ac_cv_mvwdelch_is_expression" = yes 4146 if test "$ac_cv_mvwdelch_is_expression" = yes
4078 then 4147 then
4079 AC_DEFINE(MVWDELCH_IS_EXPRESSION, 1, 4148 AC_DEFINE(MVWDELCH_IS_EXPRESSION, 1,
4080 [Define if mvwdelch in curses.h is an expression.]) 4149 [Define if mvwdelch in curses.h is an expression.])
4081 fi 4150 fi
4082 4151
4083 AC_MSG_CHECKING(whether WINDOW has _flags) 4152 AC_MSG_CHECKING(whether WINDOW has _flags)
4084 AC_CACHE_VAL(ac_cv_window_has_flags,
4085 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <curses.h>]], [[ 4153 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <curses.h>]], [[
4086 WINDOW *w; 4154 WINDOW *w;
4087 w->_flags = 0; 4155 w->_flags = 0;
4088 ]])], 4156 ]])],
4089 [ac_cv_window_has_flags=yes], 4157 [ac_cv_window_has_flags=yes],
4090 [ac_cv_window_has_flags=no])) 4158 [ac_cv_window_has_flags=no])
4091 AC_MSG_RESULT($ac_cv_window_has_flags) 4159 AC_MSG_RESULT($ac_cv_window_has_flags)
4092 4160
4161 py_curses_window_is_opaque=no
4162 if test no = $ac_cv_window_has_flags; then
4163 AC_MSG_CHECKING([whether WINDOW has _flags in non-opaque structure])
4164 AC_COMPILE_IFELSE([
4165 AC_LANG_PROGRAM([[
4166 #define NCURSES_OPAQUE 0
4167 #include <curses.h>
4168 ]],[[
4169 WINDOW *w;
4170 w->_flags = 0;
4171 ]])],
4172 [py_curses_window_is_opaque=yes])
4173 AC_MSG_RESULT([$py_curses_window_is_opaque])
4174 fi
4175 if test yes = $py_curses_window_is_opaque; then
4176 ac_cv_window_has_flags=yes
4177 AC_DEFINE([NCURSES_OPAQUE], [0], [Define to 0 if you have WINDOW _flags in non -opaque structure.])
4178 fi
4179
4180 py_curses_window_is_internal=no
4181 if test no = $ac_cv_window_has_flags; then
4182 AC_MSG_CHECKING([whether WINDOW has _flags as internal structure])
4183 AC_COMPILE_IFELSE([
4184 AC_LANG_PROGRAM([[
4185 #define NCURSES_INTERNALS 1
4186 #include <curses.h>
4187 ]],[[
4188 WINDOW *w;
4189 w->_flags = 0;
4190 ]])],
4191 [py_curses_window_is_internal=yes])
4192 AC_MSG_RESULT([$py_curses_window_is_internal])
4193 fi
4194 if test yes = $py_curses_window_is_internal; then
4195 ac_cv_window_has_flags=yes
4196 AC_DEFINE([NCURSES_INTERNALS], [1], [Define to 1 if you have WINDOW _flags as internal structure.])
4197 fi
4093 4198
4094 if test "$ac_cv_window_has_flags" = yes 4199 if test "$ac_cv_window_has_flags" = yes
4095 then 4200 then
4096 AC_DEFINE(WINDOW_HAS_FLAGS, 1, 4201 AC_DEFINE(WINDOW_HAS_FLAGS, 1,
4097 [Define if WINDOW in curses.h offers a field _flags.]) 4202 [Define if WINDOW in curses.h offers a field _flags.])
4098 fi 4203 fi
4099 4204
4100 AC_MSG_CHECKING(for is_term_resized) 4205 AC_MSG_CHECKING(for is_term_resized)
4101 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <curses.h>]], [[void *x=is_term_re sized]])], 4206 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <curses.h>]], [[void *x=is_term_re sized]])],
4102 [AC_DEFINE(HAVE_CURSES_IS_TERM_RESIZED, 1, Define if you have the 'is_term_res ized' function.) 4207 [AC_DEFINE(HAVE_CURSES_IS_TERM_RESIZED, 1, Define if you have the 'is_term_res ized' function.)
4103 AC_MSG_RESULT(yes)], 4208 AC_MSG_RESULT(yes)],
4104 [AC_MSG_RESULT(no)] 4209 [AC_MSG_RESULT(no)]
4105 ) 4210 )
4106 4211
4107 AC_MSG_CHECKING(for resize_term) 4212 AC_MSG_CHECKING(for resize_term)
4108 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <curses.h>]], [[void *x=resize_ter m]])], 4213 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <curses.h>]], [[void *x=resize_ter m]])],
4109 [AC_DEFINE(HAVE_CURSES_RESIZE_TERM, 1, Define if you have the 'resize_term' fu nction.) 4214 [AC_DEFINE(HAVE_CURSES_RESIZE_TERM, 1, Define if you have the 'resize_term' fu nction.)
4110 AC_MSG_RESULT(yes)], 4215 AC_MSG_RESULT(yes)],
4111 [AC_MSG_RESULT(no)] 4216 [AC_MSG_RESULT(no)]
4112 ) 4217 )
4113 4218
4114 AC_MSG_CHECKING(for resizeterm) 4219 AC_MSG_CHECKING(for resizeterm)
4115 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <curses.h>]], [[void *x=resizeterm ]])], 4220 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <curses.h>]], [[void *x=resizeterm ]])],
4116 [AC_DEFINE(HAVE_CURSES_RESIZETERM, 1, Define if you have the 'resizeterm' func tion.) 4221 [AC_DEFINE(HAVE_CURSES_RESIZETERM, 1, Define if you have the 'resizeterm' func tion.)
4117 AC_MSG_RESULT(yes)], 4222 AC_MSG_RESULT(yes)],
4118 [AC_MSG_RESULT(no)] 4223 [AC_MSG_RESULT(no)]
4119 ) 4224 )
4120 4225
4121 AC_MSG_CHECKING(for /dev/ptmx) 4226 AC_MSG_NOTICE([checking for device files])
4122 4227
4123 if test -r /dev/ptmx 4228 dnl NOTE: Inform user how to proceed with files when cross compiling.
4124 then 4229 if test "x$cross_compiling" = xyes; then
4125 AC_MSG_RESULT(yes) 4230 if test "${ac_cv_file__dev_ptmx+set}" != set; then
4126 AC_DEFINE(HAVE_DEV_PTMX, 1, 4231 AC_MSG_CHECKING([for /dev/ptmx])
4127 [Define if we have /dev/ptmx.]) 4232 AC_MSG_RESULT([not set])
4128 else 4233 AC_MSG_ERROR([set ac_cv_file__dev_ptmx to yes/no in your CONFIG_SITE file wh en cross compiling])
4129 AC_MSG_RESULT(no) 4234 fi
4235 if test "${ac_cv_file__dev_ptc+set}" != set; then
4236 AC_MSG_CHECKING([for /dev/ptc])
4237 AC_MSG_RESULT([not set])
4238 AC_MSG_ERROR([set ac_cv_file__dev_ptc to yes/no in your CONFIG_SITE file whe n cross compiling])
4239 fi
4130 fi 4240 fi
4131 4241
4132 AC_MSG_CHECKING(for /dev/ptc) 4242 # FIXME: autoconf macro AC_CHECK_FILES is better but require additional
4133 4243 # changes in posixmodule.c : 's/HAVE_DEV_/HAVE__DEV_/g'
4134 if test -r /dev/ptc 4244 # To keep patch minimal I left defines as before.
4135 then 4245 AC_CHECK_FILE(/dev/ptmx, [], [])
4136 AC_MSG_RESULT(yes) 4246 if test "x$ac_cv_file__dev_ptmx" = xyes; then
4247 AC_DEFINE(HAVE_DEV_PTMX, 1,
4248 [Define to 1 if you have the /dev/ptmx device file.])
4249 fi
4250 AC_CHECK_FILE(/dev/ptc, [], [])
4251 if test "x$ac_cv_file__dev_ptc" = xyes; then
4137 AC_DEFINE(HAVE_DEV_PTC, 1, 4252 AC_DEFINE(HAVE_DEV_PTC, 1,
4138 [Define if we have /dev/ptc.]) 4253 [Define to 1 if you have the /dev/ptc device file.])
4139 else
4140 AC_MSG_RESULT(no)
4141 fi 4254 fi
4142 4255
4143 if test "$have_long_long" = yes 4256 if test "$have_long_long" = yes
4144 then 4257 then
4145 AC_MSG_CHECKING(for %lld and %llu printf() format support) 4258 AC_MSG_CHECKING(for %lld and %llu printf() format support)
4146 AC_CACHE_VAL(ac_cv_have_long_long_format, 4259 AC_CACHE_VAL(ac_cv_have_long_long_format,
4147 AC_RUN_IFELSE([AC_LANG_SOURCE([[[ 4260 AC_RUN_IFELSE([AC_LANG_SOURCE([[[
4148 #include <stdio.h> 4261 #include <stdio.h>
4149 #include <stddef.h> 4262 #include <stddef.h>
4150 #include <string.h> 4263 #include <string.h>
(...skipping 285 matching lines...) Expand 10 before | Expand all | Expand 10 after
4436 AC_MSG_RESULT($have_ipa_pure_const_bug) 4549 AC_MSG_RESULT($have_ipa_pure_const_bug)
4437 if test "$have_ipa_pure_const_bug" = yes; then 4550 if test "$have_ipa_pure_const_bug" = yes; then
4438 AC_DEFINE(HAVE_IPA_PURE_CONST_BUG, 1, 4551 AC_DEFINE(HAVE_IPA_PURE_CONST_BUG, 1,
4439 [Define if gcc has the ipa-pure-const bug.]) 4552 [Define if gcc has the ipa-pure-const bug.])
4440 fi 4553 fi
4441 ;; 4554 ;;
4442 esac 4555 esac
4443 fi 4556 fi
4444 4557
4445 # generate output files 4558 # generate output files
4446 AC_CONFIG_FILES(Makefile.pre Modules/Setup.config Misc/python.pc) 4559 AC_CONFIG_COMMANDS_PRE([
4447 AC_CONFIG_FILES([Modules/ld_so_aix], [chmod +x Modules/ld_so_aix]) 4560 AC_MSG_NOTICE([creating Modules/Setup])
4448 AC_OUTPUT
4449
4450 echo "creating Modules/Setup"
4451 if test ! -f Modules/Setup 4561 if test ! -f Modules/Setup
4452 then 4562 then
4453 cp $srcdir/Modules/Setup.dist Modules/Setup 4563 cp $srcdir/Modules/Setup.dist Modules/Setup
4454 fi 4564 fi
4455 4565
4456 echo "creating Modules/Setup.local" 4566 AC_MSG_NOTICE([creating Modules/Setup.local])
4457 if test ! -f Modules/Setup.local 4567 if test ! -f Modules/Setup.local
4458 then 4568 then
4459 echo "# Edit this file for local setup changes" >Modules/Setup.local 4569 echo "# Edit this file for local setup changes" >Modules/Setup.local
4460 fi 4570 fi
4571 ])
4461 4572
4462 echo "creating Makefile" 4573 AC_CONFIG_COMMANDS([Makefile],[
4463 $SHELL $srcdir/Modules/makesetup -c $srcdir/Modules/config.c.in \ 4574 $SHELL $srcdir/Modules/makesetup -c $srcdir/Modules/config.c.in \
4464 -s Modules Modules/Setup.config \ 4575 -s Modules Modules/Setup.config \
4465 Modules/Setup.local Modules/Setup 4576 Modules/Setup.local Modules/Setup
4466 mv config.c Modules 4577 mv config.c Modules])
4578
4579 AC_CONFIG_FILES([setup_info])
4580 AC_CONFIG_FILES([Makefile.pre Modules/Setup.config Misc/python.pc])
4581 AC_CONFIG_FILES([Modules/ld_so_aix], [chmod +x Modules/ld_so_aix])
4582 AC_OUTPUT
OLDNEW
« no previous file with comments | « Makefile.pre.in ('k') | pyconfig.h.in » ('j') | no next file with comments »

RSS Feeds Recent Issues | This issue
This is Rietveld cbc36f91f3f7