Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 4/4] qtuio: new package
Date: Thu, 30 Aug 2012 05:53:45 +0200	[thread overview]
Message-ID: <20120830055345.388d4c89@skate> (raw)
In-Reply-To: <1346230869-4926-4-git-send-email-sho@relinux.de>

Le Wed, 29 Aug 2012 11:01:09 +0200,
Stephan Hoffmann <sho@relinux.de> a ?crit :

> new file mode 100644
> index 0000000..dfea228
> --- /dev/null
> +++ b/package/qtuio/Config.in
> @@ -0,0 +1,18 @@
> +config BR2_PACKAGE_QTUIO
> +	bool "qtuio"
> +	select BR2_PACKAGE_MTDEF2TUIO

Shouldn't this be MTDEV2TUIO ?

> +	depends on BR2_PACKAGE_QT

The code of qtuio also suggests it requires GUI support in Qt, so I
guess some other dependencies are needed here.

> +	help
> +	  Implementation of an interface connecting TUIO messages
> +	  and QT events
> +
> +	  https://github.com/x29a/qTUIO
> +
> +comment "qtuio depends on QT"
> +	depends on !BR2_PACKAGE_QT

This comment should be below the examples config option in order to
make sure that the examples config option gets "indented" under the
main qtuio config option.

> +
> +config BR2_QTUIO_EXAMPLES
> +	bool "qtuio_examples"

Make this "qtuio examples".

> +	depends on BR2_PACKAGE_QTUIO
> +	help
> +	  Build and install qtuio examples
> diff --git a/package/qtuio/qtuio.mk b/package/qtuio/qtuio.mk
> new file mode 100644
> index 0000000..efaeae8
> --- /dev/null
> +++ b/package/qtuio/qtuio.mk
> @@ -0,0 +1,68 @@
> +#############################################################
> +#
> +# qTUIO
> +#
> +#############################################################
> +QTUIO_VERSION = abe4973ff6
> +QTUIO_SITE = git://github.com/x29a/qTUIO.git
> +QTUIO_DEPENDENCIES = qt mtdev2tuio

Is mtdev2tuio really a build-time dependency? I don't think so. If it
isn't, then keep the select in the Config.in file, but remove the
build-time dependency here. Add a comment above the select in Config.in
that explicitly says that it is a runtime dependency only.

> +QTUIO_LICENSE = GPLv3+
> +QTUIO_LICENSE_FILES = COPYING
> +
> +ifeq ($(BR2_QTUIO_EXAMPLES),y)
> +define QTUIO_CONFIGURE_EXAMPLES
> +cd $(@D)/examples/dials && $(QT_QMAKE)
> +cd $(@D)/examples/fingerpaint && $(QT_QMAKE)
> +cd $(@D)/examples/knobs && $(QT_QMAKE)
> +cd $(@D)/examples/pinchzoom && $(QT_QMAKE)
> +## pong depends on QtOpenGL cd $(@D)/examples/pong && $(QT_QMAKE)
> +endef
> +endif

Mention the pong thing as a comment somewhere, only once, and don't
include the compile line if it isn't supported. Also, you could
simplify this as follows:

	for example in dials fingerpaint knobs pinchzoom ; do \
		(cd $(@D)/examples/$${examples} && $(QT_QMAKE)) ; \
	done

And indent the code with one tab.

> +define QTUIO_CONFIGURE_CMDS
> +cd $(@D)/src && $(QT_QMAKE)
> +$(QTUIO_CONFIGURE_EXAMPLES)
> +endef

Indent with one tab.

> +ifeq ($(BR2_QTUIO_EXAMPLES),y)
> +define QTUIO_BUILD_EXAMPLES
> +$(MAKE) -C $(@D)/examples/dials
> +$(MAKE) -C $(@D)/examples/fingerpaint
> +$(MAKE) -C $(@D)/examples/knobs
> +$(MAKE) -C $(@D)/examples/pinchzoom
> +## pong depends on QtOpenGL $(MAKE) -C $(@D)/examples/pong
> +endef
> +endif

Ditto: use a for loop + indent with one tab.

> +define QTUIO_BUILD_CMDS
> +$(MAKE) -C $(@D)/src
> +$(QTUIO_BUILD_EXAMPLES)
> +endef
> +
> +ifeq ($(BR2_QTUIO_EXAMPLES),y)
> +define QTUIO_INSTALL_EXAMPLES
> +$(INSTALL) -D -m 0755 $(@D)/examples/dials/dials $(TARGET_DIR)/usr/share/qtuio/dials
> +$(INSTALL) -D -m 0755 $(@D)/examples/fingerpaint/fingerpaint $(TARGET_DIR)/usr/share/qtuio/fingerpaint
> +$(INSTALL) -D -m 0755 $(@D)/examples/knobs/knobs $(TARGET_DIR)/usr/share/qtuio/knobs
> +$(INSTALL) -D -m 0755 $(@D)/examples/pinchzoom/pinchzoom $(TARGET_DIR)/usr/share/qtuio/pinchzoom
> +## pong depends on QtOpenGL $(INSTALL) -D -m 0755 $(@D)/examples/pong/pong $(TARGET_DIR)/usr/share/qtuio/pong
> +endef
> +endif
> +
> +define QTUIO_INSTALL_TARGET_CMDS
> +$(INSTALL) -D -m 0755 $(@D)/lib/libqTUIO.so* $(TARGET_DIR)/usr/lib

Normally, install -D requires the complete destination filename as
second argument. We usually use cp when multiple files need to be
copied at once.

Doesn't the qtuio package has a usable 'make install' ?

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

  reply	other threads:[~2012-08-30  3:53 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-29  9:01 [Buildroot] [PATCH 1/4] mtdev: new package Stephan Hoffmann
2012-08-29  9:01 ` [Buildroot] [PATCH 2/4] liblo: new pachage Stephan Hoffmann
2012-08-29  9:01 ` [Buildroot] [PATCH 3/4] mtdev2tuio: new package Stephan Hoffmann
2012-08-29  9:01 ` [Buildroot] [PATCH 4/4] qtuio: " Stephan Hoffmann
2012-08-30  3:53   ` Thomas Petazzoni [this message]
2012-08-30  9:59     ` Stephan Hoffmann
2012-08-30  3:46 ` [Buildroot] [PATCH 1/4] mtdev: " Thomas Petazzoni

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120830055345.388d4c89@skate \
    --to=thomas.petazzoni@free-electrons.com \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox