summaryrefslogtreecommitdiffstats
path: root/configure.ac
Commit message (Collapse)AuthorAgeFilesLines
* [3.13] gh-120400 :Support Linux perf profile to see Python calls on RISC-V ↵Miss Islington (bot)2024-06-141-0/+1
| | | | | | | | | architecture (GH-120089) (#120413) gh-120400 :Support Linux perf profile to see Python calls on RISC-V architecture (GH-120089) (cherry picked from commit 4b1e85bafc5bcb8cb70bb17164e07aebf7ad7e8e) Co-authored-by: ixgbe00 <yangwang@iscas.ac.cn> Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
* [3.13] gh-120154: Fix Emscripten/WASI pattern in case statement for LDSHARED ↵Miss Islington (bot)2024-06-071-1/+1
| | | | | | | | (GH-120173) (#120199) Fix Emscripten/WASI pattern in case statement for LDSHARED (cherry picked from commit 47816f465e833a5257a82b759b1081e06381e528) Co-authored-by: Michael Allwright <contact@allwright.io>
* [3.13] gh-115119: Fall back to bundled libmpdec if system libmpdec is not ↵Miss Islington (bot)2024-05-201-6/+13
| | | | | | | found (GH-119196) (#119217) (cherry picked from commit 642b25b9a82c368b045709f0b94e7d5a02400ed2) Co-authored-by: Erlend E. Aasland <erlend@python.org>
* gh-115119: Default to --with-system-libmpdec=yes (#118539)Erlend E. Aasland2024-05-061-4/+29
| | | Co-authored-by: Zachary Ware <zachary.ware@gmail.com>
* gh-109617: fix ncurses incompatibility on macOS with Xcode 15 (#111258)Davide Rizzo2024-05-041-1/+4
| | | | Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> Co-authored-by: Łukasz Langa <lukasz@langa.pl>
* gh-118335: Make REGEN_JIT_COMMAND empty if tier2 interpreter enabled (#118493)Guido van Rossum2024-05-011-9/+13
| | | | Also patch up news blurb for gh-118339 (add warning that PYTHON_UOPS is now PYTHON_JIT).
* gh-116622: Android sysconfig updates (#118352)Malcolm Smith2024-05-011-0/+3
|
* gh-118335: Configure Tier 2 interpreter at build time (#118339)Guido van Rossum2024-05-011-2/+11
| | | | | | | | | | | | | | | | | | | | | | The code for Tier 2 is now only compiled when configured with `--enable-experimental-jit[=yes|interpreter]`. We drop support for `PYTHON_UOPS` and -`Xuops`, but you can disable the interpreter or JIT at runtime by setting `PYTHON_JIT=0`. You can also build it without enabling it by default using `--enable-experimental-jit=yes-off`; enable with `PYTHON_JIT=1`. On Windows, the `build.bat` script supports `--experimental-jit`, `--experimental-jit-off`, `--experimental-interpreter`. In the C code, `_Py_JIT` is defined as before when the JIT is enabled; the new variable `_Py_TIER2` is defined when the JIT *or* the interpreter is enabled. It is actually a bitmask: 1: JIT; 2: default-off; 4: interpreter.
* gh-116622: Redirect stdout and stderr to system log when embedded in an ↵Malcolm Smith2024-04-301-0/+3
| | | | Android app (#118063)
* gh-115119: Detect _decimal dependencies using pkg-config (#115406)Erlend E. Aasland2024-04-291-62/+65
| | | pkg-config is supported for libmpdec 4.0.0 and newer.
* gh-76785: Rename _xxsubinterpreters to _interpreters (gh-117791)Eric Snow2024-04-241-6/+6
| | | See https://discuss.python.org/t/pep-734-multiple-interpreters-in-the-stdlib/41147/26.
* gh-116984: Install mimalloc headers (#116985)Yichen Yan2024-04-231-1/+1
| | | | - Install mimalloc header only when enabled - Rename WITH_MIMALLOC to INSTALL_MIMALLOC
* gh-117845: Detect libedit hook function signature in configure (#117870)Joshua Root2024-04-171-0/+15
| | | | | | Older libedit versions (like Apple's) use a different type signature for rl_startup_hook and rl_pre_input_hook. Add a configure check to determine which signature is accepted by introducing the Py_RL_STARTUP_HOOK_TAKES_ARGS macro in pyconfig.h.
* gh-117645: Increase WASI stack size from 512 KiB to 8 MiB (#117674)Victor Stinner2024-04-161-2/+3
| | | | | Increase also the initial memory from 10 MiB to 20 MiB. Reenable test_dynamic on WASI build.
* Autoconf: aarch64-apple-darwin/clang is now a tier 1 platform (#117861)Erlend E. Aasland2024-04-141-1/+1
| | | See also python/pep#3705
* gh-96398: Fix mpicc check in configure.ac (#117857)Erlend E. Aasland2024-04-131-1/+1
|
* gh-96398: Detect GCC compatible compilers in configure (#117825)Erlend E. Aasland2024-04-131-0/+12
| | | | Introduce a cached variable $ac_cv_gcc_compat and set it to 'yes' if the C preprocessor defines the __GNUC__ macro.
* gh-96398: Detect emcc and mpicc in compiler names in configure (#117819)Erlend E. Aasland2024-04-121-1/+6
| | | | - emcc defines __EMSCRIPTEN__ - mpicc doesn't define anything in particular; detect it using basename
* gh-117752: Autoconf: fix PGO builds for 'make -C build' incantations (#117803)Erlend E. Aasland2024-04-121-4/+12
|
* gh-117752: Autoconf: fix -fno-semantic-interposition check (#117789)Erlend E. Aasland2024-04-121-1/+1
| | | Force the compiler to issue an error if the flag is not supported.
* gh-117752: Autoconf: store all LLVM profile data in the build directory ↵Erlend E. Aasland2024-04-121-2/+2
| | | | | (#117790) This prevents spurious 'env changed' and llvm-profdata merge errors.
* gh-117787: Autoconf: fix bashisms/semantic breakage of iOS checks (#117788)Eli Schwartz2024-04-111-1/+1
|
* gh-116303: Don't build xxlimited and xxlimited_35 if --disable-test-modules ↵Erlend E. Aasland2024-04-051-2/+2
| | | | is given (#117554)
* gh-114099: Additions to standard library to support iOS (GH-117052)Russell Keith-Magee2024-03-281-8/+11
| | | | | Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> Co-authored-by: Malcolm Smith <smith@chaquo.com> Co-authored-by: Ned Deily <nad@python.org>
* gh-71052: Add Android build script and instructions (#116426)Malcolm Smith2024-03-211-11/+24
|
* gh-114099 - Add iOS framework loading machinery. (GH-116454)Russell Keith-Magee2024-03-191-1/+0
| | | | Co-authored-by: Malcolm Smith <smith@chaquo.com> Co-authored-by: Eric Snow <ericsnowcurrently@gmail.com>
* gh-108716: Cleanup remaining deepfreeze infrastructure (#116919)Guido van Rossum2024-03-181-2/+1
| | | | | Keep Tools/build/deepfreeze.py around (we may repurpose it for deepfreezing non-code objects), and keep basic "clean" targets that remove the output of former deep-freeze activities, to keep the build directories of current devs clean.
* GH-115983: skip building shared modules for testing under WASI (GH-116528)Brett Cannon2024-03-131-0/+8
|
* gh-71052: Change Android's `sys.platform` from "linux" to "android"Malcolm Smith2024-03-111-0/+1
| | | | Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
* gh-116303: Explicitly check for the _testsinglephase module in configure.ac ↵Erlend E. Aasland2024-03-071-0/+1
| | | | (#116479)
* gh-116417: Add _testlimitedcapi C extension (#116419)Victor Stinner2024-03-071-0/+2
| | | | | | | | | | | | | Add a new C extension "_testlimitedcapi" which is only built with the limited C API. Move heaptype_relative.c and vectorcall_limited.c from Modules/_testcapi/ to Modules/_testlimitedcapi/. * configure: add _testlimitedcapi test extension. * Update generate_stdlib_module_names.py. * Update make check-c-globals. Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
* gh-114099 - Add iOS testbed, plus Makefile target to invoke it. (gh-115930)Russell Keith-Magee2024-03-071-52/+98
|
* GH-116313: get WASI builds to run under wasmtime 18 w/ WASI 0.2/preview2 ↵Brett Cannon2024-03-051-1/+1
| | | | | | | | | primitives (#116327) * GH-116313: get WASI builds to run under wasmtime 18 w/ WASI 0.2/preview2 primitives * Add the configure changes * Update `wasm_build.py`
* gh-108562: Revert enabling -fstrict-overflow for libmpdec (GH-116302)Sergey B Kirpichev2024-03-041-5/+0
| | | | | gh-108562: partial reversion of pr114751 Reverts -fstrict-overflow for libmpdec
* gh-108562: Fix compiler warnings for libmpdec (#114751)Sergey B Kirpichev2024-03-031-0/+5
| | | | | | If awailable, enable -fstrict-overflow for libmpdec. Also shut off false positive warnings (-Warray-bounds). The later was backported from mpdecimal-4.0.0.
* gh-115806: Don't mangle output of configure 'ipv6 stack type' check (#116165)Erlend E. Aasland2024-03-011-1/+1
|
* gh-71052: Fix several Android build issues (#115955)Malcolm Smith2024-02-291-9/+41
| | | | | | | | | | | | | | | | | | | This change is part of the work on PEP-738: Adding Android as a supported platform. * Remove the "1.0" suffix from libpython's filename on Android, which would prevent Gradle from packaging it into an app. * Simplify the build command in the Makefile so that libpython always gets given an SONAME with the `-Wl-h` argument, even if the SONAME is identical to the actual filename. * Disable a number of functions on Android which can be compiled and linked against, but always fail at runtime. As a result, the native _multiprocessing module is no longer built for Android. * gh-115390 (bee7bb331) added some pre-determined results to the configure script for things that can't be autodetected when cross-compiling; this change adds Android to these where appropriate. * Add a couple more pre-determined results for Android, and making them cover iOS as well. This means the --enable-ipv6 configure option will no longer be required on either platform.
* gh-115765: Don't use deprecated AC_EGREP_* macros in configure.ac (#116016)Erlend E. Aasland2024-02-281-64/+31
| | | Rewrite using AX_CHECK_DEFINE and AC_CHECK_TYPES.
* gh-115773: Add tests to exercise the _Py_DebugOffsets structure (#115774)Pablo Galindo Salgado2024-02-281-1/+2
|
* gh-114099: Add configure and Makefile targets to support iOS compilation. ↵Russell Keith-Magee2024-02-261-47/+178
| | | | (GH-115390)
* gh-115806: Make configure output more readable (#115807)Erlend E. Aasland2024-02-231-5/+5
| | | | - make sure LDLIBRARY and HOSTRUNNER checks don't overlap - make the ipv6 library check less subtle
* gh-115765: Don't use deprecated AC_CHECK_TYPE macro in configure.ac (#115792)Erlend E. Aasland2024-02-221-17/+8
| | | Instead use AC_CHECK_TYPES.
* gh-111225: Link extension modules against libpython on Android (#115780)Malcolm Smith2024-02-211-5/+7
| | | | | | | | | | | | | | Part of the work on PEP 738: Adding Android as a supported platform. * Rename the LIBPYTHON variable to MODULE_LDFLAGS, to more accurately reflect its purpose. * Edit makesetup to use MODULE_LDFLAGS when linking extension modules. * Edit the Makefile so that extension modules depend on libpython on Android and Cygwin. * Restore `-fPIC` on Android. It was removed several years ago with a note that the toolchain used it automatically, but this is no longer the case. Omitting it causes all linker commands to fail with an error like `relocation R_AARCH64_ADR_PREL_PG_HI21 cannot be used against symbol '_Py_FalseStruct'; recompile with -fPIC`.
* gh-114099: Refactor configure and Makefile to accomodate non-macOS ↵Russell Keith-Magee2024-02-121-171/+214
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | frameworks (#115120) Part of the PEP 730 work to add iOS support. This change lays the groundwork for introducing iOS/tvOS/watchOS frameworks; it includes the structural refactoring needed so that iOS branches can be added into in a subsequent PR. Summary of changes: * Updates config.sub to the 2024-01-01 release. This is the "as released" version of config.sub. * Adds a RESSRCDIR variable to allow sharing of macOS and iOS Makefile steps. * Adds an INSTALLTARGETS variable so platforms can customise which targets are actually installed. This will be used to exclude certain targets (e.g., binaries, manfiles) from iOS framework installs. * Adds a PYTHONFRAMEWORKINSTALLNAMEPREFIX variable; this is used as the install name for the library. This is needed to allow for iOS frameworks to specify an @rpath-based install name. * Evaluates MACHDEP earlier in the configure process so that ac_sys_system is available. * Modifies _PYTHON_HOST_PLATFORM evaluation for cross-platform builds so that the CPU architecture is differentiated from the host identifier. This will be used to generate a _PYTHON_HOST_PLATFORM definition that includes ABI information, not just CPU architecture. * Differentiates between SOABI_PLATFORM and PLATFORM_TRIPLET. SOABI_PLATFORM is used in binary module names, and includes the ABI, but not the OS or CPU architecture (e.g., math.cpython-313-iphonesimulator.dylib). PLATFORM_TRIPLET is used as the sys._multiarch value, and on iOS will contains the ABI and architecture (e.g., iphoneos-arm64). This differentiation hasn't historically been needed because while macOS is a multiarch platform, it uses a bare darwin as PLATFORM_TRIPLE. * Removes the use of the deprecated -Wl,-single_module flag when compiling macOS frameworks. * Some whitespace normalisation where there was a mix of spaces and tabs in a single block.
* GH-113632: update configure.ac for WebAssembly support tiers (#115192)Brett Cannon2024-02-091-2/+1
| | | Move WASI to tier 2 and drop Emscripten.
* gh-114883: Fix Makefile dependency tree for non-jit builds (GH-114884)Zachary Ware2024-02-031-0/+2
|
* gh-114875: Require getgrent for building the grp extension module (#114876)Malcolm Smith2024-02-021-2/+4
| | | Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
* gh-112606: Use pthread_cond_timedwait_relative_np() in parking_lot.c when ↵Matt Prodani2024-01-301-2/+2
| | | | | | | available (#112616) Add a configure define for HAVE_PTHREAD_COND_TIMEDWAIT_RELATIVE_NP and replaces pthread_cond_timedwait() with pthread_cond_timedwait_relative_np() for relative time when supported in semaphore waiting logic.
* gh-85984: Add POSIX pseudo-terminal functions. (GH-102413)Soumendra Ganguly2024-01-291-4/+4
| | | | | Signed-off-by: Soumendra Ganguly <soumendraganguly@gmail.com> Co-authored-by: Gregory P. Smith <greg@krypto.org> Co-authored-by: Petr Viktorin <encukou@gmail.com>
* GH-113464: Add a JIT backend for tier 2 (GH-113465)Brandt Bucher2024-01-291-0/+20
| | | | | | | Add an option (--enable-experimental-jit for configure-based builds or --experimental-jit for PCbuild-based ones) to build an *experimental* just-in-time compiler, based on copy-and-patch (https://fredrikbk.com/publications/copy-and-patch.pdf). See Tools/jit/README.md for more information on how to install the required build-time tooling.