c84f8742be
Even though Qt6 support using a bundled sqlite, in Buildroot, we always prefer to use non-bundled libraries when possible. Signed-off-by: Jesse Van Gavere <jesseevg@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
220 lines
5.7 KiB
Makefile
220 lines
5.7 KiB
Makefile
################################################################################
|
|
#
|
|
# qt6base
|
|
#
|
|
################################################################################
|
|
|
|
QT6BASE_VERSION = $(QT6_VERSION)
|
|
QT6BASE_SITE = $(QT6_SITE)
|
|
QT6BASE_SOURCE = qtbase-$(QT6_SOURCE_TARBALL_PREFIX)-$(QT6BASE_VERSION).tar.xz
|
|
QT6BASE_LICENSE = GPL-2.0+ or LGPL-3.0, GPL-3.0 with exception (tools), GFDL-1.3 (docs)
|
|
QT6BASE_LICENSE_FILES = LICENSE.GPL2 LICENSE.GPL3 LICENSE.GPL3-EXCEPT LICENSE.LGPL3 LICENSE.FDL
|
|
QT6BASE_DEPENDENCIES = \
|
|
host-ninja \
|
|
host-qt6base \
|
|
double-conversion \
|
|
libb2 \
|
|
pcre2 \
|
|
zlib
|
|
QT6BASE_INSTALL_STAGING = YES
|
|
|
|
QT6BASE_CONF_OPTS = \
|
|
-GNinja \
|
|
-DQT_HOST_PATH=$(HOST_DIR) \
|
|
-DFEATURE_gui=OFF \
|
|
-DFEATURE_concurrent=OFF \
|
|
-DFEATURE_xml=OFF \
|
|
-DFEATURE_sql=OFF \
|
|
-DFEATURE_testlib=OFF \
|
|
-DFEATURE_network=OFF \
|
|
-DFEATURE_dbus=OFF \
|
|
-DFEATURE_icu=OFF \
|
|
-DFEATURE_glib=OFF \
|
|
-DFEATURE_system_doubleconversion=ON \
|
|
-DFEATURE_system_pcre2=ON \
|
|
-DFEATURE_system_zlib=ON \
|
|
-DFEATURE_system_libb2=ON
|
|
|
|
# x86 optimization options. While we have a BR2_X86_CPU_HAS_AVX512, it
|
|
# is not clear yet how it maps to all the avx512* options of Qt, so we
|
|
# for now keeps them disabled.
|
|
QT6BASE_CONF_OPTS += \
|
|
-DFEATURE_sse2=$(if $(BR2_X86_CPU_HAS_SSE2),ON,OFF) \
|
|
-DFEATURE_sse3=$(if $(BR2_X86_CPU_HAS_SSE3),ON,OFF) \
|
|
-DFEATURE_sse4_1=$(if $(BR2_X86_CPU_HAS_SSE4),ON,OFF) \
|
|
-DFEATURE_sse4_2=$(if $(BR2_X86_CPU_HAS_SSE42),ON,OFF) \
|
|
-DFEATURE_ssse3=$(if $(BR2_X86_CPU_HAS_SSSE3),ON,OFF) \
|
|
-DFEATURE_avx=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \
|
|
-DFEATURE_avx2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \
|
|
-DFEATURE_avx512bw=OFF \
|
|
-DFEATURE_avx512cd=OFF \
|
|
-DFEATURE_avx512dq=OFF \
|
|
-DFEATURE_avx512er=OFF \
|
|
-DFEATURE_avx512f=OFF \
|
|
-DFEATURE_avx512ifma=OFF \
|
|
-DFEATURE_avx512pf=OFF \
|
|
-DFEATURE_avx512vbmi=OFF \
|
|
-DFEATURE_avx512vl=OFF
|
|
|
|
define QT6BASE_BUILD_CMDS
|
|
$(TARGET_MAKE_ENV) $(BR2_CMAKE) --build $(QT6BASE_BUILDDIR)
|
|
endef
|
|
|
|
define QT6BASE_INSTALL_STAGING_CMDS
|
|
$(TARGET_MAKE_ENV) $(BR2_CMAKE) --install $(QT6BASE_BUILDDIR) --prefix $(STAGING_DIR)/usr
|
|
endef
|
|
|
|
define QT6BASE_INSTALL_TARGET_CMDS
|
|
$(TARGET_MAKE_ENV) $(BR2_CMAKE) --install $(QT6BASE_BUILDDIR) --prefix $(TARGET_DIR)/usr
|
|
endef
|
|
|
|
HOST_QT6BASE_DEPENDENCIES = \
|
|
host-ninja \
|
|
host-double-conversion \
|
|
host-libb2 \
|
|
host-pcre2 \
|
|
host-zlib
|
|
HOST_QT6BASE_CONF_OPTS = \
|
|
-GNinja \
|
|
-DFEATURE_gui=OFF \
|
|
-DFEATURE_concurrent=OFF \
|
|
-DFEATURE_xml=ON \
|
|
-DFEATURE_sql=OFF \
|
|
-DFEATURE_testlib=OFF \
|
|
-DFEATURE_network=OFF \
|
|
-DFEATURE_dbus=OFF \
|
|
-DFEATURE_icu=OFF \
|
|
-DFEATURE_glib=OFF \
|
|
-DFEATURE_system_doubleconversion=ON \
|
|
-DFEATURE_system_libb2=ON \
|
|
-DFEATURE_system_pcre2=ON \
|
|
-DFEATURE_system_zlib=ON
|
|
|
|
define HOST_QT6BASE_BUILD_CMDS
|
|
$(HOST_MAKE_ENV) $(BR2_CMAKE) --build $(HOST_QT6BASE_BUILDDIR)
|
|
endef
|
|
|
|
define HOST_QT6BASE_INSTALL_CMDS
|
|
$(HOST_MAKE_ENV) $(BR2_CMAKE) --install $(HOST_QT6BASE_BUILDDIR)
|
|
endef
|
|
|
|
# Conditional blocks below are ordered by alphabetic ordering of the
|
|
# BR2_PACKAGE_* option.
|
|
|
|
ifeq ($(BR2_PACKAGE_HAS_UDEV),y)
|
|
QT6BASE_CONF_OPTS += -DFEATURE_libudev=ON
|
|
QT6BASE_DEPENDENCIES += udev
|
|
else
|
|
QT6BASE_CONF_OPTS += -DFEATURE_libudev=OFF
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_ICU),y)
|
|
QT6BASE_CONF_OPTS += -DFEATURE_icu=ON
|
|
QT6BASE_DEPENDENCIES += icu
|
|
else
|
|
QT6BASE_CONF_OPTS += -DFEATURE_icu=OFF
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_LIBGLIB2),y)
|
|
QT6BASE_CONF_OPTS += -DFEATURE_glib=ON
|
|
QT6BASE_DEPENDENCIES += libglib2
|
|
else
|
|
QT6BASE_CONF_OPTS += -DFEATURE_glib=OFF
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_OPENSSL),y)
|
|
QT6BASE_CONF_OPTS += -DINPUT_openssl=yes
|
|
QT6BASE_DEPENDENCIES += openssl
|
|
else
|
|
QT6BASE_CONF_OPTS += -DINPUT_openssl=no
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_QT6BASE_CONCURRENT),y)
|
|
QT6BASE_CONF_OPTS += -DFEATURE_concurrent=ON
|
|
else
|
|
QT6BASE_CONF_OPTS += -DFEATURE_concurrent=OFF
|
|
endif
|
|
|
|
# We need host-qt6base with D-Bus support, otherwise: "the tool
|
|
# "Qt6::qdbuscpp2xml" was not found in the Qt6DBusTools package."
|
|
ifeq ($(BR2_PACKAGE_QT6BASE_DBUS),y)
|
|
QT6BASE_CONF_OPTS += -DFEATURE_dbus=ON -DINPUT_dbus=linked
|
|
QT6BASE_DEPENDENCIES += dbus
|
|
HOST_QT6BASE_CONF_OPTS += -DFEATURE_dbus=ON
|
|
HOST_QT6BASE_DEPENDENCIES += host-dbus
|
|
else
|
|
QT6BASE_CONF_OPTS += -DFEATURE_dbus=OFF
|
|
HOST_QT6BASE_CONF_OPTS += -DFEATURE_dbus=OFF
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_QT6BASE_NETWORK),y)
|
|
QT6BASE_CONF_OPTS += -DFEATURE_network=ON
|
|
else
|
|
QT6BASE_CONF_OPTS += -DFEATURE_network=OFF
|
|
endif
|
|
|
|
# Qt6 SQL Plugins
|
|
ifeq ($(BR2_PACKAGE_QT6BASE_SQL),y)
|
|
QT6BASE_CONF_OPTS += -DFEATURE_sql=ON
|
|
QT6BASE_CONF_OPTS += -DFEATURE_sql_db2=OFF -DFEATURE_sql_ibase=OFF -DFEATURE_sql_oci=OFF -DFEATURE_sql_odbc=OFF
|
|
|
|
ifeq ($(BR2_PACKAGE_QT6BASE_MYSQL),y)
|
|
QT6BASE_CONF_OPTS += -DFEATURE_sql_mysql=ON
|
|
QT6BASE_DEPENDENCIES += mysql
|
|
else
|
|
QT6BASE_CONF_OPTS += -DFEATURE_sql_mysql=OFF
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_QT6BASE_PSQL),y)
|
|
QT6BASE_CONF_OPTS += -DFEATURE_sql_psql=ON
|
|
QT6BASE_DEPENDENCIES += postgresql
|
|
else
|
|
QT6BASE_CONF_OPTS += -DFEATURE_sql_psql=OFF
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_QT6BASE_SQLITE),y)
|
|
QT6BASE_CONF_OPTS += -DFEATURE_sql_sqlite=ON -DFEATURE_system_sqlite=ON
|
|
QT6BASE_DEPENDENCIES += sqlite
|
|
else
|
|
QT6BASE_CONF_OPTS += -DFEATURE_sql_sqlite=OFF
|
|
endif
|
|
|
|
else
|
|
QT6BASE_CONF_OPTS += -DFEATURE_sql=OFF
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_QT6BASE_SYSLOG),y)
|
|
QT6BASE_CONF_OPTS += -DFEATURE_syslog=ON
|
|
else
|
|
QT6BASE_CONF_OPTS += -DFEATURE_syslog=OFF
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_SYSTEMD),y)
|
|
QT6BASE_CONF_OPTS += -DFEATURE_journald=ON
|
|
QT6BASE_DEPENDENCIES += systemd
|
|
else
|
|
QT6BASE_CONF_OPTS += -DFEATURE_journald=OFF
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_QT6BASE_TEST),y)
|
|
QT6BASE_CONF_OPTS += -DFEATURE_testlib=ON
|
|
else
|
|
QT6BASE_CONF_OPTS += -DFEATURE_testlib=OFF
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_QT6BASE_XML),y)
|
|
QT6BASE_CONF_OPTS += -DFEATURE_xml=ON
|
|
else
|
|
QT6BASE_CONF_OPTS += -DFEATURE_xml=OFF
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_ZSTD),y)
|
|
QT6BASE_CONF_OPTS += -DFEATURE_zstd=ON
|
|
QT6BASE_DEPENDENCIES += zstd
|
|
else
|
|
QT6BASE_CONF_OPTS += -DFEATURE_zstd=OFF
|
|
endif
|
|
|
|
$(eval $(cmake-package))
|
|
$(eval $(host-cmake-package))
|