[mathgl] 01/02: Disable C++11 features
Dimitrios Eftaxiopoulos
eftaxiop-guest at moszumanska.debian.org
Sat Feb 20 14:02:38 UTC 2016
This is an automated email from the git hooks/post-receive script.
eftaxiop-guest pushed a commit to branch master
in repository mathgl.
commit ebd1bed45adcc11a080e35efd8d5a9506f8af139
Author: Dimitrios Eftaxiopoulos <eftaxi12 at otenet.gr>
Date: Sat Feb 20 15:36:00 2016 +0200
Disable C++11 features
---
.pc/CMakeLists.patch/CMakeLists.txt | 44 +-
.pc/applied-patches | 2 -
.pc/json.patch/.timestamp | 0
.pc/json.patch/json/Backend.hpp | 18 -
.pc/src.patch/.timestamp | 0
.pc/src.patch/src/fit.cpp | 602 ---------------------
CMakeLists.txt | 36 +-
debian/changelog | 7 +
debian/control | 68 +--
debian/copyright | 2 +-
...-fltk7.4.0.install => libmgl-fltk7.4.1.install} | 0
...-glut7.4.0.install => libmgl-glut7.4.1.install} | 0
...gl-mpi7.4.0.install => libmgl-mpi7.4.1.install} | 0
...gl-qt7.4.0.install => libmgl-qt5-7.4.1.install} | 0
...gl-wnd7.4.0.install => libmgl-wnd7.4.1.install} | 0
...bmgl-wx7.4.0.install => libmgl-wx7.4.1.install} | 0
.../{libmgl7.4.0.install => libmgl7.4.1.install} | 0
debian/patches/CMakeLists.patch | 30 +-
debian/patches/json.patch | 9 -
debian/patches/series | 2 -
debian/patches/src.patch | 11 -
debian/rules | 1 -
22 files changed, 110 insertions(+), 722 deletions(-)
diff --git a/.pc/CMakeLists.patch/CMakeLists.txt b/.pc/CMakeLists.patch/CMakeLists.txt
index e2f5e46..744680e 100644
--- a/.pc/CMakeLists.patch/CMakeLists.txt
+++ b/.pc/CMakeLists.patch/CMakeLists.txt
@@ -12,8 +12,8 @@ endif(NOT CMAKE_BUILD_TYPE)
set(CMAKE_VERBOSE_MAKEFILE ON)
set(MathGL_VERSION_MAJOR 2)
-set(MathGL_VERSION_MINOR 3.3)
-set(MathGL_SOVERSION 7.4.0)
+set(MathGL_VERSION_MINOR 3.4)
+set(MathGL_SOVERSION 7.4.1)
function(mgl_add_lib mgl_tmp_lib)
if(${mgl_tmp_lib} MATCHES mgl)
@@ -104,7 +104,7 @@ option(enable-all-widgets "Enable all Widgets")
option(enable-all-swig "Enable all SWIG based interfaces")
option(enable-rvalue "Enable move constructor support (need C++11)" OFF)
option(enable-pthread "Enable POSIX threads support" OFF)
-option(enable-pthr_fltk "Enable POSIX threads for widgets" ON)
+option(enable-pthr-widget "Enable POSIX threads for widgets" ON)
option(enable-openmp "Enable OpenMP support" ON)
if(enable-pthread AND enable-openmp)
@@ -146,10 +146,10 @@ endif(UNIX AND enable-rvalue)
# MSVC does not require any special flags
if(enable-qt4 OR enable-qt5)
-set(enable-qt ON)
+set(QT_ENABLED ON)
endif(enable-qt4 OR enable-qt5)
-CMAKE_DEPENDENT_OPTION(enable-json-sample "Enable JSON sample" ON "enable-qt" OFF)
+CMAKE_DEPENDENT_OPTION(enable-json-sample "Enable JSON sample" ON "QT_ENABLED" OFF)
MGL_DEPENDENT_OPTION(enable-python "Enable python interface" OFF "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
MGL_DEPENDENT_OPTION(enable-lua "Enable Lua (v.5.1) interface" OFF "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
MGL_DEPENDENT_OPTION(enable-octave "Enable octave interface" OFF "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
@@ -291,15 +291,18 @@ else(enable-pthread)
set(MGL_HAVE_PTHREAD 0)
endif(enable-pthread)
+if(enable-pthr-widget OR enable-pthread)
+ set(MGL_HAVE_PTHR_WIDGET 1)
+ include(FindThreads)
+ if(NOT CMAKE_USE_PTHREADS_INIT)
+ message(SEND_ERROR "Couldn't find POSIX threads library.")
+ endif(NOT CMAKE_USE_PTHREADS_INIT)
+else(enable-pthr-widget OR enable-pthread)
+ set(MGL_HAVE_PTHR_WIDGET 0)
+endif(enable-pthr-widget OR enable-pthread)
+
if(enable-gsl)
set(MGL_HAVE_GSL 1)
- FIND_PACKAGE(PkgConfig)
- pkg_check_modules(GSL2 REQUIRED gsl)
- if(GSL2_FOUND)
- if ( NOT ${GSL2_VERSION} LESS 2.0)
- SET(MGL_HAVE_GSL2 1)
- endif ( NOT ${GSL2_VERSION} LESS 2.0)
- endif ( GSL2_FOUND )
find_library(GSL_LIB gsl)
find_library(GSL_CBLAS_LIB gslcblas)
find_path(GSL_INCLUDE_DIR gsl/gsl_fft_complex.h)
@@ -308,6 +311,12 @@ if(enable-gsl)
message(SEND_ERROR "${GSL_CBLAS_LIB}")
message(SEND_ERROR "${GSL_INCLUDE_DIR}")
message(SEND_ERROR "Couldn't find GSL libraries.")
+ else(NOT GSL_LIB OR NOT GSL_CBLAS_LIB OR NOT GSL_INCLUDE_DIR)
+ set(CMAKE_REQUIRED_INCLUDES ${GSL_INCLUDE_DIR})
+ set(CMAKE_REQUIRED_LIBRARIES ${GSL_LIB} ${GSL_CBLAS_LIB})
+ CHECK_CXX_SOURCE_COMPILES("#include <gsl/gsl_multifit_nlin.h>
+ int main(){gsl_multifit_fdfsolver *s=0;gsl_matrix *J = 0;
+ gsl_multifit_fdfsolver_jac(s, J);}" MGL_HAVE_GSL2)
endif(NOT GSL_LIB OR NOT GSL_CBLAS_LIB OR NOT GSL_INCLUDE_DIR)
else(enable-gsl)
set(MGL_HAVE_GSL 0)
@@ -343,9 +352,12 @@ endif(enable-hdf4)
if(enable-hdf5)
set(MGL_HAVE_HDF5 1)
- include(FindHDF5)
+ find_package(HDF5)
if(NOT HDF5_FOUND)
- message(SEND_ERROR "Couldn't find HDF5 library.")
+ find_package(HDF5 NAMES hdf5 COMPONENTS C shared static)
+ if(NOT HDF5_FOUND)
+ message(SEND_ERROR "Couldn't find HDF5 library.")
+ endif(NOT HDF5_FOUND)
endif(NOT HDF5_FOUND)
else(enable-hdf5)
set(MGL_HAVE_HDF5 0)
@@ -556,8 +568,10 @@ if(NOT enable-lgpl)
endif(enable-python OR enable-lua OR enable-octave)
if(NOT MSVC AND NOT BORLAND)
add_subdirectory( utils )
- add_subdirectory( fonts )
endif(NOT MSVC AND NOT BORLAND)
+ if(NOT WIN32)
+ add_subdirectory( fonts )
+ endif(NOT WIN32)
# add_subdirectory( mgllab )
endif(NOT enable-lgpl)
diff --git a/.pc/applied-patches b/.pc/applied-patches
index eb1f9d8..879efc6 100644
--- a/.pc/applied-patches
+++ b/.pc/applied-patches
@@ -1,3 +1 @@
CMakeLists.patch
-src.patch
-json.patch
diff --git a/.pc/json.patch/.timestamp b/.pc/json.patch/.timestamp
deleted file mode 100644
index e69de29..0000000
diff --git a/.pc/json.patch/json/Backend.hpp b/.pc/json.patch/json/Backend.hpp
deleted file mode 100644
index 3c7ecbe..0000000
--- a/.pc/json.patch/json/Backend.hpp
+++ /dev/null
@@ -1,18 +0,0 @@
-#pragma once
-
-#include <QStringList>
-
-class Backend : public QObject
-{
- Q_OBJECT
-
-public:
- explicit Backend(QObject *parent = 0);
-
-public:
-// Q_INVOKABLE QString join(const QStringList list) const;
- Q_INVOKABLE QString show(const QString& text) const;
- Q_INVOKABLE QString coor(const QString& xy, const QString& text) const;
- Q_INVOKABLE QString geometry(const QString& mgl) const;
-};
-
diff --git a/.pc/src.patch/.timestamp b/.pc/src.patch/.timestamp
deleted file mode 100644
index e69de29..0000000
diff --git a/.pc/src.patch/src/fit.cpp b/.pc/src.patch/src/fit.cpp
deleted file mode 100644
index d4f62e3..0000000
--- a/.pc/src.patch/src/fit.cpp
+++ /dev/null
@@ -1,602 +0,0 @@
-/***************************************************************************
- * fit.cpp is part of Math Graphic Library
- * Copyright (C) 2007-2014 Alexey Balakin <mathgl.abalakin at gmail.ru> *
- * *
- * This program 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 3 of the *
- * License, or (at your option) any later version. *
- * *
- * This program 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 General Public License for more details. *
- * *
- * You should have received a copy of the GNU Library General Public *
- * License along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
- ***************************************************************************/
-#include <ctype.h>
-#include "mgl2/fit.h"
-#include "mgl2/prim.h"
-#include "mgl2/eval.h"
-#include "mgl2/data.h"
-#include "mgl2/base.h"
-
-#if MGL_HAVE_GSL
-#include <gsl/gsl_multifit_nlin.h>
-#include <gsl/gsl_blas.h>
-#endif
-HMDT MGL_NO_EXPORT mglFormulaCalc(const char *str, const std::vector<mglDataA*> &head);
-//-----------------------------------------------------------------------------
-int mglFitPnts=100; ///< Number of output points in fitting
-char mglFitRes[1024]; ///< Last fitted formula
-mreal mglFitChi=NAN; ///< Chi value for last fitted formula
-mglData mglFitCovar; ///< Covar matrix for lat fitted formula
-//-----------------------------------------------------------------------------
-mreal MGL_EXPORT mgl_get_fit_chi() { return mglFitChi; }
-mreal MGL_EXPORT mgl_get_fit_chi_() { return mglFitChi; }
-//-----------------------------------------------------------------------------
-HCDT MGL_EXPORT mgl_get_fit_covar() { return &mglFitCovar; }
-uintptr_t MGL_EXPORT mgl_get_fit_covar_() { return (uintptr_t)&mglFitCovar; }
-//-----------------------------------------------------------------------------
-void MGL_EXPORT mgl_puts_fit(HMGL gr, double x, double y, double z, const char *pre, const char *font, double size)
-{
- long n = strlen(mglFitRes)+(pre?strlen(pre):0)+1;
- char *buf = new char[n];
- if(pre) snprintf(buf,n,"%s%s",pre,mglFitRes);
- else strncpy(buf,mglFitRes,n);
- buf[n-1]=0; mgl_puts(gr,x,y,z,buf,font,size);
- delete []buf;
-}
-void MGL_EXPORT mgl_puts_fit_(uintptr_t* gr, mreal *x, mreal *y, mreal *z, const char *prefix, const char *font, mreal *size, int l, int n)
-{
- char *s=new char[l+1]; memcpy(s,prefix,l); s[l]=0;
- char *d=new char[n+1]; memcpy(d,font,n); d[n]=0;
- mgl_puts_fit(_GR_, *x,*y,*z, s, d, *size);
- delete []s; delete []d;
-}
-//-----------------------------------------------------------------------------
-/// Structure for keeping data and precompiled fitted formula
-struct mglFitData
-{
- long n; ///< number of points
- mglDataA *x,*y,*z; ///< x, y, z values
- mreal *a; ///< function values
- mreal *s; ///< value dispersions (sigma)
- const char *eq; ///< approximation formula
- int m; ///< number of variables
- const char *var; ///< variables for fitting
-};
-//-----------------------------------------------------------------------------
-#if MGL_HAVE_GSL
-int mgl_fit__f (const gsl_vector *x, void *data, gsl_vector *f)
-{
- mglFitData *fd = (mglFitData *)data;
- mglDataV *var = new mglDataV[fd->m];
- std::vector<mglDataA*> list;
- for(long i=0;i<fd->m;i++)
- { var[i].s=fd->var[i]; var[i].Fill(gsl_vector_get(x,i)); list.push_back(var+i); }
- if(fd->x) list.push_back(fd->x);
- if(fd->y) list.push_back(fd->y);
- if(fd->z) list.push_back(fd->z);
- HMDT res = mglFormulaCalc(fd->eq, list);
-#pragma omp parallel for
- for(long i=0;i<fd->n;i++)
- {
- mreal aa = fd->a[i], ss = fd->s[i];
- if(mgl_isnum(aa) && ss==ss && ss!=0)
- gsl_vector_set (f, i, (res->a[i] - aa)/ss);
- else gsl_vector_set (f, i, 0);
- }
- delete []var; mgl_delete_data(res);
- return GSL_SUCCESS;
-}
-//-----------------------------------------------------------------------------
-int MGL_NO_EXPORT mgl_fit__df (const gsl_vector * x, void *data, gsl_matrix * J)
-{
- mglFitData *fd = (mglFitData *)data;
- mglDataV *var = new mglDataV[fd->m];
- std::vector<mglDataA*> list;
- for(long i=0;i<fd->m;i++)
- { var[i].s=fd->var[i]; var[i].Fill(gsl_vector_get(x,i)); list.push_back(var+i); }
- if(fd->x) list.push_back(fd->x);
- if(fd->y) list.push_back(fd->y);
- if(fd->z) list.push_back(fd->z);
- HMDT res = mglFormulaCalc(fd->eq, list);
- const mreal eps = 1e-5;
- for(long j=0;j<fd->m;j++)
- {
- var[j].Fill(gsl_vector_get(x,j)+eps);
- HMDT dif = mglFormulaCalc(fd->eq, list);
- var[j].Fill(gsl_vector_get(x,j));
-#pragma omp parallel for
- for(long i=0;i<fd->n;i++)
- {
- mreal aa = fd->a[i], ss = fd->s[i];
- if(mgl_isnum(aa) && ss==ss && ss!=0)
- gsl_matrix_set (J, i, j, (dif->a[i]-res->a[i])/(eps*ss));
- else gsl_matrix_set (J, i, j, 0);
- }
- mgl_delete_data(dif);
- }
- delete []var; mgl_delete_data(res);
- return GSL_SUCCESS;
-}
-//-----------------------------------------------------------------------------
-int MGL_NO_EXPORT mgl_fit__fdf (const gsl_vector * x, void *data, gsl_vector * f, gsl_matrix * J)
-{
- mglFitData *fd = (mglFitData *)data;
- mglDataV *var = new mglDataV[fd->m];
- std::vector<mglDataA*> list;
- for(long i=0;i<fd->m;i++)
- { var[i].s=fd->var[i]; var[i].Fill(gsl_vector_get(x,i)); list.push_back(var+i); }
- if(fd->x) list.push_back(fd->x);
- if(fd->y) list.push_back(fd->y);
- if(fd->z) list.push_back(fd->z);
- HMDT res = mglFormulaCalc(fd->eq, list);
-#pragma omp parallel for
- for(long i=0;i<fd->n;i++)
- {
- mreal aa = fd->a[i], ss = fd->s[i];
- if(mgl_isnum(aa) && ss==ss && ss!=0)
- gsl_vector_set (f, i, (res->a[i] - aa)/ss);
- else gsl_vector_set (f, i, 0);
- }
- const mreal eps = 1e-5;
- for(long j=0;j<fd->m;j++)
- {
- var[j].Fill(gsl_vector_get(x,j)+eps);
- HMDT dif = mglFormulaCalc(fd->eq, list);
- var[j].Fill(gsl_vector_get(x,j));
-#pragma omp parallel for
- for(long i=0;i<fd->n;i++)
- {
- mreal aa = fd->a[i], ss = fd->s[i];
- if(mgl_isnum(aa) && ss==ss && ss!=0)
- gsl_matrix_set (J, i, j, (dif->a[i]-res->a[i])/(eps*ss));
- else gsl_matrix_set (J, i, j, 0);
- }
- mgl_delete_data(dif);
- }
- delete []var; mgl_delete_data(res);
- return GSL_SUCCESS;
-}
-#endif
-//-----------------------------------------------------------------------------
-/// GSL based fitting procedure for formula/arguments specified by string
-mreal MGL_NO_EXPORT mgl_fit_base(mglFitData &fd, mreal *ini)
-{
-#if MGL_HAVE_GSL
- register long i,m=fd.m,n=fd.n,iter=0;
- if(n<1 || ini==0) return -1;
- // setup data
- double *x_init = new double[fd.m];
- for(i=0;i<m;i++) x_init[i] = ini[i];
- // setup fitting
- gsl_vector_view vx = gsl_vector_view_array(x_init, m);
- const gsl_multifit_fdfsolver_type *T = gsl_multifit_fdfsolver_lmsder;
- gsl_multifit_fdfsolver *s = gsl_multifit_fdfsolver_alloc(T, n, m);
- gsl_multifit_function_fdf f;
- f.f = mgl_fit__f; f.df = mgl_fit__df;
- f.fdf = mgl_fit__fdf; f.n = n; f.p = m;
- f.params = &fd;
- gsl_multifit_fdfsolver_set(s, &f, &vx.vector);
- int status; // start fitting
- do
- {
- iter++;
- status = gsl_multifit_fdfsolver_iterate(s);
- if ( status ) break;
- status = gsl_multifit_test_delta (s->dx, s->x, 1e-4, 1e-4 );
- }
- while ( status == GSL_CONTINUE && iter < 500 );
-
- gsl_matrix *covar = gsl_matrix_alloc(m, m);
-#ifdef HAVE_GSL_2
- gsl_matrix *J = gsl_matrix_alloc(s->fdf->n, s->fdf->p);
- gsl_multifit_fdfsolver_jac(s, J);
- gsl_multifit_covar (J, 0.0, covar);
- gsl_matrix_free (J);
-#else
- gsl_multifit_covar(s->J, 0.0, covar);
-#endif
- mglFitCovar.Set(covar);
- gsl_matrix_free(covar);
-
- mreal res = gsl_blas_dnrm2(s->f);
- for(i=0;i<m;i++) ini[i] = gsl_vector_get(s->x, i);
- // free memory
- gsl_multifit_fdfsolver_free(s);
- delete []x_init;
- return res;
-#else
- return 0.0;
-#endif
-}
-//-----------------------------------------------------------------------------
-void mglPrepareFitEq(mglBase *gr,mreal chi, const char *eq, const char *var, mreal *par)
-{
- char buf[32]="";
- mglFitChi = chi;
- snprintf(mglFitRes,1024,"chi=%g",chi); mglFitRes[1023]=0;
- size_t i,k,len=strlen(var);
- for(i=0;i<len;i++)
- {
- snprintf(buf,32,", %c=%g",var[i],par[i]);
- buf[31]=0; strcat(mglFitRes,buf);
- }
- gr->SetWarn(-1,mglFitRes);
-
- memset(mglFitRes, 0, 1024); //mglFitRes[0] = 0;
- len=strlen(eq);
- for(i=k=0;i<len;i++)
- {
- const char *c = strchr(var,eq[i]);
- if(c && (i==0 || !isalnum(eq[i-1])) && (i==len-1 || !isalnum(eq[i+1])))
- {
- snprintf(buf,32,"%g",par[c-var]);
- buf[31]=0; strcat(mglFitRes+k, buf); k+=strlen(buf);
- }
- else { mglFitRes[k] = eq[i]; k++; }
- }
- mglFitRes[k]=0;
-}
-//-----------------------------------------------------------------------------
-HMDT MGL_EXPORT mgl_fit_1(HMGL gr, HCDT y, const char *eq, const char *var, HMDT ini, const char *opt)
-{
- gr->SaveState(opt);
- mglData x(y->GetNx()); x.Fill(gr->Min.x, gr->Max.x);
- mglData s(y); s.Fill(1,1);
- return mgl_fit_xys(gr,&x,y,&s,eq,var,ini,0);
-}
-//-----------------------------------------------------------------------------
-HMDT MGL_EXPORT mgl_fit_2(HMGL gr, HCDT z, const char *eq, const char *var, HMDT ini, const char *opt)
-{
- gr->SaveState(opt);
- mglData x(z->GetNx()); x.Fill(gr->Min.x, gr->Max.x);
- mglData y(z->GetNy()); y.Fill(gr->Min.y, gr->Max.y);
- mglData s(z); s.Fill(1,1);
- return mgl_fit_xyzs(gr,&x,&y,z,&s,eq,var,ini,0);
-}
-//-----------------------------------------------------------------------------
-HMDT MGL_EXPORT mgl_fit_3(HMGL gr, HCDT a, const char *eq, const char *var, HMDT ini, const char *opt)
-{
- gr->SaveState(opt);
- mglData x(a->GetNx()); x.Fill(gr->Min.x, gr->Max.x);
- mglData y(a->GetNy()); y.Fill(gr->Min.y, gr->Max.y);
- mglData z(a->GetNz()); z.Fill(gr->Min.z, gr->Max.z);
- mglData s(a); s.Fill(1,1);
- return mgl_fit_xyzas(gr,&x,&y,&z,a,&s,eq,var,ini,0);
-}
-//-----------------------------------------------------------------------------
-HMDT MGL_EXPORT mgl_fit_xy(HMGL gr, HCDT x, HCDT y, const char *eq, const char *var, HMDT ini, const char *opt)
-{
- mglData s(y); s.Fill(1,1);
- return mgl_fit_xys(gr,x,y,&s,eq,var,ini,opt);
-}
-//-----------------------------------------------------------------------------
-HMDT MGL_EXPORT mgl_fit_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *eq, const char *var, HMDT ini, const char *opt)
-{
- mglData s(z); s.Fill(1,1);
- return mgl_fit_xyzs(gr,x,y,z,&s,eq,var,ini,opt);
-}
-//-----------------------------------------------------------------------------
-HMDT MGL_EXPORT mgl_fit_xyza(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT a, const char *eq, const char *var, HMDT ini, const char *opt)
-{
- mglData s(a); s.Fill(1,1);
- return mgl_fit_xyzas(gr,x,y,z,a,&s,eq,var,ini,opt);
-}
-//-----------------------------------------------------------------------------
-HMDT MGL_EXPORT mgl_fit_ys(HMGL gr, HCDT y, HCDT s, const char *eq, const char *var, HMDT ini, const char *opt)
-{
- gr->SaveState(opt);
- mglData x(y->GetNx()); x.Fill(gr->Min.x, gr->Max.x);
- return mgl_fit_xys(gr,&x,y,s,eq,var,ini,0);
-}
-//-----------------------------------------------------------------------------
-void MGL_NO_EXPORT mgl_fill_fit(HMGL gr, mglData &fit, mglData &in, mglFitData &fd, const char *var, long nx, long ny, long nz, long k)
-{
- mglDataV *vv = new mglDataV[fd.m];
- std::vector<mglDataA*> list;
- for(long i=0;i<fd.m;i++)
- { vv[i].s=var[i]; vv[i].Fill(in.a[i]); list.push_back(vv+i); }
- mglDataV x(nx,ny,nz, gr->Min.x,gr->Max.x,'x'); x.s = L"x"; list.push_back(&x);
- mglDataV y(nx,ny,nz, gr->Min.y,gr->Max.y,'y'); y.s = L"y"; list.push_back(&y);
- mglDataV z(nx,ny,nz, gr->Min.z,gr->Max.z,'z'); z.s = L"z"; list.push_back(&z);
- HMDT res = mglFormulaCalc(fd.eq, list);
- long nn = nx*ny*nz;
- memcpy(fit.a+k*nn,res->a,nn*sizeof(mreal));
- delete []vv; mgl_delete_data(res);
-}
-//-----------------------------------------------------------------------------
-HMDT MGL_EXPORT mgl_fit_xys(HMGL gr, HCDT xx, HCDT yy, HCDT ss, const char *eq, const char *var, HMDT ini, const char *opt)
-{
- long m = yy->GetNx();
- mreal rr = gr->SaveState(opt);
- long nn = (mgl_isnan(rr) || rr<=0) ? mglFitPnts:long(rr+0.5);
- if(xx->GetNx()!=m)
- { gr->SetWarn(mglWarnDim,"Fit[S]"); return 0; }
- if(m<2)
- { gr->SetWarn(mglWarnLow,"Fit[S]"); return 0; }
- if(ss->GetNN() != yy->GetNN())
- { gr->SetWarn(mglWarnDim,"Fit[S]"); return 0; }
- if(!var || *var==0)
- { gr->SetWarn(mglWarnNull,"Fit[S]"); return 0; }
-
- mglData x(xx), y(yy), s(ss); x.s=L"x";
- long mm = yy->GetNy()*yy->GetNz();
-#pragma omp parallel for
- for(long i=0;i<m;i++) if(mgl_isnan(x.a[i]))
- for(long j=0;j<mm;j++) y.a[i+m*j] = NAN;
- mglFitData fd;
- fd.n = m; fd.x = &x; fd.y = 0;
- fd.z = 0; fd.a = y.a; fd.s = s.a;
- fd.eq = eq; fd.var = var; fd.m = strlen(var);
- mglData in(fd.m), *fit=new mglData(nn, yy->GetNy(), yy->GetNz());
- mreal res=-1;
- for(long i=0;i<yy->GetNy()*yy->GetNz();i++)
- {
- if(ini && ini->nx>=fd.m) in.Set(ini->a,fd.m);
- else in.Fill(0.,0);
- mglDataR xc(x); xc.SetInd(i%x.ny, L"x");
- fd.a = y.a+i*m; fd.x = &xc; //x.a+(i%x.ny)*m;
- fd.s = s.a+i*m;
- res = mgl_fit_base(fd,in.a);
- mgl_fill_fit(gr,*fit,in,fd,var,nn,1,1,i);
- if(ini && ini->nx>=fd.m) memcpy(ini->a,in.a,fd.m*sizeof(mreal));
- }
- mglPrepareFitEq(gr,res,eq,var,in.a);
- gr->LoadState(); return fit;
-}
-//-----------------------------------------------------------------------------
-HMDT MGL_EXPORT mgl_fit_xyzs(HMGL gr, HCDT xx, HCDT yy, HCDT zz, HCDT ss, const char *eq, const char *var, HMDT ini, const char *opt)
-{
- long m=zz->GetNx(),n=zz->GetNy();
- mreal rr = gr->SaveState(opt);
- long nn = (mgl_isnan(rr) || rr<=0) ? mglFitPnts:long(rr+0.5);
- if(xx->GetNx()!=m)
- { gr->SetWarn(mglWarnDim,"Fit[S]"); return 0; }
- if(ss->GetNN() != zz->GetNN())
- { gr->SetWarn(mglWarnDim,"Fit[S]"); return 0; }
- if(yy->GetNx()!=n && (xx->GetNy()!=n || yy->GetNx()!=m || yy->GetNy()!=n))
- { gr->SetWarn(mglWarnDim,"Fit[S]"); return 0; }
- if(m<2|| n<2)
- { gr->SetWarn(mglWarnLow,"Fit[S]"); return 0; }
- if(!var || *var==0)
- { gr->SetWarn(mglWarnNull,"Fit[S]"); return 0; }
-
- mglData x(m, n), y(m, n), z(zz), s(ss); x.s=L"x"; y.s=L"y";
- long nz = zz->GetNz(), mm = n*m;
-#pragma omp parallel for collapse(2)
- for(long i=0;i<m;i++) for(long j=0;j<n;j++)
- {
- register long i0 = i+m*j;
- x.a[i0] = GetX(xx,i,j,0).x;
- y.a[i0] = GetY(yy,i,j,0).x;
- if(mgl_isnan(x.a[i0]) || mgl_isnan(y.a[i0]))
- for(long k=0;k<nz;k++) z.a[i0+mm*k] = NAN;
- }
- mglFitData fd;
- fd.n = m*n; fd.x = &x; fd.y = &y;
- fd.z = 0; fd.a = z.a; fd.s = s.a;
- fd.eq = eq; fd.var=var; fd.m = strlen(var);
-
- mglData in(fd.m), *fit=new mglData(nn, nn, zz->GetNz());
- mreal res = -1;
- for(long i=0;i<nz;i++)
- {
- if(ini && ini->nx>=fd.m) in.Set(ini->a,fd.m);
- else in.Fill(0.,0);
- fd.a = z.a+i*m*n; fd.s = s.a+i*m*n;
- res = mgl_fit_base(fd,in.a);
- mgl_fill_fit(gr,*fit,in,fd,var,nn,nn,1,i);
- if(ini && ini->nx>=fd.m) memcpy(ini->a,in.a,fd.m*sizeof(mreal));
- }
- mglPrepareFitEq(gr,res, eq,var,in.a);
- gr->LoadState(); return fit;
-}
-//-----------------------------------------------------------------------------
-HMDT MGL_EXPORT mgl_fit_xyzas(HMGL gr, HCDT xx, HCDT yy, HCDT zz, HCDT aa, HCDT ss, const char *eq, const char *var, HMDT ini, const char *opt)
-{
- long m=aa->GetNx(), n=aa->GetNy(), l=aa->GetNz(), i = n*m*l;
- mreal rr = gr->SaveState(opt);
- long nn = (mgl_isnan(rr) || rr<=0) ? mglFitPnts:long(rr+0.5);
- if(m<2 || n<2 || l<2)
- { gr->SetWarn(mglWarnLow,"Fit[S]"); return 0; }
- if(ss->GetNN() != i)
- { gr->SetWarn(mglWarnDim,"Fit[S]"); return 0; }
- bool both = xx->GetNN()==i && yy->GetNN()==i && zz->GetNN()==i;
- if(!(both || (xx->GetNx()==m && yy->GetNx()==n && zz->GetNx()==l)))
- { gr->SetWarn(mglWarnDim,"Fit[S]"); return 0; }
- if(!var || *var==0)
- { gr->SetWarn(mglWarnNull,"Fit[S]"); return 0; }
-
- mglData x(m,n,l), y(m,n,l), z(m,n,l), a(aa), s(ss);
- x.s=L"x"; y.s=L"y"; z.s=L"z";
-#pragma omp parallel for collapse(3)
- for(long i=0;i<m;i++) for(long j=0;j<n;j++) for(long k=0;k<l;k++)
- {
- register long i0 = i+m*(j+n*k);
- x.a[i0] = GetX(xx,i,j,k).x;
- y.a[i0] = GetY(yy,i,j,k).x;
- z.a[i0] = GetZ(zz,i,j,k).x;
- if(mgl_isnan(x.a[i0]) || mgl_isnan(y.a[i0]) || mgl_isnan(z.a[i0])) a.a[i0] = NAN;
- }
- mglFitData fd;
- fd.n = m*n*l; fd.x = &x; fd.y = &y;
- fd.z = &z; fd.a = a.a; fd.s = s.a;
- fd.eq = eq; fd.var=var; fd.m = strlen(var);
- mglData in(fd.m), *fit=new mglData(nn, nn, nn);
- mreal res = -1;
-
- if(ini && ini->nx>=fd.m) in.Set(ini->a,fd.m);
- else in.Fill(0.,0);
- res = mgl_fit_base(fd,in.a);
- mgl_fill_fit(gr,*fit,in,fd,var,nn,nn,nn,0);
- if(ini && ini->nx>=fd.m) memcpy(ini->a,in.a,fd.m*sizeof(mreal));
-
- mglPrepareFitEq(gr,res, eq,var,in.a);
- gr->LoadState(); return fit;
-}
-//-----------------------------------------------------------------------------
-HMDT MGL_EXPORT mgl_hist_x(HMGL gr, HCDT x, HCDT a, const char *opt)
-{
- long nn=a->GetNN();
- if(nn!=x->GetNN())
- { gr->SetWarn(mglWarnDim,"Hist"); return 0; }
- mreal rr = gr->SaveState(opt);
- long n = (mgl_isnan(rr) || rr<=0) ? mglFitPnts:long(rr+0.5);
- mglData *res = new mglData(n);
-
- mreal vx = n/(gr->Max.x-gr->Min.x);
- for(long i=0;i<nn;i++)
- {
- register long j1 = long((x->vthr(i)-gr->Min.x)*vx);
- if(j1>=0 && j1<n) res->a[j1] += a->vthr(i);
- }
- gr->LoadState(); return res;
-}
-//-----------------------------------------------------------------------------
-HMDT MGL_EXPORT mgl_hist_xy(HMGL gr, HCDT x, HCDT y, HCDT a, const char *opt)
-{
- long nn=a->GetNN();
- if(nn!=x->GetNN() || nn!=y->GetNN())
- { gr->SetWarn(mglWarnDim,"Hist"); return 0; }
- mreal rr = gr->SaveState(opt);
- long n = (mgl_isnan(rr) || rr<=0) ? mglFitPnts:long(rr+0.5);
- mglData *res = new mglData(n, n);
- mreal vx = n/(gr->Max.x-gr->Min.x);
- mreal vy = n/(gr->Max.y-gr->Min.y);
- for(long i=0;i<nn;i++)
- {
- register long j1 = long((x->vthr(i)-gr->Min.x)*vx);
- register long j2 = long((y->vthr(i)-gr->Min.y)*vy);
- if(j1>=0 && j1<n && j2>=0 && j2<n) res->a[j1+n*j2] += a->vthr(i);
- }
- gr->LoadState(); return res;
-}
-//-----------------------------------------------------------------------------
-HMDT MGL_EXPORT mgl_hist_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT a, const char *opt)
-{
- long nn=a->GetNN();
- if(nn!=x->GetNN() || nn!=y->GetNN() || nn!=z->GetNN())
- { gr->SetWarn(mglWarnDim,"Hist"); return 0; }
- mreal rr = gr->SaveState(opt);
- long n = (mgl_isnan(rr) || rr<=0) ? mglFitPnts:long(rr+0.5);
- mglData *res = new mglData(n, n, n);
- mreal vx = n/(gr->Max.x-gr->Min.x), vy = n/(gr->Max.y-gr->Min.y), vz = n/(gr->Max.z-gr->Min.z);
- for(long i=0;i<nn;i++)
- {
- register long j1 = long((x->vthr(i)-gr->Min.x)*vx);
- register long j2 = long((y->vthr(i)-gr->Min.y)*vy);
- register long j3 = long((z->vthr(i)-gr->Min.z)*vz);
- if(j1>=0 && j1<n && j2>=0 && j2<n && j3>=0 && j3<n)
- res->a[j1+n*(j2+n*j3)] += a->vthr(i);
- }
- gr->LoadState(); return res;
-}
-//-----------------------------------------------------------------------------
-uintptr_t MGL_EXPORT mgl_hist_x_(uintptr_t* gr, uintptr_t* x, uintptr_t* a, const char *opt, int lo)
-{ char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- uintptr_t r = (uintptr_t)mgl_hist_x(_GR_, _DA_(x), _DA_(a), o);
- delete []o; return r; }
-uintptr_t MGL_EXPORT mgl_hist_xy_(uintptr_t* gr, uintptr_t* x, uintptr_t* y, uintptr_t* a, const char *opt, int lo)
-{ char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- uintptr_t r = (uintptr_t)mgl_hist_xy(_GR_, _DA_(x), _DA_(y), _DA_(a), o);
- delete []o; return r; }
-uintptr_t MGL_EXPORT mgl_hist_xyz_(uintptr_t* gr, uintptr_t* x, uintptr_t* y, uintptr_t* z, uintptr_t* a, const char *opt, int lo)
-{ char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- uintptr_t r = (uintptr_t)mgl_hist_xyz(_GR_, _DA_(x), _DA_(y), _DA_(z), _DA_(a), o);
- delete []o; return r; }
-//-----------------------------------------------------------------------------
-MGL_EXPORT const char *mgl_get_fit(HMGL ) { return mglFitRes; }
-int MGL_EXPORT mgl_get_fit_(uintptr_t *gr, char *out, int len)
-{
- const char *res = mgl_get_fit(_GR_);
- if(out) strncpy(out,res,len);
- return strlen(res);
-}
-//-----------------------------------------------------------------------------
-uintptr_t MGL_EXPORT mgl_fit_1_(uintptr_t* gr, uintptr_t* y, const char *eq, const char *var, uintptr_t *ini, const char *opt, int l, int n, int lo)
-{
- char *s=new char[l+1]; memcpy(s,eq,l); s[l]=0;
- char *d=new char[n+1]; memcpy(d,var,n); d[n]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- uintptr_t r = (uintptr_t)mgl_fit_1(_GR_, _DA_(y), s, d, _DM_(ini), o);
- delete []o; delete []s; delete []d; return r;
-}
-uintptr_t MGL_EXPORT mgl_fit_2_(uintptr_t* gr, uintptr_t* z, const char *eq, const char *var, uintptr_t *ini, const char *opt, int l, int n, int lo)
-{
- char *s=new char[l+1]; memcpy(s,eq,l); s[l]=0;
- char *d=new char[n+1]; memcpy(d,var,n); d[n]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- uintptr_t r = (uintptr_t)mgl_fit_2(_GR_, _DA_(z), s, d, _DM_(ini), o);
- delete []o; delete []s; delete []d; return r;
-}
-uintptr_t MGL_EXPORT mgl_fit_3_(uintptr_t* gr, uintptr_t* a, const char *eq, const char *var, uintptr_t *ini, const char *opt, int l, int n, int lo)
-{
- char *s=new char[l+1]; memcpy(s,eq,l); s[l]=0;
- char *d=new char[n+1]; memcpy(d,var,n); d[n]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- uintptr_t r = (uintptr_t)mgl_fit_3(_GR_, _DA_(a), s, d, _DM_(ini), o);
- delete []o; delete []s; delete []d; return r;
-}
-uintptr_t MGL_EXPORT mgl_fit_xy_(uintptr_t* gr, uintptr_t* x, uintptr_t* y, const char *eq, const char *var, uintptr_t *ini, const char *opt, int l, int n, int lo)
-{
- char *s=new char[l+1]; memcpy(s,eq,l); s[l]=0;
- char *d=new char[n+1]; memcpy(d,var,n); d[n]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- uintptr_t r = (uintptr_t)mgl_fit_xy(_GR_, _DA_(x), _DA_(y), s, d, _DM_(ini), o);
- delete []o; delete []s; delete []d; return r;
-}
-uintptr_t MGL_EXPORT mgl_fit_xyz_(uintptr_t* gr, uintptr_t* x, uintptr_t* y, uintptr_t* z, const char *eq, const char *var, uintptr_t *ini, const char *opt, int l, int n, int lo)
-{
- char *s=new char[l+1]; memcpy(s,eq,l); s[l]=0;
- char *d=new char[n+1]; memcpy(d,var,n); d[n]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- uintptr_t r = (uintptr_t)mgl_fit_xyz(_GR_, _DA_(x), _DA_(y), _DA_(z), s, d, _DM_(ini), o);
- delete []o; delete []s; delete []d; return r;
-}
-uintptr_t MGL_EXPORT mgl_fit_xyza_(uintptr_t* gr, uintptr_t* x, uintptr_t* y, uintptr_t* z, uintptr_t* a, const char *eq, const char *var, uintptr_t *ini, const char *opt, int l, int n, int lo)
-{
- char *s=new char[l+1]; memcpy(s,eq,l); s[l]=0;
- char *d=new char[n+1]; memcpy(d,var,n); d[n]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- uintptr_t r = (uintptr_t)mgl_fit_xyza(_GR_, _DA_(x), _DA_(y), _DA_(z), _DA_(a), s, d, _DM_(ini), o);
- delete []o; delete []s; delete []d; return r;
-}
-uintptr_t MGL_EXPORT mgl_fit_ys_(uintptr_t* gr, uintptr_t* y, uintptr_t* ss, const char *eq, const char *var, uintptr_t *ini, const char *opt, int l, int n, int lo)
-{
- char *s=new char[l+1]; memcpy(s,eq,l); s[l]=0;
- char *d=new char[n+1]; memcpy(d,var,n); d[n]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- uintptr_t r = (uintptr_t)mgl_fit_ys(_GR_, _DA_(y), _DA_(ss), s, d, _DM_(ini), o);
- delete []o; delete []s; delete []d; return r;
-}
-uintptr_t MGL_EXPORT mgl_fit_xys_(uintptr_t* gr, uintptr_t* x, uintptr_t* y, uintptr_t* ss, const char *eq, const char *var, uintptr_t *ini, const char *opt, int l, int n, int lo)
-{
- char *s=new char[l+1]; memcpy(s,eq,l); s[l]=0;
- char *d=new char[n+1]; memcpy(d,var,n); d[n]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- uintptr_t r = (uintptr_t)mgl_fit_xys(_GR_, _DA_(x), _DA_(y), _DA_(ss), s, d, _DM_(ini), o);
- delete []o; delete []s; delete []d; return r;
-}
-uintptr_t MGL_EXPORT mgl_fit_xyzs_(uintptr_t* gr, uintptr_t* x, uintptr_t* y, uintptr_t* z, uintptr_t* ss, const char *eq, const char *var, uintptr_t *ini, const char *opt, int l, int n, int lo)
-{
- char *s=new char[l+1]; memcpy(s,eq,l); s[l]=0;
- char *d=new char[n+1]; memcpy(d,var,n); d[n]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- uintptr_t r = (uintptr_t)mgl_fit_xyzs(_GR_, _DA_(x), _DA_(y), _DA_(z), _DA_(ss), s, d, _DM_(ini), o);
- delete []o; delete []s; delete []d; return r;
-}
-uintptr_t MGL_EXPORT mgl_fit_xyzas_(uintptr_t* gr, uintptr_t* x, uintptr_t* y, uintptr_t* z, uintptr_t* a, uintptr_t* ss, const char *eq, const char *var, uintptr_t *ini, const char *opt, int l, int n, int lo)
-{
- char *s=new char[l+1]; memcpy(s,eq,l); s[l]=0;
- char *d=new char[n+1]; memcpy(d,var,n); d[n]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- uintptr_t r = (uintptr_t)mgl_fit_xyzas(_GR_, _DA_(x), _DA_(y), _DA_(z), _DA_(a), _DA_(ss), s, d, _DM_(ini), o);
- delete []o; delete []s; delete []d; return r;
-}
-//-----------------------------------------------------------------------------
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 744680e..c9eb64b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -95,7 +95,7 @@ set(MGL_LIB_INSTALL_DIR "lib" CACHE STRING "Set library install directory")
string(TIMESTAMP MGL_NIGHT "%d.%m.%y")
option(enable-double "Enable double precision in MathGL library" ON)
-option(enable-mpi "Enable mpi")
+option(enable-mpi "Enable mpi" ON)
option(enable-opengl "Enable OpenGL support" ON)
option(enable-all-docs "Enable all documentation building")
#option(enable-doc "Enable documentation building")
@@ -103,9 +103,9 @@ option(enable-all "Enable all core features")
option(enable-all-widgets "Enable all Widgets")
option(enable-all-swig "Enable all SWIG based interfaces")
option(enable-rvalue "Enable move constructor support (need C++11)" OFF)
-option(enable-pthread "Enable POSIX threads support" OFF)
+option(enable-pthread "Enable POSIX threads support" ON)
option(enable-pthr-widget "Enable POSIX threads for widgets" ON)
-option(enable-openmp "Enable OpenMP support" ON)
+option(enable-openmp "Enable OpenMP support" OFF)
if(enable-pthread AND enable-openmp)
message(SEND_ERROR "You can't enable POSIX threads and OpenMP at the same time!")
@@ -113,7 +113,7 @@ endif(enable-pthread AND enable-openmp)
option(enable-lgpl "Enable only LGPL part of MathGL")
option(enable-mgl2 "Use names 'libmgl2-*' instead of 'libmgl-*'")
-option(enable-ltdl "Enable loading modules support")
+option(enable-ltdl "Enable loading modules support" ON)
CMAKE_DEPENDENT_OPTION(enable-doc-site "Enable HTML documentation for website" OFF "NOT enable-all-docs" ON)
CMAKE_DEPENDENT_OPTION(enable-doc-html "Enable HTML documentation" OFF "NOT enable-all-docs" ON)
CMAKE_DEPENDENT_OPTION(enable-doc-info "Enable INFO documentation" OFF "NOT enable-all-docs" ON)
@@ -126,18 +126,18 @@ CMAKE_DEPENDENT_OPTION(enable-mgltex "Enable installation of mgltex package (MGL
CMAKE_DEPENDENT_OPTION(enable-zlib "Enable zlib support" ON "NOT enable-all" ON)
CMAKE_DEPENDENT_OPTION(enable-png "Enable png support" ON "NOT enable-all" ON)
-CMAKE_DEPENDENT_OPTION(enable-jpeg "Enable jpeg support" OFF "NOT enable-all" ON)
-MGL_DEPENDENT_OPTION(enable-gsl "Enable gsl support" OFF "NOT enable-lgpl" ON "NOT enable-all" ON)
-MGL_DEPENDENT_OPTION(enable-hdf4 "Enable hdf4 support" OFF "NOT enable-lgpl" ON "NOT enable-all" ON)
-MGL_DEPENDENT_OPTION(enable-hdf5 "Enable hdf5 support" OFF "NOT enable-lgpl" ON "NOT enable-all" ON)
-CMAKE_DEPENDENT_OPTION(enable-pdf "Enable pdf support" OFF "NOT enable-all" ON)
-CMAKE_DEPENDENT_OPTION(enable-gif "Enable gif support" OFF "NOT enable-all" ON)
-CMAKE_DEPENDENT_OPTION(enable-glut "Enable glut support" OFF "NOT enable-all-widgets" ON)
-CMAKE_DEPENDENT_OPTION(enable-fltk "Enable fltk widget" OFF "NOT enable-all-widgets" ON)
-CMAKE_DEPENDENT_OPTION(enable-wx "Enable wxWidget widget" OFF "NOT enable-all-widgets" ON)
+CMAKE_DEPENDENT_OPTION(enable-jpeg "Enable jpeg support" ON "NOT enable-all" ON)
+MGL_DEPENDENT_OPTION(enable-gsl "Enable gsl support" ON "NOT enable-lgpl" ON "NOT enable-all" ON)
+MGL_DEPENDENT_OPTION(enable-hdf4 "Enable hdf4 support" ON "NOT enable-lgpl" ON "NOT enable-all" ON)
+MGL_DEPENDENT_OPTION(enable-hdf5 "Enable hdf5 support" ON "NOT enable-lgpl" ON "NOT enable-all" ON)
+CMAKE_DEPENDENT_OPTION(enable-pdf "Enable pdf support" ON "NOT enable-all" ON)
+CMAKE_DEPENDENT_OPTION(enable-gif "Enable gif support" ON "NOT enable-all" ON)
+CMAKE_DEPENDENT_OPTION(enable-glut "Enable glut support" ON "NOT enable-all-widgets" ON)
+CMAKE_DEPENDENT_OPTION(enable-fltk "Enable fltk widget" ON "NOT enable-all-widgets" ON)
+CMAKE_DEPENDENT_OPTION(enable-wx "Enable wxWidget widget" ON "NOT enable-all-widgets" ON)
CMAKE_DEPENDENT_OPTION(enable-qt4 "Enable Qt4 widget" OFF "NOT enable-all-widgets" ON)
-CMAKE_DEPENDENT_OPTION(enable-qt5 "Enable Qt5 widget" OFF "NOT enable-all-widgets" ON)
-CMAKE_DEPENDENT_OPTION(enable-qt5asqt "Set Qt5 as default libmgl-qt" ON "enable-qt5" OFF)
+CMAKE_DEPENDENT_OPTION(enable-qt5 "Enable Qt5 widget" ON "NOT enable-all-widgets" ON)
+CMAKE_DEPENDENT_OPTION(enable-qt5asqt "Set Qt5 as default libmgl-qt" ON "enable-qt5" ON)
if(UNIX AND enable-rvalue)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11")
@@ -149,10 +149,10 @@ if(enable-qt4 OR enable-qt5)
set(QT_ENABLED ON)
endif(enable-qt4 OR enable-qt5)
-CMAKE_DEPENDENT_OPTION(enable-json-sample "Enable JSON sample" ON "QT_ENABLED" OFF)
-MGL_DEPENDENT_OPTION(enable-python "Enable python interface" OFF "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
+CMAKE_DEPENDENT_OPTION(enable-json-sample "Enable JSON sample" ON "QT_ENABLED" ON)
+MGL_DEPENDENT_OPTION(enable-python "Enable python interface" ON "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
MGL_DEPENDENT_OPTION(enable-lua "Enable Lua (v.5.1) interface" OFF "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
-MGL_DEPENDENT_OPTION(enable-octave "Enable octave interface" OFF "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
+MGL_DEPENDENT_OPTION(enable-octave "Enable octave interface" ON "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
MGL_DEPENDENT_OPTION(enable-octave-install "Octave interface will install for all users" ON "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
include_directories( ${MathGL_SOURCE_DIR}/include ${MathGL_BINARY_DIR}/include)
diff --git a/debian/changelog b/debian/changelog
index fbffdd1..4462b5b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+mathgl (2.3.4-1) unstable; urgency=medium
+
+ * Imported Upstream version 2.3.4
+ * Disable C++11 features
+
+ -- Dimitrios Eftaxiopoulos <eftaxi12 at otenet.gr> Sun, 20 Feb 2016 13:34:52 +0200
+
mathgl (2.3.3+svn1216-1) unstable; urgency=medium
* Imported Upstream version 2.3.3+svn1216 (Closes: #800460)
diff --git a/debian/control b/debian/control
index 857da5a..74a0db6 100644
--- a/debian/control
+++ b/debian/control
@@ -10,15 +10,15 @@ Build-Depends: debhelper (>= 9), libltdl-dev, libgsl-dev, freeglut3-dev,
libgif-dev, python-dev, python-numpy, libfontconfig1-dev, libqtwebkit-dev,
libhdf4-dev, chrpath, libxinerama-dev, libxmu-dev, libxi-dev, libhpdf-dev,
mpi-default-dev, swig3.0, cmake, libxft-dev, liboctave-dev, fluid
-Standards-Version: 3.9.6
+Standards-Version: 3.9.7
Homepage: http://mathgl.sourceforge.net/doc_en/Main.html
-Vcs-Git: git://anonscm.debian.org/debian-science/packages/mathgl.git
-Vcs-Browser: http://anonscm.debian.org/gitweb/?p=debian-science/packages/mathgl.git
+Vcs-Git: https://anonscm.debian.org/debian-science/packages/mathgl.git
+Vcs-Browser: https://anonscm.debian.org/gitweb/?p=debian-science/packages/mathgl.git
Package: mathgl
Architecture: any
Section: libs
-Depends: ${shlibs:Depends}, ${misc:Depends}, libmgl7.4.0 (= ${binary:Version})
+Depends: ${shlibs:Depends}, ${misc:Depends}, libmgl7.4.1 (= ${binary:Version})
Description: library for scientific graphs (utilities and examples)
A free cross-platform library of fast C++ routines for plotting data in up
to 3 dimensions. It can export plots to bitmaps and vector EPS, SVG, IDTF
@@ -31,7 +31,7 @@ Description: library for scientific graphs (utilities and examples)
Package: udav
Architecture: any
Section: libs
-Depends: ${shlibs:Depends}, ${misc:Depends}, libmgl7.4.0 (= ${binary:Version})
+Depends: ${shlibs:Depends}, ${misc:Depends}, libmgl7.4.1 (= ${binary:Version})
Description: library for scientific graphs (window interface)
A free cross-platform library of fast C++ routines for plotting data in up
to 3 dimensions. It can export plots to bitmaps and vector EPS, SVG, IDTF
@@ -56,12 +56,14 @@ Description: library for scientific graphs (window interface)
# .
# This package contains the MathGL documentation in English.
-Package: libmgl7.4.0
+Package: libmgl7.4.1
Architecture: any
Section: libs
Depends: ${shlibs:Depends}, ${misc:Depends}, libmgl-data
-Replaces: libmgl5, libmgl6, libmgl6.0.0, libmgl7.1.0, libmgl7.2.0
-Conflicts: libmgl5, libmgl6, libmgl6.0.0, libmgl7.1.0, libmgl7.2.0
+Replaces: libmgl5, libmgl6, libmgl6.0.0, libmgl7.1.0, libmgl7.2.0,
+ libmgl7.4.0
+Conflicts: libmgl5, libmgl6, libmgl6.0.0, libmgl7.1.0, libmgl7.2.0,
+ libmgl7.4.0
Description: library for scientific graphs (main runtime library)
A free cross-platform library of fast C++ routines for plotting data in up
to 3 dimensions. It can export plots to bitmaps and vector EPS, SVG, IDTF
@@ -71,12 +73,12 @@ Description: library for scientific graphs (main runtime library)
.
This package contains the shared object files.
-Package: libmgl-mpi7.4.0
+Package: libmgl-mpi7.4.1
Architecture: any
Section: libs
Depends: ${shlibs:Depends}, ${misc:Depends}, libmgl-data
-Replaces: libmgl-mpi7.0.0, libmgl-mpi7.1.0, libmgl-mpi7.2.0
-Conflicts: libmgl-mpi7.0.0, libmgl-mpi7.1.0, libmgl-mpi7.2.0
+Replaces: libmgl-mpi7.0.0, libmgl-mpi7.1.0, libmgl-mpi7.2.0, libmgl-mpi7.4.0
+Conflicts: libmgl-mpi7.0.0, libmgl-mpi7.1.0, libmgl-mpi7.2.0, libmgl-mpi7.4.0
Description: library for scientific graphs (mpi enhanced runtime library)
A free cross-platform library of fast C++ routines for plotting data in up
to 3 dimensions. It can export plots to bitmaps and vector EPS, SVG, IDTF
@@ -87,14 +89,14 @@ Description: library for scientific graphs (mpi enhanced runtime library)
This package contains the, parallel interface enhanced, shared object
files.
-Package: libmgl-wnd7.4.0
+Package: libmgl-wnd7.4.1
Architecture: any
Section: libs
Depends: ${shlibs:Depends}, ${misc:Depends}, libmgl-data
Replaces: libmgl-fltk5, libmgl-wnd6, libmgl-qt5, libmgl-wx5, libmgl-wnd6.0.0,
- libmgl-wnd7.1.0, libmgl-wnd7.2.0
+ libmgl-wnd7.1.0, libmgl-wnd7.2.0, libmgl-wnd7.4.0
Conflicts: libmgl-fltk5, libmgl-wnd6, libmgl-qt5, libmgl-wx5, libmgl-wnd6.0.0,
- libmgl-wnd7.1.0, libmgl-wnd7.2.0
+ libmgl-wnd7.1.0, libmgl-wnd7.2.0, libmgl-wnd7.4.0
Description: library for scientific graphs (windows runtime library)
A free cross-platform library of fast C++ routines for plotting data in up
to 3 dimensions. It can export plots to bitmaps and vector EPS, SVG, IDTF
@@ -104,13 +106,15 @@ Description: library for scientific graphs (windows runtime library)
.
This package contains the window opening related shared object files based
on Fltk, Qt and Wx.
-
-Package: libmgl-glut7.4.0
+
+Package: libmgl-glut7.4.1
Architecture: any
Section: libs
Depends: ${shlibs:Depends}, ${misc:Depends}, libmgl-data
-Replaces: libmgl-glut5, libmgl-glut6.0.0, libmgl-glut7.1.0, libmgl-glut7.2.0
-Conflicts: libmgl-glut5, libmgl-glut6.0.0, libmgl-glut7.1.0, libmgl-glut7.2.0
+Replaces: libmgl-glut5, libmgl-glut6.0.0, libmgl-glut7.1.0, libmgl-glut7.2.0,
+ libmgl-glut7.4.0
+Conflicts: libmgl-glut5, libmgl-glut6.0.0, libmgl-glut7.1.0, libmgl-glut7.2.0,
+ libmgl-glut7.4.0
Description: library for scientific graphs (glut interface for windows)
A free cross-platform library of fast C++ routines for plotting data in up
to 3 dimensions. It can export plots to bitmaps and vector EPS, SVG, IDTF
@@ -121,12 +125,12 @@ Description: library for scientific graphs (glut interface for windows)
This package contains the glut interface shared object files for window
opening.
-Package: libmgl-qt7.4.0
+Package: libmgl-qt5-7.4.1
Architecture: any
Section: libs
Depends: ${shlibs:Depends}, ${misc:Depends}, libmgl-data
-Replaces: libmgl-qt5, libmgl-qt7.1.0, libmgl-qt7.2.0
-Conflicts: libmgl-qt5, libmgl-qt7.1.0, libmgl-qt7.2.0
+Replaces: libmgl-qt5, libmgl-qt7.1.0, libmgl-qt7.2.0, libmgl-qt7.4.0
+Conflicts: libmgl-qt5, libmgl-qt7.1.0, libmgl-qt7.2.0, libmgl-qt7.4.0
Description: library for scientific graphs (Qt interface for windows)
A free cross-platform library of fast C++ routines for plotting data in up
to 3 dimensions. It can export plots to bitmaps and vector EPS, SVG, IDTF
@@ -137,12 +141,12 @@ Description: library for scientific graphs (Qt interface for windows)
This package contains the Qt interface shared object files for window
opening.
-Package: libmgl-fltk7.4.0
+Package: libmgl-fltk7.4.1
Architecture: any
Section: libs
Depends: ${shlibs:Depends}, ${misc:Depends}, libmgl-data
-Replaces: libmgl-fltk5, libmgl-fltk7.1.0, libmgl-fltk7.2.0
-Conflicts: libmgl-fltk5, libmgl-fltk7.1.0, libmgl-fltk7.2.0
+Replaces: libmgl-fltk5, libmgl-fltk7.1.0, libmgl-fltk7.2.0, libmgl-fltk7.4.0
+Conflicts: libmgl-fltk5, libmgl-fltk7.1.0, libmgl-fltk7.2.0, libmgl-fltk7.4.0
Description: library for scientific graphs (fltk interface for windows)
A free cross-platform library of fast C++ routines for plotting data in up
to 3 dimensions. It can export plots to bitmaps and vector EPS, SVG, IDTF
@@ -153,12 +157,12 @@ Description: library for scientific graphs (fltk interface for windows)
This package contains the fltk interface shared object files for window
opening.
-Package: libmgl-wx7.4.0
+Package: libmgl-wx7.4.1
Architecture: any
Section: libs
Depends: ${shlibs:Depends}, ${misc:Depends}, libmgl-data
-Replaces: libmgl-wx5, libmgl-wx7.1.0, libmgl-wx7.2.0
-Conflicts: libmgl-wx5, libmgl-wx7.1.0, libmgl-wx7.2.0
+Replaces: libmgl-wx5, libmgl-wx7.1.0, libmgl-wx7.2.0, libmgl-wx7.4.0
+Conflicts: libmgl-wx5, libmgl-wx7.1.0, libmgl-wx7.2.0, libmgl-wx7.4.0
Description: library for scientific graphs (wx interface for windows)
A free cross-platform library of fast C++ routines for plotting data in up
to 3 dimensions. It can export plots to bitmaps and vector EPS, SVG, IDTF
@@ -198,10 +202,10 @@ Description: library for scientific graphs (data files)
Package: libmgl-dev
Architecture: any
Section: libdevel
-Depends: libmgl7.4.0 (= ${binary:Version}), libmgl-wnd7.4.0 (= ${binary:Version}),
- libmgl-wx7.4.0 (= ${binary:Version}), libmgl-fltk7.4.0 (= ${binary:Version}),
- libmgl-qt7.4.0 (= ${binary:Version}), libmgl-glut7.4.0 (= ${binary:Version}),
- libmgl-mpi7.4.0 (= ${binary:Version}), ${misc:Depends}, libgsl-dev,
+Depends: libmgl7.4.1 (= ${binary:Version}), libmgl-wnd7.4.1 (= ${binary:Version}),
+ libmgl-wx7.4.1 (= ${binary:Version}), libmgl-fltk7.4.1 (= ${binary:Version}),
+ libmgl-qt5-7.4.1 (= ${binary:Version}), libmgl-glut7.4.1 (= ${binary:Version}),
+ libmgl-mpi7.4.1 (= ${binary:Version}), ${misc:Depends}, libgsl-dev,
libgl1-mesa-dev | libgl-dev, libpng-dev
Description: library for scientific graphs (development files)
A free cross-platform library of fast C++ routines for plotting data in up
@@ -223,4 +227,4 @@ Description: library for scientific graphs (Python module)
MathGL can also be used in the console. There are interfaces to a set of
languages, such as, C, Fortran, Pascal, Forth, Python, Octave.
.
- This package provides the Python module for mathgl.
\ No newline at end of file
+ This package provides the Python module for mathgl.
diff --git a/debian/copyright b/debian/copyright
index a2bec44..8e7b039 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -84,7 +84,7 @@ License: MIT
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-Files: mgltex/mgltex.dtx mgltex/mgltex.ins mgltex/mgltex.sty
+Files: mgltex/mgltex.dtx mgltex/mgltex.ins
Copyright: (C) 2014-2015 by Diego Sejas <diego.mathematician at gmail.com>
(C) 2015 by Alexey Balakin <mathgl.abalakin at gmail.com>
License: GPL-3+
diff --git a/debian/libmgl-fltk7.4.0.install b/debian/libmgl-fltk7.4.1.install
similarity index 100%
rename from debian/libmgl-fltk7.4.0.install
rename to debian/libmgl-fltk7.4.1.install
diff --git a/debian/libmgl-glut7.4.0.install b/debian/libmgl-glut7.4.1.install
similarity index 100%
rename from debian/libmgl-glut7.4.0.install
rename to debian/libmgl-glut7.4.1.install
diff --git a/debian/libmgl-mpi7.4.0.install b/debian/libmgl-mpi7.4.1.install
similarity index 100%
rename from debian/libmgl-mpi7.4.0.install
rename to debian/libmgl-mpi7.4.1.install
diff --git a/debian/libmgl-qt7.4.0.install b/debian/libmgl-qt5-7.4.1.install
similarity index 100%
rename from debian/libmgl-qt7.4.0.install
rename to debian/libmgl-qt5-7.4.1.install
diff --git a/debian/libmgl-wnd7.4.0.install b/debian/libmgl-wnd7.4.1.install
similarity index 100%
rename from debian/libmgl-wnd7.4.0.install
rename to debian/libmgl-wnd7.4.1.install
diff --git a/debian/libmgl-wx7.4.0.install b/debian/libmgl-wx7.4.1.install
similarity index 100%
rename from debian/libmgl-wx7.4.0.install
rename to debian/libmgl-wx7.4.1.install
diff --git a/debian/libmgl7.4.0.install b/debian/libmgl7.4.1.install
similarity index 100%
rename from debian/libmgl7.4.0.install
rename to debian/libmgl7.4.1.install
diff --git a/debian/patches/CMakeLists.patch b/debian/patches/CMakeLists.patch
index f852115..97c907a 100644
--- a/debian/patches/CMakeLists.patch
+++ b/debian/patches/CMakeLists.patch
@@ -1,6 +1,6 @@
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -95,14 +95,14 @@
+@@ -95,7 +95,7 @@
string(TIMESTAMP MGL_NIGHT "%d.%m.%y")
option(enable-double "Enable double precision in MathGL library" ON)
@@ -9,14 +9,18 @@
option(enable-opengl "Enable OpenGL support" ON)
option(enable-all-docs "Enable all documentation building")
#option(enable-doc "Enable documentation building")
- option(enable-all "Enable all core features")
+@@ -103,9 +103,9 @@
option(enable-all-widgets "Enable all Widgets")
option(enable-all-swig "Enable all SWIG based interfaces")
--option(enable-rvalue "Enable move constructor support (need C++11)" OFF)
-+option(enable-rvalue "Enable move constructor support (need C++11)" ON)
- option(enable-pthread "Enable POSIX threads support" OFF)
- option(enable-pthr_fltk "Enable POSIX threads for widgets" ON)
- option(enable-openmp "Enable OpenMP support" ON)
+ option(enable-rvalue "Enable move constructor support (need C++11)" OFF)
+-option(enable-pthread "Enable POSIX threads support" OFF)
++option(enable-pthread "Enable POSIX threads support" ON)
+ option(enable-pthr-widget "Enable POSIX threads for widgets" ON)
+-option(enable-openmp "Enable OpenMP support" ON)
++option(enable-openmp "Enable OpenMP support" OFF)
+
+ if(enable-pthread AND enable-openmp)
+ message(SEND_ERROR "You can't enable POSIX threads and OpenMP at the same time!")
@@ -113,7 +113,7 @@
option(enable-lgpl "Enable only LGPL part of MathGL")
@@ -26,7 +30,7 @@
CMAKE_DEPENDENT_OPTION(enable-doc-site "Enable HTML documentation for website" OFF "NOT enable-all-docs" ON)
CMAKE_DEPENDENT_OPTION(enable-doc-html "Enable HTML documentation" OFF "NOT enable-all-docs" ON)
CMAKE_DEPENDENT_OPTION(enable-doc-info "Enable INFO documentation" OFF "NOT enable-all-docs" ON)
-@@ -126,17 +126,17 @@
+@@ -126,18 +126,18 @@
CMAKE_DEPENDENT_OPTION(enable-zlib "Enable zlib support" ON "NOT enable-all" ON)
CMAKE_DEPENDENT_OPTION(enable-png "Enable png support" ON "NOT enable-all" ON)
@@ -50,15 +54,19 @@
+CMAKE_DEPENDENT_OPTION(enable-wx "Enable wxWidget widget" ON "NOT enable-all-widgets" ON)
CMAKE_DEPENDENT_OPTION(enable-qt4 "Enable Qt4 widget" OFF "NOT enable-all-widgets" ON)
-CMAKE_DEPENDENT_OPTION(enable-qt5 "Enable Qt5 widget" OFF "NOT enable-all-widgets" ON)
+-CMAKE_DEPENDENT_OPTION(enable-qt5asqt "Set Qt5 as default libmgl-qt" ON "enable-qt5" OFF)
+CMAKE_DEPENDENT_OPTION(enable-qt5 "Enable Qt5 widget" ON "NOT enable-all-widgets" ON)
- CMAKE_DEPENDENT_OPTION(enable-qt5asqt "Set Qt5 as default libmgl-qt" ON "enable-qt5" OFF)
++CMAKE_DEPENDENT_OPTION(enable-qt5asqt "Set Qt5 as default libmgl-qt" ON "enable-qt5" ON)
if(UNIX AND enable-rvalue)
-@@ -150,9 +150,9 @@
+ SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11")
+@@ -149,10 +149,10 @@
+ set(QT_ENABLED ON)
endif(enable-qt4 OR enable-qt5)
- CMAKE_DEPENDENT_OPTION(enable-json-sample "Enable JSON sample" ON "enable-qt" OFF)
+-CMAKE_DEPENDENT_OPTION(enable-json-sample "Enable JSON sample" ON "QT_ENABLED" OFF)
-MGL_DEPENDENT_OPTION(enable-python "Enable python interface" OFF "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
++CMAKE_DEPENDENT_OPTION(enable-json-sample "Enable JSON sample" ON "QT_ENABLED" ON)
+MGL_DEPENDENT_OPTION(enable-python "Enable python interface" ON "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
MGL_DEPENDENT_OPTION(enable-lua "Enable Lua (v.5.1) interface" OFF "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
-MGL_DEPENDENT_OPTION(enable-octave "Enable octave interface" OFF "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
diff --git a/debian/patches/json.patch b/debian/patches/json.patch
deleted file mode 100644
index 6a5f278..0000000
--- a/debian/patches/json.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- a/json/Backend.hpp
-+++ b/json/Backend.hpp
-@@ -1,5 +1,6 @@
- #pragma once
-
-+#include <QObject>
- #include <QStringList>
-
- class Backend : public QObject
diff --git a/debian/patches/series b/debian/patches/series
index eb1f9d8..879efc6 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1 @@
CMakeLists.patch
-src.patch
-json.patch
diff --git a/debian/patches/src.patch b/debian/patches/src.patch
deleted file mode 100644
index 7596170..0000000
--- a/debian/patches/src.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/fit.cpp
-+++ b/src/fit.cpp
-@@ -194,7 +194,7 @@
- while ( status == GSL_CONTINUE && iter < 500 );
-
- gsl_matrix *covar = gsl_matrix_alloc(m, m);
--#ifdef HAVE_GSL_2
-+#ifdef MGL_HAVE_GSL2
- gsl_matrix *J = gsl_matrix_alloc(s->fdf->n, s->fdf->p);
- gsl_multifit_fdfsolver_jac(s, J);
- gsl_multifit_covar (J, 0.0, covar);
diff --git a/debian/rules b/debian/rules
index 54a79d0..0f9fa26 100755
--- a/debian/rules
+++ b/debian/rules
@@ -14,5 +14,4 @@ export DH_OPTIONS=-v
dh $@ --buildsystem=cmake --with python2 --parallel
override_dh_python2:
- dh_python2 -- --no-guessing-versions
dh_numpy
\ No newline at end of file
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/mathgl.git
More information about the debian-science-commits
mailing list