<feed xmlns='http://www.w3.org/2005/Atom'>
<title>packages/lang/python/python3/Makefile, branch openwrt-22.03</title>
<subtitle>Community maintained packages for OpenWrt</subtitle>
<id>http://x-nagi.com/cgit/packages/atom?h=openwrt-22.03</id>
<link rel='self' href='http://x-nagi.com/cgit/packages/atom?h=openwrt-22.03'/>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/packages/'/>
<updated>2023-10-31T09:03:43Z</updated>
<entry>
<title>python: Add proper support for pyproject.toml-based builds</title>
<updated>2023-10-31T09:03:43Z</updated>
<author>
<name>Jeffery To</name>
<email>jeffery.to@gmail.com</email>
</author>
<published>2023-02-17T17:13:22Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/packages/commit/?id=8b982ebc56d9a75764fbcf84ecd7f8d276df4508'/>
<id>urn:sha1:8b982ebc56d9a75764fbcf84ecd7f8d276df4508</id>
<content type='text'>
This removes the changes made in
61f202c0170785addbbc449e4de61cc5886f0833 and adds actual support for
pyproject.toml-based (PEP 517) builds of Python packages.

Packages can force the use of the old build process by setting
PYTHON3_PKG_FORCE_DISTUTILS_SETUP:=1; this should only be a temporary
workaround until the package can be updated/fixed to use the new build
process.

Signed-off-by: Jeffery To &lt;jeffery.to@gmail.com&gt;
(cherry picked from commit 5156c0c82bcb18481bf588ba4b1ff67c12422a80)
</content>
</entry>
<entry>
<title>python: Better host pip options</title>
<updated>2023-10-13T06:23:39Z</updated>
<author>
<name>Jeffery To</name>
<email>jeffery.to@gmail.com</email>
</author>
<published>2023-02-20T11:10:39Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/packages/commit/?id=19e6300f0cdbb1c048f65d16875357a3b099c8c6'/>
<id>urn:sha1:19e6300f0cdbb1c048f65d16875357a3b099c8c6</id>
<content type='text'>
pip by default will read system-wide and per-user configuration
files[1]. Setting PIP_CONFIG_FILE=/dev/null instructs pip to not read
any config files[2].

pip will spawn child processes of itself to do work, but not all options
are passed down to the child processes[3]. Setting global options as
environment variables[4] ensures they are passed down to any child
processes.

[1]: https://pip.pypa.io/en/stable/topics/configuration/#configuration-files
[2]: https://pip.pypa.io/en/stable/topics/configuration/#pip-config-file
[3]: https://github.com/pypa/pip/issues/9081#issue-733819665
[4]: https://pip.pypa.io/en/stable/topics/configuration/#environment-variables

Signed-off-by: Jeffery To &lt;jeffery.to@gmail.com&gt;
(cherry picked from commit 8c2abb74031e2403dde83536a8e7f13c63cdd4ab)
</content>
</entry>
<entry>
<title>python3: avoid unnecessary rebuilds</title>
<updated>2023-10-07T17:33:30Z</updated>
<author>
<name>Eneas U de Queiroz</name>
<email>cotequeiroz@gmail.com</email>
</author>
<published>2023-10-04T19:19:07Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/packages/commit/?id=fea0f7a9e82b156e6d53d6d2ab18af387b2298e8'/>
<id>urn:sha1:fea0f7a9e82b156e6d53d6d2ab18af387b2298e8</id>
<content type='text'>
Move the order in which BuildPackage is called, so that the libpython
package is built ahead of the module packages, to avoid forcing a
clean-build of the package when 'make package/python3/compile' is called
a second time without changes.

The library must be built first, so that when the buildsystem checks for
ABI version changes using libpython3.version, its timestamp should be
older than the dependent package's STAMP_PREPARED file.

Signed-off-by: Eneas U de Queiroz &lt;cotequeiroz@gmail.com&gt;
(cherry picked from commit c230d7bd7f8a794032d2414588f1cdfc1a5ec74e)
</content>
</entry>
<entry>
<title>python3: Update to 3.10.13</title>
<updated>2023-09-08T11:01:59Z</updated>
<author>
<name>Jeffery To</name>
<email>jeffery.to@gmail.com</email>
</author>
<published>2023-09-05T04:02:08Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/packages/commit/?id=99f9e68f7b4eb7683146edbf86f15a57af981f97'/>
<id>urn:sha1:99f9e68f7b4eb7683146edbf86f15a57af981f97</id>
<content type='text'>
Includes fix for CVE-2023-40217 (Bypass TLS handshake on closed
sockets).

Signed-off-by: Jeffery To &lt;jeffery.to@gmail.com&gt;
</content>
</entry>
<entry>
<title>python3: Update to 3.10.12</title>
<updated>2023-06-12T07:17:41Z</updated>
<author>
<name>Jeffery To</name>
<email>jeffery.to@gmail.com</email>
</author>
<published>2023-06-12T07:17:41Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/packages/commit/?id=4d2aad09953ad137e113e1eb792d11b8d6e29f8c'/>
<id>urn:sha1:4d2aad09953ad137e113e1eb792d11b8d6e29f8c</id>
<content type='text'>
Signed-off-by: Jeffery To &lt;jeffery.to@gmail.com&gt;
</content>
</entry>
<entry>
<title>python3: Update to 3.10.11, refresh/restore patches</title>
<updated>2023-05-24T08:49:03Z</updated>
<author>
<name>Jeffery To</name>
<email>jeffery.to@gmail.com</email>
</author>
<published>2023-03-16T09:46:48Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/packages/commit/?id=6601f014e4de3ecd9b5597a72dabb62dee3a6505'/>
<id>urn:sha1:6601f014e4de3ecd9b5597a72dabb62dee3a6505</id>
<content type='text'>
This also restores (and updates) a patch for pip that was removed
earlier but is still necessary.

Fixes: 7a756db00249 ("python3: bump to version 3.10.9")
Signed-off-by: Jeffery To &lt;jeffery.to@gmail.com&gt;
</content>
</entry>
<entry>
<title>python3: Fix hashlib module not compiled for host Python</title>
<updated>2023-05-24T08:47:52Z</updated>
<author>
<name>Jeffery To</name>
<email>jeffery.to@gmail.com</email>
</author>
<published>2023-05-24T07:56:32Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/packages/commit/?id=5e46567c39fd5b1ad35ba9c7b4f677d4be93af0a'/>
<id>urn:sha1:5e46567c39fd5b1ad35ba9c7b4f677d4be93af0a</id>
<content type='text'>
This updates 026-openssl-feature-flags.patch with a newer version from
OpenBSD[1].

This also adds 029-no-FIPS_mode.patch to patch out a call to
FIPS_mode(). LibreSSL 3.4 does not have a function definition for
FIPS_mode.

[1]: https://github.com/openbsd/ports/blob/26a04435bf2a09dcbe22b718bfee08997617a906/lang/python/3.10/patches/patch-Modules__hashopenssl_c

Signed-off-by: Jeffery To &lt;jeffery.to@gmail.com&gt;
</content>
</entry>
<entry>
<title>python3: Fix uuid module not compiled for host Python</title>
<updated>2023-05-24T05:59:49Z</updated>
<author>
<name>Jeffery To</name>
<email>jeffery.to@gmail.com</email>
</author>
<published>2023-05-23T11:12:27Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/packages/commit/?id=aa2102f70d3b27b6b7a07142bcd1f017fb60d76f'/>
<id>urn:sha1:aa2102f70d3b27b6b7a07142bcd1f017fb60d76f</id>
<content type='text'>
This adds $(STAGING_DIR_HOST)/include/e2fsprogs to HOST_CFLAGS and
HOST_CPPFLAGS so that configure can find uuid/uuid.h.

Signed-off-by: Jeffery To &lt;jeffery.to@gmail.com&gt;
(cherry picked from commit 44fb4927f11add18baa11617e67c8a697a3f528d,
adjusted PKG_RELEASE)
Signed-off-by: Jeffery To &lt;jeffery.to@gmail.com&gt;
</content>
</entry>
<entry>
<title>python3: Fix multiarch/local paths added when building host Python</title>
<updated>2023-05-24T05:59:48Z</updated>
<author>
<name>Jeffery To</name>
<email>jeffery.to@gmail.com</email>
</author>
<published>2023-05-23T09:49:43Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/packages/commit/?id=43bd87954c027ab86fd99214e1885b38ffa7fd2f'/>
<id>urn:sha1:43bd87954c027ab86fd99214e1885b38ffa7fd2f</id>
<content type='text'>
By default, the Python build process will add /usr/local/{lib,include},
and multiarch paths (e.g. /usr/{lib,include}/x86_64-linux-gnu) if
building on Debian/Ubuntu, to its library and includes paths.

006-remove-multi-arch-and-local-paths.patch was added in
84202f17e1aac6faf66b8d186f7c5c62b6f72ffb to stop the Python build
process from adding these paths.

006-remove-multi-arch-and-local-paths.patch was removed in
48277ec9158151763239461c6f60808e38a99c2f.

006-do-not-add-multiarch-paths-when-cross-compiling.patch was added in
0c8b0b0bf727a57b0138a1425d2f32786dddd146 to stop the Python build
process from adding these paths for target Python.

These paths are still added by the Python build process when building
host Python.

This replaces the cross-compiling-only patch with the original patch,
renamed slightly and adapted for Python 3.10.

Fixes: 48277ec91581 ("python3: bump to version 3.8")
Signed-off-by: Jeffery To &lt;jeffery.to@gmail.com&gt;
(cherry picked from commit f006d0ea23f76a1846c93d0ec3b1ea60ba36d093,
adjusted PKG_RELEASE)
Signed-off-by: Jeffery To &lt;jeffery.to@gmail.com&gt;
</content>
</entry>
<entry>
<title>python3: Fix readelf program name not replaced in _sysconfigdata.py</title>
<updated>2023-05-24T05:59:48Z</updated>
<author>
<name>Jeffery To</name>
<email>jeffery.to@gmail.com</email>
</author>
<published>2023-05-18T09:42:12Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/packages/commit/?id=8388941fde5b67537b949765843bac9d54df483c'/>
<id>urn:sha1:8388941fde5b67537b949765843bac9d54df483c</id>
<content type='text'>
The Makefile lines to add READELF to TARGET_CONFIGURE_OPTS was removed
in 4e05541782edeb06b51d691dadf52648df24c940.

Without setting READELF, configure finds the symlink to
$(TARGET_CROSS)readelf (e.g. arm-openwrt-linux-readelf) instead of
$(TARGET_CROSS)readelf (e.g. arm-openwrt-linux-muslgnueabi-readelf).

This leads to the symlink name being saved to _sysconfigdata.py, and so
the readelf name is not replaced correctly (in
Py3Package/python3-base/install).

This restores the removed Makefile lines.

Fixes: 4e05541782ed ("python3: bump to version 3.10.0")
Signed-off-by: Jeffery To &lt;jeffery.to@gmail.com&gt;
(cherry picked from commit e1a95786358c64483fc16d52eac6746267f0abec,
adjusted PKG_RELEASE)
Signed-off-by: Jeffery To &lt;jeffery.to@gmail.com&gt;
</content>
</entry>
</feed>
