summaryrefslogtreecommitdiffstats
path: root/configure
Commit message (Collapse)AuthorAgeFilesLines
* [3.12] gh-112088: Run autoreconf in GHA check_generated_files (GH-112090) ↵Victor Stinner2023-11-161-68/+68
| | | | | | | | | | | | | | | | | (#112159) gh-112088: Run autoreconf in GHA check_generated_files (#112090) The "Check if generated files are up to date" job of GitHub Actions now runs the "autoreconf -ivf -Werror" command instead of the "make regen-configure" command to avoid depending on the external quay.io server. Add Tools/build/regen-configure.sh script to regenerate the configure with an Ubuntu container image. The "quay.io/tiran/cpython_autoconf:271" container image (https://github.com/tiran/cpython_autoconf) is no longer used. (cherry picked from commit d9fd33a869d2be769ff596530f63ee099465b037)
* [3.12] gh-111460: Restore ncurses widechar support on macOS (GH-111878) ↵Miss Islington (bot)2023-11-141-1/+1
| | | | | | | | (gh-112034) gh-111460: Restore ncurses widechar support on macOS (GH-111878) (cherry picked from commit d2f305dfd183025a95592319b280fcf4b20c8694) Co-authored-by: Davide Rizzo <sorcio@gmail.com>
* [3.12] gh-111046: for wasi-threads, export memory as well via the linker ↵Miss Islington (bot)2023-10-201-0/+5
| | | | | | | | (GH-111099) (GH-111141) gh-111046: for wasi-threads, export memory as well via the linker (GH-111099) (cherry picked from commit 5dfa71769f547fffa893a89b0b04d963a41b2441) Co-authored-by: YAMAMOTO Takashi <yamamoto@midokura.com>
* [3.12] gh-78469: Declare missing sethostname for Solaris 10 (GH-109447) ↵Miss Islington (bot)2023-10-101-0/+9
| | | | | | | | (#110580) Add OS version specific macro for Solaris: Py_SUNOS_VERSION. (cherry picked from commit 3b1580af07c0ce90d1c2073ab087772283d7e3b9) Co-authored-by: Jakub Kulík <Kulikjak@gmail.com>
* [3.12] gh-109191: Fix build with newer editline (gh-110239) (gh-110562)Miss Islington (bot)2023-10-091-0/+19
| | | | | | gh-109191: Fix build with newer editline (gh-110239) (cherry picked from commit f4cb0d27cc08f490c42a22e646eb73cc7072d54a) Co-authored-by: Bo Anderson <mail@boanderson.me>
* [3.12] gh-106881: Check for linux/limits.h before including it (#107397) ↵justdan62023-07-281-0/+6
| | | | | | | | (#107414) * Check for linux/limits.h before including it Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com> (cherry picked from commit 11c055f5ff1a353de6d2e77f2af24aaa782878ba)
* [3.12] gh-106962: Detect mpicc in configure.ac (GH-106961) (#107081)Miss Islington (bot)2023-07-231-0/+3
| | | | | | | Don't let autoconf mistake MPI compilers for Intel compilers; filter out the MPI case to prevent Intel specific options from being applied. (cherry picked from commit 9a6b278769b9f24e0650283f6c347db8ae52b7b3) Co-authored-by: Lukas van de Wiel <30800501+LukasvdWiel@users.noreply.github.com>
* [3.12] gh-101538: Add experimental wasi-threads build (GH-101537) (#106834)Miss Islington (bot)2023-07-171-1/+20
| | | | | | | (cherry picked from commit d8f87cdf94a6533c5cf2d25e09e6fa3eb06720b9) Co-authored-by: YAMAMOTO Takashi <yamamoto@midokura.com> Co-authored-by: Brett Cannon <brett@python.org> Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
* [3.12] gh-106123: Modules/_sha3 appears to no longer be necessary ↵Miss Islington (bot)2023-06-271-1/+0
| | | | | | (GH-106124) (#106127) Co-authored-by: Skip Montanaro <skip.montanaro@gmail.com>
* [3.12] gh-90005: Don't link with libbsd if not needed (#105236) (#105360)Erlend E. Aasland2023-06-061-2/+6
| | | | The regression was introduced with commit 5b946cada. Restore pre gh-29696 behaviour.
* [3.12] GH-89886: Bump to GNU Autoconf v2.71 (#104925) (#105207)Erlend E. Aasland2023-06-011-7396/+10489
| | | Co-authored-by: Christian Heimes <christian@python.org>
* [3.12] gh-89886: Rely on HAVE_SYS_TIME_H (GH-105058) (#105192)Miss Islington (bot)2023-06-011-9/+1
| | | | | | | | | | | Quoting autoconf (v2.71): All current systems provide time.h; it need not be checked for. Not all systems provide sys/time.h, but those that do, all allow you to include it and time.h simultaneously. (cherry picked from commit 9ab587b7146618866cee52c220aecf7bd5b44b02) Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
* [3.12] gh-89886: Properly quote Autoconf macro arguments (#105062) (#105118)Erlend E. Aasland2023-05-301-23/+11
| | | Autoconf 2.70 macros are picky about argument quotation.
* [3.12] gh-101282: Enclose BOLT_APPLY_FLAGS value in double quotes (gh… ↵Dong-hee Na2023-05-241-2/+1
| | | | | | (gh-104853) [3.12] gh-101282: Enclose BOLT_APPLY_FLAGS value in double quotes (gh-104752) (cherry picked from commit c43785192c97698a0217a680b30baae22106ed3e)
* gh-101282: Apply BOLT optimizations to libpython for shared builds (#104709)Gregory Szorc2023-05-221-108/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Apply BOLT optimizations to libpython for shared builds. Most of the C code is in libpython so it is critical to apply BOLT there fully realize BOLT benefits. This change also reworks how BOLT instrumentation is applied. It effectively removes the readelf based logic added in gh-101525 and replaces it with a mechanism that saves a copy of the pre-bolt binary and restores that copy when necessary. This allows us to perform BOLT optimizations without having to manually delete the output binary to force a new bolt run. Also: - add a clean-bolt target for purging BOLT files and hook that up to the clean target - .gitignore BOLT related files Before and after this refactor, `make` will no-op after a previous run. Both versions should also share common make DAG deficiencies where targets fail to trigger as often as they need to or can trigger prematurely in certain scenarios. e.g. after this change you may need to `rm profile-bolt-stamp` to force a BOLT run because there aren't appropriate non-phony targets for BOLT's make target to depend on. To make it easier to iterate on custom BOLT settings, the flags to pass to instrumentation and application are now defined in configure and can be overridden by passing BOLT_INSTRUMENT_FLAGS and BOLT_APPLY_FLAGS.
* gh-104487: PYTHON_FOR_REGEN must be minimum Python 3.10 (#104488)Erlend E. Aasland2023-05-151-1/+1
| | | Also include Python 3.12 in the list of accepted versions.
* gh-101282: move BOLT config after PGO (gh-104493)Gregory Szorc2023-05-151-180/+180
|
* gh-90656: Add platform triplets for 64-bit LoongArch (LA64) (#30939)Zhang Na2023-05-091-0/+14
| | | | Signed-off-by: Zhang Na <zhangna@loongson.cn> Co-authored-by: WANG Xuerui <git@xen0n.name>
* gh-103509: PEP 697 -- Limited C API for Extending Opaque Types (GH-103511)Petr Viktorin2023-05-041-0/+35
| | | | Co-authored-by: Oleg Iarygin <oleg@arhadthedev.net> Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
* gh-101525: Fix make test if the --enable-bolt enabled (gh-103574)Dong-hee Na2023-04-171-0/+108
|
* gh-103326: Remove `Python/importlib.h` (GH-103331)Nikita Sobolev2023-04-121-1/+0
| | | | Co-authored-by: Brett Cannon <brett@python.org> Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
* gh-96821: Add config option `--with-strict-overflow` (#96823)Matthias Görgens2023-03-041-9/+69
| | | | | | Co-authored-by: C.A.M. Gerlach <CAM.Gerlach@Gerlach.CAM> Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com> Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com> Co-authored-by: Shantanu <hauntsaninja@gmail.com>
* gh-99108: Import MD5 and SHA1 from HACL* (#102089)Jonathan Protzenko2023-02-221-2/+2
| | | Replaces our fallback non-OpenSSL MD5 and SHA1 implementations with those from HACL* as we've already done with SHA2.
* gh-99942: correct the pkg-config/python-config flags for cygwin/androidEli Schwartz2023-02-161-1/+1
|
* gh-99108: Refactor _sha256 & _sha512 into _sha2. (#101924)Gregory P. Smith2023-02-161-69/+27
| | | | | | | | | This merges their code. They're backed by the same single HACL* static library, having them be a single module simplifies maintenance. This should unbreak the wasm enscripten builds that currently fail due to linking in --whole-archive mode and the HACL* library appearing twice. Long unnoticed error fixed: _sha512.SHA384Type was doubly assigned and was actually SHA512Type. Nobody depends on those internal names. Also rename LIBHACL_ make vars to LIBHACL_SHA2_ in preperation for other future HACL things.
* gh-99108: Import SHA2-384/512 from HACL* (#101707)Jonathan Protzenko2023-02-141-1/+1
| | | | | | Replace the builtin hashlib implementations of SHA2-384 and SHA2-512 originally from LibTomCrypt with formally verified, side-channel resistant code from the [HACL*](https://github.com/hacl-star/hacl-star/) project. The builtins remain a fallback only used when OpenSSL does not provide them.
* gh-92547: Purge sqlite3_enable_shared_cache() detection from configure (#101873)Erlend E. Aasland2023-02-131-51/+0
|
* gh-99108: Replace SHA2-224 & 256 with verified code from HACL* (#99109)Jonathan Protzenko2023-02-071-1/+2
| | | | | | | | | | | | | | | | | | | | | | replacing hashlib primitives (for the non-OpenSSL case) with verified implementations from HACL*. This is the first PR in the series, and focuses specifically on SHA2-256 and SHA2-224. This PR imports Hacl_Streaming_SHA2 into the Python tree. This is the HACL* implementation of SHA2, which combines a core implementation of SHA2 along with a layer of buffer management that allows updating the digest with any number of bytes. This supersedes the previous implementation in the tree. @franziskuskiefer was kind enough to benchmark the changes: in addition to being verified (thus providing significant safety and security improvements), this implementation also provides a sizeable performance boost! ``` --------------------------------------------------------------- Benchmark Time CPU Iterations --------------------------------------------------------------- Sha2_256_Streaming 3163 ns 3160 ns 219353 // this PR LibTomCrypt_Sha2_256 5057 ns 5056 ns 136234 // library used by Python currently ``` The changes in this PR are as follows: - import the subset of HACL* that covers SHA2-256/224 into `Modules/_hacl` - rewire sha256module.c to use the HACL* implementation Co-authored-by: Gregory P. Smith [Google LLC] <greg@krypto.org> Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
* gh-101524: Split Up the _xxsubinterpreters Module (gh-101526)Eric Snow2023-02-041-0/+27
| | | | | This is step 1 in potentially dropping all the "channel"-related code. Channels have already been removed from PEP 554. https://github.com/python/cpython/issues/101524
* gh-101278: Drop -gdwarf-4 flag from the BOLT build (gh-101280)Dong-hee Na2023-01-241-3/+0
|
* gh-101060: conditionally add `-fno-reorder-blocks-and-partition` (gh-101061)Gregory Szorc2023-01-241-1/+40
|
* gh-101047: Remove vestigial references to macOS libtool options (gh-101048)Gregory Szorc2023-01-221-93/+0
| | | | LIBTOOL_CRUFT and OTHER_LIBTOOL_OPT variables have been unused since commit 19199830f7f880b1e9cff5d92d30706fd8bb4700 in 2011.
* gh-100340: Allows -Wno-int-conversion for wasm (#100341)Kushal Das2023-01-181-0/+38
| | | Fixes #100340 allows -Wno-int-conversion for wasm
* gh-98636: Fix detecting gdbm_compat for _dbm module (#98643)Michał Górny2023-01-111-1/+4
| | | | | | Fix the gdbm_compat library detection logic to actually check for -lgdbm_compat independently of the ndbm detection. This fixes the build failure with `--with-dbmliborder=gdbm`, and implicit fallback to ndbm with the default value.
* gh-86082: bpo-41916: allow cross-compiled python to have -pthread set for ↵Dustin Spicuzza2023-01-051-3/+10
| | | | | | | CXX (#22525) When cross-compiling, the compile/run test for -pthread always fails so -pthread will never be automatically set without an override from the cache. ac_cv_pthread can already be overridden, so do the same thing for ac_cv_cxx_thread.
* gh-100540: Remove obsolete Modules/_ctypes/darwin/ dlfcn shim (GH-100541)Zachary Ware2022-12-291-2/+1
| | | As far as I can tell, this hasn't been actually used since Mac OS X 10.2.
* gh-100540: Remove obsolete '--with-system-ffi' configure option (GH-100544)Zachary Ware2022-12-281-109/+65
| | | | | It has had no effect on non-macOS platforms for a long time, and has had the non-obvious effect of invoking `pkg_config` and not setting `-DUSING_APPLE_OS_LIBFFI` on macOS since GH-22855.
* gh-100540: Remove unnecessary '-DMACOSX' for ctypes on macOS (GH-100542)Zachary Ware2022-12-281-1/+1
| | | | The define was only used to protect a `#pragma clang diagnostic` setting, which is already better guarded by `__clang__` anwyay.
* gh-99086: Fix -Wstrict-prototypes, -Wimplicit-function-declaration warnings ↵Sam James2022-11-261-24/+28
| | | | | | | in configure.ac (#99406) Follow up to 12078e78f6e4a21f344e4eaff529e1ff3b97734f.
* gh-96002: Add functional test for Argument Clinic (#96178)colorfulappl2022-11-211-0/+40
| | | | Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com> Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
* gh-98707: configure --with-system-libmpdec and --with-system-expat no longer ↵Miro Hrončok2022-11-111-2/+2
| | | | include vendored headers (#98711)
* gh-95389: expose popular ETHERTYPE_* constants in the socket module (#95390)Noam Cohen2022-11-071-1/+1
| | | | Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com> Co-authored-by: CAM Gerlach <CAM.Gerlach@Gerlach.CAM>
* gh-99086: Fix implicit int compiler warning in configure check for ↵Sam James2022-11-051-1/+1
| | | | PTHREAD_SCOPE_SYSTEM (#99085)
* gh-98948: Remove obsolete readelf dependency (#98949)serge-sans-paille2022-11-031-112/+0
| | | | | This got introduced in commit 5884449539510313c826d69835829c7957c7154a to determine if readline is already linked against curses or tinfo in the setup.py, which is no longer present.
* gh-98989: configure: add 3.11 to list of Pythons (#98988)Jelle Zijlstra2022-11-021-1/+1
| | | | | Closes #98989 Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
* gh-96143: Move the perf trampoline files to the Python directory (#98675)Pablo Galindo Salgado2022-10-251-1/+1
|
* gh-95023: Added os.setns and os.unshare functions (#95046)Noam Cohen2022-10-201-0/+14
| | | | | | | | Added os.setns and os.unshare to easily switch between namespaces on Linux. Co-authored-by: Christian Heimes <christian@python.org> Co-authored-by: CAM Gerlach <CAM.Gerlach@Gerlach.CAM> Co-authored-by: Victor Stinner <vstinner@python.org>
* gh-96761: Fix build process of the clang compiler for _bootstrap_python ↵Dong-hee Na2022-09-231-2/+37
| | | | | (gh-96945) Co-authored-by: Matthias Goergens <matthias.goergens@gmail.com>
* gh-89536: Use ThinLTO policy if possible (gh-96766)Dong-hee Na2022-09-161-3/+79
|
* gh-84461: Omit resource mod and getresuid funcs on Emscripten (GH-96303)Christian Heimes2022-09-111-2/+1
|