xref: /OK3568_Linux_fs/buildroot/package/qt5/qt5base/Config.in (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1config BR2_PACKAGE_QT5BASE
2	bool "qt5base"
3	select BR2_PACKAGE_ZLIB
4	select BR2_PACKAGE_PCRE2
5	select BR2_PACKAGE_PCRE2_16
6	select BR2_PACKAGE_LIBOPENSSL_ENABLE_PSK if BR2_PACKAGE_LIBOPENSSL
7	help
8	  Qt is a cross-platform application and UI framework for
9	  developers using C++.
10
11	  This package corresponds to the qt5base module, which
12	  contains the base Qt libraries: QtCore, QtNetwork, QtGui,
13	  QtWidgets, etc.
14
15	  https://qt.io
16
17if BR2_PACKAGE_QT5BASE
18
19config BR2_PACKAGE_QT5BASE_CUSTOM_CONF_OPTS
20	string "Custom configuration options"
21	help
22	  Define custom qt5 configuration options which can be used to
23	  enable or disable options not managed by buildroot. These
24	  options are appended to the ones generated by buildroot and
25	  passed to qt5base during configuration.
26
27	  E.g. to remove the Windows Vista style option, add the option
28	  -no-feature-style_windowsvista.
29
30config BR2_PACKAGE_QT5BASE_CONFIG_FILE
31	string "Config file"
32	help
33	  Configure options allow to set which modules are being
34	  compiled or not in Qt, but Qt also provide a more
35	  fine-grained mechanism to configure which features should be
36	  enabled or disabled, through a header file. Examples of such
37	  header files can be found in src/corelib/global/qconfig-*.h
38	  in the Qt sources.
39
40	  This option allows to set the path of such a configuration
41	  file, which Buildroot will give to Qt at compile time.
42
43config BR2_PACKAGE_QT5BASE_EXAMPLES
44	bool "Compile and install examples (with code)"
45	select BR2_PACKAGE_QT5BASE_NETWORK
46	select BR2_PACKAGE_QT5BASE_XML
47	help
48	  If unsure, say N.
49
50config BR2_PACKAGE_QT5BASE_NETWORK
51	def_bool y
52
53config BR2_PACKAGE_QT5BASE_CONCURRENT
54	bool "concurrent module"
55	help
56	  This options enables the Qt5Concurrent library.
57
58config BR2_PACKAGE_QT5BASE_SQL
59	def_bool y
60
61if BR2_PACKAGE_QT5BASE_SQL
62config BR2_PACKAGE_QT5BASE_MYSQL
63	bool "MySQL Plugin"
64	depends on BR2_USE_MMU # mysql
65	select BR2_PACKAGE_MYSQL
66	select BR2_PACKAGE_NCURSES
67	select BR2_PACKAGE_READLINE
68	help
69	  Build MySQL plugin
70	  If unsure, say n.
71
72config BR2_PACKAGE_QT5BASE_PSQL
73	bool "PostgreSQL Plugin"
74	depends on BR2_USE_MMU # postgresql
75	depends on !BR2_STATIC_LIBS
76	depends on BR2_USE_WCHAR # postgresql
77	depends on !BR2_OPTIMIZE_FAST # postgresql
78	select BR2_PACKAGE_POSTGRESQL
79	help
80	  Build PostgreSQL plugin
81	  If unsure, say n.
82
83comment "PostgreSQL plugin needs a toolchain w/ wchar, dynamic library"
84	depends on BR2_USE_MMU
85	depends on BR2_STATIC_LIBS || !BR2_USE_WCHAR
86
87comment "PostgreSQL plugin can't be built with Optimize for fast"
88	depends on BR2_OPTIMIZE_FAST
89
90choice
91	prompt "SQLite 3 support"
92	default BR2_PACKAGE_QT5BASE_SQLITE_NONE
93	help
94	  Select SQLite support.
95
96config BR2_PACKAGE_QT5BASE_SQLITE_NONE
97	bool "No sqlite support"
98	help
99	  Do not compile any kind of SQLite support.
100
101config BR2_PACKAGE_QT5BASE_SQLITE_QT
102	bool "Qt SQLite"
103	help
104	  Use Qt bundled SQLite support.
105
106config BR2_PACKAGE_QT5BASE_SQLITE_SYSTEM
107	bool "System SQLite"
108	select BR2_PACKAGE_SQLITE
109	select BR2_PACKAGE_SQLITE_ENABLE_COLUMN_METADATA
110	help
111	  Use system SQLite.
112
113endchoice
114
115endif
116
117config BR2_PACKAGE_QT5BASE_TEST
118	def_bool y
119
120config BR2_PACKAGE_QT5BASE_XML
121	def_bool y
122
123config BR2_PACKAGE_QT5BASE_GUI
124	bool "gui module"
125	select BR2_PACKAGE_FREETYPE
126	# At least one graphic backend must be enabled, so enable
127	# linuxfb if nothing is enabled.
128	select BR2_PACKAGE_QT5BASE_LINUXFB if \
129	       !BR2_PACKAGE_QT5BASE_DIRECTFB && \
130	       !BR2_PACKAGE_QT5BASE_XCB && \
131	       !BR2_PACKAGE_QT5BASE_EGLFS
132	help
133	  This option enables the Qt5Gui library.
134
135if BR2_PACKAGE_QT5BASE_GUI
136
137config BR2_PACKAGE_QT5BASE_WIDGETS
138	bool "widgets module"
139	select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_QT5BASE_XCB
140	help
141	  This option enables the Qt5Widgets library.
142
143comment "OpenGL support needs an OpenGL-capable backend"
144	depends on !BR2_PACKAGE_QT5_GL_AVAILABLE
145
146config BR2_PACKAGE_QT5BASE_OPENGL
147	bool "OpenGL support"
148	default y
149	depends on BR2_PACKAGE_QT5_GL_AVAILABLE
150	help
151	  This option enables OpenGL support.
152
153if BR2_PACKAGE_QT5BASE_OPENGL
154
155choice
156	prompt "OpenGL API"
157	default BR2_PACKAGE_QT5BASE_OPENGL_ES2
158	help
159	  Select OpenGL API.
160
161config BR2_PACKAGE_QT5BASE_OPENGL_DESKTOP
162	bool "Desktop OpenGL"
163	depends on BR2_PACKAGE_HAS_LIBGL
164	help
165	  Use desktop OpenGL.
166
167config BR2_PACKAGE_QT5BASE_OPENGL_ES2
168	bool "OpenGL ES 2.0+"
169	depends on BR2_PACKAGE_HAS_LIBGLES
170	help
171	  Use OpenGL ES 2.0 and later versions.
172
173endchoice
174
175config BR2_PACKAGE_QT5BASE_OPENGL_LIB
176	bool "opengl module"
177	select BR2_PACKAGE_QT5BASE_WIDGETS
178	help
179	  This option enables the Qt5OpenGL library. This library
180	  includes OpenGL support classes provided to ease porting
181	  from Qt 4.x.
182
183endif
184
185config BR2_PACKAGE_QT5BASE_LINUXFB
186	bool "linuxfb support"
187
188config BR2_PACKAGE_QT5BASE_DIRECTFB
189	bool "directfb support"
190	depends on BR2_PACKAGE_DIRECTFB
191
192comment "directfb backend available if directfb is enabled"
193	depends on !BR2_PACKAGE_DIRECTFB
194
195config BR2_PACKAGE_QT5BASE_XCB
196	bool "X.org XCB support"
197	default y
198	depends on BR2_PACKAGE_XORG7
199	select BR2_PACKAGE_XLIB_LIBX11
200	select BR2_PACKAGE_LIBXCB
201	select BR2_PACKAGE_XCB_UTIL_IMAGE
202	select BR2_PACKAGE_XCB_UTIL_KEYSYMS
203	select BR2_PACKAGE_XCB_UTIL_RENDERUTIL
204	select BR2_PACKAGE_XCB_UTIL_WM
205	select BR2_PACKAGE_LIBXKBCOMMON
206
207comment "X.org XCB backend available if X.org is enabled"
208	depends on !BR2_PACKAGE_XORG7
209
210config BR2_PACKAGE_QT5BASE_EGLFS
211	bool "eglfs support"
212	depends on BR2_PACKAGE_HAS_LIBEGL
213	depends on BR2_PACKAGE_HAS_LIBGBM
214	depends on BR2_PACKAGE_QT5_GL_AVAILABLE
215	default y if !BR2_PACKAGE_WAYLAND && !BR2_PACKAGE_QT5BASE_XCB
216	select BR2_PACKAGE_QT5BASE_OPENGL
217
218comment "eglfs backend available if OpenGL and EGL are enabled"
219	depends on !BR2_PACKAGE_HAS_LIBEGL || !BR2_PACKAGE_QT5_GL_AVAILABLE
220
221config BR2_PACKAGE_QT5BASE_DEFAULT_QPA
222	string "Default graphical platform"
223	default "wayland" if BR2_PACKAGE_QT5WAYLAND
224	default "xcb" if BR2_PACKAGE_QT5BASE_XCB
225	default "eglfs" if BR2_PACKAGE_QT5BASE_EGLFS
226	help
227	  Choose the default platform abstraction to use for graphical
228	  applications (e.g xcb, linuxfb, eglfs, ...). If this is
229	  empty, the default for your architecture will be used
230	  (usually this is eglfs).
231
232	  You can get a list of supported platforms by running a Qt
233	  application with the option "-platform help" on your
234	  target. You can choose a different platform at runtime with
235	  the -platform option.
236
237config BR2_PACKAGE_QT5BASE_PRINTSUPPORT
238	depends on BR2_PACKAGE_QT5BASE_WIDGETS
239	def_bool y
240
241config BR2_PACKAGE_QT5BASE_FONTCONFIG
242	bool "fontconfig support"
243	select BR2_PACKAGE_FONTCONFIG
244	help
245	  This option enables Fontconfig and Freetype support using
246	  the system fontconfig and freetype2 libraries.
247
248config BR2_PACKAGE_QT5BASE_HARFBUZZ
249	bool "harfbuzz support"
250	select BR2_PACKAGE_HARFBUZZ if \
251		BR2_TOOLCHAIN_HAS_SYNC_4 && \
252		BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
253	help
254	  This option enables HarfBuzz support (either system harfbuzz
255	  if the toolchain supports __sync for 4 bytes, or the qt
256	  provided one which avoids this dependency by using QAtomic).
257
258config BR2_PACKAGE_QT5BASE_GIF
259	bool "GIF support"
260	help
261	  This compiles and installs the plugin for GIF reading support.
262
263config BR2_PACKAGE_QT5BASE_JPEG
264	bool "JPEG support"
265	select BR2_PACKAGE_JPEG
266	help
267	  This option enables JPEG support using the system libjpeg
268	  library.
269
270config BR2_PACKAGE_QT5BASE_PNG
271	bool "PNG support"
272	select BR2_PACKAGE_LIBPNG
273	help
274	  This option enables PNG support using the system libpng
275	  library.
276
277endif
278
279config BR2_PACKAGE_QT5BASE_SYSLOG
280	bool "syslog support"
281	help
282	  Logs to the standard UNIX logging mechanism.
283
284config BR2_PACKAGE_QT5BASE_DBUS
285	bool "DBus module"
286	depends on BR2_TOOLCHAIN_HAS_THREADS
287	depends on BR2_USE_MMU
288	select BR2_PACKAGE_DBUS
289	help
290	  This option enables the D-Bus module.
291
292config BR2_PACKAGE_QT5BASE_ICU
293	bool "Enable ICU support"
294	depends on !BR2_BINFMT_FLAT # icu
295	depends on BR2_HOST_GCC_AT_LEAST_4_9 # icu
296	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # icu
297	select BR2_PACKAGE_ICU
298	help
299	  This option enables ICU support in Qt5. This is for example
300	  needed for Qt5Webkit.
301
302comment "icu support needs a toolchain w/ gcc >= 4.9, host gcc >= 4.9"
303	depends on !BR2_BINFMT_FLAT
304	depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \
305		!BR2_HOST_GCC_AT_LEAST_4_9
306
307config BR2_PACKAGE_QT5BASE_TSLIB
308	bool "Enable Tslib support"
309	select BR2_PACKAGE_TSLIB
310	help
311	  This options enables the Tslib plugin
312
313config BR2_PACKAGE_QT5BASE_USE_RGA
314	bool "Enable RGA"
315	depends on BR2_PACKAGE_ROCKCHIP_RGA
316	help
317	  This options enables the RGA rendering
318
319endif
320
321if BR2_PACKAGE_QT5BASE_LINUXFB
322
323if BR2_PACKAGE_LIBDRM
324
325choice
326	prompt "Pixel format of linuxfb drm screen"
327	default BR2_PACKAGE_QT5BASE_LINUXFB_RGB565
328	help
329	  Select pixel format of linuxfb drm screen
330
331config BR2_PACKAGE_QT5BASE_LINUXFB_RGB565
332	bool "rgb565"
333
334config BR2_PACKAGE_QT5BASE_LINUXFB_RGB32
335	bool "xrgb8888"
336
337config BR2_PACKAGE_QT5BASE_LINUXFB_ARGB32
338	bool "argb8888"
339
340endchoice
341
342endif
343
344config BR2_PACKAGE_QT5BASE_LINUXFB_DIRECT_PAINTING
345	bool "Enable linuxfb direct painting hacks"
346	help
347	  This options enables the linuxfb direct painting hacks
348
349endif
350