Skip to content

Commit

Permalink
Merge pull request #3759 from citrus-it/py313
Browse files Browse the repository at this point in the history
Python 3.13 bringup
  • Loading branch information
hadfl authored Dec 11, 2024
2 parents c4db1c9 + 5fe41e5 commit 86be42e
Show file tree
Hide file tree
Showing 126 changed files with 8,656 additions and 30 deletions.
1 change: 1 addition & 0 deletions build/meta/illumos-tools.p5m
Original file line number Diff line number Diff line change
Expand Up @@ -34,3 +34,4 @@ depend fmri=system/header type=require
depend fmri=system/management/snmp/net-snmp type=require
depend fmri=text/gnu-gettext type=require
depend fmri=runtime/python-312 type=require
depend fmri=runtime/python-313 type=require
14 changes: 14 additions & 0 deletions build/meta/omnios-build-tools.p5m
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,19 @@ depend fmri=pkg://$(PKGPUBLISHER)/library/python-3/pyyaml-312 type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/python-3/rapidjson-312 type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/python-3/setuptools-rust-312 \
type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/python-3/coverage-313 type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/python-3/crossenv-313 type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/python-3/jsonrpclib-313 type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/python-3/jsonschema-313 type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/python-3/meson-313 type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/python-3/packaging-313 type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/python-3/pip-313 type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/python-3/pycurl-313 type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/python-3/pyopenssl-313 type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/python-3/pyyaml-313 type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/python-3/rapidjson-313 type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/python-3/setuptools-rust-313 \
type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/security/liboqs type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/security/openssl-11 type=require
depend fmri=pkg://$(PKGPUBLISHER)/library/security/openssl-3 type=require
Expand All @@ -65,6 +78,7 @@ depend fmri=pkg://$(PKGPUBLISHER)/runtime/java/openjdk21 type=require
depend fmri=pkg://$(PKGPUBLISHER)/runtime/perl type=require
depend fmri=pkg://$(PKGPUBLISHER)/runtime/python-27 type=require
depend fmri=pkg://$(PKGPUBLISHER)/runtime/python-312 type=require
depend fmri=pkg://$(PKGPUBLISHER)/runtime/python-313 type=require
depend fmri=pkg://$(PKGPUBLISHER)/service/network/tftp type=require
depend fmri=pkg://$(PKGPUBLISHER)/system/header/header-audio type=require
depend fmri=pkg://$(PKGPUBLISHER)/system/library type=require
Expand Down
4 changes: 1 addition & 3 deletions build/python312/local.mog
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,7 @@ license LICENSE license=PSFv2

<transform link mediator=python3 -> set mediator-version $(PYTHONVER)>

# Let the default mediator priority take effect while the highest version is
# the default.
#<transform link mediator=python3 -> set mediator-priority vendor>
<transform link mediator=python3 -> set mediator-priority vendor>

# Add mediated link for /usr/bin/python and python-config
link path=usr/bin/python target=python3
Expand Down
60 changes: 60 additions & 0 deletions build/python313/README
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@

Python module dependencies
--------------------------

setuptools
pip (and pip depends on setuptools! See "Bootstrap" below)

pkg
cryptography
setuptools-rust
semantic-version
typing-extensions
tomli
six
cffi
pycparser
asn1crypto
idna
jsonrpclib
jsonschema
attrs
pyrsistent
js-regex
orjson
pycurl
rapidjson
coverage
pyopenssl
cryptography

bhyve (brand)
pyyaml

glib2
meson
packaging


Bootstrap
---------

To bootstrap modules for a new python version, build 'setuptools' and 'pip'
with the '-f bootstrap' flag, and install these bootstrap packages:

for m in setuptools pip; do
{ cd $m; ./build.sh -f bootstrap -blt; }
done
pfexec pkg install {pip,setuptools}-3XX-bootstrap

then build again, without the bootstrap flag:

for m in setuptools pip; do
{ cd $m; ./build.sh -blt; }
done

and finally switch out the bootstrap packages for the real ones:

pfexec pkg install --reject pip-3XX-bootstrap pip-3XX
pfexec pkg install --reject setuptools-3XX-bootstrap setuptools-3XX

38 changes: 38 additions & 0 deletions build/python313/asn1crypto/build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
#!/usr/bin/bash
#
# {{{ CDDL HEADER
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source. A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
# }}}
#
# Copyright 2024 OmniOS Community Edition (OmniOSce) Association.

. ../../../lib/build.sh

PKG=library/python-3/asn1crypto-313
PROG=asn1crypto
inherit_ver python312/asn1crypto
SUMMARY="asn1crypto - Fast ASN.1 parser..."
DESC="$SUMMARY"

. $SRCDIR/../common.sh

BUILD_DEPENDS_IPS+="library/python-$PYMVER/setuptools-$SPYVER"

init
download_source pymodules/$PROG $PROG $VER
patch_source
prep_build
python_build
make_package
clean_up

# Vim hints
# vim:ts=4:sw=4:et:fdm=marker
14 changes: 14 additions & 0 deletions build/python313/asn1crypto/local.mog
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source. A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.

# Copyright 2019 OmniOS Community Edition (OmniOSce) Association.

license LICENSE license=MIT

36 changes: 36 additions & 0 deletions build/python313/attrs/build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
#!/usr/bin/bash
#
# {{{ CDDL HEADER
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source. A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
# }}}
#
# Copyright 2024 OmniOS Community Edition (OmniOSce) Association.
#
. ../../../lib/build.sh

PKG=library/python-3/attrs-313
PROG=attrs
inherit_ver python312/attrs
SUMMARY="Python attrs"
DESC="Classes Without Boilerplate"

. $SRCDIR/../common.sh

init
download_source pymodules/$PROG $PROG $VER
patch_source
prep_build
python_build
make_package
clean_up

# Vim hints
# vim:ts=4:sw=4:et:fdm=marker
18 changes: 18 additions & 0 deletions build/python313/attrs/local.mog
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source. A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#

# Copyright 2019 OmniOS Community Edition (OmniOSce) Association.

license LICENSE license=MIT

<transform file path=usr/bin \
-> edit path usr/bin usr/lib/python$(PYTHONVER)/bin>

Loading

0 comments on commit 86be42e

Please sign in to comment.