diff mbox series

subprojects: add wrap file for libblkio

Message ID 20230906104529.401824-1-pbonzini@redhat.com
State New
Headers show
Series subprojects: add wrap file for libblkio | expand

Commit Message

Paolo Bonzini Sept. 6, 2023, 10:45 a.m. UTC
This allows building libblkio at the same time as QEMU, if QEMU is
configured with --enable-blkio --enable-download.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 subprojects/libblkio.wrap | 6 ++++++
 1 file changed, 6 insertions(+)
 create mode 100644 subprojects/libblkio.wrap

Comments

Stefano Garzarella Sept. 6, 2023, 2:22 p.m. UTC | #1
On Wed, Sep 06, 2023 at 12:45:29PM +0200, Paolo Bonzini wrote:
>This allows building libblkio at the same time as QEMU, if QEMU is
>configured with --enable-blkio --enable-download.
>
>Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
>---
> subprojects/libblkio.wrap | 6 ++++++
> 1 file changed, 6 insertions(+)
> create mode 100644 subprojects/libblkio.wrap
>
>diff --git a/subprojects/libblkio.wrap b/subprojects/libblkio.wrap
>new file mode 100644
>index 00000000000..f77af72210c
>--- /dev/null
>+++ b/subprojects/libblkio.wrap
>@@ -0,0 +1,6 @@
>+[wrap-git]
>+url = https://gitlab.com/libblkio/libblkio
>+revision = f84cc963a444e4cb34813b2dcfc5bf8526947dc0
>+
>+[provide]
>+blkio = libblkio_dep
>-- 
>2.41.0
>
>

I'm trying it in a clean container and I have this issue:

   HEAD is now at f84cc96 allow building libblkio as a subproject

   Executing subproject libblkio

   ../subprojects/libblkio/meson.build:1:0: ERROR: Command `/root/qemu/subprojects/libblkio/./package-version.py` failed with status 1.

   A full log can be found at /root/qemu/build/meson-logs/meson-log.txt

   ERROR: meson setup failed


Looking in the meson-log.txt, I have this:

   Package 'blkio', required by 'virtual:world', not found
   -----------
   Run-time dependency blkio found: NO (tried pkgconfig)
   Looking for a fallback subproject for the dependency blkio

   Executing subproject libblkio

   Running command: /root/qemu/subprojects/libblkio/./package-version.py
   --- stdout ---

   --- stderr ---
   Traceback (most recent call last):
     File "/root/qemu/subprojects/libblkio/./package-version.py", line 5, in <module>
       out = subprocess.check_output(["cargo", "read-manifest"])
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
     File "/usr/lib64/python3.11/subprocess.py", line 466, in check_output
       return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
     File "/usr/lib64/python3.11/subprocess.py", line 548, in run
       with Popen(*popenargs, **kwargs) as process:
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
     File "/usr/lib64/python3.11/subprocess.py", line 1026, in __init__
       self._execute_child(args, executable, preexec_fn, close_fds,
     File "/usr/lib64/python3.11/subprocess.py", line 1950, in _execute_child
       raise child_exception_type(errno_num, err_msg, err_filename)
   FileNotFoundError: [Errno 2] No such file or directory: 'cargo'

Installing `cargo` fixed the issue on my side.
I don't know if it is possible, but can we put some dependecy check in
the wrap file?

Anyway, after installing cargo it works pretty well :-)

Tested-by: Stefano Garzarella <sgarzare@redhat.com>
Paolo Bonzini Sept. 6, 2023, 2:28 p.m. UTC | #2
On Wed, Sep 6, 2023 at 4:22 PM Stefano Garzarella <sgarzare@redhat.com> wrote:
>        out = subprocess.check_output(["cargo", "read-manifest"])
>              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>      File "/usr/lib64/python3.11/subprocess.py", line 466, in check_output
>        return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
>               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>      File "/usr/lib64/python3.11/subprocess.py", line 548, in run
>        with Popen(*popenargs, **kwargs) as process:
>             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
>      File "/usr/lib64/python3.11/subprocess.py", line 1026, in __init__
>        self._execute_child(args, executable, preexec_fn, close_fds,
>      File "/usr/lib64/python3.11/subprocess.py", line 1950, in _execute_child
>        raise child_exception_type(errno_num, err_msg, err_filename)
>    FileNotFoundError: [Errno 2] No such file or directory: 'cargo'

I think this can be fixed in libblkio instead.  I'll take a look.

Paolo
diff mbox series

Patch

diff --git a/subprojects/libblkio.wrap b/subprojects/libblkio.wrap
new file mode 100644
index 00000000000..f77af72210c
--- /dev/null
+++ b/subprojects/libblkio.wrap
@@ -0,0 +1,6 @@ 
+[wrap-git]
+url = https://gitlab.com/libblkio/libblkio
+revision = f84cc963a444e4cb34813b2dcfc5bf8526947dc0
+
+[provide]
+blkio = libblkio_dep