Commit Graph

111 Commits

Author SHA1 Message Date
sthen dbff3feb68 use canonical pypi.org url for HOMEPAGEs set via MODPY_PI
bumps to follow
2026-03-16 22:28:04 +00:00
sthen 0fca7bf6c2 MODPY_TEST_LINK_SO not needed in the py2 version of python.port.mk 2026-02-12 10:59:46 +00:00
tb 7d38f46fdc python/2.7: treat ASN1_STRING as opaque
ok kmos (maintainer)
2025-12-10 06:23:15 +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 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
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
sthen 999161335d update python/3 to 3.12.8 and do some other overhaul while there
(since any python branch switch touches thousands of ports):

- stop using FLAVOR=python3 / MODPY_FLAVOR / etc in py3 ports.

- rename MODPY_EGG_VERSION (which refers to an obsolete packaging
format) with MODPY_DISTV (easier to type and line up in Makefiles)

bumps and adjustments to follow. lots of help from tb@, thanks!
2024-12-21 11:32:44 +00:00
sthen 33c658f739 mention ERR_get_state() removal in CHANGES.OpenBSD, spotted by tb@ 2024-03-24 09:38:44 +00:00
sthen 21d4dbaa3c python/2.7: don't call ERR_get_state(), ok tb@ 2024-03-03 12:52:08 +00:00
tb 411459a219 Python: set COMPILER_LANGS = c. The Pythons are no longer compiled with
--with-libcxx-main, so they no longer need to link against a C++ runtime.

help/ok sthen, ok kmos
2022-12-06 15:55:58 +00:00
sthen 9b1b49cfee Python tidying: remove old build-system patch which replaced ${INSTALL_DATA}
with cp, presumably it was used as part of build rather than fake-install
and had problems with non-root builds. install has been mocked in ports
builds for some time now (as part of the PORTS_PRIVSEP) so that's not needed.
ok kmos@
2022-09-02 16:49:03 +00:00
sthen bf5b2cd548 Remove patching around libreadline in Python; this was added after
OpenBSD 5.4 to prevent picking up ports libreadline if installed during
build, but this was fixed differently in the libreadline port after 5.5
instead (by moving the headers to a directory which is not usually
picked up by default).

Found while investigating why readline is broken in the Python 3.10
port (but doesn't fix that issue). Also changes to the build in py3.10
mean that this patching no longer worked for the original issue.

ok kmos@
2022-08-29 12:23:42 +00:00
stu 9f5da2e414 Move from using Tcl/Tk 8.5 to Tcl/Tk 8.6,
except for Python-2.7, which stays with 8.5.

Make COMMENTs and DESCRs consistent with Tk.

Fix typo in 3.10/files/CHANGES.OpenBSD.


OKs and thanks to kmos@, sthen@.
2022-06-09 14:49:29 +00:00
sthen b47a629bac Include pip in the non-default versions of Python, so that for example
if you want to run some software that needs an older or newer version
of Python you can do so in most cases. For the default versions (2.7, 3.9)
pip is available from the separate port (devel/py2-pip, devel/py-pip).
Factor out some common parts to ../Makefile.inc while there. OK kmos@
2022-03-28 15:48:24 +00:00
sthen 808880dcd0 add an end-of-life warning to MESSAGE for python 2, ok kmos@ 2022-03-23 11:20:05 +00:00
naddy e93f9d0ca9 drop RCS Ids 2022-03-11 19:28:46 +00:00
daniel 6b9e710437 use a FULL_VERSION variable in Python Makefiles
The goal is to shuffle things around allowing us to use this variable in
the packing lists. This should reduce a little bit of churn going
forward given some files get bumped with every point release.

For example in Python 3.9 we make the following update:

-lib/python3.9/lib2to3/Grammar3.9.10.final.0.pickle
+lib/python3.9/lib2to3/Grammar${FULL_VERSION}.final.0.pickle

-lib/python3.9/lib2to3/PatternGrammar3.9.10.final.0.pickle
+lib/python3.9/lib2to3/PatternGrammar${FULL_VERSION}.final.0.pickle

ok kmos@ (MAINTAINER), sthen@
2022-01-23 21:32:07 +00:00
tb fd954446cd pythons: Tweak LibreSSL patches: drop a hunk that retains backward
compatibility with LibreSSL 2.7 and tweak comments in the patches.
In Python 3.10, fix the security level patch. Add a missing const
and drop @SECLEVEL=2 from the PY_SSL_DEFAULT_CIPHER_STRING, as that
will currently result in a runtime failure.

ok kmos
2021-11-18 15:45:28 +00:00
landry 89cd0faf06 lang/python: stop leaking python build LDFLAGS/CFLAGS to python extensions build
right now the installed python retains paths to the python build objdir,
and also enforces -L/usr/local/lib when linking python shared extensions
(which might not be desired):

$python3 -m sysconfig|grep LDSH
        BLDSHARED = "cc -pthread -shared -fPIC -L/usr/local/lib/ -L/usr/obj/ports/Python-3.8.12/Python-3.8.12 -L/usr/local/lib/"
        LDSHARED = "cc -pthread -shared -fPIC -L/usr/local/lib/ -L/usr/obj/ports/Python-3.8.12/Python-3.8.12 -L/usr/local/lib/"

python 3.x provides LDFLAGS_NODIST/CFLAGS_NODIST to avoid that (cf
https://docs.python.org/3/using/configure.html#envvar-CONFIGURE_LDFLAGS_NODIST),
but sadly if we only use it (and remove CPPFLAGS/LDFLAGS pointing at
/usr/local from CONFIGURE_ENV), libintl/textdomain detection during
configure fails.

So, taking inspiration from freebsd PR181721, dont add
CONFIGURE_LDFLAGS/CONFIGURE_CPPFLAGS to PY_LDFLAGS/PY_CPPFLAGS.

extend CHANGES.OpenBSD to explain the change (reminded by sthen@).

went in a bulk build (thanks ajacoutot@!) with a single fallout
(devel/gdb) that will get fixed shortly.
2021-11-01 07:43:39 +00:00
kmos 53f471957a Update Python 3.8 to 3.8.11 and Python 3.9 to 3.9.7
https://docs.python.org/release/3.8.12/whatsnew/changelog.html#changelog

https://docs.python.org/release/3.9.7/whatsnew/changelog.html#changelog

Each has security fixes

Take MAINTAINER from Remi Pointel with his blessing

Bump revisions in 2.7 due to maintainer update

ok remi
2021-09-01 17:41:47 +00:00
naddy 504eeac4fc lang/python: adapt and bump for changes 6.x -> 7.x 2021-08-18 19:08:05 +00:00
sthen abb55fc128 avoid some more hardcoding of 'openbsd6' 2021-07-30 20:01:19 +00:00
sthen 14eb197440 missed bump, reported by naddy 2021-03-22 21:39:10 +00:00
sthen e82c1acb6c install the gdb autoload helper for the various Python versions,
allows some additional debugging features for Python-based software
(for example there's a new "py-bt" command to print a Python backtrace
which can give clues if a py process is hanging).

ok rpointel@
2021-03-22 17:35:26 +00:00
sthen 10d9780653 Drop the post-install "if you want to use this as your default system
Python" messages, Python 2 development has finished so this is not a
sensible option to use as default.

(It is still kept in the ports tree for now, as some important software
has not been updated to use Python 3).

ok tracey aja mariani rpointel

From https://www.python.org/doc/sunset-python-2/, "We are volunteers who
make and take care of the Python programming language. We have decided
that January 1, 2020, was the day that we sunset Python 2. That means
that we will not improve it anymore after that day, even if someone
finds a security problem in it. You should upgrade to Python 3 as soon
as you can."
2020-04-24 11:01:26 +00:00
rpointel 75bb50423a update python to 2.7.18: the last release of Python 2.
tested in a bulk build by naddy@, thanks.
2020-04-23 07:56:01 +00:00
pamela 475708fabd regenerate patches
OK sthen@
2019-12-06 21:03:09 +00:00
ajacoutot 8e232da1bf Provide all python debug packages. 2019-11-11 17:47:41 +00:00
jca 428d69794f Unbreak numpy after the python-2.7.17 update
python cflags are now being honored which means gcc now pukes on the
bogus -OPT:Olimit=0 present in python2-config --cflags.  Force-disable
the bogus use of -OPT:Olimit=0.  ok kmos@ sthen@
2019-11-03 08:55:33 +00:00
rpointel b5e9f7f1fb update python to 2.7.17.
ok kmos@.
2019-11-01 17:40:08 +00:00
naddy ebf751b927 Update gettext to 0.20.1.
Follow the upstream recommendations for packagers and switch to
multi-packages:
devel/gettext       -> devel/gettext,-runtime
devel/gettext-tools -> devel/gettext,-tools
(new)                  devel/gettext,-textstyle
2019-05-20 22:15:00 +00:00
ajacoutot 8d092f421f Missed bump. 2019-04-22 10:09:37 +00:00
sthen c3e90e6a46 python tweaks;
- sync WANTLIB
- use do-gen instead of post-patch for the "subst and regen
autoconf files" target
- ALL_TARGET needs setting differently between 2.7 and 3.x;
rather than checking against 3.6 for "all", check against 2.7
for "all ./Lib/plat-openbsd6". needed for newer 3.x.
2019-04-21 09:32:19 +00:00
rpointel 99f091b273 update Python to 2.7.16.
tested by sthen@ and kmos@ (thanks).
2019-04-03 05:23:40 +00:00
sthen 25f0e460f2 Add COMPILER lines to c++ ports which currently use the default. Adjust
some existing COMPILER lines with arch restrictions etc. In the usual
case this is now using "COMPILER = base-clang ports-gcc base-gcc" on
ports with c++ libraries in WANTLIB.

This is basically intended to be a noop on architectures using clang
as the system compiler, but help with other architectures where we
currently have many ports knocked out due to building with an unsuitable
compiler -

- some ports require c++11/newer so the GCC version in base that is used
on these archirtectures is too old.

- some ports have conflicts where an executable is built with one compiler
(e.g. gcc from base) but a library dependency is built with a different
one (e.g. gcc from ports), resulted in mixing incompatible libraries in the
same address space.

devel/gmp is intentionally skipped as it's on the path to building gcc -
the c++ library there is unused in ports (and not built by default upstream)
so intending to disable building gmpcxx in a future commit.
2018-10-24 14:27:57 +00:00
danj 7d569fc533 Tweak MASTER_SITES and HOMEPAGE
Switch to https and remove dead mirror.
Noticed by rsadowski@, ok rpointel@
2018-09-18 16:43:12 +00:00
danj a00bb2a8a9 regen patches as some need fuzzing
ok tb
2018-08-09 17:39:27 +00:00
rpointel b0ffc09fc2 update python 2.7 to 2.7.15.
tested in a bulk by naddy@ (thanks).
ok jasper@.
2018-05-03 20:09:25 +00:00
tb 439a9563e3 Use our own PKCS5_PBKDF2_HMAC() instead of using PKCS5_PBKDF2_HMAC_fast().
They are essentially the same.

discussed with jsing
ok & bumping help sthen
2018-03-18 01:27:30 +00:00
sthen 823951dedc fix following libressl changes. maybe the thread locking can go away too now,
just doing the minimum to unbreak the ports tree for now.
2018-03-17 22:30:04 +00:00
sthen ad52b4a5fb unbreak following libressl additions - we have X509_OBJECT_get0_X509,
BIO_up_ref, X509_STORE_get0_objects but not X509_NAME_ENTRY_set,
SSL_CTX_get_default_passwd_cb, X509_OBJECT_get_type,
SSL_CTX_get_default_passwd_cb_userdata, X509_STORE_get0_param,
SSL_SESSION_has_ticket, SSL_SESSION_get_ticket_lifetime_hint

while there: don't override TLS_*method with macros
2018-02-22 23:03:12 +00:00
jca c3f5e64921 Add missing make dep, to allow builds with MAKE_JOBS >= 2
iirc ok naddy@, no objection from rpointel@ (maintainer)
2017-11-09 10:05:14 +00:00
jca c816c665cd Regen patches 2017-11-05 06:33:45 +00:00
ajacoutot d2bf181df8 Provide symlinks for python2, python3 and friends like most other OSes do.
This will allow us to drop patches and substitutions in our ports tree. Nowadays
most upstreams don't hardcode the path to python but instead use env(1) to find
the path.

bulk tested
ok sthen@
ok and input from rpointel@ (on an older patch)
2017-11-03 13:13:05 +00:00
rpointel 29fbf8cf5b update Python to 2.7.14.
tested in a bulk build by naddy@, thanks.
2017-09-20 18:44:48 +00:00
sthen 5e964ab0df bump LIBCXX/LIBECXX/COMPILER_LIBCXX ports. 2017-07-26 22:45:14 +00:00
espie 8f66b5e686 tweak generated includes so that C++ extensions compile with clang.
- we don't have xlocale
- so we use __bsd_locale_fallbacks_h, yes even for #include <iostream>
- that depends on mbsnrtowcs and wcsnrtombs  from wchar.h
- those require __POSIX_VISIBLE to be >= 200809...

bump accordingly. tested by naddy@, no breakage on gcc platforms.
2017-05-04 15:20:24 +00:00