kumquat-buildroot/package/qt5/qt5base/Config.in
Thomas Petazzoni 9f99ec21e5 icu: remove BR2_ARCH_HAS_ATOMICS dependency
The BR2_ARCH_HAS_ATOMICS was added because on ARC, atomic instructions
may not be provided by the architecture and therefore the compiler
does not provide the __sync_*() built-ins.

However, since then, icu was changed and is now able to use C++11
atomics, or even no atomic operations at all. In fact, icu will:

 * If possible, it will use C++11 atomics, which internally rely on
   the __atomic built-ins. These are available since gcc 4.7, and all
   architectures provide it. On some architectures, you *must* link
   with libatomic, on some other architectures, they are available
   built-in, but in all cases, linking against libatomic does not
   harm. Thanks to this, even ARC with no atomic support (which was
   the original reason for adding the BR2_ARCH_HAS_ATOMICS) dependency
   builds fine, provided -latomic is added to LIBS.

 * If C++11 atomics are not available, then it falls back to
   __sync_*() built-ins, which allows compilers older than 4.7 to be
   supported.

 * If really no atomic mechanism is available, then it falls back to a
   basic implementation based on a mutex.

Conclusion:

 - The BR2_ARCH_HAS_ATOMICS dependency is no longer needed.

 - We need to link with -latomic when gcc >= 4.7 is used.

Note that reverse dependencies of icu are also changed accordingly.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-01-26 21:26:08 +01:00

278 lines
6.9 KiB
Plaintext

config BR2_PACKAGE_QT5BASE
bool "qt5base"
select BR2_PACKAGE_ZLIB
select BR2_PACKAGE_PCRE
select BR2_PACKAGE_PCRE_16
select BR2_PACKAGE_PCRE_UTF
help
Qt is a cross-platform application and UI framework for
developers using C++.
This package corresponds to the qt5base module, which
contains the base Qt libraries: QtCore, QtNetwork, QtGui,
QtWidgets, etc.
http://qt.io
if BR2_PACKAGE_QT5BASE
config BR2_PACKAGE_QT5BASE_LICENSE_APPROVED
bool "Approve free license"
help
Select this if you approve one of the available free licenses for the
Qt5 library.
By doing this you will not be asked while the library is compiled.
Please read and understand the license terms before approving this.
LGPL: http://doc.qt.io/qt-5/lgpl.html
See also http://doc.qt.io/qt-5/licensing.html
config BR2_PACKAGE_QT5BASE_CONFIG_FILE
string "Config file"
help
Configure options allow to set which modules are being
compiled or not in Qt, but Qt also provide a more
fine-grained mechanism to configure which features should be
enabled or disabled, through a header file. Examples of such
header files can be found in src/corelib/global/qconfig-*.h
in the Qt sources.
This option allows to set the path of such a configuration
file, which Buildroot will give to Qt at compile time.
config BR2_PACKAGE_QT5BASE_EXAMPLES
bool "Compile and install examples (with code)"
select BR2_PACKAGE_QT5BASE_NETWORK
select BR2_PACKAGE_QT5BASE_XML
help
If unsure, say N.
config BR2_PACKAGE_QT5BASE_NETWORK
def_bool y
config BR2_PACKAGE_QT5BASE_CONCURRENT
bool "concurrent module"
help
This options enables the Qt5Concurrent library.
config BR2_PACKAGE_QT5BASE_SQL
def_bool y
if BR2_PACKAGE_QT5BASE_SQL
config BR2_PACKAGE_QT5BASE_MYSQL
bool "MySQL Plugin"
select BR2_PACKAGE_MYSQL
select BR2_PACKAGE_NCURSES
select BR2_PACKAGE_READLINE
depends on BR2_USE_MMU # mysql
help
Build MySQL plugin
If unsure, say n.
config BR2_PACKAGE_QT5BASE_PSQL
bool "PostgreSQL Plugin"
select BR2_PACKAGE_POSTGRESQL
depends on BR2_USE_MMU # postgresql
depends on !BR2_STATIC_LIBS
help
Build PostgreSQL plugin
If unsure, say n.
comment "PostgreSQL plugin needs a toolchain w/ dynamic library"
depends on BR2_USE_MMU
depends on BR2_STATIC_LIBS
choice
prompt "SQLite 3 support"
default BR2_PACKAGE_QT5BASE_SQLITE_NONE
help
Select SQLite support.
config BR2_PACKAGE_QT5BASE_SQLITE_NONE
bool "No sqlite support"
help
Do not compile any kind of SQLite support.
config BR2_PACKAGE_QT5BASE_SQLITE_QT
bool "Qt SQLite"
help
Use Qt bundled SQLite support.
config BR2_PACKAGE_QT5BASE_SQLITE_SYSTEM
bool "System SQLite"
select BR2_PACKAGE_SQLITE
help
Use system SQLite.
endchoice
endif
config BR2_PACKAGE_QT5BASE_TEST
def_bool y
config BR2_PACKAGE_QT5BASE_XML
def_bool y
config BR2_PACKAGE_QT5BASE_GUI
bool "gui module"
# At least one graphic backend must be enabled, so enable
# linuxfb if nothing is enabled.
select BR2_PACKAGE_QT5BASE_LINUXFB if \
!BR2_PACKAGE_QT5BASE_DIRECTFB && \
!BR2_PACKAGE_QT5BASE_XCB && \
!BR2_PACKAGE_QT5BASE_EGLFS
help
This option enables the Qt5Gui library.
if BR2_PACKAGE_QT5BASE_GUI
config BR2_PACKAGE_QT5BASE_WIDGETS
bool "widgets module"
select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_QT5BASE_XCB
help
This option enables the Qt5Widgets library.
comment "OpenGL support needs an OpenGL-capable backend"
depends on !BR2_PACKAGE_QT5_GL_AVAILABLE
config BR2_PACKAGE_QT5BASE_OPENGL
bool "OpenGL support"
depends on BR2_PACKAGE_QT5_GL_AVAILABLE
help
This option enables OpenGL support.
if BR2_PACKAGE_QT5BASE_OPENGL
choice
prompt "OpenGL API"
help
Select OpenGL API.
config BR2_PACKAGE_QT5BASE_OPENGL_DESKTOP
bool "Desktop OpenGL"
depends on BR2_PACKAGE_HAS_LIBGL
help
Use desktop OpenGL.
config BR2_PACKAGE_QT5BASE_OPENGL_ES2
bool "OpenGL ES 2.0+"
depends on BR2_PACKAGE_HAS_LIBGLES
help
Use OpenGL ES 2.0 and later versions.
endchoice
config BR2_PACKAGE_QT5BASE_OPENGL_LIB
bool "opengl module"
select BR2_PACKAGE_QT5BASE_WIDGETS
help
This option enables the Qt5OpenGL library. This library includes
OpenGL support classes provided to ease porting from Qt 4.x.
endif
config BR2_PACKAGE_QT5BASE_LINUXFB
bool "linuxfb support"
config BR2_PACKAGE_QT5BASE_DIRECTFB
bool "directfb support"
depends on BR2_PACKAGE_DIRECTFB
comment "directfb backend if directb is enabled"
depends on !BR2_PACKAGE_DIRECTFB
config BR2_PACKAGE_QT5BASE_XCB
bool "X.org XCB support"
depends on BR2_PACKAGE_XORG7
select BR2_PACKAGE_XLIB_LIBX11
select BR2_PACKAGE_LIBXCB
select BR2_PACKAGE_XCB_UTIL_IMAGE
select BR2_PACKAGE_XCB_UTIL_KEYSYMS
select BR2_PACKAGE_XCB_UTIL_WM
select BR2_PACKAGE_LIBXKBCOMMON
comment "X.org XCB backend available if X.org is enabled"
depends on !BR2_PACKAGE_XORG7
config BR2_PACKAGE_QT5BASE_EGLFS
bool "eglfs support"
select BR2_PACKAGE_QT5BASE_OPENGL
depends on BR2_PACKAGE_HAS_LIBEGL
depends on BR2_PACKAGE_QT5_GL_AVAILABLE
comment "eglfs backend available if OpenGL and EGL are enabled"
depends on !BR2_PACKAGE_HAS_LIBEGL || !BR2_PACKAGE_QT5_GL_AVAILABLE
config BR2_PACKAGE_QT5BASE_DEFAULT_QPA
string "Default graphical platform"
help
Choose the default platform abstraction to use for graphical
applications (e.g xcb, linuxfb, eglfs, ...). If this is empty, the
default for your architecture will be used (usually this is eglfs).
You can get a list of supported platforms by running a Qt application
with the option "-platform help" on your target. You can choose a
different platform at runtime with the -platform option.
config BR2_PACKAGE_QT5BASE_PRINTSUPPORT
depends on BR2_PACKAGE_QT5BASE_WIDGETS
def_bool y
config BR2_PACKAGE_QT5BASE_FONTCONFIG
bool "fontconfig support"
select BR2_PACKAGE_FONTCONFIG
help
This option enables Fontconfig and Freetype support using
the system fontconfig and freetype2 libraries.
config BR2_PACKAGE_QT5BASE_GIF
bool "GIF support"
help
This compiles and installs the plugin for GIF reading support.
config BR2_PACKAGE_QT5BASE_JPEG
bool "JPEG support"
select BR2_PACKAGE_JPEG
help
This option enables JPEG support using the system libjpeg
library.
config BR2_PACKAGE_QT5BASE_PNG
bool "PNG support"
select BR2_PACKAGE_LIBPNG
help
This option enables PNG support using the system libpng
library.
endif
config BR2_PACKAGE_QT5BASE_DBUS
bool "DBus module"
select BR2_PACKAGE_DBUS
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_USE_MMU
help
This option enables the D-Bus module.
config BR2_PACKAGE_QT5BASE_ICU
bool "Enable ICU support"
select BR2_PACKAGE_ICU
depends on !BR2_BINFMT_FLAT # icu
help
This option enables ICU support in Qt5. This is for example
needed for Qt5Webkit.
config BR2_PACKAGE_QT5BASE_TSLIB
bool "Enable Tslib support"
depends on !BR2_STATIC_LIBS # dlopen
select BR2_PACKAGE_TSLIB
help
This options enables the Tslib plugin
comment "tslib support needs a toolchain w/ dynamic library"
depends on BR2_STATIC_LIBS
endif