diff options
author | Lukas Gorris <lukas.gorris@gmail.com> | 2009-03-30 21:20:14 +0200 |
---|---|---|
committer | Lukas Gorris <lukas.gorris@gmail.com> | 2009-03-30 21:20:14 +0200 |
commit | a93dfebb9e7a34ffba9b1ae5e8e496dfab4c3c43 (patch) | |
tree | 6c38a4617c92398269e6603a0509fc3006811368 /recipes/gnuplot/gnuplot-4.0.0/debian-separate-x11-package.patch | |
parent | 4255898da29e7e0c521d064afedbc4075b3e8155 (diff) | |
parent | d7fdcef3d8c8b80926d579c2db179b594429cebe (diff) |
Merge branch 'org.openembedded.dev' of git@git.openembedded.net:openembedded into org.openembedded.dev
Diffstat (limited to 'recipes/gnuplot/gnuplot-4.0.0/debian-separate-x11-package.patch')
-rw-r--r-- | recipes/gnuplot/gnuplot-4.0.0/debian-separate-x11-package.patch | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/recipes/gnuplot/gnuplot-4.0.0/debian-separate-x11-package.patch b/recipes/gnuplot/gnuplot-4.0.0/debian-separate-x11-package.patch new file mode 100644 index 0000000000..7afa0ee00e --- /dev/null +++ b/recipes/gnuplot/gnuplot-4.0.0/debian-separate-x11-package.patch @@ -0,0 +1,59 @@ +--- gnuplot-4.0.0.orig/src/term.c ++++ gnuplot-4.0.0/src/term.c +@@ -1278,6 +1278,33 @@ + return (t); + } + ++#ifdef X11 ++int ++x11driver_found() ++{ ++ char *binname = "/gnuplot_x11"; ++ char *fullname; ++ struct stat buf; ++ ++ fullname = (char*)malloc(sizeof(X11_DRIVER_DIR) + sizeof(binname) + 1); ++ strcat(fullname, X11_DRIVER_DIR); ++ strcat(fullname, binname); ++ ++ /* exists? */ ++ if (stat(fullname, &buf)) { ++ free(fullname); ++ return 0; ++ } ++ ++ free(fullname); ++ /* executable? */ ++ if (buf.st_mode && S_IXOTH) ++ return 1; ++ ++ return 0; ++} ++#endif ++ + /* + * Routine to detect what terminal is being used (or do anything else + * that would be nice). One anticipated (or allowed for) side effect +@@ -1356,12 +1383,18 @@ + env_term = getenv("TERM"); /* try $TERM */ + if (term_name == (char *) NULL + && env_term != (char *) NULL && strcmp(env_term, "xterm") == 0) +- term_name = "x11"; ++ term_name = "x11"; + display = getenv("DISPLAY"); + if (term_name == (char *) NULL && display != (char *) NULL) +- term_name = "x11"; ++ term_name = "x11"; + if (X11_Display) +- term_name = "x11"; ++ term_name = "x11"; ++ /* if x11 was selected check for driver */ ++ if (term_name && (strcmp(term_name, "x11") == 0) && !x11driver_found() && isatty(fileno(stdin))) { ++ printf("*** X11 output driver not found, switching to dumb terminal!\n"); ++ printf("*** If you want to use the X11 output, please install the ""gnuplot-x11"" package\n"); ++ term_name = "dumb"; ++ }; + #endif /* x11 */ + + #ifdef AMIGA + |