diff mbox series

[PULL,3/3] configure: Allow to build tools without pixman

Message ID 20200724164258.24886-4-kraxel@redhat.com
State New
Headers show
Series [PULL,1/3] hw: Only compile the usb-dwc2 controller if it is really needed | expand

Commit Message

Gerd Hoffmann July 24, 2020, 4:42 p.m. UTC
From: Thomas Huth <thuth@redhat.com>

If pixman is not installed, it is currently not possible to run:

 .../configure  --disable-system --enable-tools

Seems like there was a dependency from one of the required source
files to pixman in the past, but since commit 1ac0206b2ae1ffaeec56
("qemu-timer.c: Trim list of included headers"), this dependency
should be gone. Thus allow to compile the tools without pixman now.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-id: 20200723141123.14765-1-thuth@redhat.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 configure | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Philippe Mathieu-Daudé Aug. 12, 2020, 4:26 p.m. UTC | #1
Hi,

On 7/24/20 6:42 PM, Gerd Hoffmann wrote:
> From: Thomas Huth <thuth@redhat.com>
> 
> If pixman is not installed, it is currently not possible to run:
> 
>  .../configure  --disable-system --enable-tools
> 
> Seems like there was a dependency from one of the required source
> files to pixman in the past, but since commit 1ac0206b2ae1ffaeec56
> ("qemu-timer.c: Trim list of included headers"), this dependency
> should be gone. Thus allow to compile the tools without pixman now.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> Message-id: 20200723141123.14765-1-thuth@redhat.com
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> ---
>  configure | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/configure b/configure
> index 4bd80ed507aa..2acc4d1465f8 100755
> --- a/configure
> +++ b/configure
> @@ -4065,7 +4065,7 @@ fi
>  ##########################################
>  # pixman support probe
>  
> -if test "$want_tools" = "no" && test "$softmmu" = "no"; then
> +if test "$softmmu" = "no"; then
>    pixman_cflags=
>    pixman_libs=
>  elif $pkg_config --atleast-version=0.21.8 pixman-1 > /dev/null 2>&1; then
> 

This commit broke my '--disable-system --disable-user --enable-tools' build:

$ make vhost-user-gpu
...
  LINK    vhost-user-gpu
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.o: in function
`vg_resource_create_2d':
contrib/vhost-user-gpu/vhost-user-gpu.c:322: undefined reference to
`pixman_image_create_bits'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.o: in function
`vg_resource_destroy':
contrib/vhost-user-gpu/vhost-user-gpu.c:381: undefined reference to
`pixman_image_unref'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.o: in function
`vg_transfer_to_host_2d':
contrib/vhost-user-gpu/vhost-user-gpu.c:538: undefined reference to
`pixman_image_get_format'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:540: undefined
reference to `pixman_image_get_stride'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:543: undefined
reference to `pixman_image_get_width'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:544: undefined
reference to `pixman_image_get_data'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:556: undefined
reference to `pixman_image_get_stride'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:557: undefined
reference to `pixman_image_get_height'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:555: undefined
reference to `pixman_image_get_data'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.o: in function
`vg_resource_flush':
contrib/vhost-user-gpu/vhost-user-gpu.c:693: undefined reference to
`pixman_region_init_rect'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:705: undefined
reference to `pixman_region_init'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:706: undefined
reference to `pixman_region_init_rect'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:709: undefined
reference to `pixman_region_intersect'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:711: undefined
reference to `pixman_region_extents'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:731: undefined
reference to `pixman_image_get_format'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:731: undefined
reference to `pixman_image_get_format'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:747: undefined
reference to `pixman_image_get_format'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:747: undefined
reference to `pixman_image_create_bits'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:753: undefined
reference to `pixman_image_composite'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:758: undefined
reference to `pixman_image_unref'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:762: undefined
reference to `pixman_region_fini'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:763: undefined
reference to `pixman_region_fini'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:765: undefined
reference to `pixman_region_fini'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.o: in function
`update_cursor_data_simple':
contrib/vhost-user-gpu/vhost-user-gpu.c:863: undefined reference to
`pixman_image_get_width'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:864: undefined
reference to `pixman_image_get_height'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:865: undefined
reference to `pixman_image_get_format'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:865: undefined
reference to `pixman_image_get_format'
/usr/bin/ld: contrib/vhost-user-gpu/vhost-user-gpu.c:868: undefined
reference to `pixman_image_get_data'
collect2: error: ld returned 1 exit status
make: *** [Makefile:730: vhost-user-gpu] Error 1

Thanks,

Phil.
Thomas Huth Aug. 13, 2020, 7:07 p.m. UTC | #2
On 12/08/2020 18.26, Philippe Mathieu-Daudé wrote:
> Hi,
> 
> On 7/24/20 6:42 PM, Gerd Hoffmann wrote:
>> From: Thomas Huth <thuth@redhat.com>
>>
>> If pixman is not installed, it is currently not possible to run:
>>
>>  .../configure  --disable-system --enable-tools
>>
>> Seems like there was a dependency from one of the required source
>> files to pixman in the past, but since commit 1ac0206b2ae1ffaeec56
>> ("qemu-timer.c: Trim list of included headers"), this dependency
>> should be gone. Thus allow to compile the tools without pixman now.
>>
>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>> Message-id: 20200723141123.14765-1-thuth@redhat.com
>> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
>> ---
>>  configure | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/configure b/configure
>> index 4bd80ed507aa..2acc4d1465f8 100755
>> --- a/configure
>> +++ b/configure
>> @@ -4065,7 +4065,7 @@ fi
>>  ##########################################
>>  # pixman support probe
>>  
>> -if test "$want_tools" = "no" && test "$softmmu" = "no"; then
>> +if test "$softmmu" = "no"; then
>>    pixman_cflags=
>>    pixman_libs=
>>  elif $pkg_config --atleast-version=0.21.8 pixman-1 > /dev/null 2>&1; then
>>
> 
> This commit broke my '--disable-system --disable-user --enable-tools' build:
> 
> $ make vhost-user-gpu

Yes, there is already a patch on the list to fix this. Look for:
"configure: Require pixman for vhost-user-gpu". I hope Gerd can pick it
up for his next pull request.

 Thomas
Philippe Mathieu-Daudé Aug. 14, 2020, 7:37 a.m. UTC | #3
On 8/13/20 9:07 PM, Thomas Huth wrote:
> On 12/08/2020 18.26, Philippe Mathieu-Daudé wrote:
>> Hi,
>>
>> On 7/24/20 6:42 PM, Gerd Hoffmann wrote:
>>> From: Thomas Huth <thuth@redhat.com>
>>>
>>> If pixman is not installed, it is currently not possible to run:
>>>
>>>  .../configure  --disable-system --enable-tools
>>>
>>> Seems like there was a dependency from one of the required source
>>> files to pixman in the past, but since commit 1ac0206b2ae1ffaeec56
>>> ("qemu-timer.c: Trim list of included headers"), this dependency
>>> should be gone. Thus allow to compile the tools without pixman now.
>>>
>>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>>> Message-id: 20200723141123.14765-1-thuth@redhat.com
>>> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
>>> ---
>>>  configure | 2 +-
>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/configure b/configure
>>> index 4bd80ed507aa..2acc4d1465f8 100755
>>> --- a/configure
>>> +++ b/configure
>>> @@ -4065,7 +4065,7 @@ fi
>>>  ##########################################
>>>  # pixman support probe
>>>  
>>> -if test "$want_tools" = "no" && test "$softmmu" = "no"; then
>>> +if test "$softmmu" = "no"; then
>>>    pixman_cflags=
>>>    pixman_libs=
>>>  elif $pkg_config --atleast-version=0.21.8 pixman-1 > /dev/null 2>&1; then
>>>
>>
>> This commit broke my '--disable-system --disable-user --enable-tools' build:
>>
>> $ make vhost-user-gpu
> 
> Yes, there is already a patch on the list to fix this. Look for:
> "configure: Require pixman for vhost-user-gpu". I hope Gerd can pick it
> up for his next pull request.

Thanks! I'll test it. Too bad it misses the release :(

> 
>  Thomas
>
diff mbox series

Patch

diff --git a/configure b/configure
index 4bd80ed507aa..2acc4d1465f8 100755
--- a/configure
+++ b/configure
@@ -4065,7 +4065,7 @@  fi
 ##########################################
 # pixman support probe
 
-if test "$want_tools" = "no" && test "$softmmu" = "no"; then
+if test "$softmmu" = "no"; then
   pixman_cflags=
   pixman_libs=
 elif $pkg_config --atleast-version=0.21.8 pixman-1 > /dev/null 2>&1; then