[Pkg-octave-commit] [SCM] Debian packaging for octave branch, master, updated. 3.2.2-2-102-g2b393c2
Thomas Weber
tweber at debian.org
Wed Dec 7 17:56:10 UTC 2011
The following commit has been merged in the master branch:
commit 1ac9509a0796c1c99999014ce570bfa14844d789
Author: Thomas Weber <tweber at debian.org>
Date: Mon Nov 14 22:32:43 2011 +0100
Removed patches (applied upstream):
avoid-implicit-conversion
clear_symbol_table
drop_old_curl_header
filter_empty_vector
fix-interp2
fix_relative_addpath
fixes-for-gcc-4.6
handle_new_graphicsmagic
scale_image_point_color
diff --git a/debian/in/series b/debian/in/series
index 0ed49d8..e1f104f 100644
--- a/debian/in/series
+++ b/debian/in/series
@@ -1,15 +1,6 @@
[V_3_2:
-drop_old_curl_header
-scale_image_point_color
-fix-interp2
no_pdf_in_print.diff
dont_set_helvetica-3.1.diff
normal-markersize.diff
-filter_empty_vector
-handle_new_graphicsmagic
-fix_relative_addpath
include_mpi_headers
-fixes-for-gcc-4.6
-avoid-implicit-conversion
-clear_symbol_table
:]
diff --git a/debian/patches/avoid-implicit-conversion b/debian/patches/avoid-implicit-conversion
deleted file mode 100644
index 5fc4909..0000000
--- a/debian/patches/avoid-implicit-conversion
+++ /dev/null
@@ -1,20 +0,0 @@
-From: Kim Hansen <kim at i9.dk>
-Description: Explicitly converts strings to numbers
-Bug: https://savannah.gnu.org/bugs/index.php?32546
-Bug-Debian: http://bugs.debian.org/603046
-Applied-Upstream: http://hg.savannah.gnu.org/hgweb/octave/rev/26d3164fd58d
---- a/scripts/strings/strchr.m
-+++ b/scripts/strings/strchr.m
-@@ -34,10 +34,10 @@
- print_usage ();
- endif
- f = false (1, 256);
-- f(chars + 1) = true;
-+ f(uint8(chars)+1) = true;
- varargout = cell (1, nargout);
- varargout{1} = [];
-- [varargout{:}] = find (reshape (f(str + 1), size (str)), varargin{:});
-+ [varargout{:}] = find (reshape (f(uint8(str) + 1), size (str)), varargin{:});
- endfunction
-
- %!assert(strchr("Octave is the best software","best"),[3, 6, 9, 11, 13, 15, 16, 17, 18, 20, 23, 27])
diff --git a/debian/patches/clear_symbol_table b/debian/patches/clear_symbol_table
deleted file mode 100644
index 56dcd8d..0000000
--- a/debian/patches/clear_symbol_table
+++ /dev/null
@@ -1,90 +0,0 @@
-Description: Clean up top-level variables when exiting Octave
- This fixes this assertion failure:
- .
- Inconsistency detected by ld.so: dl-close.c: 736: _dl_close: Assertion
- `map->l_init_called' failed!
- .
- This patch is slightly modified from the upstream commits to add
- __attribute__ ((visibility ("hidden"))) to the symbol_table::cleanup
- method, in order that this patch does not change the externally-visible
- ABI. That modification can and should be dropped when moving to a new
- upstream version containing this fix.
-Origin: upstream, http://hg.savannah.gnu.org/hgweb/octave/rev/692ab4eaf965
-Origin: upstream, http://hg.savannah.gnu.org/hgweb/octave/rev/a5a05b2ebb9d
-Author: Jaroslav Hajek <highegg at gmail.com>
-Bug: http://savannah.gnu.org/bugs/?34195
-Bug-Debian: http://bugs.debian.org/633719
-Bug-Debian: http://bugs.debian.org/628353
-Bug-Ubuntu: https://bugs.launchpad.net/bugs/831157
-
-Index: b/src/symtab.cc
-===================================================================
---- a/src/symtab.cc
-+++ b/src/symtab.cc
-@@ -1193,6 +1193,39 @@
- }
- }
-
-+void symbol_table::cleanup (void)
-+{
-+ // Clear variables in top scope.
-+ all_instances[xtop_scope]->clear_variables ();
-+
-+ // Clear function table. This is a hard clear, ignoring mlocked functions.
-+ fcn_table.clear ();
-+
-+ // Clear variables in global scope.
-+ // FIXME: are there any?
-+ all_instances[xglobal_scope]->clear_variables ();
-+
-+ // Clear global variables.
-+ global_table.clear ();
-+
-+ // Delete all possibly remaining scopes.
-+ for (all_instances_iterator iter = all_instances.begin ();
-+ iter != all_instances.end (); iter++)
-+ {
-+ scope_id scope = iter->first;
-+ if (scope != xglobal_scope && scope != xtop_scope)
-+ scope_id_cache::free (scope);
-+
-+ // First zero the table entry to avoid possible duplicate delete.
-+ symbol_table *inst = iter->second;
-+ iter->second = 0;
-+
-+ // Now delete the scope. Note that there may be side effects, such as
-+ // deleting other scopes.
-+ delete inst;
-+ }
-+}
-+
- DEFUN (ignore_function_time_stamp, args, nargout,
- "-*- texinfo -*-\n\
- @deftypefn {Built-in Function} {@var{val} =} ignore_function_time_stamp ()\n\
-Index: b/src/symtab.h
-===================================================================
---- a/src/symtab.h
-+++ b/src/symtab.h
-@@ -1838,6 +1838,8 @@
- static void stash_dir_name_for_subfunctions (scope_id scope,
- const std::string& dir_name);
-
-+ static void cleanup (void) __attribute__ ((visibility ("hidden")));
-+
- private:
-
- typedef std::map<std::string, symbol_record>::const_iterator table_const_iterator;
-Index: b/src/toplev.cc
-===================================================================
---- a/src/toplev.cc
-+++ b/src/toplev.cc
-@@ -673,6 +673,9 @@
- {
- do_octave_atexit ();
-
-+ // Clean up symbol table.
-+ SAFE_CALL (symbol_table::cleanup, ());
-+
- SAFE_CALL (sysdep_cleanup, ())
-
- if (octave_exit)
diff --git a/debian/patches/drop_old_curl_header b/debian/patches/drop_old_curl_header
deleted file mode 100644
index 9877247..0000000
--- a/debian/patches/drop_old_curl_header
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/src/DLD-FUNCTIONS/urlwrite.cc
-+++ b/src/DLD-FUNCTIONS/urlwrite.cc
-@@ -46,7 +46,6 @@
- #if defined (HAVE_CURL)
-
- #include <curl/curl.h>
--#include <curl/types.h>
- #include <curl/easy.h>
-
- // Write callback function for curl.
diff --git a/debian/patches/filter_empty_vector b/debian/patches/filter_empty_vector
deleted file mode 100644
index f6cace5..0000000
--- a/debian/patches/filter_empty_vector
+++ /dev/null
@@ -1,17 +0,0 @@
-From: "John W. Eaton" <jwe at octave.org>
-Subject: Don't crash on filtering an empty vector
-Origin: upstream, http://hg.savannah.gnu.org/hgweb/octave/rev/a277ba5da4dc
-Bug-Debian: http://bugs.debian.org/567975
-
---- a/src/DLD-FUNCTIONS/filter.cc
-+++ b/src/DLD-FUNCTIONS/filter.cc
-@@ -117,6 +117,9 @@
- }
- }
-
-+ if (x_len == 0)
-+ return x;
-+
- if (norm != static_cast<T>(1.0))
- {
- a = a / norm;
diff --git a/debian/patches/fix-interp2 b/debian/patches/fix-interp2
deleted file mode 100644
index dae7db5..0000000
--- a/debian/patches/fix-interp2
+++ /dev/null
@@ -1,160 +0,0 @@
-From: various upstream authors authors
-Description: Implement bicubic interpolation correctly
- This patch fixes a bug triggered by octave-image's test suite.
-
-Origin: upstream, http://hg.savannah.gnu.org/hgweb/octave/file/62bb59f927b1/scripts/general/interp2.m
-Bug-Debian: http://bugs.debian.org/582276
-
---- a/scripts/general/interp2.m
-+++ b/scripts/general/interp2.m
-@@ -57,7 +57,7 @@
- ## @item 'linear'
- ## Linear interpolation from nearest neighbors.
- ## @item 'pchip'
--## Piece-wise cubic hermite interpolating polynomial (not implemented yet).
-+## Piece-wise cubic hermite interpolating polynomial.
- ## @item 'cubic'
- ## Cubic interpolation from four nearest neighbors.
- ## @item 'spline'
-@@ -218,18 +218,21 @@
- c = Z(2:zr, 1:(zc - 1)) - a;
- d = Z(2:zr, 2:zc) - a - b - c;
-
-- idx = sub2ind (size (a), yidx, xidx);
--
- ## scale XI, YI values to a 1-spaced grid
-- Xsc = (XI - X(xidx)) ./ (X(xidx + 1) - X(xidx));
-- Ysc = (YI - Y(yidx)) ./ (Y(yidx + 1) - Y(yidx));
-+ Xsc = (XI - X(xidx)) ./ (diff (X)(xidx));
-+ Ysc = (YI - Y(yidx)) ./ (diff (Y)(yidx));
-+
-+ ## Get 2D index.
-+ idx = sub2ind (size (a), yidx, xidx);
-+ ## We can dispose of the 1D indices at this point to save memory.
-+ clear xidx yidx
-
- ## apply plane equation
- ZI = a(idx) + b(idx).*Xsc + c(idx).*Ysc + d(idx).*Xsc.*Ysc;
-
- elseif (strcmp (method, "nearest"))
-- ii = (XI - X(xidx) > X(xidx + 1) - XI);
-- jj = (YI - Y(yidx) > Y(yidx + 1) - YI);
-+ ii = (XI - X(xidx) >= X(xidx + 1) - XI);
-+ jj = (YI - Y(yidx) >= Y(yidx + 1) - YI);
- idx = sub2ind (size (Z), yidx+jj, xidx+ii);
- ZI = Z(idx);
-
-@@ -339,11 +342,64 @@
-
- ## FIXME bicubic/__splinen__ don't handle arbitrary XI, YI
- if (strcmp (method, "cubic"))
-- ZI = bicubic (X, Y, Z, XI(1,:), YI(:,1), extrapval);
-+ if (isgriddata (XI) && isgriddata (YI'))
-+ ZI = bicubic (X, Y, Z, XI (1, :), YI (:, 1), extrapval);
-+ elseif (isgriddata (X) && isgriddata (Y'))
-+ ## Allocate output
-+ ZI = zeros (size (X));
-+
-+ ## Find inliers
-+ inside = !(XI < X (1) | XI > X (end) | YI < Y (1) | YI > Y (end));
-+
-+ ## Scale XI and YI to match indices of Z
-+ XI = (columns (Z) - 1) * (XI - X (1)) / (X (end) - X (1)) + 1;
-+ YI = (rows (Z) - 1) * (YI - Y (1)) / (Y (end) - Y (1)) + 1;
-+
-+ ## Start the real work
-+ K = floor (XI);
-+ L = floor (YI);
-+
-+ ## Coefficients
-+ AY1 = bc ((YI - L + 1));
-+ AX1 = bc ((XI - K + 1));
-+ AY0 = bc ((YI - L + 0));
-+ AX0 = bc ((XI - K + 0));
-+ AY_1 = bc ((YI - L - 1));
-+ AX_1 = bc ((XI - K - 1));
-+ AY_2 = bc ((YI - L - 2));
-+ AX_2 = bc ((XI - K - 2));
-+
-+ ## Perform interpolation
-+ sz = size(Z);
-+ ZI = AY_2 .* AX_2 .* Z (sym_sub2ind (sz, L+2, K+2)) ...
-+ + AY_2 .* AX_1 .* Z (sym_sub2ind (sz, L+2, K+1)) ...
-+ + AY_2 .* AX0 .* Z (sym_sub2ind (sz, L+2, K)) ...
-+ + AY_2 .* AX1 .* Z (sym_sub2ind (sz, L+2, K-1)) ...
-+ + AY_1 .* AX_2 .* Z (sym_sub2ind (sz, L+1, K+2)) ...
-+ + AY_1 .* AX_1 .* Z (sym_sub2ind (sz, L+1, K+1)) ...
-+ + AY_1 .* AX0 .* Z (sym_sub2ind (sz, L+1, K)) ...
-+ + AY_1 .* AX1 .* Z (sym_sub2ind (sz, L+1, K-1)) ...
-+ + AY0 .* AX_2 .* Z (sym_sub2ind (sz, L, K+2)) ...
-+ + AY0 .* AX_1 .* Z (sym_sub2ind (sz, L, K+1)) ...
-+ + AY0 .* AX0 .* Z (sym_sub2ind (sz, L, K)) ...
-+ + AY0 .* AX1 .* Z (sym_sub2ind (sz, L, K-1)) ...
-+ + AY1 .* AX_2 .* Z (sym_sub2ind (sz, L-1, K+2)) ...
-+ + AY1 .* AX_1 .* Z (sym_sub2ind (sz, L-1, K+1)) ...
-+ + AY1 .* AX0 .* Z (sym_sub2ind (sz, L-1, K)) ...
-+ + AY1 .* AX1 .* Z (sym_sub2ind (sz, L-1, K-1));
-+ ZI (!inside) = extrapval;
-+
-+ else
-+ error ("interp2: input data must have `meshgrid' format");
-+ endif
-
- elseif (strcmp (method, "spline"))
-- ZI = __splinen__ ({Y(:,1).', X(1,:)}, Z, {YI(:,1), XI(1,:)}, extrapval,
-+ if (isgriddata (XI) && isgriddata (YI'))
-+ ZI = __splinen__ ({Y(:,1).', X(1,:)}, Z, {YI(:,1), XI(1,:)}, extrapval,
- "spline");
-+ else
-+ error ("interp2: input data must have `meshgrid' format");
-+ endif
- else
- error ("interpolation method not recognized");
- endif
-@@ -351,6 +407,38 @@
- endif
- endfunction
-
-+function b = isgriddata (X)
-+ d1 = diff (X, 1, 1);
-+ d2 = diff (X, 1, 2);
-+ b = all (d1 (:) == 0) & all (d2 (:) == d2 (1));
-+endfunction
-+
-+## Compute the bicubic interpolation coefficients
-+function o = bc(x)
-+ x = abs(x);
-+ o = zeros(size(x));
-+ idx1 = (x < 1);
-+ idx2 = !idx1 & (x < 2);
-+ o(idx1) = 1 - 2.*x(idx1).^2 + x(idx1).^3;
-+ o(idx2) = 4 - 8.*x(idx2) + 5.*x(idx2).^2 - x(idx2).^3;
-+endfunction
-+
-+## This version of sub2ind behaves as if the data was symmetrically padded
-+function ind = sym_sub2ind(sz, Y, X)
-+ Y (Y < 1) = 1 - Y (Y < 1);
-+ while (any (Y (:) > 2 * sz (1)))
-+ Y (Y > 2 * sz (1)) = round (Y (Y > 2 * sz (1)) / 2);
-+ endwhile
-+ Y (Y > sz (1)) = 1 + 2 * sz (1) - Y (Y > sz (1));
-+ X (X < 1) = 1 - X (X < 1);
-+ while (any (X (:) > 2 * sz (2)))
-+ X (X > 2 * sz (2)) = round (X (X > 2 * sz (2)) / 2);
-+ endwhile
-+ X (X > sz (2)) = 1 + 2 * sz (2) - X (X > sz (2));
-+ ind = sub2ind(sz, Y, X);
-+endfunction
-+
-+
- %!demo
- %! A=[13,-1,12;5,4,3;1,6,2];
- %! x=[0,1,4]; y=[10,11,12];
-@@ -493,3 +581,7 @@
- %! assert(interp2(x,y,A,x,y,'linear'), A);
- %! assert(interp2(x,y,A,x,y,'nearest'), A);
-
-+%!test % for Matlab-compatible rounding for 'nearest'
-+%! X = meshgrid (1:4);
-+%! assert (interp2 (X, 2.5, 2.5, 'nearest'), 3);
-+
diff --git a/debian/patches/fix_relative_addpath b/debian/patches/fix_relative_addpath
deleted file mode 100644
index c3b208b..0000000
--- a/debian/patches/fix_relative_addpath
+++ /dev/null
@@ -1,20 +0,0 @@
-From: "Thomas Weber" <tweber at debian.org>
-Subject: Don't crash on calling addpath('./')
-Description: Octave 3.2 crashes when calling something like
- echo "addpath('./'); addpath('./')" | octave
- This patch originates from a larger patch from upstreams's development version.
-Origin: partly upstream, http://hg.savannah.gnu.org/hgweb/octave/rev/4acae5e46738
-Bug-Debian: http://bugs.debian.org/592517
-Applied-Upstream: http://hg.savannah.gnu.org/hgweb/octave/rev/4acae5e46738
-
---- a/src/load-path.cc
-+++ b/src/load-path.cc
-@@ -653,8 +653,6 @@
-
- if (i != dir_info_list.end ())
- move (i, false);
-- else
-- panic_impossible ();
- }
-
- void
diff --git a/debian/patches/fixes-for-gcc-4.6 b/debian/patches/fixes-for-gcc-4.6
deleted file mode 100644
index a498eca..0000000
--- a/debian/patches/fixes-for-gcc-4.6
+++ /dev/null
@@ -1,27 +0,0 @@
-From: Orion Poplawski <orion at cora.nwra.com>
-Subject: small changes for GCC 4.6
-
-Origin: upstream, http://hg.savannah.gnu.org/hgweb/octave/rev/1cf28ef2bb88
-Bug-Debian: http://bugs.debian.org/603046
---- a/liboctave/oct-alloc.h
-+++ b/liboctave/oct-alloc.h
-@@ -24,6 +24,8 @@
- #if !defined (octave_oct_alloc_h)
- #define octave_oct_alloc_h 1
-
-+#include <cstddef>
-+
- class
- OCTAVE_API
- octave_allocator
---- a/src/pr-output.cc
-+++ b/src/pr-output.cc
-@@ -2854,7 +2854,7 @@
- }
-
- #define INSTANTIATE_ABS(T) \
-- template /* static */ inline T abs (T)
-+ template /* static */ T abs (T)
-
- INSTANTIATE_ABS(signed char);
- INSTANTIATE_ABS(short);
diff --git a/debian/patches/handle_new_graphicsmagic b/debian/patches/handle_new_graphicsmagic
deleted file mode 100644
index e86a1f7..0000000
--- a/debian/patches/handle_new_graphicsmagic
+++ /dev/null
@@ -1,35 +0,0 @@
-From: John W. Eaton <jwe at octave.org>
-Description: Allow compilation with graphicsmagick >= 1.3.8.
- The patch is slightly adapted (header inclusions) to the 3.2 series
-
-Origin: upstream, http://hg.savannah.gnu.org/hgweb/octave/rev/ad0b54ae206a
-Bug: http://www-old.cae.wisc.edu/pipermail/octave-maintainers/2010-February/015292.html
-
---- a/src/DLD-FUNCTIONS/__magick_read__.cc
-+++ b/src/DLD-FUNCTIONS/__magick_read__.cc
-@@ -29,6 +29,7 @@
-
- #include "defun-dld.h"
- #include "error.h"
-+#include "oct-env.h"
- #include "ov-struct.h"
-
- #ifdef HAVE_MAGICK
-@@ -358,6 +359,17 @@
-
- #ifdef HAVE_MAGICK
-
-+ static bool initialized = false;
-+
-+ if (! initialized)
-+ {
-+ std::string program_name = octave_env::get_program_invocation_name ();
-+
-+ Magick::InitializeMagick (program_name.c_str ());
-+
-+ initialized = true;
-+ }
-+
- if (args.length () > 2 || args.length () < 1 || ! args(0).is_string ()
- || nargout > 3)
- {
diff --git a/debian/patches/scale_image_point_color b/debian/patches/scale_image_point_color
deleted file mode 100644
index 5b94e25..0000000
--- a/debian/patches/scale_image_point_color
+++ /dev/null
@@ -1,27 +0,0 @@
-From: Rik <octave at nomad.inbox5.com>
-Subject: Scale image point color according to colormap.
-
-Origin: upstream, http://hg.savannah.gnu.org/hgweb/octave/rev/bc4eb29e0cb4
-Bug: http://savannah.gnu.org/bugs/?29926
-Bug-Debian: http://bugs.debian.org/581998
-
---- a/scripts/image/imshow.m
-+++ b/scripts/image/imshow.m
-@@ -64,7 +64,6 @@
-
- ## Get the image.
- if (ischar (im))
-- ## Eventually, this should be imread.
- [im, map] = imread (im);
- indexed = true;
- colormap (map);
-@@ -163,7 +162,8 @@
- if (true_color || indexed)
- tmp = image ([], [], im);
- else
-- tmp = image (round ((rows (colormap ()) - 1) * im));
-+ tmp = image (im);
-+ set (tmp, "cdatamapping", "scaled");
- endif
- set (gca (), "visible", "off");
- axis ("image");
--
Debian packaging for octave
More information about the Pkg-octave-commit
mailing list