diff mbox series

package/python3: use pure python UUID backend for host variant

Message ID 20230207-host-python-libuuid-v1-1-de34da87efd8@theobroma-systems.com
State Accepted
Headers show
Series package/python3: use pure python UUID backend for host variant | expand

Commit Message

Quentin Schulz Feb. 7, 2023, 3:36 p.m. UTC
From: Quentin Schulz <quentin.schulz@theobroma-systems.com>

host-python3 currently does not build if util-linux-uuid option is not
enabled, failing with the following error messages:
"""
/usr/lib64/ccache/gcc -fPIC -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -O2 -I/home/qschulz/work/upstream/buildroot/output/host/include -std=c11 -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wstrict-prototypes -Werror=implicit-function-declaration -fvisibility=hidden -I./Include/internal -I./Include -I. -I/home/qschulz/work/upstream/buildroot/output/host/include -I/usr/local/include -I/home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1/Include -I/home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1 -c /home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1/Modules/_uuidmodule.c -o build/temp.linux-x86_64-3.11/home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1/Modules/_uuidmodule.o
/home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1/Modules/_uuidmodule.c: In function ‘py_uuid_generate_time_safe’:
/home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1/Modules/_uuidmodule.c:27:12: error: storage size of ‘uui ’ isn’t known
   27 |     uuid_t uuid;
      |            ^~~~
/home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1/Modules/_uuidmodule.c:31:11: error: implicit declaration of function ‘uuid_generate_time_safe’; did you mean ‘py_uuid_generate_time_safe’? [-Werror=implicit-function-declaration]
   31 |     res = uuid_generate_time_safe(uuid);
      |           ^~~~~~~~~~~~~~~~~~~~~~~
      |           py_uuid_generate_time_safe
/home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1/Modules/_uuidmodule.c:27:12: warning: unused variable ‘uuid’ [-Wunused-variable]
   27 |     uuid_t uuid;
      |            ^~~~
/home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1/Modules/_uuidmodule.c:47:1: warning: control reaches end of non-void function [-Wreturn-type]
   47 | }
      | ^
cc1: some warnings being treated as errors

The necessary bits to build these optional modules were not found:
_dbm                 _gdbm                _tkinter
nis                  readline
To find the necessary bits, look in setup.py in detect_modules() for the module's name.

The following modules found by detect_modules() in setup.py have not
been built, they are *disabled* by configure:
_ctypes_test         _sqlite3             _testbuffer
_testcapi            _testimportmultiple   _testinternalcapi
_testmultiphase      _xxtestfuzz

Failed to build these modules:
_uuid
"""

Therefore, let's disable building the _uuid extension the same way it's
done for the target package since commit 0b68713aae28 ("python3: use
pure python UUID backend").

Cc: Quentin Schulz <foss+buildroot@0leil.net>
Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
---
Only build tested with make host-python3 with raspberrypi4_defconfig configuration.
---
 package/python3/python3.mk | 1 +
 1 file changed, 1 insertion(+)


---
base-commit: 26dd70e954a7c9142b078837ab1bbfad54d0e5cb
change-id: 20230207-host-python-libuuid-d600d32f70ae

Best regards,

Comments

Yann E. MORIN Feb. 7, 2023, 3:49 p.m. UTC | #1
Quentin, All,

On 2023-02-07 16:36 +0100, Quentin Schulz spake thusly:
> From: Quentin Schulz <quentin.schulz@theobroma-systems.com>
> 
> host-python3 currently does not build if util-linux-uuid option is not
> enabled, failing with the following error messages:
> """
> /usr/lib64/ccache/gcc -fPIC -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -O2 -I/home/qschulz/work/upstream/buildroot/output/host/include -std=c11 -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wstrict-prototypes -Werror=implicit-function-declaration -fvisibility=hidden -I./Include/internal -I./Include -I. -I/home/qschulz/work/upstream/buildroot/output/host/include -I/usr/local/include -I/home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1/Include -I/home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1 -c /home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1/Modules/_uuidmodule.c -o build/temp.linux-x86_64-3.11/home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1/Modules/_uuidmodule.o
> /home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1/Modules/_uuidmodule.c: In function ‘py_uuid_generate_time_safe’:
> /home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1/Modules/_uuidmodule.c:27:12: error: storage size of ‘uui ’ isn’t known
>    27 |     uuid_t uuid;
>       |            ^~~~
> /home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1/Modules/_uuidmodule.c:31:11: error: implicit declaration of function ‘uuid_generate_time_safe’; did you mean ‘py_uuid_generate_time_safe’? [-Werror=implicit-function-declaration]
>    31 |     res = uuid_generate_time_safe(uuid);
>       |           ^~~~~~~~~~~~~~~~~~~~~~~
>       |           py_uuid_generate_time_safe
> /home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1/Modules/_uuidmodule.c:27:12: warning: unused variable ‘uuid’ [-Wunused-variable]
>    27 |     uuid_t uuid;
>       |            ^~~~
> /home/qschulz/work/upstream/buildroot/output/build/host-python3-3.11.1/Modules/_uuidmodule.c:47:1: warning: control reaches end of non-void function [-Wreturn-type]
>    47 | }
>       | ^
> cc1: some warnings being treated as errors
> 
> The necessary bits to build these optional modules were not found:
> _dbm                 _gdbm                _tkinter
> nis                  readline
> To find the necessary bits, look in setup.py in detect_modules() for the module's name.
> 
> The following modules found by detect_modules() in setup.py have not
> been built, they are *disabled* by configure:
> _ctypes_test         _sqlite3             _testbuffer
> _testcapi            _testimportmultiple   _testinternalcapi
> _testmultiphase      _xxtestfuzz
> 
> Failed to build these modules:
> _uuid
> """
> 
> Therefore, let's disable building the _uuid extension the same way it's
> done for the target package since commit 0b68713aae28 ("python3: use
> pure python UUID backend").
> 
> Cc: Quentin Schulz <foss+buildroot@0leil.net>
> Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>

Applied to master, thanks.

Regards,
Yann E. MORIN.

> ---
> Only build tested with make host-python3 with raspberrypi4_defconfig configuration.
> ---
>  package/python3/python3.mk | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/package/python3/python3.mk b/package/python3/python3.mk
> index 219d135b3f..fb6dbf2e64 100644
> --- a/package/python3/python3.mk
> +++ b/package/python3/python3.mk
> @@ -31,6 +31,7 @@ HOST_PYTHON3_CONF_OPTS += \
>  	--enable-unicodedata \
>  	--disable-test-modules \
>  	--disable-idle3 \
> +	--disable-uuid \
>  	--disable-ossaudiodev
>  
>  # Make sure that LD_LIBRARY_PATH overrides -rpath.
> 
> ---
> base-commit: 26dd70e954a7c9142b078837ab1bbfad54d0e5cb
> change-id: 20230207-host-python-libuuid-d600d32f70ae
> 
> Best regards,
> -- 
> Quentin Schulz <quentin.schulz@theobroma-systems.com>
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
diff mbox series

Patch

diff --git a/package/python3/python3.mk b/package/python3/python3.mk
index 219d135b3f..fb6dbf2e64 100644
--- a/package/python3/python3.mk
+++ b/package/python3/python3.mk
@@ -31,6 +31,7 @@  HOST_PYTHON3_CONF_OPTS += \
 	--enable-unicodedata \
 	--disable-test-modules \
 	--disable-idle3 \
+	--disable-uuid \
 	--disable-ossaudiodev
 
 # Make sure that LD_LIBRARY_PATH overrides -rpath.