summaryrefslogtreecommitdiffstats
path: root/rules/qt6.in
blob: cb3c9bda9cd32d673a051f15e19ca3d70addc393 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
## SECTION=qt

menuconfig QT6
	tristate
	select HOST_CMAKE
	select HOST_NINJA
	select HOST_FONTCONFIG		if QT6_MODULE_QTWEBENGINE
	select HOST_FREETYPE		if QT6_MODULE_QTWEBENGINE
	select HOST_LIBJPEG		if QT6_MODULE_QTWEBENGINE
	select HOST_LIBPNG		if QT6_MODULE_QTWEBENGINE
	select HOST_LIBWEBP		if QT6_MODULE_QTWEBENGINE
	select HOST_NINJA		if QT6_MODULE_QTWEBENGINE
	select HOST_NODEJS		if QT6_MODULE_QTWEBENGINE
	select HOST_NSPR		if QT6_MODULE_QTWEBENGINE
	select HOST_NSS			if QT6_MODULE_QTWEBENGINE
	select HOST_QT6
	select HOST_QT6_DBUS		if QT6_DBUS
	select HOST_QT6_QTDECLARATIVE	if QT6_MODULE_QTDECLARATIVE
	select HOST_QT6_QTQUICK3D	if QT6_MODULE_QTQUICK3D
	select HOST_QT6_QTREMOTEOBJECTS	if QT6_MODULE_QTREMOTEOBJECTS
	select HOST_QT6_QTSCXML		if QT6_MODULE_QTSCXML
	select HOST_QT6_QTSHADERTOOLS	if QT6_MODULE_QTSHADERTOOLS
	select HOST_QT6_QTWAYLAND	if QT6_MODULE_QTWAYLAND
	select HOST_QT6_QTWEBENGINE	if QT6_MODULE_QTWEBENGINE
	select HOST_SYSTEM_PERL
	select HOST_SYSTEM_PYTHON3	if QT6_MODULE_QTDECLARATIVE || QT6_MODULE_QTWEBENGINE
	select LIBC_PTHREAD
	select LIBC_DL
	select LIBC_RT
	select LIBC_M
	select GCCLIBS_CXX
	select GCCLIBS_GCC_S
	select PCRE2
	select PCRE2_16
	select ZLIB
	select ALSA_LIB			if QT6_MODULE_QTMULTIMEDIA || QT6_MODULE_QTWEBENGINE_MEDIA
	select ALSA_LIB_HWDEP		if QT6_MODULE_QTWEBENGINE_MEDIA
	select ALSA_LIB_MIXER		if QT6_MODULE_QTWEBENGINE_MEDIA
	select ALSA_LIB_PCM		if QT6_MODULE_QTMULTIMEDIA || QT6_MODULE_QTWEBENGINE_MEDIA
	select ALSA_LIB_RAWMIDI		if QT6_MODULE_QTWEBENGINE_MEDIA
	select ALSA_LIB_SEQ		if QT6_MODULE_QTWEBENGINE_MEDIA
	select BLUEZ			if QT6_MODULE_QTCONNECTIVITY
	select BLUEZ_LIBBLUETOOTH	if QT6_MODULE_QTCONNECTIVITY
	select DBUS			if QT6_DBUS || QT6_MODULE_QTWEBENGINE || QT6_MODULE_QTCONNECTIVITY
	select FONTCONFIG		if QT6_GUI || QT6_MODULE_QTWEBENGINE
	select FREETYPE			if QT6_GUI || QT6_MODULE_QTWEBENGINE
	select GLIB			if QT6_GLIB
	select GSTREAMER1		if QT6_MODULE_QTMULTIMEDIA_GST
	select GST_PLUGINS_BASE1	if QT6_MODULE_QTMULTIMEDIA_GST
	select GST_PLUGINS_BASE1_APP	if QT6_MODULE_QTMULTIMEDIA_GST
	select GST_PLUGINS_BASE1_GL	if QT6_MODULE_QTMULTIMEDIA_GST && QT6_OPENGL
	select HARFBUZZ			if QT6_GUI
	select ICU			if QT6_ICU
	select LIBDRM			if QT6_PLATFORM_EGLFS
	select LIBINPUT			if QT6_INPUT_LIBINPUT
	select LIBJPEG			if QT6_LIBJPEG || QT6_MODULE_QTWEBENGINE
	select LIBMNG			if QT6_LIBMNG
	select LIBPNG			if QT6_LIBPNG || QT6_MODULE_QTWEBENGINE
	select LIBTIFF			if QT6_MODULE_QTIMAGEFORMATS
	select LIBWEBP			if QT6_MODULE_QTIMAGEFORMATS || QT6_MODULE_QTWEBENGINE
	select LIBWEBP_DEMUX		if QT6_MODULE_QTIMAGEFORMATS || QT6_MODULE_QTWEBENGINE
	select LIBWEBP_MUX		if QT6_MODULE_QTIMAGEFORMATS || QT6_MODULE_QTWEBENGINE
	select LIBXKBCOMMON		if QT6_LIBXKBCOMMON
	select MESALIB			if QT6_PLATFORM_EGLFS
	select MESALIB_EGL		if QT6_PLATFORM_EGLFS || QT6_MODULE_QTWAYLAND_MESA
	select MESALIB_EGL_DRM		if QT6_PLATFORM_EGLFS
	select MESALIB_EGL_WAYLAND	if QT6_MODULE_QTWAYLAND_MESA
	select MESALIB_GBM		if QT6_PLATFORM_EGLFS
	select MYSQLDB			if QT6_MODULE_QTBASE_SQL_MYSQL
	select NSPR			if QT6_MODULE_QTWEBENGINE
	select NSS			if QT6_MODULE_QTWEBENGINE
	select OPENSSL			if QT6_OPENSSL
	select OPUS			if QT6_MODULE_QTWEBENGINE
	select PLATFORM_OPENGL		if QT6_OPENGL
	select SQLITE			if QT6_MODULE_QTBASE_SQL_SQLITE
	select SYSTEMD			if QT6_JOURNALD
	select UDEV			if QT6_LIBUDEV
	select UDEV_LIBUDEV		if QT6_LIBUDEV
	select WAYLAND			if QT6_MODULE_QTWAYLAND

	select QT6_MODULE_QTBASE
	select QT6_MODULE_QTBASE_SQL	if QT6_MODULE_QTDECLARATIVE
	prompt "qt6                           "
	help
	  Qt is a full development framework with tools designed to
	  streamline the creation of applications and user interfaces
	  for desktop, embedded and mobile platforms.

if QT6

config QT6_PREPARE_EXAMPLES
	bool

config QT6_LIBXKBCOMMON
	bool
	default QT6_MODULE_QTWAYLAND || QT6_INPUT_LIBINPUT || QT6_MODULE_QTWEBENGINE

menu "Feature Options             "

config QT6_GIF
	bool
	prompt "gif support"

config QT6_LIBJPEG
	bool
	prompt "JPEG support"

config QT6_LIBMNG
	bool
	select QT6_MODULE_QTIMAGEFORMATS
	prompt "MNG support"

config QT6_LIBPNG
	bool
	prompt "PNG support"

comment "----------------------------"

config QT6_ACCESSIBILITY
	bool
	prompt "accessibility support"

config QT6_ICU
	bool
	prompt "ICU support"

config QT6_DBUS
	bool
	select QT6_GLIB
	prompt "D-Bus support"

config QT6_GLIB
	bool
	prompt "glib support"

config QT6_LIBUDEV
	bool

config QT6_JOURNALD
	bool
	depends on INITMETHOD_SYSTEMD
	default y
	prompt "journald support"

config QT6_OPENSSL
	bool
	prompt "OpenSSL support"

config QT6_OPENGL
	bool
	prompt "OpenGL ES2 support"

config QT6_TEST
	bool
	prompt "Testing support"

endmenu

menuconfig QT6_GUI
	bool
	select QT6_LIBUDEV
	prompt "GUI Platform Plugins        "

if QT6_GUI

comment "supported plugins"

config QT6_PLATFORM_DEFAULT
	string
	default "eglfs"		if QT6_PLATFORM_DEFAULT_EGLFS
	default "wayland"	if QT6_PLATFORM_DEFAULT_WAYLAND

config QT6_PLATFORM_EGLFS
	bool
	prompt "eglfs"
	select QT6_OPENGL

comment "default plugin"

choice
	prompt "selected"
	help
	  At least one GUI platform plugin must be selected here to be used as
	  the default. Don't keep this entry as '--nothing--'.

config QT6_PLATFORM_DEFAULT_MISSING
	bool
	prompt "--nothing--"
	depends on !QT6_PLATFORM_EGLFS
	depends on !QT6_MODULE_QTWAYLAND

config QT6_PLATFORM_DEFAULT_EGLFS
	bool
	depends on QT6_PLATFORM_EGLFS
	prompt "eglfs"

config QT6_PLATFORM_DEFAULT_WAYLAND
	bool
	depends on QT6_MODULE_QTWAYLAND
	prompt "wayland"

endchoice

endif

# add this here so 'Input Plugins' is sorted into the correct menu
config QT6_WIDGETS
	bool

if QT6_GUI

menu "Input Plugins               "

config QT6_INPUT_EVDEV
	bool
	select QT6_LIBUDEV
	default y
	prompt "evdev"

config QT6_INPUT_LIBINPUT
	bool
	select QT6_LIBUDEV
	prompt "libinput"

endmenu

endif

menu "Modules                     "

config QT6_MODULE_QT3D
	bool
	select QT6_GUI
	select QT6_OPENGL
	select QT6_MODULE_QTDECLARATIVE
	prompt "Qt3D"

config QT6_MODULE_QT3D_QUICK
	bool
	depends on QT6_MODULE_QT3D
	default QT6_MODULE_QTDECLARATIVE

config QT6_MODULE_QT5COMPAT
	bool
	prompt "Qt5Compat"

config QT6_MODULE_QTBASE
	bool
	prompt "QtBase"

if QT6_MODULE_QTBASE

config QT6_MODULE_QTBASE_GUI
	bool
	default QT6_GUI

config QT6_MODULE_QTBASE_WIDGETS
	bool
	select QT6_GUI
	select QT6_WIDGETS
	select QT6_LIBPNG
	prompt "QtWidgets"

config QT6_MODULE_QTBASE_PRINT
	bool
	select QT6_MODULE_QTBASE_WIDGETS
	prompt "printing support"

config QT6_MODULE_QTBASE_SQL
	bool
	prompt "QtSQL"

if QT6_MODULE_QTBASE_SQL

config QT6_MODULE_QTBASE_SQL_SQLITE
	bool
	prompt "SQLite backend"

config QT6_MODULE_QTBASE_SQL_MYSQL
	bool
	prompt "mySQL backend"

endif

endif

config QT6_MODULE_QTCHARTS
	bool
	select QT6_MODULE_QTBASE_WIDGETS
	prompt "QtCharts"

config QT6_MODULE_QTCHARTS_QUICK
	bool
	depends on QT6_MODULE_QTCHARTS
	default QT6_MODULE_QTDECLARATIVE

config QT6_MODULE_QTCOAP
	bool
	prompt "QtCoap"

config QT6_MODULE_QTCONNECTIVITY
	bool
	select QT6_DBUS
	prompt "QtConnectivity"

config QT6_MODULE_QTCONNECTIVITY_QUICK
	bool
	depends on QT6_MODULE_QTCONNECTIVITY
	default QT6_MODULE_QTDECLARATIVE

config QT6_MODULE_QTDATAVIS3D
	bool
	select QT6_MODULE_QTBASE_WIDGETS
	select QT6_MODULE_QTDECLARATIVE
	select QT6_OPENGL
	prompt "QtDataVisualization"

config QT6_MODULE_QTDECLARATIVE
	bool
	# FIXME: fails to build without QT6_TEST
	select QT6_TEST
	select QT6_MODULE_QTSHADERTOOLS
	prompt "QtDeclarative"

if QT6_MODULE_QTDECLARATIVE

config QT6_MODULE_QTDECLARATIVE_QML
	bool
	prompt "install qml"
	help
	  Commandline application that replaces qmlscene.

config QT6_MODULE_QTDECLARATIVE_QMLSCENE
	bool
	prompt "install qmlscene (deprecated)"

config QT6_MODULE_QTDECLARATIVE_DEBUG
	bool
	prompt "QML debugging"

config QT6_MODULE_QTDECLARATIVE_QUICK
	bool
	default QT6_GUI

if QT6_MODULE_QTDECLARATIVE_QUICK

config QT6_MODULE_QTDECLARATIVE_QUICK_WIDGETS
	bool
	default QT6_WIDGETS

config QT6_MODULE_QTDECLARATIVE_QUICK_DEBUG
	bool
	default QT6_MODULE_QTDECLARATIVE_DEBUG

config QT6_MODULE_QTDECLARATIVE_QUICK_PARTICLES
	bool
	default QT6_OPENGL

endif
endif

config QT6_MODULE_QTIMAGEFORMATS
	bool
	prompt "QtImageFormats"

config QT6_MODULE_QTLOTTIE
	bool
	prompt "QtLottie"

config QT6_MODULE_QTMQTT
	bool
	select QT6_MODULE_QTDECLARATIVE
	prompt "QtMqtt"

config QT6_MODULE_QTMULTIMEDIA
	bool
	select QT6_GUI
	select QT6_MODULE_QTSHADERTOOLS
	prompt "QtMultimedia"

if QT6_MODULE_QTMULTIMEDIA

config QT6_MODULE_QTMULTIMEDIA_GST
	bool
	default y
	prompt "gstreamer backend"

config QT6_MODULE_QTMULTIMEDIA_QUICK
	bool
	default QT6_MODULE_QTDECLARATIVE_QUICK

config QT6_MODULE_QTMULTIMEDIA_WIDGETS
	bool
	default QT6_WIDGETS

endif

config QT6_MODULE_QTNETWORKAUTH
	bool
	prompt "QtNetworkAuth"

config QT6_MODULE_QTOPCUA
	bool
	prompt "QtOpcua"

config QT6_MODULE_QTPOSITIONING
	bool
	prompt "QtPositioning"

config QT6_MODULE_QTQUICK3D
	bool
	select QT6_MODULE_QTDECLARATIVE
	select QT6_MODULE_QTQUICKTIMELINE
	select QT6_MODULE_QTSHADERTOOLS
	prompt "QtQuick3D"

config QT6_MODULE_QTQUICKTIMELINE
	bool
	select QT6_MODULE_QTDECLARATIVE
	prompt "QtQuickTimeline"

config QT6_MODULE_QTREMOTEOBJECTS
	bool
	prompt "QtRemoteObjects"

config QT6_MODULE_QTREMOTEOBJECTS_QUICK
	bool
	depends on QT6_MODULE_QTREMOTEOBJECTS
	default QT6_MODULE_QTDECLARATIVE

config QT6_MODULE_QTSCXML
	bool
	prompt "QtScxml"

config QT6_MODULE_QTSCXML_QUICK
	bool
	depends on QT6_MODULE_QTSCXML
	default QT6_MODULE_QTDECLARATIVE

config QT6_MODULE_QTSENSORS
	bool
	prompt "QtSensors"

config QT6_MODULE_QTSENSORS_QUICK
	bool
	depends on QT6_MODULE_QTSENSORS
	default QT6_MODULE_QTDECLARATIVE

config QT6_MODULE_QTSERIALBUS
	bool
	select QT6_MODULE_QTSERIALPORT
	prompt "QtSerialBus"

config QT6_MODULE_QTSERIALPORT
	bool
	prompt "QtSerialPort"

config QT6_MODULE_QTSHADERTOOLS
	bool
	prompt "QtShaderTools"

config QT6_MODULE_QTSVG
	bool
	prompt "QtSvg"

config QT6_MODULE_QTSVG_WIDGETS
	bool
	depends on QT6_MODULE_QTSVG
	default QT6_WIDGETS

config QT6_MODULE_QTVIRTUALKEYBOARD
	bool
	select QT6_MODULE_QTSVG
	select QT6_MODULE_QTDECLARATIVE
	prompt "QtVirtualKeyboard"

config QT6_MODULE_QTWAYLAND
	bool
	select QT6_GUI
	prompt "QtWayland"

if QT6_MODULE_QTWAYLAND

config QT6_MODULE_QTWAYLAND_MESA
	bool
	default MESALIB && QT6_OPENGL

config QT6_MODULE_QTWAYLAND_QUICK
	bool
	default QT6_MODULE_QTDECLARATIVE

endif

config QT6_MODULE_QTWEBCHANNEL
	bool
	select QT6_GUI
	prompt "QtWebChannel"

config QT6_MODULE_QTWEBCHANNEL_QUICK
	bool
	depends on QT6_MODULE_QTWEBCHANNEL
	default QT6_MODULE_QTDECLARATIVE

config QT6_MODULE_QTWEBENGINE
	bool
	# undefined symbols if accessibility is not enabled
	select QT6_ACCESSIBILITY
	select QT6_GLIB
	select QT6_GUI
	select QT6_LIBJPEG
	select QT6_LIBPNG
	select QT6_OPENSSL
	select QT6_MODULE_QTDECLARATIVE
	select QT6_MODULE_QTWEBCHANNEL
	prompt "QtWebEngine"

if QT6_MODULE_QTWEBENGINE

config QT6_MODULE_QTWEBENGINE_WIDGETS
	bool
	default QT6_WIDGETS

config QT6_MODULE_QTWEBENGINE_MEDIA
	bool
	prompt "audio/video support"

endif

config QT6_MODULE_QTWEBSOCKETS
	bool
	prompt "QtWebSockets"

config QT6_MODULE_QTWEBSOCKETS_QUICK
	bool
	depends on QT6_MODULE_QTWEBSOCKETS
	default QT6_MODULE_QTDECLARATIVE

config QT6_MODULE_QTWEBVIEW
	bool
	select QT6_MODULE_QTDECLARATIVE
	select QT6_MODULE_QTWEBENGINE
	prompt "QtWebView"

endmenu

endif