Hello community, here is the log from the commit of package armadillo for openSUSE:Factory checked in at 2014-06-04 18:39:37 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/armadillo (Old) and /work/SRC/openSUSE:Factory/.armadillo.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "armadillo" Changes: -------- --- /work/SRC/openSUSE:Factory/armadillo/armadillo.changes 2014-05-22 06:57:17.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.armadillo.new/armadillo.changes 2014-06-04 18:40:05.000000000 +0200 @@ -1,0 +2,6 @@ +Tue Jun 3 00:11:13 UTC 2014 - badshah...@gmail.com + +- Update to version 4.300.8: + + List of changes not documented upstream. + +------------------------------------------------------------------- Old: ---- armadillo-4.300.5.tar.gz New: ---- armadillo-4.300.8.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ armadillo.spec ++++++ --- /var/tmp/diff_new_pack.iIrlyJ/_old 2014-06-04 18:40:07.000000000 +0200 +++ /var/tmp/diff_new_pack.iIrlyJ/_new 2014-06-04 18:40:07.000000000 +0200 @@ -19,7 +19,7 @@ %define soname libarmadillo4 Name: armadillo -Version: 4.300.5 +Version: 4.300.8 Release: 0 Summary: Fast C++ matrix library with interfaces to LAPACK and ATLAS License: MPL-2.0 ++++++ armadillo-4.300.5.tar.gz -> armadillo-4.300.8.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.5/CMakeLists.txt new/armadillo-4.300.8/CMakeLists.txt --- old/armadillo-4.300.5/CMakeLists.txt 2014-05-19 17:20:03.000000000 +0200 +++ new/armadillo-4.300.8/CMakeLists.txt 2014-06-01 04:44:40.000000000 +0200 @@ -14,7 +14,7 @@ set(ARMA_MAJOR 4) set(ARMA_MINOR 300) -set(ARMA_PATCH 5) +set(ARMA_PATCH 8) message(STATUS "Configuring Armadillo ${ARMA_MAJOR}.${ARMA_MINOR}.${ARMA_PATCH}") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.5/include/armadillo new/armadillo-4.300.8/include/armadillo --- old/armadillo-4.300.5/include/armadillo 2014-04-28 10:30:33.000000000 +0200 +++ new/armadillo-4.300.8/include/armadillo 2014-06-01 04:44:40.000000000 +0200 @@ -38,12 +38,6 @@ #endif -#if (__cplusplus >= 201103L) - #undef ARMA_USE_CXX11 - #define ARMA_USE_CXX11 -#endif - - #include "armadillo_bits/config.hpp" #include "armadillo_bits/compiler_setup.hpp" @@ -51,8 +45,10 @@ #if defined(ARMA_USE_CXX11) #include <initializer_list> #include <cstdint> - #include <chrono> #include <random> + #if !defined(ARMA_DONT_USE_CXX11_CHRONO) + #include <chrono> + #endif #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.5/include/armadillo_bits/arma_version.hpp new/armadillo-4.300.8/include/armadillo_bits/arma_version.hpp --- old/armadillo-4.300.5/include/armadillo_bits/arma_version.hpp 2014-05-19 17:20:03.000000000 +0200 +++ new/armadillo-4.300.8/include/armadillo_bits/arma_version.hpp 2014-06-01 04:44:40.000000000 +0200 @@ -13,7 +13,7 @@ #define ARMA_VERSION_MAJOR 4 #define ARMA_VERSION_MINOR 300 -#define ARMA_VERSION_PATCH 5 +#define ARMA_VERSION_PATCH 8 #define ARMA_VERSION_NAME "Medieval Cornea Scraper" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.5/include/armadillo_bits/compiler_setup.hpp new/armadillo-4.300.8/include/armadillo_bits/compiler_setup.hpp --- old/armadillo-4.300.5/include/armadillo_bits/compiler_setup.hpp 2014-04-28 10:30:33.000000000 +0200 +++ new/armadillo-4.300.8/include/armadillo_bits/compiler_setup.hpp 2014-05-31 06:34:01.000000000 +0200 @@ -149,14 +149,11 @@ #define ARMA_HAVE_ALIGNED_ATTRIBUTE - #if defined(__GXX_EXPERIMENTAL_CXX0X__) - #undef ARMA_USE_CXX11 - #define ARMA_USE_CXX11 - #endif - #if defined(ARMA_USE_CXX11) - #if (ARMA_GCC_VERSION < 40700) && !defined(__clang__) - #pragma message ("Your C++ compiler is in C++11 mode, but it has incomplete support for C++11 features") + #if (ARMA_GCC_VERSION < 40800) && !defined(__clang__) + #pragma message ("WARNING: your C++ compiler is in C++11 mode, but it has incomplete support for C++11 features; if something breaks, you get to keep all the pieces") + #pragma message ("WARNING: to forcefully prevent Armadillo from using C++11 features, #define ARMA_DONT_USE_CXX11 before #include <armadillo>") + #define ARMA_DONT_USE_CXX11_CHRONO #endif #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.5/include/armadillo_bits/config.hpp new/armadillo-4.300.8/include/armadillo_bits/config.hpp --- old/armadillo-4.300.5/include/armadillo_bits/config.hpp 2014-04-28 10:30:33.000000000 +0200 +++ new/armadillo-4.300.8/include/armadillo_bits/config.hpp 2014-06-01 04:44:40.000000000 +0200 @@ -71,6 +71,11 @@ //// This will enable additional features, such as use of initialiser lists #endif +#if (__cplusplus >= 201103L) || defined(__GXX_EXPERIMENTAL_CXX0X__) + #undef ARMA_USE_CXX11 + #define ARMA_USE_CXX11 +#endif + #if !defined(ARMA_USE_U64S64) // #define ARMA_USE_U64S64 //// Uncomment the above line if you require u64 and s64 integer types. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.5/include/armadillo_bits/config.hpp.cmake new/armadillo-4.300.8/include/armadillo_bits/config.hpp.cmake --- old/armadillo-4.300.5/include/armadillo_bits/config.hpp.cmake 2014-04-28 10:30:33.000000000 +0200 +++ new/armadillo-4.300.8/include/armadillo_bits/config.hpp.cmake 2014-06-01 04:44:40.000000000 +0200 @@ -71,6 +71,11 @@ //// This will enable additional features, such as use of initialiser lists #endif +#if (__cplusplus >= 201103L) || defined(__GXX_EXPERIMENTAL_CXX0X__) + #undef ARMA_USE_CXX11 + #define ARMA_USE_CXX11 +#endif + #if !defined(ARMA_USE_U64S64) // #define ARMA_USE_U64S64 //// Uncomment the above line if you require u64 and s64 integer types. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.5/include/armadillo_bits/debug.hpp new/armadillo-4.300.8/include/armadillo_bits/debug.hpp --- old/armadillo-4.300.5/include/armadillo_bits/debug.hpp 2013-12-31 00:57:32.000000000 +0100 +++ new/armadillo-4.300.8/include/armadillo_bits/debug.hpp 2014-05-31 06:06:47.000000000 +0200 @@ -449,7 +449,7 @@ std::stringstream tmp; tmp << x - << ": interpreting matrix as cube with dimenensions: " + << ": interpreting matrix as cube with dimensions: " << A.n_rows << 'x' << A.n_cols << 'x' << 1 << " or " << A.n_rows << 'x' << 1 << 'x' << A.n_cols @@ -913,7 +913,7 @@ std::stringstream tmp; tmp << x - << ": can't interpret cube with dimenensions " + << ": can't interpret cube with dimensions " << Q_n_rows << 'x' << Q_n_cols << 'x' << Q_n_slices << " as a matrix with dimensions " << M_n_rows << 'x' << M_n_cols; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.5/include/armadillo_bits/subview_cube_meat.hpp new/armadillo-4.300.8/include/armadillo_bits/subview_cube_meat.hpp --- old/armadillo-4.300.5/include/armadillo_bits/subview_cube_meat.hpp 2013-11-29 07:48:03.000000000 +0100 +++ new/armadillo-4.300.8/include/armadillo_bits/subview_cube_meat.hpp 2014-05-30 05:43:44.000000000 +0200 @@ -1,5 +1,5 @@ -// Copyright (C) 2008-2013 Conrad Sanderson -// Copyright (C) 2008-2013 NICTA (www.nicta.com.au) +// Copyright (C) 2008-2014 Conrad Sanderson +// Copyright (C) 2008-2014 NICTA (www.nicta.com.au) // // This Source Code Form is subject to the terms of the Mozilla Public // License, v. 2.0. If a copy of the MPL was not distributed with this @@ -519,6 +519,32 @@ const uword x_n_rows = x.n_rows; const uword x_n_cols = x.n_cols; + if( ((x_n_rows == 1) || (x_n_cols == 1)) && (t_n_rows == 1) && (t_n_cols == 1) && (x.n_elem == t_n_slices) ) + { + Cube<eT>& Q = const_cast< Cube<eT>& >(t.m); + + const uword t_aux_row1 = t.aux_row1; + const uword t_aux_col1 = t.aux_col1; + const uword t_aux_slice1 = t.aux_slice1; + + const eT* x_mem = x.memptr(); + + uword i,j; + for(i=0, j=1; j < t_n_slices; i+=2, j+=2) + { + const eT tmp_i = x_mem[i]; + const eT tmp_j = x_mem[j]; + + Q.at(t_aux_row1, t_aux_col1, t_aux_slice1 + i) = tmp_i; + Q.at(t_aux_row1, t_aux_col1, t_aux_slice1 + j) = tmp_j; + } + + if(i < t_n_slices) + { + Q.at(t_aux_row1, t_aux_col1, t_aux_slice1 + i) = x_mem[i]; + } + } + else if( (t_n_rows == x_n_rows) && (t_n_cols == x_n_cols) && (t_n_slices == 1) ) { // interpret the matrix as a cube with one slice @@ -598,6 +624,32 @@ const uword x_n_rows = x.n_rows; const uword x_n_cols = x.n_cols; + if( ((x_n_rows == 1) || (x_n_cols == 1)) && (t_n_rows == 1) && (t_n_cols == 1) && (x.n_elem == t_n_slices) ) + { + Cube<eT>& Q = const_cast< Cube<eT>& >(t.m); + + const uword t_aux_row1 = t.aux_row1; + const uword t_aux_col1 = t.aux_col1; + const uword t_aux_slice1 = t.aux_slice1; + + const eT* x_mem = x.memptr(); + + uword i,j; + for(i=0, j=1; j < t_n_slices; i+=2, j+=2) + { + const eT tmp_i = x_mem[i]; + const eT tmp_j = x_mem[j]; + + Q.at(t_aux_row1, t_aux_col1, t_aux_slice1 + i) += tmp_i; + Q.at(t_aux_row1, t_aux_col1, t_aux_slice1 + j) += tmp_j; + } + + if(i < t_n_slices) + { + Q.at(t_aux_row1, t_aux_col1, t_aux_slice1 + i) += x_mem[i]; + } + } + else if( (t_n_rows == x_n_rows) && (t_n_cols == x_n_cols) && (t_n_slices == 1) ) { for(uword col = 0; col < t_n_cols; ++col) @@ -675,6 +727,32 @@ const uword x_n_rows = x.n_rows; const uword x_n_cols = x.n_cols; + if( ((x_n_rows == 1) || (x_n_cols == 1)) && (t_n_rows == 1) && (t_n_cols == 1) && (x.n_elem == t_n_slices) ) + { + Cube<eT>& Q = const_cast< Cube<eT>& >(t.m); + + const uword t_aux_row1 = t.aux_row1; + const uword t_aux_col1 = t.aux_col1; + const uword t_aux_slice1 = t.aux_slice1; + + const eT* x_mem = x.memptr(); + + uword i,j; + for(i=0, j=1; j < t_n_slices; i+=2, j+=2) + { + const eT tmp_i = x_mem[i]; + const eT tmp_j = x_mem[j]; + + Q.at(t_aux_row1, t_aux_col1, t_aux_slice1 + i) -= tmp_i; + Q.at(t_aux_row1, t_aux_col1, t_aux_slice1 + j) -= tmp_j; + } + + if(i < t_n_slices) + { + Q.at(t_aux_row1, t_aux_col1, t_aux_slice1 + i) -= x_mem[i]; + } + } + else if( (t_n_rows == x_n_rows) && (t_n_cols == x_n_cols) && (t_n_slices == 1) ) { for(uword col = 0; col < t_n_cols; ++col) @@ -752,6 +830,32 @@ const uword x_n_rows = x.n_rows; const uword x_n_cols = x.n_cols; + if( ((x_n_rows == 1) || (x_n_cols == 1)) && (t_n_rows == 1) && (t_n_cols == 1) && (x.n_elem == t_n_slices) ) + { + Cube<eT>& Q = const_cast< Cube<eT>& >(t.m); + + const uword t_aux_row1 = t.aux_row1; + const uword t_aux_col1 = t.aux_col1; + const uword t_aux_slice1 = t.aux_slice1; + + const eT* x_mem = x.memptr(); + + uword i,j; + for(i=0, j=1; j < t_n_slices; i+=2, j+=2) + { + const eT tmp_i = x_mem[i]; + const eT tmp_j = x_mem[j]; + + Q.at(t_aux_row1, t_aux_col1, t_aux_slice1 + i) *= tmp_i; + Q.at(t_aux_row1, t_aux_col1, t_aux_slice1 + j) *= tmp_j; + } + + if(i < t_n_slices) + { + Q.at(t_aux_row1, t_aux_col1, t_aux_slice1 + i) *= x_mem[i]; + } + } + else if( (t_n_rows == x_n_rows) && (t_n_cols == x_n_cols) && (t_n_slices == 1) ) { for(uword col = 0; col < t_n_cols; ++col) @@ -829,6 +933,32 @@ const uword x_n_rows = x.n_rows; const uword x_n_cols = x.n_cols; + if( ((x_n_rows == 1) || (x_n_cols == 1)) && (t_n_rows == 1) && (t_n_cols == 1) && (x.n_elem == t_n_slices) ) + { + Cube<eT>& Q = const_cast< Cube<eT>& >(t.m); + + const uword t_aux_row1 = t.aux_row1; + const uword t_aux_col1 = t.aux_col1; + const uword t_aux_slice1 = t.aux_slice1; + + const eT* x_mem = x.memptr(); + + uword i,j; + for(i=0, j=1; j < t_n_slices; i+=2, j+=2) + { + const eT tmp_i = x_mem[i]; + const eT tmp_j = x_mem[j]; + + Q.at(t_aux_row1, t_aux_col1, t_aux_slice1 + i) /= tmp_i; + Q.at(t_aux_row1, t_aux_col1, t_aux_slice1 + j) /= tmp_j; + } + + if(i < t_n_slices) + { + Q.at(t_aux_row1, t_aux_col1, t_aux_slice1 + i) /= x_mem[i]; + } + } + else if( (t_n_rows == x_n_rows) && (t_n_cols == x_n_cols) && (t_n_slices == 1) ) { for(uword col = 0; col < t_n_cols; ++col) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.5/include/armadillo_bits/wall_clock_bones.hpp new/armadillo-4.300.8/include/armadillo_bits/wall_clock_bones.hpp --- old/armadillo-4.300.5/include/armadillo_bits/wall_clock_bones.hpp 2013-12-10 14:14:13.000000000 +0100 +++ new/armadillo-4.300.8/include/armadillo_bits/wall_clock_bones.hpp 2014-05-23 08:38:12.000000000 +0200 @@ -26,7 +26,7 @@ bool valid; - #if defined(ARMA_USE_CXX11) + #if defined(ARMA_USE_CXX11) && !defined(ARMA_DONT_USE_CXX11_CHRONO) std::chrono::steady_clock::time_point chrono_time1; #elif defined(ARMA_HAVE_GETTIMEOFDAY) struct timeval posix_time1; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.5/include/armadillo_bits/wall_clock_meat.hpp new/armadillo-4.300.8/include/armadillo_bits/wall_clock_meat.hpp --- old/armadillo-4.300.5/include/armadillo_bits/wall_clock_meat.hpp 2013-12-10 14:14:13.000000000 +0100 +++ new/armadillo-4.300.8/include/armadillo_bits/wall_clock_meat.hpp 2014-05-23 08:38:12.000000000 +0200 @@ -33,7 +33,7 @@ { arma_extra_debug_sigprint(); - #if defined(ARMA_USE_CXX11) + #if defined(ARMA_USE_CXX11) && !defined(ARMA_DONT_USE_CXX11_CHRONO) { chrono_time1 = std::chrono::steady_clock::now(); valid = true; @@ -61,7 +61,7 @@ if(valid) { - #if defined(ARMA_USE_CXX11) + #if defined(ARMA_USE_CXX11) && !defined(ARMA_DONT_USE_CXX11_CHRONO) { const std::chrono::steady_clock::time_point chrono_time2 = std::chrono::steady_clock::now(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-4.300.5/src/wrapper.cpp new/armadillo-4.300.8/src/wrapper.cpp --- old/armadillo-4.300.5/src/wrapper.cpp 2014-04-28 10:30:33.000000000 +0200 +++ new/armadillo-4.300.8/src/wrapper.cpp 2014-06-01 04:44:40.000000000 +0200 @@ -2,11 +2,6 @@ #include <limits> #include <complex> -#if (__cplusplus >= 201103L) - #undef ARMA_USE_CXX11 - #define ARMA_USE_CXX11 -#endif - #include "armadillo_bits/config.hpp" #undef ARMA_USE_WRAPPER -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org