Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] qt-webkit-kiosk: new package
@ 2015-02-21  5:45 Jerome Oufella
  2015-02-21 13:18 ` Thomas Petazzoni
  2015-02-22  4:22 ` [Buildroot] [PATCH v2] " Jerome Oufella
  0 siblings, 2 replies; 8+ messages in thread
From: Jerome Oufella @ 2015-02-21  5:45 UTC (permalink / raw)
  To: buildroot

Qt-webkit-kiosk is a simple browser working in kiosk-mode, powered by
Qt & Webkit. It provides a convenient way to deploy a full-screen
browser on embedded system platforms.

This commit adds the appropriate packaging to Buildroot, including
options to parametrize the deployment of the optional sound files and
the customization of the browser configuration file.

Signed-off-by: Jerome Oufella <jerome.oufella@savoirfairelinux.com>
---
 package/Config.in                          |  1 +
 package/qt-webkit-kiosk/Config.in          | 37 ++++++++++++++++++++++
 package/qt-webkit-kiosk/qt-webkit-kiosk.mk | 51 ++++++++++++++++++++++++++++++
 3 files changed, 89 insertions(+)
 create mode 100644 package/qt-webkit-kiosk/Config.in
 create mode 100644 package/qt-webkit-kiosk/qt-webkit-kiosk.mk

diff --git a/package/Config.in b/package/Config.in
index fe3d3d0..90be326 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -250,6 +250,7 @@ comment "X applications"
 	source "package/leafpad/Config.in"
 	source "package/midori/Config.in"
 	source "package/pcmanfm/Config.in"
+	source "package/qt-webkit-kiosk/Config.in"
 	source "package/rdesktop/Config.in"
 	source "package/synergy/Config.in"
 	source "package/torsmo/Config.in"
diff --git a/package/qt-webkit-kiosk/Config.in b/package/qt-webkit-kiosk/Config.in
new file mode 100644
index 0000000..4371ac8
--- /dev/null
+++ b/package/qt-webkit-kiosk/Config.in
@@ -0,0 +1,37 @@
+config BR2_PACKAGE_QT_WEBKIT_KIOSK
+	depends on BR2_PACKAGE_QT5WEBKIT
+	depends on BR2_PACKAGE_QT5MULTIMEDIA
+	bool "qt-webkit-kiosk"
+	help
+	  Simple browser working in kiosk-mode, powered by Qt & Webkit
+
+if BR2_PACKAGE_QT_WEBKIT_KIOSK
+
+config BR2_PACKAGE_QT_WEBKIT_KIOSK_SOUNDS
+        bool "Install browser sound files"
+        help
+          Deploy browser sound files on target
+
+choice
+	prompt "Browser configuration file"
+	help
+	  Select what configuration file to use
+
+config BR2_PACKAGE_QT_WEBKIT_KIOSK_CFG_DEFAULT
+	bool "Default configuration file"
+
+config BR2_PACKAGE_QT_WEBKIT_KIOSK_CFG_CUSTOM
+	bool "Custom configuration file"
+
+endchoice
+
+config BR2_PACKAGE_QT_WEBKIT_KIOSK_CFG_CUSTOM_VALUE
+	depends on BR2_PACKAGE_QT_WEBKIT_KIOSK_CFG_CUSTOM
+        string "Custom configuration file"
+        help
+          Enter the path to the custom configuration file. The file
+	  will be deployed as qt-webkit-kiosk.ini in the browser'
+	  resource directory.
+
+endif
+
diff --git a/package/qt-webkit-kiosk/qt-webkit-kiosk.mk b/package/qt-webkit-kiosk/qt-webkit-kiosk.mk
new file mode 100644
index 0000000..a6325a5
--- /dev/null
+++ b/package/qt-webkit-kiosk/qt-webkit-kiosk.mk
@@ -0,0 +1,51 @@
+QT_WEBKIT_KIOSK_VERSION = 7fe40a350abfbe5ec194e7c6c740f7099e8704cd
+QT_WEBKIT_KIOSK_SITE = https://github.com/sergey-dryabzhinsky/qt-webkit-kiosk.git
+QT_WEBKIT_KIOSK_SITE_METHOD = git
+QT_WEBKIT_KIOSK_DEPENDENCIES = qt5webkit qt5multimedia
+QT_WEBKIT_KIOSK_LICENSE = LGPLv3
+QT_WEBKIT_KIOSK_LICENSE_FILES = doc/lgpl.html
+
+ifeq ($(BR2_PACKAGE_QT_WEBKIT_KIOSK_CFG_DEFAULT),y)
+QT_WEBKIT_KIOSK_INSTALL_TARGET_OPTS += install_config
+endif
+
+ifeq ($(BR2_PACKAGE_QT_WEBKIT_KIOSK_CFG_CUSTOM),y)
+ifneq ($(call qstrip,$(BR2_PACKAGE_QT_WEBKIT_KIOSK_CFG_CUSTOM_VALUE)),)
+define QT_WEBKIT_KIOSK_INSTALL_CFG_CUSTOM
+	if [ -f "$(BR2_PACKAGE_QT_WEBKIT_KIOSK_CFG_CUSTOM_VALUE)" ]; then \
+		$(INSTALL) -D -m 0644 "$(BR2_PACKAGE_QT_WEBKIT_KIOSK_CFG_CUSTOM_VALUE)" \
+			$(TARGET_DIR)/usr/share/qt-webkit-kiosk/qt-webkit-kiosk.ini; \
+	else \
+		printf "Error: '%s' is not a valid file, check your BR2_PACKAGE_QT_WEBKIT_KIOSK_CFG_CUSTOM_VALUE setting\n" \
+		"$(BR2_PACKAGE_QT_WEBKIT_KIOSK_CFG_CUSTOM_VALUE)"; \
+		exit 1 ; \
+	fi
+endef
+endif
+endif
+
+ifeq ($(BR2_PACKAGE_QT_WEBKIT_KIOSK_SOUNDS),y)
+QT_WEBKIT_KIOSK_INSTALL_TARGET_OPTS += install_sound
+endif
+
+ifneq ($(call qstrip,$(QT_WEBKIT_KIOSK_INSTALL_TARGET_OPTS)),)
+define QT_WEBKIT_KIOSK_INSTALL_DATAFILES
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) INSTALL_ROOT=$(TARGET_DIR) $(QT_WEBKIT_KIOSK_INSTALL_TARGET_OPTS)
+endef
+endif
+
+define QT_WEBKIT_KIOSK_CONFIGURE_CMDS
+	(cd $(@D); $(TARGET_MAKE_ENV) $(HOST_DIR)/usr/bin/qmake PREFIX=/usr)
+endef
+
+define QT_WEBKIT_KIOSK_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define QT_WEBKIT_KIOSK_INSTALL_TARGET_CMDS
+	$(INSTALL) -m 0755 $(@D)/src/qt-webkit-kiosk $(TARGET_DIR)/usr/bin/
+	$(QT_WEBKIT_KIOSK_INSTALL_DATAFILES)
+	$(QT_WEBKIT_KIOSK_INSTALL_CFG_CUSTOM)
+endef
+
+$(eval $(generic-package))
-- 
2.1.0

^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2015-03-07 14:31 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-21  5:45 [Buildroot] [PATCH] qt-webkit-kiosk: new package Jerome Oufella
2015-02-21 13:18 ` Thomas Petazzoni
2015-02-22  4:22 ` [Buildroot] [PATCH v2] " Jerome Oufella
2015-02-22 21:32   ` Thomas Petazzoni
2015-02-26 12:04     ` Diego Iastrubni
2015-02-27 10:04       ` Thomas Petazzoni
2015-02-25 16:53   ` [Buildroot] [PATCH v3] " Jerome Oufella
2015-03-07 14:31     ` Thomas Petazzoni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox