Commit Graph

803 Commits

Author SHA1 Message Date
sthen e7938db9ca bump revision of ports which have a pkg-config check for ncursesw which
may now be taking different codepaths now we install the .pc file (some
e.g. python 3 definitely are)
2026-01-31 18:24:22 +00:00
sthen 1258f6e789 update comment 2026-01-30 13:30:53 +00:00
sthen b7af099b61 handle py3-bsddb3 the same way as glade; fixes package updates from 7.8
with an old version of py3-bsddb3 installed (otherwise python is blocked).
has to be done this way rather than as quirks due to quirks leaving the
old packages still installed.
2026-01-30 13:30:34 +00:00
sthen c3bf53e182 copy some parts from meson.port.mk for MODPY_PYBUILD=mesonpy; avoids picking
up llvm-ar-XX from ports (ar in base is actually llvm-ar but there's no link,
which confuses various ports build systems so we need to hack around it)
2026-01-22 13:44:08 +00:00
sthen 971aaa96b4 pass -v through to meson when building with mesonpy 2026-01-16 18:16:54 +00:00
sthen bb1bcef8c1 stop trying to subst in ${PREFIX}/bin/pip${VERSION} which doesn't exist
anyway (we use a separate package for pip)
2026-01-15 11:53:46 +00:00
sthen 598cecccbd fix MODPY_PYTEST for !MODPY_PYBUILD ports 2026-01-10 12:26:03 +00:00
sthen 1f7e602caf point TMPDIR under WRKDIR during build for scikit-build-core, to keep build
files contained (otherwise it writes to /tmp/tmpXX)
2026-01-09 15:18:21 +00:00
sthen e9c5ab5140 fix _MODPY_EXPECTED_BACKEND for scikit-build-core 2026-01-09 15:12:27 +00:00
sthen 0e4f7d1c59 support MODPY_PYBUILD=scikit-build-core 2026-01-09 15:11:21 +00:00
sthen 56417f5b98 remove "obsolete" quirks entry for glade, and merge devel/glade into
lang/python/3 via @pkgpath + @conflict (no quirks entry required
for that, because it is part of the update-set anyway).

glade in 7.8 depended on python 3.12 and in order that upgrades to
-current (and later 7.9) can work, we need to provide an upgrade path
that makes it disappear if installed. listing a port as obsolete does
not do this, it just leaves it installed, along with any packages
which it depends on (i.e. python 3.12 here), resulting in problems
if that causes a conflict.
2025-12-20 16:46:45 +00:00
sthen 8de6f67b35 don't autodetect CPUs for MODPY_PYBUILD=mesonpy ports, pass in MAKE_JOBS
instead. found by claudio@
2025-12-18 13:50:36 +00:00
sthen 6bacfbe34f set env var to disable warning from coherent.licensed if present during
a setuptools build.
2025-12-17 10:42:49 +00:00
tb b7a19cf142 Update to Python 3.13.11, ok kmos (maintainer), sthen
3.13.10 was a rather massive update and .11 adds a few fixes on top,
some of them for not too terrible security issues:

https://www.python.org/downloads/release/python-31310/
https://www.python.org/downloads/release/python-31311/

The annoying bit about this update is that our homegrown expat build
system does not install expat_config.h, which, strangely, is autoconf
results exposed in a public header (next to a few XML_ things). Until
that's sorted in base we get to patch the Python code since the expat
maintainer made the mitigation knobs only available behind some config
knobs, which the new Python code assumes to be enabled.
2025-12-12 02:44:50 +00:00
tb 7d38f46fdc python/2.7: treat ASN1_STRING as opaque
ok kmos (maintainer)
2025-12-10 06:23:15 +00:00
claudio 6722745bd4 Python 3 needs to use ports-gcc because it requires atomic instructions
that our gcc4 lacks.

Idea from sthen@
OK sthen@ tb@
2025-11-26 10:02:27 +00:00
sthen 3fd2581a3b add -V 1 to PKG_ARGS for ports using python 3, so that updates work without ERANGE bumps 2025-11-14 17:46:39 +00:00
sthen 2df697593c update python/3 from 3.12.x to 3.13.9, various syncs etc to follow 2025-11-14 17:46:17 +00:00
sthen 8f388dc431 add a non-fatal error if both MODPY_PI and GH_ACCOUNT are set 2025-11-14 08:20:58 +00:00
sthen 0925e31bd2 now that the tree is cleaner, test "${MODPY_PYBUILD} != No" instead of
".if empty(CONFIGURE_STYLE)".

with this it should be possible to remove annoying "CONFIGURE_STYLE=none"
hacks.
2025-11-05 19:21:58 +00:00
sthen 6beb4994a6 drop some unnecessary ${xxx:L} in variables that are set internally in
python.port.mk and won't be typo'd as lower-case
2025-11-04 16:01:25 +00:00
sthen 5bb2821603 - tweak wording around --enable-optimizations explaining what it enables, etc
- use the more usual --without-lto rather than --with-lto=no
2025-11-02 19:02:09 +00:00
sthen fd85d63b69 drop MODPY_SETUPTOOLS parts from py3 python.port.mk and error out if
MODPY_SETUPTOOLS is set.
2025-10-29 12:55:06 +00:00
daniel e36fabdbd8 update Python to 3.12.12
https://docs.python.org/release/3.12.12/whatsnew/changelog.html#python-3-12-12

ok kmos@ (MAINTAINER), sthen@
2025-10-25 17:05:53 +00:00
sthen 22c389f838 drop MODPY_COMMENT, it is no longer used 2025-10-23 13:23:38 +00:00
sthen dcaba51f26 change UPDATE_PLIST_ARGS, we don't need MODPY_COMMENT any more as we no
longer handle py2+3 in the same port

(I'll remove them from existing ports sometime, but probably alongside
a switch to a newer python branch, as a sweep touches a lot of PLISTs)
2025-10-22 07:36:24 +00:00
sthen 7b21cc71c3 explicitly disable LTO on armv7 (and ld.bfd archs, though it wouldn't be
autodetected there anyway), otherwise python tries to use it and fails
(currently with SIGILL).

explicitly set --with-lto=no when we want it disabled, to make it clear.

clear up old .if block that just had comments in, talking about
--enable-optimizations. that wants revisiting now that we have newer
toolchain, but needs per-arch tests.

found by phessler, diff following discussions with phessler tb jca
2025-10-21 17:09:38 +00:00
sthen edf5050a4e drop MODPY_PYC_MAGIC_TAG and MODPY_PYOEXTENSION from py2 ports 2025-10-20 19:51:08 +00:00
sthen 09eea2b2c5 drop MODPY_PYCACHE and MODPY_ABI3SO from 2.7 python module 2025-10-20 19:46:06 +00:00
sthen 0485386113 drop MODPY_COMMENT from python/2.7 module 2025-10-20 19:33:08 +00:00
sthen f966398da1 set ONLY_FOR_ARCHS?=${RUST_ARCHS} for ports using setuptools-rust or
maturin in MODPY_PYBUILD, so we don't checksum a bunch of crates only to
bail out later when lang/rust is not found
2025-10-19 12:44:05 +00:00
sthen e69847b059 switch the MODPY_PYBUILD error for unknown backends to defer to python-modules(5)
rather than listing them directly
2025-09-17 22:14:32 +00:00
sthen fed66d8953 handle uv_build for MODPY_PYBUILD 2025-09-17 21:58:45 +00:00
sthen b6ee619f8d set BDEP for poetry-core ports to py3-poetry-core->=2.2.0, as the
location of installed license files has changed
2025-09-16 08:44:22 +00:00
sthen 19c89eb0fc helps if i copy the typo-fixed version from test builder 2025-08-21 11:56:10 +00:00
sthen 1d2a94aab9 split python.port.mk into simpler files for 2.7 (which doesn't need
MODPY_PYBUILD etc) and 3 (which doesn't remove all that much yet, but
when the remaining py3 MODPY_SETUPTOOLS are gone we'll be able to
remove the confusing conditionals around that)

been through enough of a bulk for confidence
2025-08-21 10:43:06 +00:00
sthen 5b7d92b42b set PYTEST_DEBUG_TEMPROOT in TEST_ENV for MODPY_PYTEST ports; uses
WRKDIR rather than defaulting to /tmp for test work files
2025-08-01 11:32:34 +00:00
sthen 69a8069556 check for ports which need py-coherent.licensed and warn if no BDEP 2025-06-27 09:53:23 +00:00
tb 6d982ea81c python/2.7: remove uses of CRYPTO_THREADID, ok kmos (maintainer)
These have been noops since forever, but we're at a point where we can
remove the type itself, so use one of the last consumers out of the way.
2025-06-27 04:03:27 +00:00
daniel dcfe611587 update Python to 3.12.11 for a few security fixes
ok kmos@ (MAINTAINER)
2025-06-14 20:08:20 +00:00
kirill 07e4cc49fc python.port.mk: fix MODPY_TEST_LINK_SO after add ${WRKSRC} to MODPY_TEST_LIBDIR
${WRKSRC} which was added MODPY_TEST_LIBDIR brokes MODPY_TEST_LINK_SO as
side effect because it introduced a cyclic loop for resulted symlinks.

OK: sthen@
2025-05-15 10:21:04 +00:00
sthen f402bce3c7 sort list of MODPY_PYBUILD options in error text 2025-05-13 15:43:12 +00:00
sthen 6220a03a32 require version >=79 (with v0 for EPOCH) when building setuptools ports
installed files are in different locations in the dist-info directory
(names are normalized, and licenses move to a subdirectory), so PLISTs
generated on older versions won't package on newer versions and vice-versa
2025-04-29 10:35:26 +00:00
kmos 9a37aa379a https://docs.python.org/release/3.12.10/whatsnew/changelog.html#python-3-12-10
A couple of security fixes.

ok sthen
2025-04-15 20:36:43 +00:00
sthen 88395cce81 add ${WRKSRC} to MODPY_TEST_LIBDIR 2025-03-25 09:29:58 +00:00
sthen 1d758c88f0 specify flit_core minimum version; older ones won't package most ports as
PLISTs have changed
2025-02-21 10:26:49 +00:00
kmos 69947fda24 https://docs.python.org/release/3.12.9/whatsnew/changelog.html#python-3-12-9
Update to Python 3.12.9

ok sthen daniel
2025-02-16 20:43:07 +00:00
sthen 6d7b8aa9f8 go back to using nojunk for setuptools ports.
setuptools opportunistically picks up extensions and builds can fail if
dpb junking occurs during build (only really likely on a slower building
port with compiled code rather than a pure Python port). it doesn't
happen _all_ that often (I've gone months without seeing it in my i386
bulk builds) but isn't that easy to identify from the logs and people
that can run more jobs in parallel hit it more frequently, so let's go
back to nojunk and see how we go.
2025-02-14 10:50:52 +00:00
sthen ad30940204 check if BUILD_DEPENDS is defined before trying to access it
problem found by aja, fix suggested by tb
2025-02-05 14:04:17 +00:00
sthen 069c4d66ce add a BDEP on pythran for ports using cython, unless MODPY_CYTHON_PYTHRAN_RDEP
is set (used in py-numpy to break a dependency loop). suggestion of doing it
this way rather than with a PKGPATH check from tb@.
2025-02-05 10:25:00 +00:00