* [PULL v2 00/10] Testing, build system and misc patches @ 2021-09-06 11:29 Thomas Huth 2021-09-06 11:29 ` [PULL v2 06/10] configure / meson: Move the GBM handling to meson.build Thomas Huth 2021-09-06 13:36 ` [PULL v2 00/10] Testing, build system and misc patches Peter Maydell 0 siblings, 2 replies; 6+ messages in thread From: Thomas Huth @ 2021-09-06 11:29 UTC (permalink / raw) To: qemu-devel, Peter Maydell Hi Peter! The following changes since commit 31ebff513fad11f315377f6b07447169be8d9f86: Merge remote-tracking branch 'remotes/armbru/tags/pull-qapi-2021-09-03' into staging (2021-09-04 19:21:19 +0100) are available in the Git repository at: https://gitlab.com/thuth/qemu.git tags/pull-request-2021-09-06 for you to fetch changes up to 6695e4c0fd9ef05bf6ab8e3402d5bc95b39c4cf3: softmmu/vl: Deprecate the -sdl and -curses option (2021-09-06 10:00:14 +0200) v2: - Dropped patches that were already merged through Alex' pull request - Fixed the GBM patch to not cause a warning with --static use builds anymore ---------------------------------------------------------------- * Add definitions of terms for CI/testing * Fix g_setenv problem discovered by Coverity * Gitlab CI improvements * Build system improvements (configure script + meson.build) * Removal of the show-fixed-bugs.sh script * Clean up of the sdl and curses options ---------------------------------------------------------------- Peter Maydell (1): libqtest: check for g_setenv() failure Thomas Huth (8): gitlab-ci: Don't try to use the system libfdt in the debian job meson.build: Fix the check for a usable libfdt meson.build: Don't use internal libfdt if the user requested the system libfdt configure / meson: Move the GBM handling to meson.build scripts: Remove the "show-fixed-bugs.sh" file softmmu/vl: Add a "grab-mod" parameter to the -display sdl option softmmu/vl: Deprecate the old grab options softmmu/vl: Deprecate the -sdl and -curses option Willian Rampazzo (1): docs: add definitions of terms for CI/testing .gitlab-ci.d/buildtest.yml | 1 - configure | 14 ----- contrib/vhost-user-gpu/meson.build | 5 +- docs/about/deprecated.rst | 20 ++++++ docs/devel/ci-definitions.rst | 121 +++++++++++++++++++++++++++++++++++++ docs/devel/ci.rst | 1 + meson.build | 17 ++++-- qemu-options.hx | 18 ++++-- scripts/show-fixed-bugs.sh | 91 ---------------------------- softmmu/vl.c | 24 +++++++- tests/qtest/libqtest.c | 4 +- 11 files changed, 192 insertions(+), 124 deletions(-) create mode 100644 docs/devel/ci-definitions.rst delete mode 100755 scripts/show-fixed-bugs.sh ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PULL v2 06/10] configure / meson: Move the GBM handling to meson.build 2021-09-06 11:29 [PULL v2 00/10] Testing, build system and misc patches Thomas Huth @ 2021-09-06 11:29 ` Thomas Huth 2021-09-06 11:37 ` Peter Maydell 2021-09-06 13:36 ` [PULL v2 00/10] Testing, build system and misc patches Peter Maydell 1 sibling, 1 reply; 6+ messages in thread From: Thomas Huth @ 2021-09-06 11:29 UTC (permalink / raw) To: qemu-devel, Peter Maydell The GBM library detection does not need to be in the configure script, since it does not have any user-facing options (there are no --enable-gbm or --disable-gbm switches). Let's move it to meson.build instead, so we don't have to clutter config-host.mak with the related switches. Additionally, only check for GBM if it is really required, i.e. if we either compile with OpenGL or with virglrenderer support. Message-Id: <20210714085045.797168-1-thuth@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com> --- configure | 14 -------------- contrib/vhost-user-gpu/meson.build | 5 ++--- meson.build | 14 ++++++++------ 3 files changed, 10 insertions(+), 23 deletions(-) diff --git a/configure b/configure index bd823307a6..8adf2127c3 100755 --- a/configure +++ b/configure @@ -3451,13 +3451,6 @@ esac ########################################## # opengl probe (for sdl2, gtk) -gbm="no" -if $pkg_config gbm; then - gbm_cflags="$($pkg_config --cflags gbm)" - gbm_libs="$($pkg_config --libs gbm)" - gbm="yes" -fi - if test "$opengl" != "no" ; then epoxy=no if $pkg_config epoxy; then @@ -4688,13 +4681,6 @@ if test "$opengl" = "yes" ; then echo "OPENGL_LIBS=$opengl_libs" >> $config_host_mak fi -if test "$gbm" = "yes" ; then - echo "CONFIG_GBM=y" >> $config_host_mak - echo "GBM_LIBS=$gbm_libs" >> $config_host_mak - echo "GBM_CFLAGS=$gbm_cflags" >> $config_host_mak -fi - - if test "$avx2_opt" = "yes" ; then echo "CONFIG_AVX2_OPT=y" >> $config_host_mak fi diff --git a/contrib/vhost-user-gpu/meson.build b/contrib/vhost-user-gpu/meson.build index 4cb52a91d7..92c8f3a86a 100644 --- a/contrib/vhost-user-gpu/meson.build +++ b/contrib/vhost-user-gpu/meson.build @@ -1,6 +1,5 @@ -if 'CONFIG_TOOLS' in config_host and virgl.found() \ - and 'CONFIG_GBM' in config_host and 'CONFIG_LINUX' in config_host \ - and pixman.found() +if 'CONFIG_TOOLS' in config_host and virgl.found() and gbm.found() \ + and 'CONFIG_LINUX' in config_host and pixman.found() executable('vhost-user-gpu', files('vhost-user-gpu.c', 'virgl.c', 'vugbm.c'), dependencies: [qemuutil, pixman, gbm, virgl, vhost_user, opengl], install: true, diff --git a/meson.build b/meson.build index ecfdce921c..7e58e6279b 100644 --- a/meson.build +++ b/meson.build @@ -472,11 +472,6 @@ if not get_option('zstd').auto() or have_block required: get_option('zstd'), method: 'pkg-config', kwargs: static_kwargs) endif -gbm = not_found -if 'CONFIG_GBM' in config_host - gbm = declare_dependency(compile_args: config_host['GBM_CFLAGS'].split(), - link_args: config_host['GBM_LIBS'].split()) -endif virgl = not_found if not get_option('virglrenderer').auto() or have_system virgl = dependency('virglrenderer', @@ -816,11 +811,17 @@ coreaudio = not_found if 'CONFIG_AUDIO_COREAUDIO' in config_host coreaudio = declare_dependency(link_args: config_host['COREAUDIO_LIBS'].split()) endif + opengl = not_found if 'CONFIG_OPENGL' in config_host opengl = declare_dependency(compile_args: config_host['OPENGL_CFLAGS'].split(), link_args: config_host['OPENGL_LIBS'].split()) endif +gbm = not_found +if (have_system or have_tools) and (virgl.found() or opengl.found()) + gbm = dependency('gbm', method: 'pkg-config', required: false, + kwargs: static_kwargs) +endif gnutls = not_found gnutls_crypto = not_found @@ -1244,6 +1245,7 @@ config_host_data.set('CONFIG_MPATH', mpathpersist.found()) config_host_data.set('CONFIG_MPATH_NEW_API', mpathpersist_new_api) config_host_data.set('CONFIG_CURL', curl.found()) config_host_data.set('CONFIG_CURSES', curses.found()) +config_host_data.set('CONFIG_GBM', gbm.found()) config_host_data.set('CONFIG_GLUSTERFS', glusterfs.found()) if glusterfs.found() config_host_data.set('CONFIG_GLUSTERFS_XLATOR_OPT', glusterfs.version().version_compare('>=4')) @@ -3086,7 +3088,7 @@ summary_info += {'U2F support': u2f.found()} summary_info += {'libusb': libusb.found()} summary_info += {'usb net redir': usbredir.found()} summary_info += {'OpenGL support': config_host.has_key('CONFIG_OPENGL')} -summary_info += {'GBM': config_host.has_key('CONFIG_GBM')} +summary_info += {'GBM': gbm.found()} summary_info += {'libiscsi support': libiscsi.found()} summary_info += {'libnfs support': libnfs.found()} if targetos == 'windows' -- 2.27.0 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PULL v2 06/10] configure / meson: Move the GBM handling to meson.build 2021-09-06 11:29 ` [PULL v2 06/10] configure / meson: Move the GBM handling to meson.build Thomas Huth @ 2021-09-06 11:37 ` Peter Maydell 2021-09-06 12:47 ` Thomas Huth 0 siblings, 1 reply; 6+ messages in thread From: Peter Maydell @ 2021-09-06 11:37 UTC (permalink / raw) To: Thomas Huth; +Cc: QEMU Developers On Mon, 6 Sept 2021 at 12:30, Thomas Huth <thuth@redhat.com> wrote: > > The GBM library detection does not need to be in the configure script, > since it does not have any user-facing options (there are no > --enable-gbm or --disable-gbm switches). Let's move it to meson.build > instead, so we don't have to clutter config-host.mak with the related > switches. > > Additionally, only check for GBM if it is really required, i.e. if we > either compile with OpenGL or with virglrenderer support. > > Message-Id: <20210714085045.797168-1-thuth@redhat.com> > Signed-off-by: Thomas Huth <thuth@redhat.com> I assume this doesn't change behaviour here, so this is more of a maybe-followup-improvement note, but the gbm checking (in the old configure version) recently confused somebody on qemu-discuss: https://lists.nongnu.org/archive/html/qemu-discuss/2021-09/msg00010.html They didn't have libgbm installed, and because there's no --enable-gbm there's no way to force configure to enable the egl-headless UI frontend -- it is always silently falls back to "don't build that". Ideally we ought to provide a means for distros and users to say "make sure you build this feature or barf" the way we do with other things, I guess. -- PMM ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: configure / meson: Move the GBM handling to meson.build 2021-09-06 11:37 ` Peter Maydell @ 2021-09-06 12:47 ` Thomas Huth 2021-09-06 12:54 ` Marc-André Lureau 0 siblings, 1 reply; 6+ messages in thread From: Thomas Huth @ 2021-09-06 12:47 UTC (permalink / raw) To: Peter Maydell, Marc-André Lureau; +Cc: QEMU Developers, Gerd Hoffmann On 06/09/2021 13.37, Peter Maydell wrote: > On Mon, 6 Sept 2021 at 12:30, Thomas Huth <thuth@redhat.com> wrote: >> >> The GBM library detection does not need to be in the configure script, >> since it does not have any user-facing options (there are no >> --enable-gbm or --disable-gbm switches). Let's move it to meson.build >> instead, so we don't have to clutter config-host.mak with the related >> switches. >> >> Additionally, only check for GBM if it is really required, i.e. if we >> either compile with OpenGL or with virglrenderer support. >> >> Message-Id: <20210714085045.797168-1-thuth@redhat.com> >> Signed-off-by: Thomas Huth <thuth@redhat.com> > > I assume this doesn't change behaviour here, Right. > so this is more of > a maybe-followup-improvement note, but the gbm checking (in the > old configure version) recently confused somebody on qemu-discuss: > https://lists.nongnu.org/archive/html/qemu-discuss/2021-09/msg00010.html > They didn't have libgbm installed, and because there's no > --enable-gbm there's no way to force configure to enable the egl-headless > UI frontend -- it is always silently falls back to "don't build that". > Ideally we ought to provide a means for distros and users to say > "make sure you build this feature or barf" the way we do with other > things, I guess. Marc-André, you've introduced the GBM library in commit d52c454aa as far as I can see ... could you please comment on this? Was there a reason not to add --enable-gbm and --disable-gbm switches? Thomas ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: configure / meson: Move the GBM handling to meson.build 2021-09-06 12:47 ` Thomas Huth @ 2021-09-06 12:54 ` Marc-André Lureau 0 siblings, 0 replies; 6+ messages in thread From: Marc-André Lureau @ 2021-09-06 12:54 UTC (permalink / raw) To: Thomas Huth; +Cc: Peter Maydell, QEMU Developers, Gerd Hoffmann [-- Attachment #1: Type: text/plain, Size: 1764 bytes --] Hi On Mon, Sep 6, 2021 at 4:49 PM Thomas Huth <thuth@redhat.com> wrote: > On 06/09/2021 13.37, Peter Maydell wrote: > > On Mon, 6 Sept 2021 at 12:30, Thomas Huth <thuth@redhat.com> wrote: > >> > >> The GBM library detection does not need to be in the configure script, > >> since it does not have any user-facing options (there are no > >> --enable-gbm or --disable-gbm switches). Let's move it to meson.build > >> instead, so we don't have to clutter config-host.mak with the related > >> switches. > >> > >> Additionally, only check for GBM if it is really required, i.e. if we > >> either compile with OpenGL or with virglrenderer support. > >> > >> Message-Id: <20210714085045.797168-1-thuth@redhat.com> > >> Signed-off-by: Thomas Huth <thuth@redhat.com> > > > > I assume this doesn't change behaviour here, > > Right. > > > so this is more of > > a maybe-followup-improvement note, but the gbm checking (in the > > old configure version) recently confused somebody on qemu-discuss: > > https://lists.nongnu.org/archive/html/qemu-discuss/2021-09/msg00010.html > > They didn't have libgbm installed, and because there's no > > --enable-gbm there's no way to force configure to enable the egl-headless > > UI frontend -- it is always silently falls back to "don't build that". > > Ideally we ought to provide a means for distros and users to say > > "make sure you build this feature or barf" the way we do with other > > things, I guess. > > Marc-André, you've introduced the GBM library in commit d52c454aa as far > as > I can see ... could you please comment on this? Was there a reason not to > add --enable-gbm and --disable-gbm switches? > No, I agree we should have switches for it. -- Marc-André Lureau [-- Attachment #2: Type: text/html, Size: 2701 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PULL v2 00/10] Testing, build system and misc patches 2021-09-06 11:29 [PULL v2 00/10] Testing, build system and misc patches Thomas Huth 2021-09-06 11:29 ` [PULL v2 06/10] configure / meson: Move the GBM handling to meson.build Thomas Huth @ 2021-09-06 13:36 ` Peter Maydell 1 sibling, 0 replies; 6+ messages in thread From: Peter Maydell @ 2021-09-06 13:36 UTC (permalink / raw) To: Thomas Huth; +Cc: QEMU Developers On Mon, 6 Sept 2021 at 12:29, Thomas Huth <thuth@redhat.com> wrote: > > Hi Peter! > > The following changes since commit 31ebff513fad11f315377f6b07447169be8d9f86: > > Merge remote-tracking branch 'remotes/armbru/tags/pull-qapi-2021-09-03' into staging (2021-09-04 19:21:19 +0100) > > are available in the Git repository at: > > https://gitlab.com/thuth/qemu.git tags/pull-request-2021-09-06 > > for you to fetch changes up to 6695e4c0fd9ef05bf6ab8e3402d5bc95b39c4cf3: > > softmmu/vl: Deprecate the -sdl and -curses option (2021-09-06 10:00:14 +0200) > > v2: > - Dropped patches that were already merged through Alex' pull request > - Fixed the GBM patch to not cause a warning with --static use builds anymore > > ---------------------------------------------------------------- > * Add definitions of terms for CI/testing > * Fix g_setenv problem discovered by Coverity > * Gitlab CI improvements > * Build system improvements (configure script + meson.build) > * Removal of the show-fixed-bugs.sh script > * Clean up of the sdl and curses options > Applied, thanks. Please update the changelog at https://wiki.qemu.org/ChangeLog/6.2 for any user-visible changes. -- PMM ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2021-09-06 13:50 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2021-09-06 11:29 [PULL v2 00/10] Testing, build system and misc patches Thomas Huth 2021-09-06 11:29 ` [PULL v2 06/10] configure / meson: Move the GBM handling to meson.build Thomas Huth 2021-09-06 11:37 ` Peter Maydell 2021-09-06 12:47 ` Thomas Huth 2021-09-06 12:54 ` Marc-André Lureau 2021-09-06 13:36 ` [PULL v2 00/10] Testing, build system and misc patches Peter Maydell
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).