diff --git a/Gnuplot6.pdf b/Gnuplot6.pdf new file mode 100644 index 0000000..32bba75 --- /dev/null +++ b/Gnuplot6.pdf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af0f0351195eb31c5cc6d16a2713e8cdbf7ed97bc3d248a8ccbdf5236dc1413c +size 3951628 diff --git a/Gnuplot_5_4.pdf b/Gnuplot_5_4.pdf deleted file mode 100644 index e4aa334..0000000 --- a/Gnuplot_5_4.pdf +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:dadbbaacb3161ed6a403f6110c5a764027d0216ddda21868f4d51bb44812918b -size 2230971 diff --git a/gnuplot-4.4.0-x11ovf.dif b/gnuplot-4.4.0-x11ovf.dif index 6236338..14eabed 100644 --- a/gnuplot-4.4.0-x11ovf.dif +++ b/gnuplot-4.4.0-x11ovf.dif @@ -4,7 +4,7 @@ --- src/gplt_x11.c +++ src/gplt_x11.c 2020-07-17 07:29:52.061621215 +0000 -@@ -954,6 +954,8 @@ mainloop() +@@ -955,6 +955,8 @@ mainloop() nfds = cn + 1; while (1) { @@ -13,7 +13,7 @@ XFlush(dpy); /* see above */ FD_ZERO(&tset); -@@ -991,7 +993,11 @@ mainloop() +@@ -992,7 +994,11 @@ mainloop() process_event(&xe); } } @@ -26,7 +26,7 @@ unlink(X11_ipcpath); record(); fclose(X11_ipc); -@@ -1223,8 +1229,8 @@ static int read_input(void); +@@ -1224,8 +1230,8 @@ static int read_input(void); static int read_input() { diff --git a/gnuplot-4.6.0-demo.diff b/gnuplot-4.6.0-demo.diff index 076fbdd..5f78ccb 100644 --- a/gnuplot-4.6.0-demo.diff +++ b/gnuplot-4.6.0-demo.diff @@ -2,9 +2,9 @@ demo/fit.dem | 4 ++++ demo/poldat.dem | 2 +- demo/simple.dem | 3 +-- + src/loadpath.c | 21 +++++++++++++++++++++ src/show.c | 9 +++++++++ - src/variable.c | 20 +++++++++++++++++++- - 5 files changed, 34 insertions(+), 4 deletions(-) + 5 files changed, 36 insertions(+), 3 deletions(-) --- demo/fit.dem +++ demo/fit.dem 2020-07-17 07:25:00.022670914 +0000 @@ -69,9 +69,53 @@ plot [-pi/2:pi] cos(x),-(sin(x) > sin(x+1) ? sin(x) : sin(x+1)) pause -1 "Hit return to continue" +--- src/loadpath.c ++++ src/loadpath.c 2024-01-08 09:15:14.362384507 +0000 +@@ -31,6 +31,10 @@ + ]*/ + + #include ++#include ++#include ++#include ++#include + + #include "loadpath.h" + #include "alloc.h" +@@ -72,6 +76,18 @@ init_loadpath() + if (!loadpath) + { + char *envlib = getenv("GNUPLOT_LIB"); ++#ifdef GNUPLOT_LIB_DEFAULT ++ char *defenvlib = (char*)0; ++ struct stat st; ++ if ((stat(GNUPLOT_LIB_DEFAULT, &st) == 0) && S_ISDIR(st.st_mode)) { ++ if (envlib) { ++ if (asprintf(&defenvlib, "%s:%s", envlib, GNUPLOT_LIB_DEFAULT) > 0) ++ envlib = defenvlib; ++ } else ++ envlib = GNUPLOT_LIB_DEFAULT; ++ } ++#endif /* GNUPLOT_LIB_DEFAULT */ ++ + if (envlib) { + int len = strlen(envlib); + loadpath = gp_strdup(envlib); +@@ -81,6 +97,11 @@ init_loadpath() + PATHSEP_TO_NUL(loadpath); + } + /* else: NULL = empty */ ++#ifdef GNUPLOT_LIB_DEFAULT ++ if (defenvlib) ++ free(defenvlib); ++#endif /* GNUPLOT_LIB_DEFAULT */ ++ + } + /* point to env portion of loadpath */ + envptr = loadpath; --- src/show.c +++ src/show.c 2020-07-17 07:25:00.022670914 +0000 -@@ -1077,6 +1077,15 @@ show_version(FILE *fp) +@@ -1140,6 +1140,15 @@ show_version(FILE *fp) p /* type "help seeking-assistance" */ ); @@ -87,46 +131,3 @@ /* show version long */ if (almost_equals(c_token, "l$ong")) { ---- src/variable.c -+++ src/variable.c 2020-07-17 07:25:00.022670914 +0000 -@@ -33,7 +33,10 @@ - /* The Death of Global Variables - part one. */ - - #include -- -+#include -+#include -+#include -+#include - #include "variable.h" - - #include "alloc.h" -@@ -94,6 +97,17 @@ loadpath_handler(int action, char *path) - if (!loadpath) - { - char *envlib = getenv("GNUPLOT_LIB"); -+#ifdef GNUPLOT_LIB_DEFAULT -+ char *defenvlib = (char*)0; -+ struct stat st; -+ if ((stat(GNUPLOT_LIB_DEFAULT, &st) == 0) && S_ISDIR(st.st_mode)) { -+ if (envlib) { -+ if (asprintf(&defenvlib, "%s:%s", envlib, GNUPLOT_LIB_DEFAULT) > 0) -+ envlib = defenvlib; -+ } else -+ envlib = GNUPLOT_LIB_DEFAULT; -+ } -+#endif /* GNUPLOT_LIB_DEFAULT */ - if (envlib) { - int len = strlen(envlib); - loadpath = gp_strdup(envlib); -@@ -102,6 +116,10 @@ loadpath_handler(int action, char *path) - /* convert all PATHSEPs to \0 */ - PATHSEP_TO_NUL(loadpath); - } /* else: NULL = empty */ -+#ifdef GNUPLOT_LIB_DEFAULT -+ if (defenvlib) -+ free(defenvlib); -+#endif /* GNUPLOT_LIB_DEFAULT */ - } /* else: already initialised; int_warn (?) */ - /* point to env portion of loadpath */ - envptr = loadpath; diff --git a/gnuplot-4.6.0-fonts.diff b/gnuplot-4.6.0-fonts.diff index 8dc64ea..c48c492 100644 --- a/gnuplot-4.6.0-fonts.diff +++ b/gnuplot-4.6.0-fonts.diff @@ -37,7 +37,7 @@ #ifdef EXPORT_SELECTION # undef EXPORT_SELECTION #endif /* EXPORT SELECTION */ -@@ -521,8 +528,8 @@ static char *gpFallbackFont(void); +@@ -522,8 +529,8 @@ static char *gpFallbackFont(void); static int gpXGetFontascent(XFontStruct *cfont); enum set_encoding_id encoding = S_ENC_DEFAULT; /* EAM - mirrored from core code by 'QE' */ @@ -48,7 +48,7 @@ #define Nwidths 10 static unsigned int widths[Nwidths] = { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; -@@ -2289,6 +2296,8 @@ exec_cmd(plot_struct *plot, char *comman +@@ -2294,6 +2301,8 @@ exec_cmd(plot_struct *plot, char *comman /* Save the request default font */ c = &(buffer[strlen(buffer)-1]); while (*c <= ' ') *c-- = '\0'; @@ -57,7 +57,7 @@ strncpy(default_font, &buffer[2], sizeof(default_font)-1); FPRINTF((stderr, "gnuplot_x11: exec_cmd() set default_font to \"%s\"\n", default_font)); break; -@@ -5744,7 +5753,7 @@ XFontStruct *gpXLoadQueryFont (Display * +@@ -5820,7 +5829,7 @@ XFontStruct *gpXLoadQueryFont (Display * } #else if (first_time) { @@ -66,7 +66,7 @@ first_time = FALSE; } while (n_miss-- > 0) -@@ -5896,6 +5905,18 @@ char *fontname; +@@ -5972,6 +5981,18 @@ char *fontname; } #ifdef USE_X11_MULTIBYTE diff --git a/gnuplot-4.6.0.dif b/gnuplot-4.6.0.dif index 8e54110..409e410 100644 --- a/gnuplot-4.6.0.dif +++ b/gnuplot-4.6.0.dif @@ -1,14 +1,26 @@ --- - gnuplot-5.4.0/docs/Makefile.am | 12 ++++++++---- - gnuplot-5.4.0/src/gadgets.h | 2 +- - gnuplot-5.4.0/src/gplt_x11.c | 9 ++++++--- - gnuplot-5.4.0/src/plot.c | 22 +++++++++++++++++++++- - gnuplot-5.4.0/src/term.h | 6 +++--- - 5 files changed, 39 insertions(+), 12 deletions(-) + gnuplot-6.0.0/configure.ac | 2 +- + gnuplot-6.0.0/docs/Makefile.am | 12 ++++++++---- + gnuplot-6.0.0/src/gadgets.h | 2 +- + gnuplot-6.0.0/src/gplt_x11.c | 9 ++++++--- + gnuplot-6.0.0/src/plot.c | 16 ++++++++++++++++ + gnuplot-6.0.0/src/term.h | 6 +++--- + 6 files changed, 35 insertions(+), 12 deletions(-) ---- gnuplot-5.4.0/docs/Makefile.am -+++ gnuplot-5.4.0/docs/Makefile.am 2020-07-17 07:25:36.834034450 +0000 -@@ -42,7 +42,7 @@ +--- gnuplot-6.0.0/configure.ac ++++ gnuplot-6.0.0/configure.ac 2024-01-09 08:20:41.748328467 +0000 +@@ -383,7 +383,7 @@ if test "$with_readline" != no; then + dnl check for terminal library + dnl this is a very cool solution from octave's configure.in + gp_tcap="" +- for termlib in ncurses curses termcap terminfo termlib; do ++ for termlib in tinfo ncurses curses termcap terminfo termlib; do + AC_CHECK_LIB(${termlib}, tputs, [gp_tcap="$gp_tcap -l$termlib"]) + case "$gp_tcap" in + *-l${termlib}*) +--- gnuplot-6.0.0/docs/Makefile.am ++++ gnuplot-6.0.0/docs/Makefile.am 2024-01-08 10:32:22.372964142 +0000 +@@ -29,7 +29,7 @@ # # default is what is needed for interactive gnuplot @@ -16,17 +28,17 @@ +gih_DATA = gnuplot.gih gnuplot-fr.gih gihdir = @GIHDIR@ - noinst_PROGRAMS = checkdoc doc2ipf doc2tex doc2gih doc2rnh doc2hlp \ -@@ -101,7 +101,7 @@ gnuplot-groff.ps gnuplot.tmp VERSION gnu - gnuplot.idv gnuplot.xref gnuplot.lg gnuplot.pdf wxhelp_figures \ - wxhelp/*.html wxhelp/wgnuplot.hhc wxhelp/wgnuplot.hhk \ + noinst_PROGRAMS = checkdoc doc2ipf doc2tex doc2gih doc2hlp \ +@@ -111,7 +111,7 @@ wxhelp_figures wxhelp/*.html wxhelp/wgnu wxhelp/wgnuplot.htc wxhelp/doc2html$(EXEEXT) windows/wgnuplot.htk \ + svg_figures html/*.html html/*.svg html/*.hhc html/*.hhk \ + webp_figures html/*.webp html/figure_mask.png \ -windows/*.png gnuplot.htb gnuplot.texi gnuplot-eldoc.el $(ELCS) +windows/*.png gnuplot.htb gnuplot.texi gnuplot-eldoc.el $(ELCS) gnuplot-fr.gih DISTFILES = $(DIST_COMMON) $(SOURCES) $(DOCHEADERS) $(EXTRA_DIST) -@@ -262,17 +262,21 @@ gnuplot.hlp: doc2hlp$(EXEEXT) $(srcdir)/ +@@ -271,17 +271,21 @@ gnuplot.hlp: doc2hlp$(EXEEXT) $(srcdir)/ doc2hlp_SOURCES = doc2hlp.c termdoc.c ### gnuplot interactive help format @@ -50,9 +62,9 @@ alldoc2gih_SOURCES = doc2gih.c termdoc.c alldoc2gih_CPPFLAGS = -DALL_TERM_DOC $(AM_CPPFLAGS) ---- gnuplot-5.4.0/src/gadgets.h -+++ gnuplot-5.4.0/src/gadgets.h 2020-07-17 07:27:48.183763305 +0000 -@@ -522,7 +522,7 @@ extern TBOOLEAN clip_lines2; +--- gnuplot-6.0.0/src/gadgets.h ++++ gnuplot-6.0.0/src/gadgets.h 2024-01-08 09:16:58.124450437 +0000 +@@ -524,7 +524,7 @@ extern TBOOLEAN clip_lines2; extern TBOOLEAN clip_points; extern TBOOLEAN clip_radial; @@ -61,9 +73,9 @@ extern int samples_1; extern int samples_2; ---- gnuplot-5.4.0/src/gplt_x11.c -+++ gnuplot-5.4.0/src/gplt_x11.c 2020-07-17 07:25:36.834034450 +0000 -@@ -2513,9 +2513,12 @@ exec_cmd(plot_struct *plot, char *comman +--- gnuplot-6.0.0/src/gplt_x11.c ++++ gnuplot-6.0.0/src/gplt_x11.c 2024-01-08 09:16:58.124450437 +0000 +@@ -2518,9 +2518,12 @@ exec_cmd(plot_struct *plot, char *comman } } /* X11_justify_text(mode) - set text justification mode */ @@ -79,49 +91,9 @@ else if (*buffer == 'A') sscanf(buffer + 1, "%lf", &plot->angle); ---- gnuplot-5.4.0/src/plot.c -+++ gnuplot-5.4.0/src/plot.c 2020-07-17 07:28:52.762646614 +0000 -@@ -206,6 +206,7 @@ static int asked_privi = 0; - void - drop_privilege() - { -+#ifndef SVGA_IS_SECURE - if (!asked_privi) { - euid = geteuid(); - egid = getegid(); -@@ -219,11 +220,13 @@ drop_privilege() - if (seteuid(ruid) == -1) - (void) fprintf(stderr, "seteuid(%d): %s\n", - (int) ruid, strerror(errno)); -+#endif - } - - void - take_privilege() - { -+#ifndef SVGA_IS_SECURE - if (!asked_privi) { - euid = geteuid(); - egid = getegid(); -@@ -237,6 +240,7 @@ take_privilege() - if (seteuid(euid) == -1) - (void) fprintf(stderr, "seteuid(%d): %s\n", - (int) euid, strerror(errno)); -+#endif - } - - #endif /* LINUXVGA */ -@@ -272,8 +276,8 @@ main(int argc_orig, char **argv) - argc = argc_orig; - - #ifdef LINUXVGA -- LINUX_setup(); /* setup VGA before dropping privilege DBT 4/5/99 */ - drop_privilege(); -+ LINUX_setup(); /* setup VGA before dropping privilege DBT 4/5/99 */ - #endif - /* make sure that we really have revoked root access, this might happen if - gnuplot is compiled without vga support but is installed suid by mistake */ -@@ -346,6 +350,22 @@ main(int argc_orig, char **argv) +--- gnuplot-6.0.0/src/plot.c ++++ gnuplot-6.0.0/src/plot.c 2024-01-08 09:16:58.124450437 +0000 +@@ -296,6 +296,22 @@ main(int argc_orig, char **argv) rl_getc_function = getc_wrapper; #endif @@ -144,9 +116,9 @@ #if defined(HAVE_LIBREADLINE) || defined(HAVE_LIBEDITLINE) /* T.Walter 1999-06-24: 'rl_readline_name' must be this fix name. * It is used to parse a 'gnuplot' specific section in '~/.inputrc' ---- gnuplot-5.4.0/src/term.h -+++ gnuplot-5.4.0/src/term.h 2020-07-17 07:25:36.838034380 +0000 -@@ -242,9 +242,9 @@ +--- gnuplot-6.0.0/src/term.h ++++ gnuplot-6.0.0/src/term.h 2024-01-08 09:16:58.124450437 +0000 +@@ -233,9 +233,9 @@ #include "emf.trm" /* Roland DXY800A plotter */ @@ -158,7 +130,7 @@ /* fig graphics */ #include "fig.trm" -@@ -277,7 +277,7 @@ +@@ -268,7 +268,7 @@ /* #include "imagen.trm" */ /* Kyocera Prescribe printer */ diff --git a/gnuplot-5.4.10.tar.gz b/gnuplot-5.4.10.tar.gz deleted file mode 100644 index 2a07bb8..0000000 --- a/gnuplot-5.4.10.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:975d8c1cc2c41c7cedc4e323aff035d977feb9a97f0296dd2a8a66d197a5b27c -size 5687565 diff --git a/gnuplot-6.0.0.tar.gz b/gnuplot-6.0.0.tar.gz new file mode 100644 index 0000000..b189359 --- /dev/null +++ b/gnuplot-6.0.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:635a28f0993f6ab0d1179e072ad39b8139d07f51237f841d93c6c2ff4b1758ec +size 7522870 diff --git a/gnuplot-PIE.patch b/gnuplot-PIE.patch index 742abfb..5ef73dd 100644 --- a/gnuplot-PIE.patch +++ b/gnuplot-PIE.patch @@ -1,16 +1,20 @@ Index: gnuplot-5.4.1/src/Makefile.am =================================================================== ---- gnuplot-5.4.1.orig/src/Makefile.am -+++ gnuplot-5.4.1/src/Makefile.am -@@ -61,6 +61,7 @@ util3d.c util3d.h variable.c variable.h - voxelgrid.c voxelgrid.h vplot.c vplot.h marching_cubes.h xdg.c xdg.h +--- + gnuplot-6.0.0/src/Makefile.am | 5 +++++ + 1 file changed, 5 insertions(+) + +--- gnuplot-6.0.0/src/Makefile.am ++++ gnuplot-6.0.0/src/Makefile.am 2024-01-08 15:22:45.413763257 +0000 +@@ -67,6 +67,7 @@ voxelgrid.c voxelgrid.h vplot.c vplot.h + watch.c watch.h xdg.c xdg.h - gnuplot_LDADD = $(GD_LIBS) $(TERMLIBS) $(TERMXLIBS) $(WX_LIBS) $(QT_LIBS) + gnuplot_LDADD = $(TERMLIBS) $(TERMXLIBS) $(WX_LIBS) $(QT_LIBS) +gnuplot_LDFLAGS = -pie pkglibexec_PROGRAMS = -@@ -69,6 +70,7 @@ pkglibexec_PROGRAMS += gnuplot_x11 +@@ -75,6 +76,7 @@ pkglibexec_PROGRAMS += gnuplot_x11 gnuplot_x11_SOURCES = gplt_x11.c gplt_x11.h gpexecute.c gpexecute.h mousecmn.h version.c version.h XLIBS = @LIBRARIES_FOR_X@ gnuplot_x11_LDADD = getcolor_x11.o $(XLIBS) @@ -18,11 +22,27 @@ Index: gnuplot-5.4.1/src/Makefile.am endif getcolor_x11.o: getcolor.c -@@ -185,6 +187,7 @@ qtterminal/QtGnuplotApplication.cpp qtte +@@ -102,6 +104,7 @@ $(EXTRA_gnuplot_SOURCES) + if BUILD_WXWIDGETS + gnuplot_SOURCES += wxterminal/wxt_gui.cpp + gnuplot_LDADD += -lX11 ++gnuplot_LDFLAGS += -pie + endif + + if BUILD_GPCAIRO +@@ -189,6 +192,7 @@ qtterminal/QtGnuplotApplication.cpp qtte qtterminal/QtGnuplotScene.cpp qtterminal/QtGnuplotItems.cpp \ qtterminal/QtGnuplotEvent.cpp gnuplot_qt_LDADD = $(QT_LIBS) +gnuplot_qt_LDFLAGS = -pie - # embed example (uncomment to build it) - # + # + # embedded Qt widget example program +@@ -204,6 +208,7 @@ qt_embed_example_SOURCES = qtterminal/qt + qtterminal/QtGnuplotScene.cpp qtterminal/QtGnuplotItems.cpp \ + qtterminal/QtGnuplotInstance.cpp + qt_embed_example_LDADD = $(QT_LIBS) ++qt_embed_example_LDFLAGS = -pie + + endif # build_qt + diff --git a/gnuplot-QtCore-PIC.dif b/gnuplot-QtCore-PIC.dif index 0d6c320..bd7ab71 100644 --- a/gnuplot-QtCore-PIC.dif +++ b/gnuplot-QtCore-PIC.dif @@ -6,7 +6,7 @@ Since QtCore is build with -reduce-relocations a -fPIC is required --- src/Makefile.am +++ src/Makefile.am 2017-09-27 10:07:07.767840550 +0000 -@@ -168,6 +168,9 @@ clean-local: clean-qt-extra clean-demo +@@ -172,6 +172,9 @@ clean-local: clean-qt-extra clean-demo gnuplot_SOURCES += qtterminal/qt_term.cpp diff --git a/gnuplot-doc.changes b/gnuplot-doc.changes index 0d4734a..b33bfb5 100644 --- a/gnuplot-doc.changes +++ b/gnuplot-doc.changes @@ -1,3 +1,52 @@ +------------------------------------------------------------------- +Tue Jan 9 08:36:10 UTC 2024 - Dr. Werner Fink + +- Update to gnuplot 6.0.0 + * Japanese documentation updated + (missing file title-ja.tex, build dependencies for mingw) + * Support building against Qt6 + (./configure falls back to Qt5 if the Qt6 libraries are not found) + * New configure option --enable-stable-sort + 1) Use mergesort rather than qsort if the system provides it. + 2) If neither mergesort nor glibc stable qsort is available, + modify internal gnuplot structures to contain a secondary sort key + * Render color gradient in colorbox as a pixel array (cairo, qt terminals) + * "reset session" restores initial state of all linetype properties + * postscript terminal now handles pixmaps (Bug #2644) + * New plot style "with contourfill" handles 2D and 3D contour plots with + discrete z-ranges indicated by solid fill colors. + + * FIX do not clobber a datablock if its name is encountered unexpectedly + * FIX cairo terminals: ignore zero-size polygons + * FIX svg terminal now correctly tracks pattern-fill color + * FIX integer overflow/wraparound when polygon is clipped to plot border + * FIX do not mangle variable point properties in polar mode Bug #2650 + + * partial support for replotting and mousing multiplots (finally!) + * fixes build error for postscript terminal when libgd and cairo are not present + * strip trailing CR from function blocks read from a dos file Bug #2653 + * use 64-bit integers for iteration + * "unset pointintervalbox" disables the box rather than setting it to default size + * keyentry '...' can be used to place a secondary title in the key + * fix use of stacked histograms with variable number of data columns + - Replotting and mousing multiplots + o now working much more comprehensively + o revert "set mouse multiplot" as a separate command; it's now always in effect + - "plot with polygons" now guarantees that the border of each polygon is a closed curve + - pdf output from the cairo terminals now conforms to %PDF-1.5 +- Refreshed patches + * gnuplot-4.4.0-x11ovf.dif + * gnuplot-4.6.0-demo.diff + * gnuplot-4.6.0-fonts.diff + * gnuplot-4.6.0.dif + * gnuplot-PIE.patch + * gnuplot-QtCore-PIC.dif + * gnuplot-wx3.diff +- Removed patch gnuplot-gd.patch +- Enable almost all terminals +- Enable Complex Airy and Bessel functions +- Enable Support for polar gridded surfaces + ------------------------------------------------------------------- Mon Oct 23 07:36:34 UTC 2023 - Dr. Werner Fink diff --git a/gnuplot-gd.patch b/gnuplot-gd.patch deleted file mode 100644 index ff65b78..0000000 --- a/gnuplot-gd.patch +++ /dev/null @@ -1,104 +0,0 @@ -Index: gnuplot-5.2.2/configure.ac -=================================================================== ---- - gnuplot-5.4.3/configure.ac | 76 +++++------------------------------------- - gnuplot-5.4.3/src/Makefile.am | 2 - - 2 files changed, 11 insertions(+), 67 deletions(-) - ---- gnuplot-5.4.3/configure.ac -+++ gnuplot-5.4.3/configure.ac 2022-01-10 09:30:11.836241429 +0000 -@@ -526,73 +526,17 @@ AC_ARG_WITH(gd,dnl - - if test "$with_gd" != no; then - PKG_CHECK_MODULES_NOFAIL(libgd, [gdlib]) -- AC_PATH_PROG([GDLIB_CONFIG], [gdlib-config]) -- -- # If pkg-config did return libgd configuration then -- # libgd_{CFLAGS,LDFLAGS,LIBS} is set -- # If gdlib-config executable is found then GDLIB_CONFIG is set -- if test $pkg_failed = no && test -n "$GDLIB_CONFIG"; then -- # If pkg-config did succeed and we have gdlib-config then the later takes -- # priority -- libgd_CFLAGS=`$GDLIB_CONFIG --cflags` -- libgd_LDFLAGS=`$GDLIB_CONFIG --ldflags` -- libgd_LIBS=`$GDLIB_CONFIG --libs` -- elif test -d "$with_gd"; then -- # pkg-config did NOT succeed, we do NOT have gdlib-config but user -- # specified --with-gd= -- libgd_CFLAGS="-I$with_gd/include" -- libgd_LDFLAGS="-L$with_gd/lib" -- libgd_LIBS="-ljpeg -lpng -lfreetype -lz" -- fi -- -- # Verify that libgd works, but backup the previous compilation variables to -- # be able to revert in the case that libgd is not functional -- _cppflags="$CPPFLAGS" -- _ldflags="$LDFLAGS" -- _libs="$LIBS" -- CPPFLAGS="$CPPFLAGS $libgd_CFLAGS" -- LDFLAGS="$LDFLAGS $libgd_LDFLAGS" -- LIBS="$LIBS $libgd_LIBS" -- -- AC_CHECK_LIB(gd,gdImageCreateTrueColor, -- [dnl found gd library -+ PKG_CHECK_MODULES([GD], [gdlib], [ -+ ac_cv_lib_gd_gdImageJpeg=yes -+ ac_cv_lib_gd_gdImagePng=yes -+ ac_cv_lib_gd_gdImageGif=yes -+ ac_cv_lib_gd_gdImageGifAnimBegin=yes - AC_DEFINE(HAVE_LIBGD,1,[ Define if you have gd library. ]) -- AC_CHECK_HEADERS(gd.h,, -- AC_MSG_WARN([please add path to gd.h to CPPFLAGS in Makefile])) -- -- dnl gif support in libgd -- AC_CHECK_LIB(gd,gdImageGif, -- [AC_DEFINE(HAVE_GD_GIF,1,[ Define if libgd supports gif. ])]) -- AC_CHECK_LIB(gd,gdImageGifAnimBegin, -- [AC_DEFINE(GIF_ANIMATION,1,[ Define if libgd supports animated gifs. ])]) -- -- dnl jpeg support in libgd -- AC_CHECK_LIB(gd,gdImageJpeg, -- [AC_DEFINE(HAVE_GD_JPEG,1,[ Define if libgd supports jpeg. ])]) -- -- dnl freetype support in libgd -- AC_CHECK_LIB(gd,gdImageStringFT, -- AC_DEFINE(HAVE_GD_TTF,1, -- [ Define if libgd supports TrueType fonts through libfreetype. ])) -- -- dnl png support in libgd -- AC_CHECK_LIB(gd,gdImagePng, -- [AC_DEFINE(HAVE_GD_PNG,1,[ Define if libgd supports png. ])]) -- -- ],[dnl gd library not found -- AC_MSG_WARN([libgd not found or too old, version >= 2.0 is required]) -- with_gd=no -- ]) -- -- dnl piece it all together -- if test "$with_gd" = no; then -- CPPFLAGS="$_cppflags" -- LDFLAGS="$_ldflags" -- LIBS="$_libs" -- else -- LIBS="$_libs" -- TERMLIBS="$TERMLIBS -lgd $libgd_LIBS" -- fi -+ AC_DEFINE(HAVE_GD_GIF,1,[ Define if libgd supports gif. ]) -+ AC_DEFINE(GIF_ANIMATION,1,[ Define if libgd supports animated gifs. ]) -+ AC_DEFINE(HAVE_GD_JPEG,1,[ Define if libgd supports jpeg. ]) -+ AC_DEFINE(HAVE_GD_TTF,1, [ Define if libgd supports TrueType fonts through libfreetype. ]) -+ AC_DEFINE(HAVE_GD_PNG,1,[ Define if libgd supports png. ])]) - - fi - dnl end gd ---- gnuplot-5.4.3/src/Makefile.am -+++ gnuplot-5.4.3/src/Makefile.am 2022-01-10 08:51:05.936921975 +0000 -@@ -60,7 +60,7 @@ term_api.h term.c term.h time.c unset.c - util3d.c util3d.h variable.c variable.h version.c version.h \ - voxelgrid.c voxelgrid.h vplot.c vplot.h marching_cubes.h xdg.c xdg.h - --gnuplot_LDADD = $(TERMLIBS) $(TERMXLIBS) $(WX_LIBS) $(QT_LIBS) -+gnuplot_LDADD = $(GD_LIBS) $(TERMLIBS) $(TERMXLIBS) $(WX_LIBS) $(QT_LIBS) - - pkglibexec_PROGRAMS = - diff --git a/gnuplot-wx3.diff b/gnuplot-wx3.diff index 7bbe2f9..5946d82 100644 --- a/gnuplot-wx3.diff +++ b/gnuplot-wx3.diff @@ -10,7 +10,7 @@ otherwise. --- gnuplot-5.2.0/src/Makefile.am +++ gnuplot-5.2.0/src/Makefile.am 2017-09-27 10:06:44.716255786 +0000 -@@ -95,6 +95,7 @@ $(EXTRA_gnuplot_SOURCES) +@@ -101,6 +101,7 @@ $(EXTRA_gnuplot_SOURCES) if BUILD_WXWIDGETS gnuplot_SOURCES += wxterminal/wxt_gui.cpp diff --git a/gnuplot.changes b/gnuplot.changes index 0d4734a..b33bfb5 100644 --- a/gnuplot.changes +++ b/gnuplot.changes @@ -1,3 +1,52 @@ +------------------------------------------------------------------- +Tue Jan 9 08:36:10 UTC 2024 - Dr. Werner Fink + +- Update to gnuplot 6.0.0 + * Japanese documentation updated + (missing file title-ja.tex, build dependencies for mingw) + * Support building against Qt6 + (./configure falls back to Qt5 if the Qt6 libraries are not found) + * New configure option --enable-stable-sort + 1) Use mergesort rather than qsort if the system provides it. + 2) If neither mergesort nor glibc stable qsort is available, + modify internal gnuplot structures to contain a secondary sort key + * Render color gradient in colorbox as a pixel array (cairo, qt terminals) + * "reset session" restores initial state of all linetype properties + * postscript terminal now handles pixmaps (Bug #2644) + * New plot style "with contourfill" handles 2D and 3D contour plots with + discrete z-ranges indicated by solid fill colors. + + * FIX do not clobber a datablock if its name is encountered unexpectedly + * FIX cairo terminals: ignore zero-size polygons + * FIX svg terminal now correctly tracks pattern-fill color + * FIX integer overflow/wraparound when polygon is clipped to plot border + * FIX do not mangle variable point properties in polar mode Bug #2650 + + * partial support for replotting and mousing multiplots (finally!) + * fixes build error for postscript terminal when libgd and cairo are not present + * strip trailing CR from function blocks read from a dos file Bug #2653 + * use 64-bit integers for iteration + * "unset pointintervalbox" disables the box rather than setting it to default size + * keyentry '...' can be used to place a secondary title in the key + * fix use of stacked histograms with variable number of data columns + - Replotting and mousing multiplots + o now working much more comprehensively + o revert "set mouse multiplot" as a separate command; it's now always in effect + - "plot with polygons" now guarantees that the border of each polygon is a closed curve + - pdf output from the cairo terminals now conforms to %PDF-1.5 +- Refreshed patches + * gnuplot-4.4.0-x11ovf.dif + * gnuplot-4.6.0-demo.diff + * gnuplot-4.6.0-fonts.diff + * gnuplot-4.6.0.dif + * gnuplot-PIE.patch + * gnuplot-QtCore-PIC.dif + * gnuplot-wx3.diff +- Removed patch gnuplot-gd.patch +- Enable almost all terminals +- Enable Complex Airy and Bessel functions +- Enable Support for polar gridded surfaces + ------------------------------------------------------------------- Mon Oct 23 07:36:34 UTC 2023 - Dr. Werner Fink diff --git a/gnuplot.spec b/gnuplot.spec index 0b5e4fe..2ad2aa5 100644 --- a/gnuplot.spec +++ b/gnuplot.spec @@ -1,7 +1,7 @@ # # spec file # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -28,7 +28,6 @@ %global psuffix -%{flavor} %endif -%bcond_without h3d_gridbox Name: gnuplot%{?psuffix} BuildRequires: ImageMagick BuildRequires: automake @@ -39,6 +38,7 @@ BuildRequires: glib2-devel BuildRequires: libqt5-linguist-devel BuildRequires: lua-devel BuildRequires: netpbm +BuildRequires: openspecfun-devel BuildRequires: pango-devel BuildRequires: plotutils-devel BuildRequires: readline-devel @@ -78,9 +78,9 @@ BuildRequires: tex(subfigure.sty) BuildRequires: tex(textgreek.sty) %endif URL: https://www.gnuplot.info/ -Version: 5.4.10 +Version: 6.0.0 Release: 0 -%global underscore 5_4 +%global underscore 6 %if "%{flavor}" == "" Summary: Function Plotting Utility and more License: GPL-2.0-or-later AND SUSE-Gnuplot @@ -91,7 +91,7 @@ License: GPL-2.0-or-later AND SUSE-Gnuplot Group: Documentation/Other %endif Source0: https://downloads.sourceforge.net/project/gnuplot/gnuplot/%{version}/gnuplot-%{version}.tar.gz -Source1: https://downloads.sourceforge.net/project/gnuplot/gnuplot/%{version}/Gnuplot_%{underscore}.pdf +Source1: https://downloads.sourceforge.net/project/gnuplot/gnuplot/%{version}/Gnuplot%{underscore}.pdf Source2: gnuplot-fr.doc.bz2 Source3: README.whynot # https://mirrors.ctan.org/macros/latex209/contrib/picins/picins.sty @@ -105,11 +105,10 @@ Patch2: gnuplot-4.6.0-fonts.diff Patch4: gnuplot-4.6.0-demo.diff Patch5: gnuplot-wx3.diff Patch6: gnuplot-QtCore-PIC.dif -Patch7: gnuplot-gd.patch -Patch8: gnuplot-PIE.patch +Patch7: gnuplot-PIE.patch %define _x11lib %{_libdir} %define _x11data %{_datadir}/X11 -%define _libx11 %{_exec_prefix}/lib/X11 +%define _x11inc %{_includedir}/X11 %define _appdef %{_x11data}/app-defaults %define _gnplttex tex/latex/gnuplot %if "%{flavor}" == "doc" @@ -134,14 +133,13 @@ and can easily be extended to include new devices. bunzip2 -dc %{_sourcedir}/gnuplot-fr.doc.bz2 > docs/gnuplot-fr.doc test $? -eq 0 || exit 1 cp %{_sourcedir}/picins.sty docs -%patch2 -p0 -b .font -%patch4 -p0 -b .demo -%patch0 -p1 -b .0 -%patch1 -p0 -b .x11ovf -%patch5 -p1 -b .w3x -%patch6 -p0 -b .pic -%patch7 -p1 -b .gd -%patch8 -p1 -b .pie +%patch -P2 -p0 -b .font +%patch -P4 -p0 -b .demo +%patch -P0 -p1 -b .0 +%patch -P1 -p0 -b .x11ovf +%patch -P5 -p1 -b .w3x +%patch -P6 -p0 -b .pic +%patch -P7 -p1 -b .pie %build autoreconf -fi @@ -160,8 +158,12 @@ autoreconf -fi %endif %endif + mkdir bin + ln -sf /bin/true bin/dvips + ln -sf /bin/true bin/emacs + PATH=${PATH}:${PWD}/bin + %configure \ - --enable-stats \ --with-x \ --x-includes=%{_x11inc} \ --x-libraries=%{_x11lib}\ @@ -179,17 +181,19 @@ autoreconf -fi --with-gpic \ --with-mif \ --enable-x11-mbfonts \ -%if ! %{with h3d_gridbox} - --enable-h3d-quadtree \ - --disable-h3d-gridbox \ -%else - --disable-h3d-quadtree \ - --enable-h3d-gridbox \ -%endif - --enable-backwards-compatibility\ - --with-gd=%{_usr} \ - --without-row-help \ + --enable-stats \ + --enable-stable-sort \ + --enable-polar-grid \ + --enable-watchpoints \ + --enable-function-blocks \ + --enable-backward-compatibility \ + --with-gd=yes \ --with-caca \ + --with-tgif \ + --with-metafont \ + --with-metapost \ + --with-regis \ + --with-amos=%{_libdir} \ --with-qt=qt5 %if "%{flavor}" == "" @@ -223,7 +227,7 @@ autoreconf -fi %if "%{flavor}" == "" make DESTDIR=%{buildroot} appdefaultdir=%{_appdef} install mkdir -p %{buildroot}/%{_mandir}/ja/man1 - install -m 0644 man/gnuplot-ja_JP.UTF-8 %{buildroot}/%{_mandir}/ja/man1/gnuplot.1 + install -m 0644 man/ja/man1/gnuplot.1 %{buildroot}/%{_mandir}/ja/man1/gnuplot.1 %endif %if "%{flavor}" == "doc"