diff mbox

libqwt: new package

Message ID 4F8B3459.1030304@gezedo.com
State Superseded, archived
Headers show

Commit Message

Laurent GONZALEZ April 15, 2012, 8:49 p.m. UTC
hi there,

with the help of Thomas, I propose this patch to add libqwt.

--
Laurent

Comments

Arnout Vandecappelle April 28, 2012, 3:10 p.m. UTC | #1
On Sunday 15 April 2012 22:49:29 Laurent GONZALEZ wrote:
> hi there,
> 
> with the help of Thomas, I propose this patch to add libqwt.

 Hoi Laurent,

 Thank you for your contribution!  We have pretty strict requirements
for incoming patches, so here are some comments.

 First of all, please post patches in the form as it is produced by
git send-email, i.e.:
- one separate mail per patch;
- Subject of the mail is "[PATCH] qwt: new package";
- Body of the mail has the following structure:

Commit message (typically empty in case of a new package, unless there
is something special to say about it).

Signed-off-by: Your full name <your.email@address.net>
Signed-off-by: Other contributer name <his.email@address.org>
---
Additional free-text comments that should not go into the commit
message.  If you post a second or third version of the patch, this
typically contains a changelog.
---
diff --git a/package/Config.in b/package/Config.in
index d703b8c..d72fcc3 100644
--- a/package/Config.in
+++ b/package/Config.in
...


 Second, each patch should contain your Signed-off-by line.  This is a
statement from you that you have the right to publish it.  See 
http://elinux.org/Developer_Certificate_Of_Origin
Note that even Thomas's patch should contain your sign-off because you're
in its forwarding path.


 And now some comments about the libqwt patch itself.

 Since the upstream package is called qwt, I'd call the buildroot package
qwt instead of libqwt.  Also, because it provides a widget, I'd put it
under 'other GUIs', directly below qt.

 The help text of the Config.in should be wrapped at 80 columns (where the
tab counts as 8 characters).

 For the sed expressions, I'd use % everywhere to make it more consistent.

 There will probably be more remarks, but it's easier to comment on those
when the patch is posted inline instead of as an attachment.


 If you don't have the time to continue work on this patch, please let us
know so someone else can pick it up.

 Regards,
 Arnout
diff mbox

Patch

diff --git a/package/Config.in b/package/Config.in
index d703b8c..d72fcc3 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -315,6 +315,7 @@  source "package/libglade/Config.in"
 source "package/gdk-pixbuf/Config.in"
 source "package/libgtk2/Config.in"
 source "package/libpng/Config.in"
+source "package/libqwt/Config.in"
 source "package/libraw/Config.in"
 source "package/librsvg/Config.in"
 source "package/libsvgtiny/Config.in"
diff --git a/package/libqwt/Config.in b/package/libqwt/Config.in
new file mode 100644
index 0000000..6c53ac5
--- /dev/null
+++ b/package/libqwt/Config.in
@@ -0,0 +1,22 @@ 
+config BR2_PACKAGE_LIBQWT
+	bool "libqwt"
+	depends on BR2_PACKAGE_QT
+	help
+	  Qwt is a graphics extension to the Qt GUI application framework. It provides a 2D plotting widget and more.
+
+	  http://http://sourceforge.net/projects/qwt
+
+if BR2_PACKAGE_LIBQWT
+
+config BR2_PACKAGE_LIBQWT_SVG
+	bool "SVG support"
+	select BR2_PACKAGE_QT_SVG
+
+config BR2_PACKAGE_LIBQWT_MATHML
+	bool "MathML support"
+
+endif
+
+comment "libqwt requires qt"
+	depends on !BR2_PACKAGE_QT
+
diff --git a/package/libqwt/libqwt.mk b/package/libqwt/libqwt.mk
new file mode 100644
index 0000000..b8657e4
--- /dev/null
+++ b/package/libqwt/libqwt.mk
@@ -0,0 +1,46 @@ 
+#############################################################
+#
+# libqwt
+#
+#############################################################
+LIBQWT_VERSION = 6.0.1
+LIBQWT_SOURCE = qwt-$(LIBQWT_VERSION).tar.bz2
+LIBQWT_SITE = http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/project/qwt/qwt/$(LIBQWT_VERSION)/
+LIBQWT_INSTALL_STAGING = YES
+LIBQWT_DEPENDENCIES = qt
+
+LIBQWT_CONFIG  =    's%QWT_INSTALL_PREFIX.*/usr/local/.*%QWT_INSTALL_PREFIX = /usr%'
+LIBQWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtDesigner.*$$/\# QWT_CONFIG += QwtDesigner/'
+LIBQWT_CONFIG += -e 's%/features%/mkspecs/features%'
+
+ifeq ($(BR2_PACKAGE_LIBQWT_SVG),y)
+	LIBQWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtSvg.*$$/QWT_CONFIG += QwtSvg/'
+else
+	LIBQWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtSvg.*$$/\# QWT_CONFIG += QwtSvg/'
+endif
+
+ifeq ($(BR2_PACKAGE_LIBQWT_MATHML),y)
+	LIBQWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtMathML.*$$/QWT_CONFIG += QwtMathML/'
+else
+	LIBQWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtMathML.*$$/\# QWT_CONFIG += QwtMathML/'
+endif
+
+define LIBQWT_CONFIGURE_CMDS
+	$(SED) $(LIBQWT_CONFIG) $(@D)/qwtconfig.pri
+	(cd $(@D); $(QT_QMAKE))
+endef
+
+define LIBQWT_BUILD_CMDS
+	$(MAKE) -C $(@D)
+endef
+
+define LIBQWT_INSTALL_STAGING_CMDS
+	$(MAKE) -C $(@D) install INSTALL_ROOT=$(STAGING_DIR)
+endef
+
+define LIBQWT_INSTALL_TARGET_CMDS
+	$(MAKE) -C $(@D) install INSTALL_ROOT=$(TARGET_DIR)
+	rm -Rf $(TARGET_DIR)/usr/mkspecs
+endef
+
+$(eval $(call GENTARGETS))