summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWenlin Kang <wenlin.kang@windriver.com>2026-05-28 11:03:39 +0800
committerKhem Raj <khem.raj@oss.qualcomm.com>2026-05-31 03:08:56 -0700
commit175d2fca5e5e6a188560b1fc00c896aac0d66a72 (patch)
tree79c33d567e3e56116832466aa30813ab4e10daee
parentff9b399795189132722b9158867077177b05a716 (diff)
downloadmeta-openembedded-175d2fca5e5e6a188560b1fc00c896aac0d66a72.tar.gz
xfce4-panel: backport patches to fix build failure
Backport upstream patches to fix the following build error: | In file included from ../sources/xfce4-panel-4.21.1/migrate/main.c:23: | ../sources/xfce4-panel-4.21.1/libxfce4panel/libxfce4panel.h:27:10: fatal error: libxfce4panel/libxfce4panel-enum-types.h: No such file or directory | 27 | #include <libxfce4panel/libxfce4panel-enum-types.h> | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | compilation terminated. Reference: https://gitlab.xfce.org/xfce/xfce4-panel/-/work_items/969 Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com> Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
-rw-r--r--meta-xfce/recipes-xfce/xfce4-panel/files/0001-build-Be-sure-to-generate-sub-headers-before-includi.patch311
-rw-r--r--meta-xfce/recipes-xfce/xfce4-panel/files/0002-build-Install-missing-libxfce4panel.h.patch30
-rw-r--r--meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.21.1.bb2
3 files changed, 343 insertions, 0 deletions
diff --git a/meta-xfce/recipes-xfce/xfce4-panel/files/0001-build-Be-sure-to-generate-sub-headers-before-includi.patch b/meta-xfce/recipes-xfce/xfce4-panel/files/0001-build-Be-sure-to-generate-sub-headers-before-includi.patch
new file mode 100644
index 0000000000..67d2b4eaa8
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-panel/files/0001-build-Be-sure-to-generate-sub-headers-before-includi.patch
@@ -0,0 +1,311 @@
1From c259dfbbb8e139b43af179acec9824ecf849d34d Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Ga=C3=ABl=20Bonithon?= <gael@xfce.org>
3Date: Thu, 19 Feb 2026 11:44:35 +0100
4Subject: [PATCH 1/2] build: Be sure to generate sub-headers before including
5 libxfce4panel.h
6
7Fixes: #969
8
9Upstream-Status: Backport [https://gitlab.xfce.org/xfce/xfce4-panel/-/commit/c259dfbbb8e139b43af179acec9824ecf849d34d]
10
11Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
12---
13 common/meson.build | 3 +++
14 .../{libxfce4panel.h => libxfce4panel.h.in} | 0
15 libxfce4panel/meson.build | 17 +++++++++++++++--
16 migrate/meson.build | 3 +++
17 panel/meson.build | 1 +
18 plugins/actions/meson.build | 5 ++++-
19 plugins/applicationsmenu/meson.build | 5 ++++-
20 plugins/clock/meson.build | 5 ++++-
21 plugins/directorymenu/meson.build | 5 ++++-
22 plugins/launcher/meson.build | 5 ++++-
23 plugins/pager/meson.build | 5 ++++-
24 plugins/separator/meson.build | 5 ++++-
25 plugins/showdesktop/meson.build | 5 ++++-
26 plugins/systray/meson.build | 5 ++++-
27 plugins/tasklist/meson.build | 5 ++++-
28 plugins/windowmenu/meson.build | 5 ++++-
29 wrapper/meson.build | 3 +++
30 17 files changed, 69 insertions(+), 13 deletions(-)
31 rename libxfce4panel/{libxfce4panel.h => libxfce4panel.h.in} (100%)
32
33diff --git a/common/meson.build b/common/meson.build
34index ce7f3a98c..d880455ac 100644
35--- a/common/meson.build
36+++ b/common/meson.build
37@@ -8,6 +8,9 @@ libpanel_common = static_library(
38 'panel-xfconf.c',
39 'panel-xfconf.h',
40 ],
41+ sources: [
42+ libxfce4panel_h,
43+ ],
44 c_args: [
45 '-DG_LOG_DOMAIN="@0@"'.format('libpanel-common'),
46 ],
47diff --git a/libxfce4panel/libxfce4panel.h b/libxfce4panel/libxfce4panel.h.in
48similarity index 100%
49rename from libxfce4panel/libxfce4panel.h
50rename to libxfce4panel/libxfce4panel.h.in
51diff --git a/libxfce4panel/meson.build b/libxfce4panel/meson.build
52index bb66b1534..150319388 100644
53--- a/libxfce4panel/meson.build
54+++ b/libxfce4panel/meson.build
55@@ -6,7 +6,6 @@ libpanel_install_dir = get_option('prefix') / get_option('includedir') / libpane
56
57 libpanel_headers = [
58 'libxfce4panel-enums.h',
59- 'libxfce4panel.h',
60 'xfce-arrow-button.h',
61 'xfce-panel-convenience.h',
62 'xfce-panel-image.h',
63@@ -16,7 +15,7 @@ libpanel_headers = [
64
65 # do not add this header to GI sources, it creates unsolvable conflicts with other
66 # libs whose identifier prefix is Xfce, e.g. libxfce4ui and libxfce4util
67-configure_file(
68+libpanel_config_h = configure_file(
69 configuration: configuration_data({
70 'LIBXFCE4PANEL_VERSION': meson.project_version(),
71 'LIBXFCE4PANEL_VERSION_MAJOR': version_parts[0],
72@@ -84,6 +83,20 @@ libpanel_enums += gnome.mkenums(
73 ftail: '\n#define __LIBXFCE4PANEL_ENUM_TYPES_C__\n#include "libxfce4panel-visibility.c"\n',
74 )
75
76+libxfce4panel_h = custom_target(
77+ 'libxfce4panel.h',
78+ input: 'libxfce4panel.h.in',
79+ output: 'libxfce4panel.h',
80+ command: ['cp', '@INPUT@', '@OUTPUT@'],
81+ depends: [
82+ libpanel_enums,
83+ ],
84+ depend_files: [
85+ libpanel_config_h,
86+ ],
87+)
88+libpanel_sources += libxfce4panel_h
89+
90 libpanel_deps = [
91 glib,
92 gmodule,
93diff --git a/migrate/meson.build b/migrate/meson.build
94index 8159f6336..19d95a2eb 100644
95--- a/migrate/meson.build
96+++ b/migrate/meson.build
97@@ -21,6 +21,9 @@ migrate_sources = [
98 executable(
99 'migrate',
100 migrate_sources,
101+ sources: [
102+ libxfce4panel_h,
103+ ],
104 c_args: [
105 '-DG_LOG_DOMAIN="@0@"'.format('xfce4-panel-migrate'),
106 '-DXDGCONFIGDIR="@0@"'.format(xdgconfdir),
107diff --git a/panel/meson.build b/panel/meson.build
108index 78e2d8d15..6c2fd4e1e 100644
109--- a/panel/meson.build
110+++ b/panel/meson.build
111@@ -73,6 +73,7 @@ executable(
112 sources: [
113 xfce_revision_h,
114 xfce4_panel_resources_c,
115+ libxfce4panel_h,
116 ],
117 c_args: [
118 '-DG_LOG_DOMAIN="@0@"'.format('xfce4-panel'),
119diff --git a/plugins/actions/meson.build b/plugins/actions/meson.build
120index 55dcd2e1f..c3d824d41 100644
121--- a/plugins/actions/meson.build
122+++ b/plugins/actions/meson.build
123@@ -8,7 +8,10 @@ plugin_install_subdir = 'xfce4' / 'panel' / 'plugins'
124 shared_module(
125 'actions',
126 plugin_sources,
127- sources: xfce4_panel_resources_c,
128+ sources: [
129+ xfce4_panel_resources_c,
130+ libxfce4panel_h,
131+ ],
132 gnu_symbol_visibility: 'hidden',
133 c_args: [
134 '-DG_LOG_DOMAIN="@0@"'.format('libactions'),
135diff --git a/plugins/applicationsmenu/meson.build b/plugins/applicationsmenu/meson.build
136index efa825f00..15e06af0f 100644
137--- a/plugins/applicationsmenu/meson.build
138+++ b/plugins/applicationsmenu/meson.build
139@@ -8,7 +8,10 @@ plugin_install_subdir = 'xfce4' / 'panel' / 'plugins'
140 shared_module(
141 'applicationsmenu',
142 plugin_sources,
143- sources: xfce4_panel_resources_c,
144+ sources: [
145+ xfce4_panel_resources_c,
146+ libxfce4panel_h,
147+ ],
148 gnu_symbol_visibility: 'hidden',
149 c_args: [
150 '-DG_LOG_DOMAIN="@0@"'.format('libapplicationsmenu'),
151diff --git a/plugins/clock/meson.build b/plugins/clock/meson.build
152index b08f3c39c..8e005f486 100644
153--- a/plugins/clock/meson.build
154+++ b/plugins/clock/meson.build
155@@ -22,7 +22,10 @@ plugin_install_subdir = 'xfce4' / 'panel' / 'plugins'
156 shared_module(
157 'clock',
158 plugin_sources,
159- sources: xfce4_panel_resources_c,
160+ sources: [
161+ xfce4_panel_resources_c,
162+ libxfce4panel_h,
163+ ],
164 gnu_symbol_visibility: 'hidden',
165 c_args: [
166 '-DG_LOG_DOMAIN="@0@"'.format('libclock'),
167diff --git a/plugins/directorymenu/meson.build b/plugins/directorymenu/meson.build
168index 43e81abf3..0bf48bae6 100644
169--- a/plugins/directorymenu/meson.build
170+++ b/plugins/directorymenu/meson.build
171@@ -8,7 +8,10 @@ plugin_install_subdir = 'xfce4' / 'panel' / 'plugins'
172 shared_module(
173 'directorymenu',
174 plugin_sources,
175- sources: xfce4_panel_resources_c,
176+ sources: [
177+ xfce4_panel_resources_c,
178+ libxfce4panel_h,
179+ ],
180 gnu_symbol_visibility: 'hidden',
181 c_args: [
182 '-DG_LOG_DOMAIN="@0@"'.format('libdirectorymenu'),
183diff --git a/plugins/launcher/meson.build b/plugins/launcher/meson.build
184index d228eca54..8815b5baa 100644
185--- a/plugins/launcher/meson.build
186+++ b/plugins/launcher/meson.build
187@@ -10,7 +10,10 @@ plugin_install_subdir = 'xfce4' / 'panel' / 'plugins'
188 shared_module(
189 'launcher',
190 plugin_sources,
191- sources: xfce4_panel_resources_c,
192+ sources: [
193+ xfce4_panel_resources_c,
194+ libxfce4panel_h,
195+ ],
196 gnu_symbol_visibility: 'hidden',
197 c_args: [
198 '-DG_LOG_DOMAIN="@0@"'.format('liblauncher'),
199diff --git a/plugins/pager/meson.build b/plugins/pager/meson.build
200index 30fcbdef6..45e34c62b 100644
201--- a/plugins/pager/meson.build
202+++ b/plugins/pager/meson.build
203@@ -10,7 +10,10 @@ plugin_install_subdir = 'xfce4' / 'panel' / 'plugins'
204 shared_module(
205 'pager',
206 plugin_sources,
207- sources: xfce4_panel_resources_c,
208+ sources: [
209+ xfce4_panel_resources_c,
210+ libxfce4panel_h,
211+ ],
212 gnu_symbol_visibility: 'hidden',
213 c_args: [
214 '-DG_LOG_DOMAIN="@0@"'.format('libpager'),
215diff --git a/plugins/separator/meson.build b/plugins/separator/meson.build
216index 9de0289b3..26581e90e 100644
217--- a/plugins/separator/meson.build
218+++ b/plugins/separator/meson.build
219@@ -8,7 +8,10 @@ plugin_install_subdir = 'xfce4' / 'panel' / 'plugins'
220 shared_module(
221 'separator',
222 plugin_sources,
223- sources: xfce4_panel_resources_c,
224+ sources: [
225+ xfce4_panel_resources_c,
226+ libxfce4panel_h,
227+ ],
228 gnu_symbol_visibility: 'hidden',
229 c_args: [
230 '-DG_LOG_DOMAIN="@0@"'.format('libseparator'),
231diff --git a/plugins/showdesktop/meson.build b/plugins/showdesktop/meson.build
232index 2e4812de4..c599138c2 100644
233--- a/plugins/showdesktop/meson.build
234+++ b/plugins/showdesktop/meson.build
235@@ -8,7 +8,10 @@ plugin_install_subdir = 'xfce4' / 'panel' / 'plugins'
236 shared_module(
237 'showdesktop',
238 plugin_sources,
239- sources: xfce4_panel_resources_c,
240+ sources: [
241+ xfce4_panel_resources_c,
242+ libxfce4panel_h,
243+ ],
244 gnu_symbol_visibility: 'hidden',
245 c_args: [
246 '-DG_LOG_DOMAIN="@0@"'.format('libshowdesktop'),
247diff --git a/plugins/systray/meson.build b/plugins/systray/meson.build
248index 2efa088d4..ea364ccff 100644
249--- a/plugins/systray/meson.build
250+++ b/plugins/systray/meson.build
251@@ -52,7 +52,10 @@ plugin_install_subdir = 'xfce4' / 'panel' / 'plugins'
252 shared_module(
253 'systray',
254 plugin_sources,
255- sources: xfce4_panel_resources_c,
256+ sources: [
257+ xfce4_panel_resources_c,
258+ libxfce4panel_h,
259+ ],
260 gnu_symbol_visibility: 'hidden',
261 c_args: [
262 '-DG_LOG_DOMAIN="@0@"'.format('libsystray'),
263diff --git a/plugins/tasklist/meson.build b/plugins/tasklist/meson.build
264index 333e91c21..61b889536 100644
265--- a/plugins/tasklist/meson.build
266+++ b/plugins/tasklist/meson.build
267@@ -10,7 +10,10 @@ plugin_install_subdir = 'xfce4' / 'panel' / 'plugins'
268 shared_module(
269 'tasklist',
270 plugin_sources,
271- sources: xfce4_panel_resources_c,
272+ sources: [
273+ xfce4_panel_resources_c,
274+ libxfce4panel_h,
275+ ],
276 gnu_symbol_visibility: 'hidden',
277 c_args: [
278 '-DG_LOG_DOMAIN="@0@"'.format('libtasklist'),
279diff --git a/plugins/windowmenu/meson.build b/plugins/windowmenu/meson.build
280index 71125ffc7..07a6d767a 100644
281--- a/plugins/windowmenu/meson.build
282+++ b/plugins/windowmenu/meson.build
283@@ -8,7 +8,10 @@ plugin_install_subdir = 'xfce4' / 'panel' / 'plugins'
284 shared_module(
285 'windowmenu',
286 plugin_sources,
287- sources: xfce4_panel_resources_c,
288+ sources: [
289+ xfce4_panel_resources_c,
290+ libxfce4panel_h,
291+ ],
292 gnu_symbol_visibility: 'hidden',
293 c_args: [
294 '-DG_LOG_DOMAIN="@0@"'.format('libwindowmenu'),
295diff --git a/wrapper/meson.build b/wrapper/meson.build
296index 4f33fd89a..e88644c1f 100644
297--- a/wrapper/meson.build
298+++ b/wrapper/meson.build
299@@ -31,6 +31,9 @@ wrapper_sources += gnome.gdbus_codegen(
300 executable(
301 'wrapper-2.0',
302 wrapper_sources,
303+ sources: [
304+ libxfce4panel_h,
305+ ],
306 c_args: [
307 '-DG_LOG_DOMAIN="@0@"'.format('xfce4-panel-wrapper'),
308 ],
309--
3102.43.0
311
diff --git a/meta-xfce/recipes-xfce/xfce4-panel/files/0002-build-Install-missing-libxfce4panel.h.patch b/meta-xfce/recipes-xfce/xfce4-panel/files/0002-build-Install-missing-libxfce4panel.h.patch
new file mode 100644
index 0000000000..ee1f48086a
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-panel/files/0002-build-Install-missing-libxfce4panel.h.patch
@@ -0,0 +1,30 @@
1From 151fec5f91fcb3dc5d55aee82a6d717dad77e877 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Ga=C3=ABl=20Bonithon?= <gael@xfce.org>
3Date: Sun, 22 Feb 2026 17:11:05 +0100
4Subject: [PATCH 2/2] build: Install missing libxfce4panel.h
5
6Fixes: c259dfbbb8e139b43af179acec9824ecf849d34d
7
8Upstream-Status: Backport [https://gitlab.xfce.org/xfce/xfce4-panel/-/commit/151fec5f91fcb3dc5d55aee82a6d717dad77e877]
9
10Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
11---
12 libxfce4panel/meson.build | 2 ++
13 1 file changed, 2 insertions(+)
14
15diff --git a/libxfce4panel/meson.build b/libxfce4panel/meson.build
16index 150319388..38d8ad198 100644
17--- a/libxfce4panel/meson.build
18+++ b/libxfce4panel/meson.build
19@@ -94,6 +94,8 @@ libxfce4panel_h = custom_target(
20 depend_files: [
21 libpanel_config_h,
22 ],
23+ install: true,
24+ install_dir: libpanel_install_dir,
25 )
26 libpanel_sources += libxfce4panel_h
27
28--
292.43.0
30
diff --git a/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.21.1.bb b/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.21.1.bb
index 00c9352dec..350784e083 100644
--- a/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.21.1.bb
+++ b/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.21.1.bb
@@ -15,6 +15,8 @@ SRC_URI += " \
15 file://0001-windowmenu-do-not-display-desktop-icon-when-no-windo.patch \ 15 file://0001-windowmenu-do-not-display-desktop-icon-when-no-windo.patch \
16 file://0002-use-lxdm-to-replace-dm-tool.patch \ 16 file://0002-use-lxdm-to-replace-dm-tool.patch \
17 file://0001-build-Do-not-display-full-path-in-generated-headers.patch \ 17 file://0001-build-Do-not-display-full-path-in-generated-headers.patch \
18 file://0001-build-Be-sure-to-generate-sub-headers-before-includi.patch \
19 file://0002-build-Install-missing-libxfce4panel.h.patch \
18" 20"
19SRC_URI[sha256sum] = "c940dae515bef4af08a126011d2fd873ce99e815157ba8cef5332195bb60e51e" 21SRC_URI[sha256sum] = "c940dae515bef4af08a126011d2fd873ce99e815157ba8cef5332195bb60e51e"
20 22