You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Silent grab external dependency from libuuid during build without possibility to disable it #100369
During build process of the python it silent grab external (not in base system, but installed from ports) dependency from libuuid (misc/e2fsprogs-libuuid):
checking uuid.h usability... yes
checking uuid.h presence... yes
checking for uuid.h... yes
checking for uuid_generate_time_safe... no
checking for uuid_generate_time in -luuid... yes
checking for uuid_create... yes
checking for uuid_enc_be... yes
Without libuuid (misc/e2fsprogs-libuuid) installed:
checking uuid.h usability... yes
checking uuid.h presence... yes
checking for uuid.h... yes
checking for uuid_generate_time_safe... no
checking for uuid_generate_time in -luuid... no
checking for uuid_create... yes
checking for uuid_enc_be... yes
And it's impossible to disable this behavior without additional patches to configure script.
Your environment
CPython versions tested on: 3.10.9
Operating system and architecture: FreeBSD 13.1-p5 amd64
IMHO, best solution is to add an options to configure script, for example: --disable-libuuid and --enable-libuuid.
Additionally: base system have uuid.h and misc/e2fsprogs-libuuid have uuid/uuid.h - better check for uuid.h if --disable-libuuid used and for uuid/uuid.h if --enable-libuuid.
Reading the code for configure.ac, I am pretty sure this is not an issue anymore since GH-29741, which cleaned up the uuid module in a couple ways including refactoring the configure checks to use pkg-config.
A side effect of this is that it actually checks properly for different providers of uuid -- and if it finds the FreeBSD base system version of uuid.h, it marks it as found and doesn't attempt to either probe it with pkg-config, or fall back on AC_CHECK_LIB. Therefore it won't ever find it in ports.
changed the title [-]Silent grab external dependency from libuuid during build without possibility to diable it[/-][+]Silent grab external dependency from libuuid during build without possibility to disable it[/+]on Dec 20, 2022
This is fixed in 3.12 and can no longer be fixed in 3.10, leaving only 3.11 in question. The change is subtle enough that I'm not excited about trying to pick out (or review) the right bits to backport, so I'm going to go ahead and close the issue.
Activity
eli-schwartz commentedon Dec 20, 2022
Reading the code for configure.ac, I am pretty sure this is not an issue anymore since GH-29741, which cleaned up the uuid module in a couple ways including refactoring the configure checks to use pkg-config.
A side effect of this is that it actually checks properly for different providers of uuid -- and if it finds the FreeBSD base system version of uuid.h, it marks it as found and doesn't attempt to either probe it with pkg-config, or fall back on AC_CHECK_LIB. Therefore it won't ever find it in ports.
eli-schwartz commentedon Dec 20, 2022
Dunno if that's worth backporting from 3.11 to 3.10, at the very least that commit would need to be reduced and only part of it applied.
VVD commentedon Dec 20, 2022
Look like not backported yet.
[-]Silent grab external dependency from libuuid during build without possibility to diable it[/-][+]Silent grab external dependency from libuuid during build without possibility to disable it[/+]VVD commentedon Jan 7, 2023
ping
zware commentedon May 11, 2023
This is fixed in 3.12 and can no longer be fixed in 3.10, leaving only 3.11 in question. The change is subtle enough that I'm not excited about trying to pick out (or review) the right bits to backport, so I'm going to go ahead and close the issue.