[Pkg-octave-commit] [SCM] Debian packaging for octave-miscellaneous branch, master, updated. debian/1.0.11-3-11-g280a6fa

Sébastien Villemot sebastien.villemot at ens.fr
Mon Apr 2 13:43:48 UTC 2012


The following commit has been merged in the master branch:
commit 1cb9b511a29f32fe4757f5be5e71b5919d07d7d3
Author: Sébastien Villemot <sebastien.villemot at ens.fr>
Date:   Mon Apr 2 15:07:18 2012 +0200

    debian/patches/waitbar-rename.patch: remove patch (applied upstream)

diff --git a/debian/patches/series b/debian/patches/series
index e040be4..0e3373b 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,2 @@
 special_matrix_lauchli
-waitbar-rename.patch
 no-flexml.patch
diff --git a/debian/patches/waitbar-rename.patch b/debian/patches/waitbar-rename.patch
deleted file mode 100644
index ac94260..0000000
--- a/debian/patches/waitbar-rename.patch
+++ /dev/null
@@ -1,562 +0,0 @@
-Description: renamed waitbar to text_waitbar to not shadow core function
-Author: Carnë Draug <carandraug+dev at gmail.com>
-Origin: commit: 9647
-Last-Update: 2012-03-09
----
-This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
---- a/src/waitbar.cc
-+++ /dev/null
-@@ -1,265 +0,0 @@
--/**************************************************************************
-- *  Waitbar function -- displays progress of lengthy calculations
-- *  -------------------------------------------------------------
-- *  Copyright (c) 2002  Quentin Spencer <qspencer at ieee.org>
-- *
-- *  This library is free software; you can redistribute it and/or
-- *  modify it under the terms of the GNU Library General Public
-- *  License as published by the Free Software Foundation; either
-- *  version 2 of the License, or (at your option) any later version.
-- *
-- *  This library is distributed in the hope that it will be useful,
-- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
-- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-- *  Library General Public License for more details.
-- *
-- *  You should have received a copy of the GNU Library General Public
-- *  License along with this library; if not, see <http://www.gnu.org/licenses/>.
-- *
-- *************************************************************************/
--
--#include <octave/oct.h>
--
--// Note the extern "C" is need for mingw with a version of termcap.h 
--// without the extern "C" explicitly included. Doing it twice should be
--// harmless.
--extern "C" {
--#if defined (HAVE_TERM_H)
--#  include <term.h>
--#elif defined (HAVE_TERMCAP_H)
--#  include <termcap.h>
--#endif
--};
--
--#define BUF_SIZE	256
--#define MAX_LEN		240
--#define DEFAULT_LEN	50
--#define	BAR_CHAR	'#'
--#define SPACING		3
--
--static bool no_terminal=false;
--
--DEFUN_DLD(waitbar, args, nargout,
--"waitbar(...);\n\
-- WAITBAR displays a text-based wait bar. This function\n\
-- is similar to the Matlab waitbar command, but it is\n\
-- a text, rather than graphical function.\n\n\
-- A typical usage of WAITBAR in a lengthy computation\n\
-- (inside a FOR loop, for example) is as follows:\n\n\
-- for i=1:1000\n\
--     ## computation\n\
--     waitbar(i/1000);\n\
-- end\n\n\
-- WAITBAR(X,TITLE), where 0 <= X <= 1, sets the position of\n\
-- the waitbar to the fractional length X. Values of X exactly\n\
-- equal to 0 or 1 clear the waitbar. The optional second\n\
-- argument TITLE sets the waitbar caption to TITLE.\n\n\
-- If Octave is running in a smart terminal, the width is\n\
-- automatically detected, and the title is displayed in the\n\
-- waitbar (and truncated if it is too long). Otherwise, the\n\
-- title is not displayed and the width is initialized to a\n\
-- default of 50 characters, or it can be set to N characters\n\
-- with WAITBAR(0,N). If no terminal is detected (such as when\n\
-- Octave is run in batch mode and output is redirected), no\n\
-- output is generated.\n\n\
-- For compatibility with the Matlab version of this function\n\
-- (which is graphical rather than text-based), additional\n\
-- arguments are ignored, but there are no guarantees of perfect\n\
-- compatibility.")
--{
--  static char print_buf[BUF_SIZE];
--  static int n_chars_old;
--  static int pct_int_old;
--  static int length;
--#if defined(USE_TERM)
--  static char term_buffer[1024];
--  static char *begin_rv, *end_rv;
--  static int brvlen, ervlen, pct_pos;
--  static bool smart_term;
--  static bool newtitle = false;
--  static charMatrix title;
--  int j;
--#endif
--  static char *term;
--  static bool init;
--
--  double pct;
--  int i;
--
--  octave_value_list retval;
--  retval(0) = Matrix(0,0);
--  int nargin = args.length();
--  if (nargin < 1) {
--    print_usage ();
--    return retval;
--  }
--
--  if(no_terminal)
--    return retval;
--
--  pct	= args(0).double_value();
--  if(pct>1.0)	pct	= 1.0;		// to prevent overflow
--
--#if defined(USE_TERM)
--  if(nargin==2 && args(1).is_string())
--    {
--      newtitle = true;
--      title = args(1).string_value();
--    }
--  if(nargin==3)
--    {
--      newtitle = true;
--      title = args(2).string_value();
--    }
--#endif
--
--  if(pct==0.0 || pct==1.0)
--    {
--      init = true;
--      term = getenv("TERM");
--      if(!term)
--	{
--	  no_terminal	= true;
--	  return retval;
--	}
--#if defined (USE_TERM)
--      i = tgetnum("co");
--      smart_term = i ? true : false;
--      if(nargin==1 || args(1).is_string())
--	length = smart_term ? i-1 : DEFAULT_LEN;
--#else
--      if(nargin==1)
--        length = DEFAULT_LEN;
--#endif
--      else
--	if(nargin==2 && !(args(1).is_string()))
--	{
--	  length	= args(1).int_value();
--	  if(length>MAX_LEN)	length	= MAX_LEN;
--	  if(length<=0)		length	= DEFAULT_LEN;
--	}
--#if defined (USE_TERM)
--      pct_pos = length/2-2;
--      if(smart_term)
--	{
--	  // get terminal strings ("rv"="reverse video")
--	  char* buf_ptr	= term_buffer;
--	  begin_rv	= tgetstr("so", &buf_ptr);
--	  end_rv	= tgetstr("se", &buf_ptr);
--	  
--	  // Display a progress bar, but only if the current terminal has a
--	  // standout mode
--	  if (begin_rv && end_rv)
--	    {
--	      brvlen = 0;	
--	      buf_ptr = begin_rv;
--	      while(buf_ptr[++brvlen]);
--	      ervlen = 0;	buf_ptr = end_rv;
--	      while(buf_ptr[++ervlen]);
--	    }
--	 	  
--	  // initialize print buffer
--	  for(i=0; i<BUF_SIZE; ++i)
--	    print_buf[i]	= ' ';
--	  print_buf[length+brvlen+ervlen+1] = '\r';
--	  print_buf[length+brvlen+ervlen+2] = '\0';
--	  for(i=0; i<brvlen; ++i)
--	    print_buf[i]	= begin_rv[i];
--	  for(i=0; i<ervlen; ++i)
--	    print_buf[i+brvlen]	= end_rv[i];
--	  fputs(print_buf,stdout);
--	  if(title.length())
--	    newtitle	= true;
--	}
--      else
--	{
--#endif
--	  for(i=0; i<BUF_SIZE; ++i)
--	    print_buf[i]	= ' ';
--	  print_buf[length+8]	= '\r';
--	  print_buf[length+9]	= '\0';
--	  fputs(print_buf,stdout);
--	  print_buf[0]		= '[';
--	  print_buf[length+1]	= ']';
--#if defined (USE_TERM)
--	}
--#endif
--      n_chars_old	= 0;
--      fflush(stdout);
--      return retval;
--    }
--  else
--    {
--      // calculate position
--      int n_chars=(int)(pct*length+0.5);
--      int pct_int=(int)(pct*100.0+0.5);
--
--      // check to see if we got this far without initialization
--      if(init==false)
--	{
--	  Fwaitbar(octave_value(0.0),0);
--	  fputs(print_buf,stdout);
--	  fflush(stdout);
--	}
--
--      // check to see of output needs to be updated
--#if !defined (USE_TERM)
--      if(n_chars!=n_chars_old || pct_int!=pct_int_old)
--	{
--#else
--      if(n_chars!=n_chars_old || pct_int!=pct_int_old || newtitle)
--	{
--	  if(smart_term)
--	    {
--	      static char pct_str[5];
--	      sprintf(pct_str,"%3i%%",pct_int);
--
--	      // Insert the title
--	      if(newtitle)
--		{
--		  pct_pos	= length-SPACING*2;
--		  for(i=SPACING+brvlen; i<pct_pos+brvlen-SPACING;  ++i)
--		    print_buf[ i>=n_chars_old+brvlen ? i+ervlen : i ] = ' ';
--		  for(i=SPACING+brvlen, j=0; j<title.length(); ++i, ++j)
--		    if(i<pct_pos+brvlen-SPACING)
--		      print_buf[ i>=n_chars_old ? i+ervlen : i ] = title(0,j);
--		  newtitle	= false;
--		}
--
--	      // Insert the percentage string
--	      for(i=pct_pos+brvlen, j=0; j<4; ++i, ++j)
--		print_buf[ i>=n_chars_old+brvlen ? i+ervlen : i ] = pct_str[j];
--
--	      // Move print_buf characters
--	      if(n_chars_old<n_chars)
--		for(i=n_chars_old+brvlen; i<n_chars+brvlen; ++i)
--		  print_buf[i]	= print_buf[i+ervlen];
--	      else
--		for(i=n_chars_old+brvlen-1; i>=n_chars+brvlen; --i)
--		  print_buf[i+ervlen]	= print_buf[i];
--
--	      // Insert end of reverse video
--	      for(i=n_chars+brvlen, j=0; j<ervlen; ++i, ++j)
--		print_buf[i]	= end_rv[j];
--	    }
--	  else
--	    {
--#endif
--	      if(n_chars>=n_chars_old)
--		for(int i=n_chars_old+1; i<=n_chars; ++i)
--		  print_buf[i]	= BAR_CHAR;
--	      else
--		for(int i=n_chars+1; i<=n_chars_old; ++i)
--		  print_buf[i]	= ' ';
--	      sprintf(&(print_buf[length+3])," %3i%%\r",pct_int);
--#if defined (USE_TERM)
--	    }
--#endif
--	  fputs(print_buf,stdout);
--	  fflush(stdout);
--	  n_chars_old	= n_chars;
--	  pct_int_old	= pct_int;
--	}
--    }
--  return retval;
--}
---- /dev/null
-+++ b/src/text_waitbar.cc
-@@ -0,0 +1,265 @@
-+/**************************************************************************
-+ *  Waitbar function -- displays progress of lengthy calculations
-+ *  -------------------------------------------------------------
-+ *  Copyright (c) 2002  Quentin Spencer <qspencer at ieee.org>
-+ *
-+ *  This library is free software; you can redistribute it and/or
-+ *  modify it under the terms of the GNU Library General Public
-+ *  License as published by the Free Software Foundation; either
-+ *  version 2 of the License, or (at your option) any later version.
-+ *
-+ *  This library is distributed in the hope that it will be useful,
-+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ *  Library General Public License for more details.
-+ *
-+ *  You should have received a copy of the GNU Library General Public
-+ *  License along with this library; if not, see <http://www.gnu.org/licenses/>.
-+ *
-+ *************************************************************************/
-+
-+#include <octave/oct.h>
-+
-+// Note the extern "C" is need for mingw with a version of termcap.h 
-+// without the extern "C" explicitly included. Doing it twice should be
-+// harmless.
-+extern "C" {
-+#if defined (HAVE_TERM_H)
-+#  include <term.h>
-+#elif defined (HAVE_TERMCAP_H)
-+#  include <termcap.h>
-+#endif
-+};
-+
-+#define BUF_SIZE	256
-+#define MAX_LEN		240
-+#define DEFAULT_LEN	50
-+#define	BAR_CHAR	'#'
-+#define SPACING		3
-+
-+static bool no_terminal=false;
-+
-+DEFUN_DLD(text_waitbar, args, nargout,
-+"text_waitbar(...);\n\
-+ TEXT_WAITBAR displays a text-based wait bar. This function\n\
-+ is similar to the Matlab waitbar command, but it is\n\
-+ a text, rather than graphical function.\n\n\
-+ A typical usage of TEXT_WAITBAR in a lengthy computation\n\
-+ (inside a FOR loop, for example) is as follows:\n\n\
-+ for i=1:1000\n\
-+     ## computation\n\
-+     text_waitbar(i/1000);\n\
-+ end\n\n\
-+ TEXT_WAITBAR(X,TITLE), where 0 <= X <= 1, sets the position of\n\
-+ the waitbar to the fractional length X. Values of X exactly\n\
-+ equal to 0 or 1 clear the waitbar. The optional second\n\
-+ argument TITLE sets the waitbar caption to TITLE.\n\n\
-+ If Octave is running in a smart terminal, the width is\n\
-+ automatically detected, and the title is displayed in the\n\
-+ waitbar (and truncated if it is too long). Otherwise, the\n\
-+ title is not displayed and the width is initialized to a\n\
-+ default of 50 characters, or it can be set to N characters\n\
-+ with TEXT_WAITBAR(0,N). If no terminal is detected (such as when\n\
-+ Octave is run in batch mode and output is redirected), no\n\
-+ output is generated.\n\n\
-+ For compatibility with the Matlab version of this function\n\
-+ (which is graphical rather than text-based), additional\n\
-+ arguments are ignored, but there are no guarantees of perfect\n\
-+ compatibility.")
-+{
-+  static char print_buf[BUF_SIZE];
-+  static int n_chars_old;
-+  static int pct_int_old;
-+  static int length;
-+#if defined(USE_TERM)
-+  static char term_buffer[1024];
-+  static char *begin_rv, *end_rv;
-+  static int brvlen, ervlen, pct_pos;
-+  static bool smart_term;
-+  static bool newtitle = false;
-+  static charMatrix title;
-+  int j;
-+#endif
-+  static char *term;
-+  static bool init;
-+
-+  double pct;
-+  int i;
-+
-+  octave_value_list retval;
-+  retval(0) = Matrix(0,0);
-+  int nargin = args.length();
-+  if (nargin < 1) {
-+    print_usage ();
-+    return retval;
-+  }
-+
-+  if(no_terminal)
-+    return retval;
-+
-+  pct	= args(0).double_value();
-+  if(pct>1.0)	pct	= 1.0;		// to prevent overflow
-+
-+#if defined(USE_TERM)
-+  if(nargin==2 && args(1).is_string())
-+    {
-+      newtitle = true;
-+      title = args(1).string_value();
-+    }
-+  if(nargin==3)
-+    {
-+      newtitle = true;
-+      title = args(2).string_value();
-+    }
-+#endif
-+
-+  if(pct==0.0 || pct==1.0)
-+    {
-+      init = true;
-+      term = getenv("TERM");
-+      if(!term)
-+	{
-+	  no_terminal	= true;
-+	  return retval;
-+	}
-+#if defined (USE_TERM)
-+      i = tgetnum("co");
-+      smart_term = i ? true : false;
-+      if(nargin==1 || args(1).is_string())
-+	length = smart_term ? i-1 : DEFAULT_LEN;
-+#else
-+      if(nargin==1)
-+        length = DEFAULT_LEN;
-+#endif
-+      else
-+	if(nargin==2 && !(args(1).is_string()))
-+	{
-+	  length	= args(1).int_value();
-+	  if(length>MAX_LEN)	length	= MAX_LEN;
-+	  if(length<=0)		length	= DEFAULT_LEN;
-+	}
-+#if defined (USE_TERM)
-+      pct_pos = length/2-2;
-+      if(smart_term)
-+	{
-+	  // get terminal strings ("rv"="reverse video")
-+	  char* buf_ptr	= term_buffer;
-+	  begin_rv	= tgetstr("so", &buf_ptr);
-+	  end_rv	= tgetstr("se", &buf_ptr);
-+	  
-+	  // Display a progress bar, but only if the current terminal has a
-+	  // standout mode
-+	  if (begin_rv && end_rv)
-+	    {
-+	      brvlen = 0;	
-+	      buf_ptr = begin_rv;
-+	      while(buf_ptr[++brvlen]);
-+	      ervlen = 0;	buf_ptr = end_rv;
-+	      while(buf_ptr[++ervlen]);
-+	    }
-+	 	  
-+	  // initialize print buffer
-+	  for(i=0; i<BUF_SIZE; ++i)
-+	    print_buf[i]	= ' ';
-+	  print_buf[length+brvlen+ervlen+1] = '\r';
-+	  print_buf[length+brvlen+ervlen+2] = '\0';
-+	  for(i=0; i<brvlen; ++i)
-+	    print_buf[i]	= begin_rv[i];
-+	  for(i=0; i<ervlen; ++i)
-+	    print_buf[i+brvlen]	= end_rv[i];
-+	  fputs(print_buf,stdout);
-+	  if(title.length())
-+	    newtitle	= true;
-+	}
-+      else
-+	{
-+#endif
-+	  for(i=0; i<BUF_SIZE; ++i)
-+	    print_buf[i]	= ' ';
-+	  print_buf[length+8]	= '\r';
-+	  print_buf[length+9]	= '\0';
-+	  fputs(print_buf,stdout);
-+	  print_buf[0]		= '[';
-+	  print_buf[length+1]	= ']';
-+#if defined (USE_TERM)
-+	}
-+#endif
-+      n_chars_old	= 0;
-+      fflush(stdout);
-+      return retval;
-+    }
-+  else
-+    {
-+      // calculate position
-+      int n_chars=(int)(pct*length+0.5);
-+      int pct_int=(int)(pct*100.0+0.5);
-+
-+      // check to see if we got this far without initialization
-+      if(init==false)
-+	{
-+	  Ftext_waitbar(octave_value(0.0),0);
-+	  fputs(print_buf,stdout);
-+	  fflush(stdout);
-+	}
-+
-+      // check to see of output needs to be updated
-+#if !defined (USE_TERM)
-+      if(n_chars!=n_chars_old || pct_int!=pct_int_old)
-+	{
-+#else
-+      if(n_chars!=n_chars_old || pct_int!=pct_int_old || newtitle)
-+	{
-+	  if(smart_term)
-+	    {
-+	      static char pct_str[5];
-+	      sprintf(pct_str,"%3i%%",pct_int);
-+
-+	      // Insert the title
-+	      if(newtitle)
-+		{
-+		  pct_pos	= length-SPACING*2;
-+		  for(i=SPACING+brvlen; i<pct_pos+brvlen-SPACING;  ++i)
-+		    print_buf[ i>=n_chars_old+brvlen ? i+ervlen : i ] = ' ';
-+		  for(i=SPACING+brvlen, j=0; j<title.length(); ++i, ++j)
-+		    if(i<pct_pos+brvlen-SPACING)
-+		      print_buf[ i>=n_chars_old ? i+ervlen : i ] = title(0,j);
-+		  newtitle	= false;
-+		}
-+
-+	      // Insert the percentage string
-+	      for(i=pct_pos+brvlen, j=0; j<4; ++i, ++j)
-+		print_buf[ i>=n_chars_old+brvlen ? i+ervlen : i ] = pct_str[j];
-+
-+	      // Move print_buf characters
-+	      if(n_chars_old<n_chars)
-+		for(i=n_chars_old+brvlen; i<n_chars+brvlen; ++i)
-+		  print_buf[i]	= print_buf[i+ervlen];
-+	      else
-+		for(i=n_chars_old+brvlen-1; i>=n_chars+brvlen; --i)
-+		  print_buf[i+ervlen]	= print_buf[i];
-+
-+	      // Insert end of reverse video
-+	      for(i=n_chars+brvlen, j=0; j<ervlen; ++i, ++j)
-+		print_buf[i]	= end_rv[j];
-+	    }
-+	  else
-+	    {
-+#endif
-+	      if(n_chars>=n_chars_old)
-+		for(int i=n_chars_old+1; i<=n_chars; ++i)
-+		  print_buf[i]	= BAR_CHAR;
-+	      else
-+		for(int i=n_chars+1; i<=n_chars_old; ++i)
-+		  print_buf[i]	= ' ';
-+	      sprintf(&(print_buf[length+3])," %3i%%\r",pct_int);
-+#if defined (USE_TERM)
-+	    }
-+#endif
-+	  fputs(print_buf,stdout);
-+	  fflush(stdout);
-+	  n_chars_old	= n_chars;
-+	  pct_int_old	= pct_int;
-+	}
-+    }
-+  return retval;
-+}
---- a/src/Makefile
-+++ b/src/Makefile
-@@ -4,14 +4,14 @@
- 	TERM_LIB=-ltermcap
- endif
- 
--TARGETS=waitbar.oct $(LISTEN) xmlread.oct  \
-+TARGETS=text_waitbar.oct $(LISTEN) xmlread.oct  \
- 	csvexplode.oct csv2cell.oct csvconcat.oct cell2csv.oct \
- 	cell2cell.oct partarray.oct
- 
- all:	$(TARGETS)
- 
--waitbar.oct: waitbar.cc
--	$(MKOCTFILE) $(MISCDEFS) waitbar.cc $(TERM_LIB)
-+text_waitbar.oct: text_waitbar.cc
-+	$(MKOCTFILE) $(MISCDEFS) text_waitbar.cc $(TERM_LIB)
- 
- server.oct: server.o listencanfork.o stringmatch.o
- 	$(MKOCTFILE) server.o listencanfork.o stringmatch.o

-- 
Debian packaging for octave-miscellaneous



More information about the Pkg-octave-commit mailing list