Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
---
guests/playbooks/build/jobs/defaults.yml | 2 ++
.../build/projects/gtk-vnc+mingw32.yml | 12 ++++++++++++
.../build/projects/gtk-vnc+mingw64.yml | 12 ++++++++++++
guests/playbooks/build/projects/gtk-vnc.yml | 19 +++++++++++++++++++
jenkins/jobs/defaults.yaml | 2 ++
jenkins/projects/gtk-vnc+mingw32.yaml | 12 ++++++++++++
jenkins/projects/gtk-vnc+mingw64.yaml | 12 ++++++++++++
jenkins/projects/gtk-vnc.yaml | 15 +++++++++++++++
8 files changed, 86 insertions(+)
create mode 100644 guests/playbooks/build/projects/gtk-vnc+mingw32.yml
create mode 100644 guests/playbooks/build/projects/gtk-vnc+mingw64.yml
create mode 100644 guests/playbooks/build/projects/gtk-vnc.yml
create mode 100644 jenkins/projects/gtk-vnc+mingw32.yaml
create mode 100644 jenkins/projects/gtk-vnc+mingw64.yaml
create mode 100644 jenkins/projects/gtk-vnc.yaml
diff --git a/guests/playbooks/build/jobs/defaults.yml b/guests/playbooks/build/jobs/defaults.yml
index 5e4ec03..5cbc440 100644
--- a/guests/playbooks/build/jobs/defaults.yml
+++ b/guests/playbooks/build/jobs/defaults.yml
@@ -46,6 +46,8 @@ mingw64_local_env: |
mingw64_autogen_args: --host=x86_64-w64-mingw32
mingw64_meson_args: --cross-file=/usr/share/mingw/toolchain-mingw64.meson
git_urls:
+ gtk-vnc:
+ default: https://gitlab.gnome.org/GNOME/gtk-vnc.git
libosinfo:
default: https://gitlab.com/libosinfo/libosinfo.git
libvirt-cim:
diff --git a/guests/playbooks/build/projects/gtk-vnc+mingw32.yml b/guests/playbooks/build/projects/gtk-vnc+mingw32.yml
new file mode 100644
index 0000000..2328a1d
--- /dev/null
+++ b/guests/playbooks/build/projects/gtk-vnc+mingw32.yml
@@ -0,0 +1,12 @@
+---
+- set_fact:
+ name: gtk-vnc+mingw32
+ machines: '{{ mingw_machines }}'
+ archive_format: xz
+ git_url: '{{ git_urls["gtk-vnc"][git_remote] }}'
+
+- include: '{{ playbook_base }}/jobs/prepare.yml'
+- include: '{{ playbook_base }}/jobs/meson-build-job.yml'
+ vars:
+ local_env: '{{ mingw32_local_env }}'
+ meson_args: '{{ mingw32_meson_args }}'
diff --git a/guests/playbooks/build/projects/gtk-vnc+mingw64.yml b/guests/playbooks/build/projects/gtk-vnc+mingw64.yml
new file mode 100644
index 0000000..8644f4c
--- /dev/null
+++ b/guests/playbooks/build/projects/gtk-vnc+mingw64.yml
@@ -0,0 +1,12 @@
+---
+- set_fact:
+ name: gtk-vnc+mingw64
+ machines: '{{ mingw_machines }}'
+ archive_format: xz
+ git_url: '{{ git_urls["gtk-vnc"][git_remote] }}'
+
+- include: '{{ playbook_base }}/jobs/prepare.yml'
+- include: '{{ playbook_base }}/jobs/meson-build-job.yml'
+ vars:
+ local_env: '{{ mingw64_local_env }}'
+ meson_args: '{{ mingw32_meson_args }}'
diff --git a/guests/playbooks/build/projects/gtk-vnc.yml b/guests/playbooks/build/projects/gtk-vnc.yml
new file mode 100644
index 0000000..260cf71
--- /dev/null
+++ b/guests/playbooks/build/projects/gtk-vnc.yml
@@ -0,0 +1,19 @@
+---
+- set_fact:
+ name: gtk-vnc
+ machines: '{{ all_machines }}'
+ archive_format: xz
+ git_url: '{{ git_urls["gtk-vnc"][git_remote] }}'
+
+- include: '{{ playbook_base }}/jobs/prepare.yml'
+- include: '{{ playbook_base }}/jobs/meson-build-job.yml'
+- include: '{{ playbook_base }}/jobs/meson-check-job.yml'
+- include: '{{ playbook_base }}/jobs/meson-rpm-job.yml'
+ vars:
+ # RPM build is still not possible on CentOS7 as it does not
+ # have the needed RPM macros for meson.
+ machines:
+ - libvirt-centos-8
+ - libvirt-fedora-30
+ - libvirt-fedora-31
+ - libvirt-fedora-rawhide
diff --git a/jenkins/jobs/defaults.yaml b/jenkins/jobs/defaults.yaml
index 676ecbf..2d9ffef 100644
--- a/jenkins/jobs/defaults.yaml
+++ b/jenkins/jobs/defaults.yaml
@@ -42,6 +42,8 @@
mingw64_autogen_args: --host=x86_64-w64-mingw32
mingw64_meson_args: --cross-file=/usr/share/mingw/toolchain-mingw64.meson
git_urls:
+ gtk-vnc:
+ default: https://gitlab.gnome.org/GNOME/gtk-vnc.git
libosinfo:
default: https://gitlab.com/libosinfo/libosinfo.git
libvirt-cim:
diff --git a/jenkins/projects/gtk-vnc+mingw32.yaml b/jenkins/projects/gtk-vnc+mingw32.yaml
new file mode 100644
index 0000000..bfb12da
--- /dev/null
+++ b/jenkins/projects/gtk-vnc+mingw32.yaml
@@ -0,0 +1,12 @@
+---
+- project:
+ name: gtk-vnc+mingw32
+ machines: '{mingw_machines}'
+ title: GTK-VNC MinGW (32-bit)
+ archive_format: xz
+ git_url: '{git_urls[gtk-vnc][default]}'
+ jobs:
+ - meson-build-job:
+ parent_jobs:
+ local_env: '{mingw32_local_env}'
+ meson_args: '{mingw32_meson_args}'
diff --git a/jenkins/projects/gtk-vnc+mingw64.yaml b/jenkins/projects/gtk-vnc+mingw64.yaml
new file mode 100644
index 0000000..543958d
--- /dev/null
+++ b/jenkins/projects/gtk-vnc+mingw64.yaml
@@ -0,0 +1,12 @@
+---
+- project:
+ name: gtk-vnc+mingw64
+ machines: '{mingw_machines}'
+ title: GTK-VNC MinGW (64-bit)
+ archive_format: xz
+ git_url: '{git_urls[gtk-vnc][default]}'
+ jobs:
+ - meson-build-job:
+ parent_jobs:
+ local_env: '{mingw64_local_env}'
+ meson_args: '{mingw32_meson_args}'
diff --git a/jenkins/projects/gtk-vnc.yaml b/jenkins/projects/gtk-vnc.yaml
new file mode 100644
index 0000000..b5877cc
--- /dev/null
+++ b/jenkins/projects/gtk-vnc.yaml
@@ -0,0 +1,15 @@
+---
+- project:
+ name: gtk-vnc
+ machines: '{all_machines}'
+ title: GTK-VNC
+ archive_format: gz
+ git_url: '{git_urls[gtk-vnc][default]}'
+ jobs:
+ - meson-build-job:
+ parent_jobs:
+ - meson-check-job:
+ parent_jobs: 'gtk-vnc-build'
+ - meson-rpm-job:
+ parent_jobs: 'gtk-vnc-check'
+ machines: '{rpm_machines}'
--
2.23.0
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
On Fri, 2019-12-13 at 14:36 +0000, Daniel P. Berrangé wrote:
> +++ b/guests/playbooks/build/projects/gtk-vnc+mingw64.yml
> @@ -0,0 +1,12 @@
> +---
> +- set_fact:
> + name: gtk-vnc+mingw64
> + machines: '{{ mingw_machines }}'
> + archive_format: xz
> + git_url: '{{ git_urls["gtk-vnc"][git_remote] }}'
> +
> +- include: '{{ playbook_base }}/jobs/prepare.yml'
> +- include: '{{ playbook_base }}/jobs/meson-build-job.yml'
> + vars:
> + local_env: '{{ mingw64_local_env }}'
> + meson_args: '{{ mingw32_meson_args }}'
s/mingw32/mingw64/
> +++ b/guests/playbooks/build/projects/gtk-vnc.yml
> @@ -0,0 +1,19 @@
> +---
> +- set_fact:
> + name: gtk-vnc
> + machines: '{{ all_machines }}'
> + archive_format: xz
> + git_url: '{{ git_urls["gtk-vnc"][git_remote] }}'
> +
> +- include: '{{ playbook_base }}/jobs/prepare.yml'
> +- include: '{{ playbook_base }}/jobs/meson-build-job.yml'
Build fails on FreeBSD with
$ meson .. . --prefix=$VIRT_PREFIX
The Meson build system
Version: 0.52.1
Source dir: /usr/home/test/gtk-vnc
Build dir: /usr/home/test/gtk-vnc/build
Build type: native build
Project name: gtk-vnc
Project version: 1.0.0
C compiler for the host machine: ccache cc (clang 6.0.1 "FreeBSD clang version 6.0.1 (tags/RELEASE_601/final 335540) (based on LLVM 6.0.1)")
C linker for the host machine: lld 6.0.1
Host machine cpu family: x86_64
Host machine cpu: x86_64
Program pod2man found: YES (/usr/local/bin/pod2man)
Found pkg-config: /usr/local/bin/pkg-config (1.6.3)
Run-time dependency gobject-2.0 found: YES 2.56.3
Run-time dependency gio-2.0 found: YES 2.56.3
Run-time dependency gio-unix-2.0 found: YES 2.56.3
Run-time dependency gdk-pixbuf-2.0 found: YES 2.38.1
Did not find CMake 'cmake'
Found CMake: NO
Run-time dependency gtk+-3.0 found: NO
meson.build:81:0: ERROR: Could not generate cargs for gtk+-3.0:
Package xproto was not found in the pkg-config search path.
Perhaps you should add the directory containing `xproto.pc'
to the PKG_CONFIG_PATH environment variable
Package 'xproto', required by 'x11', not found
Package 'kbproto', required by 'x11', not found
Package 'xextproto', required by 'xext', not found
Package 'xproto', required by 'xdamage', not found
[...]
The issue is not in Meson itself:
$ pkg-config --cflags --libs gtk+-3.0
Package xproto was not found in the pkg-config search path.
Perhaps you should add the directory containing `xproto.pc'
to the PKG_CONFIG_PATH environment variable
Package 'xproto', required by 'x11', not found
Package 'kbproto', required by 'x11', not found
Package 'xextproto', required by 'xext', not found
Package 'xproto', required by 'xdamage', not found
[...]
so it looks like it's most likely a packaging issue.
On Debian 9, it fails with
[...]
[56/64] Linking target src/libgtk-vnc-2.0.so.0.0.2.
FAILED: src/libgtk-vnc-2.0.so.0.0.2
ccache cc -o src/libgtk-vnc-2.0.so.0.0.2 'src/25a6634@@gtk-vnc-2.0@sha/meson-generated_.._vncdisplayenums.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/meson-generated_.._vncmarshal.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/meson-generated_.._vncconnectionenums.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/vncdisplay.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/vncgrabsequence.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/vnccairoframebuffer.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o' -Wl,--no-undefined -Wl,--as-needed -shared -fPIC -Wl,--start-group -Wl,-soname,libgtk-vnc-2.0.so.0 src/libgvnc-1.0.so.0.0.1 -Wl,--no-undefined -Wl,--version-script,/home/test/gtk-vnc/src/libgtk-vnc_sym.version /usr/lib/x86_64-linux-gnu/libgtk-3.so /usr/lib/x86_64-linux-gnu/libgdk-3.so /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so /usr/lib/x86_64-linux-gnu/libpango-1.0.so /usr/lib/x86_64-linux-gnu/libatk-1.0.so /usr/lib/x86_64-linux-gnu/libcairo-gobject.so /usr/lib/x86_64-linux-gnu/libcairo.so /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so /usr/lib/x86_64-linux-gnu/libgio-2.0.so /usr/lib/x86_64-linux-gnu/libgobject-2.0.so /usr/lib/x86_64-linux-gnu/libglib-2.0.so -lgcrypt /usr/lib/x86_64-linux-gnu/libgnutls.so /usr/lib/x86_64-linux-gnu/libsasl2.so /usr/lib/x86_64-linux-gnu/libz.so -Wl,--end-group '-Wl,-rpath,$ORIGIN/' -Wl,-rpath-link,/home/test/gtk-vnc/build/src
src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o: In function `vnc_display_keymap_gdk2rfb_table':
/home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:150: undefined reference to `XkbGetMap'
/home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:154: undefined reference to `XkbGetNames'
/home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:163: undefined reference to `XkbFreeKeyboard'
src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o: In function `check_for_xquartz':
/home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:116: undefined reference to `XListExtensions'
/home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:125: undefined reference to `XFreeExtensionList'
src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o: In function `vnc_display_keymap_gdk2rfb_table':
/home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:177: undefined reference to `XKeysymToKeycode'
/home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:182: undefined reference to `XKeysymToKeycode'
/home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:177: undefined reference to `XKeysymToKeycode'
/home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:182: undefined reference to `XKeysymToKeycode'
src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o: In function `check_for_xquartz':
/home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:125: undefined reference to `XFreeExtensionList'
collect2: error: ld returned 1 exit status
[58/64] Generating GVncPulse-1.0.typelib with a custom command.
ninja: build stopped: subcommand failed.
and both Ubuntu version also display very similar failures.
> +- include: '{{ playbook_base }}/jobs/meson-check-job.yml'
> +- include: '{{ playbook_base }}/jobs/meson-rpm-job.yml'
> + vars:
> + # RPM build is still not possible on CentOS7 as it does not
> + # have the needed RPM macros for meson.
> + machines:
> + - libvirt-centos-8
> + - libvirt-fedora-30
> + - libvirt-fedora-31
> + - libvirt-fedora-rawhide
Building the RPM fails everywhere with
$ rpmbuild --clean --define "_topdir `pwd`/rpmbuild" -ta meson-dist/*.tar.xz
error: Failed to read spec file from meson-dist/gtk-vnc-1.0.0.tar.xz
I think we might need to adapt our RPM build rules.
> +++ b/jenkins/projects/gtk-vnc+mingw64.yaml
> @@ -0,0 +1,12 @@
> +---
> +- project:
> + name: gtk-vnc+mingw64
> + machines: '{mingw_machines}'
> + title: GTK-VNC MinGW (64-bit)
> + archive_format: xz
> + git_url: '{git_urls[gtk-vnc][default]}'
> + jobs:
> + - meson-build-job:
> + parent_jobs:
> + local_env: '{mingw64_local_env}'
> + meson_args: '{mingw32_meson_args}'
s/mingw32/mingw64/
> +++ b/jenkins/projects/gtk-vnc.yaml
> @@ -0,0 +1,15 @@
> +---
> +- project:
> + name: gtk-vnc
> + machines: '{all_machines}'
> + title: GTK-VNC
> + archive_format: gz
s/gz/xz/
> + git_url: '{git_urls[gtk-vnc][default]}'
> + jobs:
> + - meson-build-job:
> + parent_jobs:
> + - meson-check-job:
> + parent_jobs: 'gtk-vnc-build'
> + - meson-rpm-job:
> + parent_jobs: 'gtk-vnc-check'
> + machines: '{rpm_machines}'
This needs to have the same list of machines, and the same comment,
as the Ansible version.
--
Andrea Bolognani / Red Hat / Virtualization
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
On Fri, Dec 13, 2019 at 06:20:57PM +0100, Andrea Bolognani wrote:
> On Fri, 2019-12-13 at 14:36 +0000, Daniel P. Berrangé wrote:
> > +++ b/guests/playbooks/build/projects/gtk-vnc+mingw64.yml
> > @@ -0,0 +1,12 @@
> > +---
> > +- set_fact:
> > + name: gtk-vnc+mingw64
> > + machines: '{{ mingw_machines }}'
> > + archive_format: xz
> > + git_url: '{{ git_urls["gtk-vnc"][git_remote] }}'
> > +
> > +- include: '{{ playbook_base }}/jobs/prepare.yml'
> > +- include: '{{ playbook_base }}/jobs/meson-build-job.yml'
> > + vars:
> > + local_env: '{{ mingw64_local_env }}'
> > + meson_args: '{{ mingw32_meson_args }}'
>
> s/mingw32/mingw64/
>
> > +++ b/guests/playbooks/build/projects/gtk-vnc.yml
> > @@ -0,0 +1,19 @@
> > +---
> > +- set_fact:
> > + name: gtk-vnc
> > + machines: '{{ all_machines }}'
> > + archive_format: xz
> > + git_url: '{{ git_urls["gtk-vnc"][git_remote] }}'
> > +
> > +- include: '{{ playbook_base }}/jobs/prepare.yml'
> > +- include: '{{ playbook_base }}/jobs/meson-build-job.yml'
>
> Build fails on FreeBSD with
>
> $ meson .. . --prefix=$VIRT_PREFIX
> The Meson build system
> Version: 0.52.1
> Source dir: /usr/home/test/gtk-vnc
> Build dir: /usr/home/test/gtk-vnc/build
> Build type: native build
> Project name: gtk-vnc
> Project version: 1.0.0
> C compiler for the host machine: ccache cc (clang 6.0.1 "FreeBSD clang version 6.0.1 (tags/RELEASE_601/final 335540) (based on LLVM 6.0.1)")
> C linker for the host machine: lld 6.0.1
> Host machine cpu family: x86_64
> Host machine cpu: x86_64
> Program pod2man found: YES (/usr/local/bin/pod2man)
> Found pkg-config: /usr/local/bin/pkg-config (1.6.3)
> Run-time dependency gobject-2.0 found: YES 2.56.3
> Run-time dependency gio-2.0 found: YES 2.56.3
> Run-time dependency gio-unix-2.0 found: YES 2.56.3
> Run-time dependency gdk-pixbuf-2.0 found: YES 2.38.1
> Did not find CMake 'cmake'
> Found CMake: NO
> Run-time dependency gtk+-3.0 found: NO
>
> meson.build:81:0: ERROR: Could not generate cargs for gtk+-3.0:
> Package xproto was not found in the pkg-config search path.
> Perhaps you should add the directory containing `xproto.pc'
> to the PKG_CONFIG_PATH environment variable
> Package 'xproto', required by 'x11', not found
> Package 'kbproto', required by 'x11', not found
> Package 'xextproto', required by 'xext', not found
> Package 'xproto', required by 'xdamage', not found
> [...]
>
> The issue is not in Meson itself:
>
> $ pkg-config --cflags --libs gtk+-3.0
> Package xproto was not found in the pkg-config search path.
> Perhaps you should add the directory containing `xproto.pc'
> to the PKG_CONFIG_PATH environment variable
> Package 'xproto', required by 'x11', not found
> Package 'kbproto', required by 'x11', not found
> Package 'xextproto', required by 'xext', not found
> Package 'xproto', required by 'xdamage', not found
> [...]
>
> so it looks like it's most likely a packaging issue.
I can't reproduce that on FreeBSD 11.3 or 12.1, so I assume it is
fixed now.
> On Debian 9, it fails with
>
> [...]
> [56/64] Linking target src/libgtk-vnc-2.0.so.0.0.2.
> FAILED: src/libgtk-vnc-2.0.so.0.0.2
> ccache cc -o src/libgtk-vnc-2.0.so.0.0.2 'src/25a6634@@gtk-vnc-2.0@sha/meson-generated_.._vncdisplayenums.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/meson-generated_.._vncmarshal.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/meson-generated_.._vncconnectionenums.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/vncdisplay.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/vncgrabsequence.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/vnccairoframebuffer.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o' -Wl,--no-undefined -Wl,--as-needed -shared -fPIC -Wl,--start-group -Wl,-soname,libgtk-vnc-2.0.so.0 src/libgvnc-1.0.so.0.0.1 -Wl,--no-undefined -Wl,--version-script,/home/test/gtk-vnc/src/libgtk-vnc_sym.version /usr/lib/x86_64-linux-gnu/libgtk-3.so /usr/lib/x86_64-linux-gnu/libgdk-3.so /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so /usr/lib/x86_64-linux-gnu/libpango-1.0.so /usr/lib/x86_64-linux-gnu/libatk-1.0.so /usr/lib/x86_64-linux-gnu/libcairo-gobject.so /usr/lib/x86_64-linux-gnu/libcairo.so /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so /usr/lib/x86_64-linux-gnu/libgio-2.0.so /usr/lib/x86_64-linux-gnu/libgobject-2.0.so /usr/lib/x86_64-linux-gnu/libglib-2.0.so -lgcrypt /usr/lib/x86_64-linux-gnu/libgnutls.so /usr/lib/x86_64-linux-gnu/libsasl2.so /usr/lib/x86_64-linux-gnu/libz.so -Wl,--end-group '-Wl,-rpath,$ORIGIN/' -Wl,-rpath-link,/home/test/gtk-vnc/build/src
> src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o: In function `vnc_display_keymap_gdk2rfb_table':
> /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:150: undefined reference to `XkbGetMap'
> /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:154: undefined reference to `XkbGetNames'
> /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:163: undefined reference to `XkbFreeKeyboard'
> src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o: In function `check_for_xquartz':
> /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:116: undefined reference to `XListExtensions'
> /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:125: undefined reference to `XFreeExtensionList'
> src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o: In function `vnc_display_keymap_gdk2rfb_table':
> /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:177: undefined reference to `XKeysymToKeycode'
> /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:182: undefined reference to `XKeysymToKeycode'
> /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:177: undefined reference to `XKeysymToKeycode'
> /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:182: undefined reference to `XKeysymToKeycode'
> src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o: In function `check_for_xquartz':
> /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:125: undefined reference to `XFreeExtensionList'
> collect2: error: ld returned 1 exit status
> [58/64] Generating GVncPulse-1.0.typelib with a custom command.
> ninja: build stopped: subcommand failed.
>
> and both Ubuntu version also display very similar failures.
That just looks like a code bug in gtk-vnc, not a problem with
the CI setup.
> > +- include: '{{ playbook_base }}/jobs/meson-check-job.yml'
> > +- include: '{{ playbook_base }}/jobs/meson-rpm-job.yml'
> > + vars:
> > + # RPM build is still not possible on CentOS7 as it does not
> > + # have the needed RPM macros for meson.
> > + machines:
> > + - libvirt-centos-8
> > + - libvirt-fedora-30
> > + - libvirt-fedora-31
> > + - libvirt-fedora-rawhide
>
> Building the RPM fails everywhere with
>
> $ rpmbuild --clean --define "_topdir `pwd`/rpmbuild" -ta meson-dist/*.tar.xz
> error: Failed to read spec file from meson-dist/gtk-vnc-1.0.0.tar.xz
>
> I think we might need to adapt our RPM build rules.
I've changed the meson setup for gtk-vnc to more closely
match libvirt-dbus/libosinfo.
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
On Tue, 2020-01-07 at 11:49 +0000, Daniel P. Berrangé wrote:
> On Fri, Dec 13, 2019 at 06:20:57PM +0100, Andrea Bolognani wrote:
> > Build fails on FreeBSD with
> >
> > $ meson .. . --prefix=$VIRT_PREFIX
> > The Meson build system
> > Version: 0.52.1
> > Source dir: /usr/home/test/gtk-vnc
> > Build dir: /usr/home/test/gtk-vnc/build
> > Build type: native build
> > Project name: gtk-vnc
> > Project version: 1.0.0
> > C compiler for the host machine: ccache cc (clang 6.0.1 "FreeBSD clang version 6.0.1 (tags/RELEASE_601/final 335540) (based on LLVM 6.0.1)")
> > C linker for the host machine: lld 6.0.1
> > Host machine cpu family: x86_64
> > Host machine cpu: x86_64
> > Program pod2man found: YES (/usr/local/bin/pod2man)
> > Found pkg-config: /usr/local/bin/pkg-config (1.6.3)
> > Run-time dependency gobject-2.0 found: YES 2.56.3
> > Run-time dependency gio-2.0 found: YES 2.56.3
> > Run-time dependency gio-unix-2.0 found: YES 2.56.3
> > Run-time dependency gdk-pixbuf-2.0 found: YES 2.38.1
> > Did not find CMake 'cmake'
> > Found CMake: NO
> > Run-time dependency gtk+-3.0 found: NO
> >
> > meson.build:81:0: ERROR: Could not generate cargs for gtk+-3.0:
> > Package xproto was not found in the pkg-config search path.
> > Perhaps you should add the directory containing `xproto.pc'
> > to the PKG_CONFIG_PATH environment variable
> > Package 'xproto', required by 'x11', not found
> > Package 'kbproto', required by 'x11', not found
> > Package 'xextproto', required by 'xext', not found
> > Package 'xproto', required by 'xdamage', not found
> > [...]
> >
> > The issue is not in Meson itself:
> >
> > $ pkg-config --cflags --libs gtk+-3.0
> > Package xproto was not found in the pkg-config search path.
> > Perhaps you should add the directory containing `xproto.pc'
> > to the PKG_CONFIG_PATH environment variable
> > Package 'xproto', required by 'x11', not found
> > Package 'kbproto', required by 'x11', not found
> > Package 'xextproto', required by 'xext', not found
> > Package 'xproto', required by 'xdamage', not found
> > [...]
> >
> > so it looks like it's most likely a packaging issue.
>
> I can't reproduce that on FreeBSD 11.3 or 12.1, so I assume it is
> fixed now.
It still shows up in my local test environment but not in the CentOS
CI production environment, so I guess we can ignore it.
> > On Debian 9, it fails with
> >
> > [...]
> > [56/64] Linking target src/libgtk-vnc-2.0.so.0.0.2.
> > FAILED: src/libgtk-vnc-2.0.so.0.0.2
> > ccache cc -o src/libgtk-vnc-2.0.so.0.0.2 'src/25a6634@@gtk-vnc-2.0@sha/meson-generated_.._vncdisplayenums.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/meson-generated_.._vncmarshal.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/meson-generated_.._vncconnectionenums.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/vncdisplay.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/vncgrabsequence.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/vnccairoframebuffer.c.o' 'src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o' -Wl,--no-undefined -Wl,--as-needed -shared -fPIC -Wl,--start-group -Wl,-soname,libgtk-vnc-2.0.so.0 src/libgvnc-1.0.so.0.0.1 -Wl,--no-undefined -Wl,--version-script,/home/test/gtk-vnc/src/libgtk-vnc_sym.version /usr/lib/x86_64-linux-gnu/libgtk-3.so /usr/lib/x86_64-linux-gnu/libgdk-3.so /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so /usr/lib/x86_64-linux-gnu/libpango-1.0.so /usr/lib/x86_64-linux-gnu/libatk-1.0.so /usr/lib/x86_64-linux-gnu/libcairo-gobject.so /usr/lib/x86_64-linux-gnu/libcairo.so /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so /usr/lib/x86_64-linux-gnu/libgio-2.0.so /usr/lib/x86_64-linux-gnu/libgobject-2.0.so /usr/lib/x86_64-linux-gnu/libglib-2.0.so -lgcrypt /usr/lib/x86_64-linux-gnu/libgnutls.so /usr/lib/x86_64-linux-gnu/libsasl2.so /usr/lib/x86_64-linux-gnu/libz.so -Wl,--end-group '-Wl,-rpath,$ORIGIN/' -Wl,-rpath-link,/home/test/gtk-vnc/build/src
> > src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o: In function `vnc_display_keymap_gdk2rfb_table':
> > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:150: undefined reference to `XkbGetMap'
> > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:154: undefined reference to `XkbGetNames'
> > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:163: undefined reference to `XkbFreeKeyboard'
> > src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o: In function `check_for_xquartz':
> > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:116: undefined reference to `XListExtensions'
> > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:125: undefined reference to `XFreeExtensionList'
> > src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o: In function `vnc_display_keymap_gdk2rfb_table':
> > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:177: undefined reference to `XKeysymToKeycode'
> > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:182: undefined reference to `XKeysymToKeycode'
> > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:177: undefined reference to `XKeysymToKeycode'
> > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:182: undefined reference to `XKeysymToKeycode'
> > src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o: In function `check_for_xquartz':
> > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:125: undefined reference to `XFreeExtensionList'
> > collect2: error: ld returned 1 exit status
> > [58/64] Generating GVncPulse-1.0.typelib with a custom command.
> > ninja: build stopped: subcommand failed.
> >
> > and both Ubuntu version also display very similar failures.
>
> That just looks like a code bug in gtk-vnc, not a problem with
> the CI setup.
It now works on Debian 9 and Ubuntu 18.04, but it still fails on
Ubuntu 16.04. We should still figure out what's going on, but since
we don't yet have Ubuntu deployed in the CentOS CI environment it's
not a blocker for inclusion.
> > > +- include: '{{ playbook_base }}/jobs/meson-check-job.yml'
> > > +- include: '{{ playbook_base }}/jobs/meson-rpm-job.yml'
> > > + vars:
> > > + # RPM build is still not possible on CentOS7 as it does not
> > > + # have the needed RPM macros for meson.
> > > + machines:
> > > + - libvirt-centos-8
> > > + - libvirt-fedora-30
> > > + - libvirt-fedora-31
> > > + - libvirt-fedora-rawhide
> >
> > Building the RPM fails everywhere with
> >
> > $ rpmbuild --clean --define "_topdir `pwd`/rpmbuild" -ta meson-dist/*.tar.xz
> > error: Failed to read spec file from meson-dist/gtk-vnc-1.0.0.tar.xz
> >
> > I think we might need to adapt our RPM build rules.
>
> I've changed the meson setup for gtk-vnc to more closely
> match libvirt-dbus/libosinfo.
Cool, it works now :)
--
Andrea Bolognani / Red Hat / Virtualization
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
On Wed, Jan 08, 2020 at 01:41:08PM +0100, Andrea Bolognani wrote: > On Tue, 2020-01-07 at 11:49 +0000, Daniel P. Berrangé wrote: > > > src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o: In function `vnc_display_keymap_gdk2rfb_table': > > > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:150: undefined reference to `XkbGetMap' > > > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:154: undefined reference to `XkbGetNames' > > > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:163: undefined reference to `XkbFreeKeyboard' > > > src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o: In function `check_for_xquartz': > > > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:116: undefined reference to `XListExtensions' > > > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:125: undefined reference to `XFreeExtensionList' > > > src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o: In function `vnc_display_keymap_gdk2rfb_table': > > > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:177: undefined reference to `XKeysymToKeycode' > > > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:182: undefined reference to `XKeysymToKeycode' > > > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:177: undefined reference to `XKeysymToKeycode' > > > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:182: undefined reference to `XKeysymToKeycode' > > > src/25a6634@@gtk-vnc-2.0@sha/vncdisplaykeymap.c.o: In function `check_for_xquartz': > > > /home/test/gtk-vnc/build/../src/vncdisplaykeymap.c:125: undefined reference to `XFreeExtensionList' > > > collect2: error: ld returned 1 exit status > > > [58/64] Generating GVncPulse-1.0.typelib with a custom command. > > > ninja: build stopped: subcommand failed. > > > > > > and both Ubuntu version also display very similar failures. > > > > That just looks like a code bug in gtk-vnc, not a problem with > > the CI setup. > > It now works on Debian 9 and Ubuntu 18.04, but it still fails on > Ubuntu 16.04. We should still figure out what's going on, but since > we don't yet have Ubuntu deployed in the CentOS CI environment it's > not a blocker for inclusion. It just needed a min version check relaxed & now it works Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :| -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
© 2016 - 2026 Red Hat, Inc.