Skip to contentSkip to conversation

gnuplot : new package

PATCH New Anthony Viallard 2 participants 9 messages Jan 7, 2013 – Jan 8, 2013

lore
Share & tools
lore
#0 lore raw

PATCH 1/5 gnuplot : new package

Create a package for gnuplot (a portable command-line driven graphing utility)

---
 package/Config.in             |    1 +
 package/gnuplot/Config.in     |    7 +++++++
 package/gnuplot/gnuplot.mk    |   13 +++++++++++++
 3 files changed, 21 insertions(+), 0 deletion(-)
 create mode 100644 package/gnuplot/Config.in
 create mode 100644 package/gnuplot/gnuplot.mk
package/Config.in +1 -0
index b312a3e..2633997 100644
@@ -70,6 +70,7 @@ endif
 source "toolchain/gcc/Config.in.2"
 source "package/gettext/Config.in"
 source "package/gmp/Config.in"
+source "package/gnuplot/Config.in"
 source "package/gperf/Config.in"
 if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
 source "package/grep/Config.in"
package/gnuplot/Config.in new file +7 -0
new file mode 100644
index 0000000..281bb65
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_GNUPLOT
+	bool "gnuplot"
+	help
+	  A portable command-line driven graphing utility.
+
+	  http://www.gnuplot.info/
+
package/gnuplot/gnuplot.mk new file +13 -0
new file mode 100644
index 0000000..2f05624
@@ -0,0 +1,13 @@
+#############################################################
+#
+# gnuplot
+#
+#############################################################
+GNUPLOT_VERSION = 4.6.0
+GNUPLOT_SOURCE = gnuplot-$(GNUPLOT_VERSION).tar.gz
+GNUPLOT_SITE = http://superb-dca2.dl.sourceforge.net/project/gnuplot/gnuplot/$(GNUPLOT_VERSION)
+GNUPLOT_INSTALL_STAGING = YES
+GNUPLOT_INSTALL_TARGET = YES
+GNUPLOT_CONF_OPT = 
+
+$(eval $(autotools-package))
Signature · 1 line
1.7.10.4
#1 lore raw

PATCH 2/5 gnuplot : disable inadequate options for embedded platform

Disable options for embedded platform to save space and make a good cross compilation.

---
 package/gnuplot/gnuplot.mk |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletion(-)
package/gnuplot/gnuplot.mk +12 -1
index 2f05624..ea4a6f4 100644
@@ -8,7 +8,17 @@ GNUPLOT_SOURCE = gnuplot-$(GNUPLOT_VERSION).tar.gz
 GNUPLOT_SITE = http://superb-dca2.dl.sourceforge.net/project/gnuplot/gnuplot/$(GNUPLOT_VERSION)
 GNUPLOT_INSTALL_STAGING = YES
 GNUPLOT_INSTALL_TARGET = YES
-GNUPLOT_CONF_OPT = 
+GNUPLOT_CONF_OPT = --without-x \
+		--disable-raise-console \
+		--disable-mouse \
+	        --without-tutorial \
+		--without-demo --disable-demo \
+	        --without-row-help \
+		--disable-history-file \
+	        --without-lisp-files \
+	        --disable-wxwidgets \
+	        --without-lua \
+		--without-latex \
+	        --without-cairo
 
 $(eval $(autotools-package))
Signature · 1 line
1.7.10.4
#2 lore raw

PATCH 3/5 gnuplot : move under "Graphic applications" section

In reply to Anthony Viallard

Gnuplot isn't a "Development tools".

---
 package/Config.in |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
package/Config.in +1 -1
index eb18543..63d8ecb 100644
@@ -70,7 +70,6 @@ endif
 source "toolchain/gcc/Config.in.2"
 source "package/gettext/Config.in"
 source "package/gmp/Config.in"
-source "package/gnuplot/Config.in"
 source "package/gperf/Config.in"
 if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
 source "package/grep/Config.in"
@@ -109,6 +108,7 @@ menu "Graphic libraries and applications (graphic/text)"
 
 comment "Graphic applications"
 source "package/rrdtool/Config.in"
+source "package/gnuplot/Config.in"
 
 comment "graphic libraries"
 source "package/directfb/Config.in"
Signature · 1 line
1.7.10.4
#3 lore raw

PATCH 4/5 gnuplot : add --without-doc and --without-demo options

In reply to Anthony Viallard

Create a generic patch to disable compilation/installation of docs and demo with configure options.

---
 ...ot-0001-configure-add-without-demo-option.patch |   59 ++++++++++++++++++++
 1 file changed, 59 insertions(+), 0 deletion(-)
 create mode 100644 package/gnuplot/gnuplot-0001-configure-add-without-demo-option.patch
package/gnuplot/gnuplot-0001-configure-add-without-demo-option.patch new file +59 -0
new file mode 100644
index 0000000..acdc91d
@@ -0,0 +1,59 @@
+Index: gnuplot-4.6.0/configure.in
+===================================================================
+--- gnuplot-4.6.0.orig/configure.in	2012-03-08 05:34:42.000000000 +0100
++++ gnuplot-4.6.0/configure.in	2013-01-07 11:50:03.003804463 +0100
+@@ -748,6 +748,16 @@
+ AC_ARG_WITH(lisp-files,dnl
+ [  --without-lisp-files    do not build emacs lisp files])
+ 
++dnl Whether we want to build the demo files
++dnl Does nothing here, is passed on to the demo subdir
++AC_ARG_WITH(demo,dnl
++[  --without-demo    do not build demo files])
++
++dnl Whether we want to build the doc files
++dnl Does nothing here, is passed on to the doc subdir
++AC_ARG_WITH(doc,dnl
++[  --without-doc    do not build doc files])
++
+ dnl Sort help/subtopic tables by row or column
+ AC_ARG_WITH(row-help,dnl
+ [  --with-row-help         format help and subtopic tables by row (default)
+@@ -1200,6 +1210,24 @@
+ fi
+ AC_SUBST(LISPDIR)
+ 
++dnl build demo files
++if test "$with_demo" != no; then
++  AC_CONFIG_SUBDIRS(demo)
++  DEMODIR=demo
++else
++  DEMODIR=
++fi
++AC_SUBST(DEMODIR)
++
++dnl build doc files
++if test "$with_doc" != no; then
++  AC_CONFIG_SUBDIRS(docs)
++  DOCDIR=docs
++else
++  DOCDIR=
++fi
++AC_SUBST(DOCDIR)
++
+ dnl Substitute variables
+ AC_SUBST(PACKAGE)
+ AC_SUBST(VERSION_MAJOR)
+Index: gnuplot-4.6.0/Makefile.am
+===================================================================
+--- gnuplot-4.6.0.orig/Makefile.am	2013-01-04 14:07:02.239120935 +0100
++++ gnuplot-4.6.0/Makefile.am	2013-01-07 11:51:12.034846363 +0100
+@@ -1,7 +1,7 @@
+ ## Process this file with automake to produce Makefile.in -*-Makefile-*-
+ AUTOMAKE_OPTIONS = foreign 1.2h
+ 
+-SUBDIRS = config m4 term src docs $(LISPDIR) man demo tutorial share
++SUBDIRS = config m4 term src $(DOCDIR) $(LISPDIR) $(DEMODIR) man tutorial share
+ 
+ EXTRA_DIST = BUGS CodeStyle Copyright FAQ.pdf GNUmakefile INSTALL INSTALL.gnu \
+ Makefile.maint PATCHLEVEL PGPKEYS PORTING README README.1ST \
Signature · 1 line
1.7.10.4
#4 lore raw

PATCH 4/4 gnuplot : add LICENSE things and new configure options

In reply to Anthony Viallard

Gnuplot isn't under GPL but has his own open source license.

Use autoreconf feature for now. Waiting upstream integration of gnuplot-0001-configure-add-without-demo-option.patch.

---
 package/gnuplot/gnuplot.mk |    8 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
package/gnuplot/gnuplot.mk +6 -1
index 3b4abc2..2e1e8c4 100644
@@ -7,12 +7,16 @@ GNUPLOT_VERSION = 4.6.0
 GNUPLOT_SOURCE = gnuplot-$(GNUPLOT_VERSION).tar.gz
 GNUPLOT_SITE = http://superb-dca2.dl.sourceforge.net/project/gnuplot/gnuplot/$(GNUPLOT_VERSION)
 GNUPLOT_INSTALL_STAGING = YES
-GNUPLOT_INSTALL_TARGET = YES
+GNUPLOT_LICENSE = gnuplot license (open source)
+GNUPLOT_LICENSE_FILES = Copyright
+GNUPLOT_AUTORECONF = YES
+
 GNUPLOT_CONF_OPT = --without-x \
 		--disable-raise-console \
 		--disable-mouse \
 	        --without-tutorial \
+		--without-demo \
+		--without-doc \
 	        --without-row-help \
 		--disable-history-file \
 	        --without-lisp-files \
Signature · 1 line
1.7.10.4
#5 lore raw

PATCH 1/5 gnuplot : new package

In reply to Anthony Viallard

Dear Anthony Viallard,

Quoted 1 line · Anthony Viallard

+GNUPLOT_INSTALL_TARGET = YES

This line is not needed.

Also, please make your 1/5, 2/5, 3/5 and the LICENSE part of 5/5 a single patch.

And then, a second patch containing your 4/5 and and the part of 5/5 that disables the documentation and the demos.

There has already been some discussion with Stefan about how to split patches, and it seems that it is still not clear. Each patch should be a logical change that works on its own.

So for example, in the same series, putting a package in section "Foo", and then moving it to section "Bar" is very strange. Since you can rebase your patches, why don't you put the package in section "Bar" in the first place, so that we can believe you did everything perfectly from the very beginning? :-)

You don't need to show to the whole world the gazillions of steps you followed to create a package. You need to show the whole world a nice, clean set of commits, where each commit is a logical change, that keeps the "buildability" of Buildroot.

Does that make sense?

Thomas

Signature · 4 lines
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
#6 lore raw

PATCH 1/5 gnuplot : new package

Quoted 23 lines · Thomas Petazzoni

Dear Anthony Viallard,

Quoted 1 line · Anthony Viallard

+GNUPLOT_INSTALL_TARGET = YES

This line is not needed.

Also, please make your 1/5, 2/5, 3/5 and the LICENSE part of 5/5 a single patch.

And then, a second patch containing your 4/5 and and the part of 5/5 that disables the documentation and the demos.

There has already been some discussion with Stefan about how to split patches, and it seems that it is still not clear. Each patch should be a logical change that works on its own.

So for example, in the same series, putting a package in section "Foo", and then moving it to section "Bar" is very strange. Since you can rebase your patches, why don't you put the package in section "Bar" in the first place, so that we can believe you did everything perfectly from the very beginning? :-)

Quoted 8 lines

You don't need to show to the whole world the gazillions of steps you followed to create a package. You need to show the whole world a nice, clean set of commits, where each commit is a logical change, that keeps the "buildability" of Buildroot.

Does that make sense?

Thomas

Indeed,

Sorry, i knew my post is not very sexy. This is because my git repository is very dirty and i don't known how clean my work.

I thoughwith lucky, my submit will be accepted :) Ok, i do the changes !

avd.

#7 lore raw

PATCH 1/5 gnuplot : new package

Dear Viallard Anthony,

Quoted 2 lines · Viallard Anthony

Sorry, i knew my post is not very sexy. This is because my git repository is very dirty and i don't known how clean my work.

All you need to learn is how to use "interactive rebase".

See
http://elinux.org/Buildroot_how_to_contribute#In_case_of_mistakes_in_my_branch
for a very basic introduction.

For more details, see
http://git-scm.com/book/en/Git-Tools-Rewriting-History#Changing-Multiple-Commit-Messages.

Once you know how to use interactive rebase, you can prepare very nice patch series.

Best regards,

Thomas

Signature · 4 lines
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
#8 lore raw

PATCH 1/5 gnuplot : new package

Quoted 15 lines · Thomas Petazzoni

Dear Viallard Anthony,

Quoted 2 lines · Viallard Anthony

Sorry, i knew my post is not very sexy. This is because my git repository is very dirty and i don't known how clean my work.

All you need to learn is how to use "interactive rebase".

See
http://elinux.org/Buildroot_how_to_contribute#In_case_of_mistakes_in_my_branch
for a very basic introduction.

For more details, see
http://git-scm.com/book/en/Git-Tools-Rewriting-History#Changing-Multiple-Commit-Messages.

Quoted 6 lines

Once you know how to use interactive rebase, you can prepare very nice patch series.

Best regards,

Thomas

Dear Petazzoni Thomas,

Thanks for the links. I already knew this command but i didn't realize it was so powerful !

I've commited better patches, it is good for you ?

Best regards,

avd.