view src/stable-octave-1-gnulib-isatty.patch @ 3853:58935b4de51f

Enable build cross mkoctfile and compile of-XXXX package files * Makefile.in Add ENABLE_BINARY_PACKAGES, MXE_MKOCTFILE variable. Add OCTAVE_FORGE_PKG_COMPILE, OCTAVE_FORGE_PKG_BUILD_NOCOMPILE macros * configure.ac: add --enable-binary-packages option * src/default-octave.mk: if mingw, enable cross compile of mkoctfile, install the cross built mkoctfile to usr/bin * src/of-communications.mk: use OCTAVE_FORGE_PKG_BUILD_NOCOMPILE rule * src/of-control.mk: use OCTAVE_FORGE_PKG_BUILD_NOCOMPILE rule * src/of-dicom.mk: use OCTAVE_FORGE_PKG_BUILD_NOCOMPILE rule * src/of-fits.mk: use OCTAVE_FORGE_PKG_BUILD_NOCOMPILE rule * src/of-fl-core.mk: use OCTAVE_FORGE_PKG_BUILD_NOCOMPILE rule * src/of-image.mk: use OCTAVE_FORGE_PKG_BUILD_NOCOMPILE rule * src/of-linear-algebra.mk: use OCTAVE_FORGE_PKG_BUILD_NOCOMPILE rule * src/of-ltfat.mk: use OCTAVE_FORGE_PKG_BUILD_NOCOMPILE rule * src/of-linear-algebra.mk: use OCTAVE_FORGE_PKG_BUILD_NOCOMPILE rule * src/of-miscellaneous.mk: use OCTAVE_FORGE_PKG_BUILD with UNITS_AVAILABLE=yes arg * src/of-netcdf.mk: use OCTAVE_FORGE_PKG_BUILD_NOCOMPILE rule * src/of-odepkg.mk: use OCTAVE_FORGE_PKG_BUILD_NOCOMPILE rule * src/of-sockets.mk: use OCTAVE_FORGE_PKG_BUILD_NOCOMPILE rule * src/of-windows.mk: use OCTAVE_FORGE_PKG_BUILD_NOCOMPILE rule
author John Donoghue
date Thu, 19 Mar 2015 14:03:28 -0400
parents 1e623b4ce67b
children
line wrap: on
line source

Patch based on savannah.gnu.org/bugs/?327623#attached

diff -ur octave-3.8.2-rc2.orig/libgnu/isatty.c octave-3.8.2-rc2/libgnu/isatty.c
--- octave-3.8.2-rc2.orig/libgnu/isatty.c	2014-08-12 15:31:01.710229546 -0400
+++ octave-3.8.2-rc2/libgnu/isatty.c	2014-08-12 15:41:15.603406658 -0400
@@ -34,7 +34,13 @@
 
 /* Optimized test whether a HANDLE refers to a console.
    See <http://lists.gnu.org/archive/html/bug-gnulib/2009-08/msg00065.html>.  */
-#define IsConsoleHandle(h) (((intptr_t) (h) & 3) == 3)
+//#define IsConsoleHandle(h) (((intptr_t) (h) & 3) == 3)
+static BOOL
+IsConsoleHandle(HANDLE h)
+{
+  DWORD mode;
+  return GetConsoleMode(h, &mode) != 0;
+}
 
 #if HAVE_MSVC_INVALID_PARAMETER_HANDLER
 static int
diff -ur octave-3.8.2-rc2.orig/libgnu/select.c octave-3.8.2-rc2/libgnu/select.c
--- octave-3.8.2-rc2.orig/libgnu/select.c	2014-08-12 15:31:01.704229427 -0400
+++ octave-3.8.2-rc2/libgnu/select.c	2014-08-12 15:44:44.268552023 -0400
@@ -84,7 +84,14 @@
 
 /* Optimized test whether a HANDLE refers to a console.
    See <http://lists.gnu.org/archive/html/bug-gnulib/2009-08/msg00065.html>.  */
-#define IsConsoleHandle(h) (((intptr_t) (h) & 3) == 3)
+//#define IsConsoleHandle(h) (((intptr_t) (h) & 3) == 3)
+static BOOL
+IsConsoleHandle(HANDLE h)
+{
+  DWORD mode;
+  return GetConsoleMode(h, &mode) != 0;
+}
+
 
 static BOOL
 IsSocketHandle (HANDLE h)