Ver Fonte

qt5base: add option for custom qconfig file

Add in support for a custom qconfig file in the same way it is
already present for the Qt4 package

Signed-off-by: Will Wagner <will_wagner@carallon.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Will Wagner há 10 anos atrás
pai
commit
b5fcf95827
2 ficheiros alterados com 26 adições e 0 exclusões
  1. 13 0
      package/qt5/qt5base/Config.in
  2. 13 0
      package/qt5/qt5base/qt5base.mk

+ 13 - 0
package/qt5/qt5base/Config.in

@@ -28,6 +28,19 @@ config BR2_PACKAGE_QT5BASE_LICENSE_APPROVED
 
 	  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

+ 13 - 0
package/qt5/qt5base/qt5base.mk

@@ -53,6 +53,12 @@ QT5BASE_LICENSE = Commercial license
 QT5BASE_REDISTRIBUTE = NO
 endif
 
+QT5BASE_CONFIG_FILE = $(call qstrip,$(BR2_PACKAGE_QT5BASE_CONFIG_FILE))
+
+ifneq ($(QT5BASE_CONFIG_FILE),)
+QT5BASE_CONFIGURE_OPTS += -qconfig buildroot
+endif
+
 # Qt5 SQL Plugins
 ifeq ($(BR2_PACKAGE_QT5BASE_SQL),y)
 ifeq ($(BR2_PACKAGE_QT5BASE_MYSQL),y)
@@ -168,7 +174,14 @@ QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_PRINTSUPPORT) += Qt5PrintSupport
 
 QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_DBUS) += Qt5DBus
 
+ifneq ($(QT5BASE_CONFIG_FILE),)
+define QT5BASE_CONFIGURE_CONFIG_FILE
+	cp $(QT5BASE_CONFIG_FILE) $(@D)/src/corelib/global/qconfig-buildroot.h
+endef
+endif
+
 define QT5BASE_CONFIGURE_CMDS
+	$(QT5BASE_CONFIGURE_CONFIG_FILE)
 	(cd $(@D); \
 		PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \
 		PKG_CONFIG_LIBDIR="$(STAGING_DIR)/usr/lib/pkgconfig" \