diff -U 3 -H -d -r -N -x '.svn/*' -- gnuplot-cvs/configure.in gnuplot-cvs.dif/configure.in --- gnuplot-cvs/configure.in 2011-08-17 22:31:26.652066109 +0200 +++ gnuplot-cvs.dif/configure.in 2011-08-17 22:44:53.104586854 +0200 @@ -322,7 +322,7 @@ [AC_DEFINE(LINUXVGA,1, [ Define if this is a Linux system with SuperVGA library. ]) LINUXSUID='chown root $(bindir)/gnuplot; chmod u+s $(bindir)/gnuplot' - TERMLIBS="-lvga $TERMLIBS"], + TERMLIBS="/usr/${ARCHLIB:=lib}/libvga.a $TERMLIBS"], with_linux_vga=no) fi diff -U 3 -H -d -r -N -x '.svn/*' -- gnuplot-cvs/docs/Makefile.in gnuplot-cvs.dif/docs/Makefile.in --- gnuplot-cvs/docs/Makefile.in 2011-08-17 22:31:27.473061565 +0200 +++ gnuplot-cvs.dif/docs/Makefile.in 2011-08-17 22:44:53.104586854 +0200 @@ -38,7 +38,7 @@ # # default is what is needed for interactive gnuplot -all: gnuplot.gih +all: gnuplot.gih gnuplot-fr.gih gnuplot.info # this tells GNU make not to export variables into the environment # But other makes dont understand its significance, so it must @@ -343,12 +343,16 @@ $(LINK) doc2hlp.o termdoc.o $(LIBS) ### gnuplot interactive help format -gih: gnuplot.gih +gih: gnuplot.gih gnuplot-fr.gih gnuplot.gih: doc2gih $(srcdir)/gnuplot.doc @rm -f alldoc2gih ./doc2gih $(srcdir)/gnuplot.doc gnuplot.gih +gnuplot-fr.gih: doc2gih $(srcdir)/gnuplot-fr.doc + @rm -f alldoc2gih + ./doc2gih $(srcdir)/gnuplot-fr.doc gnuplot-fr.gih + doc2gih: doc2gih.o termdoc.o $(LINK) doc2gih.o termdoc.o $(LIBS) @@ -445,6 +449,7 @@ install-gih: gnuplot.gih $(top_srcdir)/mkinstalldirs $(DESTDIR)$(GIHDIR) $(INSTALL_DATA) gnuplot.gih $(DESTDIR)$(GIHDIR)/gnuplot.gih + $(INSTALL_DATA) gnuplot-fr.gih $(DESTDIR)$(GIHDIR)/gnuplot-fr.gih install-pdf: $(top_srcdir)/mkinstalldirs $(DESTDIR)$(GIHDIR) @@ -470,6 +475,7 @@ uninstall-gih: rm -f $(DESTDIR)$(GIHDIR)/gnuplot.gih + rm -f $(DESTDIR)$(GIHDIR)/gnuplot-fr.gih uninstall-pdf: rm -f $(DESTDIR)$(GIHDIR)/gnuplot.pdf diff -U 3 -H -d -r -N -x '.svn/*' -- gnuplot-cvs/src/gadgets.h gnuplot-cvs.dif/src/gadgets.h --- gnuplot-cvs/src/gadgets.h 2011-08-17 22:31:29.955047825 +0200 +++ gnuplot-cvs.dif/src/gadgets.h 2011-08-17 22:44:53.111586814 +0200 @@ -414,7 +414,7 @@ extern TBOOLEAN clip_lines2; extern TBOOLEAN clip_points; -#define SAMPLES 100 /* default number of samples for a plot */ +#define SAMPLES 500 /* default number of samples for a plot */ extern int samples_1; extern int samples_2; diff -U 3 -H -d -r -N -x '.svn/*' -- gnuplot-cvs/src/gplt_x11.c gnuplot-cvs.dif/src/gplt_x11.c --- gnuplot-cvs/src/gplt_x11.c 2011-08-17 22:31:30.011047518 +0200 +++ gnuplot-cvs.dif/src/gplt_x11.c 2011-08-17 22:44:53.113586802 +0200 @@ -2237,8 +2237,11 @@ } } /* X11_justify_text(mode) - set text justification mode */ - else if (*buffer == 'J') - sscanf(buffer, "J%4d", (int *) &plot->jmode); + else if (*buffer == 'J') { + int jmode; + sscanf(buffer, "J%4d", &jmode); + plot->jmode = jmode; + } else if (*buffer == 'A') sscanf(buffer + 1, "%lf", &plot->angle); diff -U 3 -H -d -r -N -x '.svn/*' -- gnuplot-cvs/src/plot.c gnuplot-cvs.dif/src/plot.c --- gnuplot-cvs/src/plot.c 2011-08-17 22:31:30.649043986 +0200 +++ gnuplot-cvs.dif/src/plot.c 2011-08-17 22:44:53.114586796 +0200 @@ -213,6 +213,7 @@ void drop_privilege() { +#ifndef SVGA_IS_SECURE if (!asked_privi) { euid = geteuid(); egid = getegid(); @@ -226,11 +227,13 @@ 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(); @@ -244,6 +247,7 @@ if (seteuid(euid) == -1) (void) fprintf(stderr, "seteuid(%d): %s\n", (int) euid, strerror(errno)); +#endif } #endif /* LINUXVGA */ @@ -269,8 +273,8 @@ int i; #ifdef LINUXVGA - LINUX_setup(); /* setup VGA before dropping privilege DBT 4/5/99 */ drop_privilege(); + LINUX_setup(); #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 */ @@ -331,6 +335,22 @@ rl_getc_function = getc_wrapper; #endif +#ifdef __linux__ + if (!getenv("GNUHELP")) { + const char* msg = setlocale(LC_MESSAGES, NULL); + if (msg) { + char hfile[64]; + struct stat buf; + + sprintf(hfile, "/usr/share/gnuplot/%s/gnuplot-", gnuplot_version); + strncat(hfile, msg, 2); + strcat (hfile, ".gih"); + if (stat(hfile, &buf) == 0) + setenv("GNUHELP", strdup(hfile), 0); + } + } +#endif + #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' diff -U 3 -H -d -r -N -x '.svn/*' -- gnuplot-cvs/src/term.h gnuplot-cvs.dif/src/term.h --- gnuplot-cvs/src/term.h 2011-08-17 22:31:31.431039658 +0200 +++ gnuplot-cvs.dif/src/term.h 2011-08-17 22:44:53.115586790 +0200 @@ -277,9 +277,9 @@ #include "emf.trm" /* Roland DXY800A plotter */ -/* #include "dxy.trm" */ +#include "dxy.trm" /* QMS/EXCL laserprinter (Talaris 1590 and others) */ -/* #include "excl.trm" */ +#include "excl.trm" /* fig graphics */ #include "fig.trm" @@ -312,7 +312,7 @@ #include "imagen.trm" /* Kyocera Prescribe printer */ -/* #include "kyo.trm" */ +#include "kyo.trm" /* Frame Maker MIF 3.00 format driver */ #include "mif.trm" @@ -345,7 +345,7 @@ #include "tkcanvas.trm" /* Vectrix 384 printer, also Tandy colour */ -/* #include "v384.trm" */ +#include "v384.trm" #ifndef NO_BITMAP_SUPPORT diff -U 3 -H -d -r -N -x '.svn/*' -- gnuplot-cvs/term/linux.trm gnuplot-cvs.dif/term/linux.trm --- gnuplot-cvs/term/linux.trm 2011-08-17 22:31:33.287029383 +0200 +++ gnuplot-cvs.dif/term/linux.trm 2011-08-17 22:44:53.116586784 +0200 @@ -80,7 +80,7 @@ TERM_PUBLIC void LINUX_move __PROTO((unsigned int x, unsigned int y)); TERM_PUBLIC void LINUX_vector __PROTO((unsigned int x, unsigned int y)); TERM_PUBLIC int LINUX_text_angle __PROTO((int ang)); -TERM_PUBLIC void LINUX_put_text __PROTO((unsigned int x, unsigned int y, const char *str)); +TERM_PUBLIC void LINUX_put_text __PROTO((unsigned int x, unsigned int y, char *str)); TERM_PUBLIC void LINUX_suspend __PROTO((void)); TERM_PUBLIC void LINUX_resume __PROTO((void)); @@ -293,7 +293,7 @@ } TERM_PUBLIC void -LINUX_put_text(unsigned int x, unsigned int y, const char *str) +LINUX_put_text(unsigned int x, unsigned int y, char *str) { int i; switch (linux_angle) {