summaryrefslogtreecommitdiff
path: root/sci-visualization/fityk
diff options
context:
space:
mode:
Diffstat (limited to 'sci-visualization/fityk')
-rw-r--r--sci-visualization/fityk/Manifest4
-rw-r--r--sci-visualization/fityk/files/fityk-1.3.1-c++17.patch352
-rw-r--r--sci-visualization/fityk/files/fityk-1.3.1-fix-gtk3.patch31
-rw-r--r--sci-visualization/fityk/fityk-1.3.1-r101.ebuild (renamed from sci-visualization/fityk/fityk-1.3.1-r100.ebuild)10
4 files changed, 393 insertions, 4 deletions
diff --git a/sci-visualization/fityk/Manifest b/sci-visualization/fityk/Manifest
index a4cda177d79a..a29b4c50a719 100644
--- a/sci-visualization/fityk/Manifest
+++ b/sci-visualization/fityk/Manifest
@@ -1,3 +1,5 @@
+AUX fityk-1.3.1-c++17.patch 12771 BLAKE2B 72c94df37767a17abe241bca6cfd3d62ca55902f1c1f4923a0cd268aa85366188bba849a03107dc953596c5c836a4e32819fd089dd07f8ceff33aad2adfde251 SHA512 bfacfc05f7d33ccc8648329c0b9c3ad72b8ad9b9a915c585128f681cf973fcb5ba8364a25067a534ac0a880bca6d4a3a733f9cba6d3d6127188bf3ffbd016e65
+AUX fityk-1.3.1-fix-gtk3.patch 887 BLAKE2B 3cb5efcda7d696c491bc5d4b4215714b19fc0e876cc59c5b37999c6950e1a26ab979cf0a4c50bd7cbe4a3bde26b4b394b07819381a6b11eff957f375a5d49f90 SHA512 a835ad7ef3ae084ac11195924eb4305cf1dcb8282fa393719c7bfd4983fcf51143744954051ee5b0dfc7956322890d1391ee5c4e3b0fcd27924cc042db5a0cdb
DIST fityk-1.3.1.tar.bz2 1518937 BLAKE2B 6eb13646e1b5cf3fb0763bcf3e91a1877d89f14f1b986f1065fd27052e7110b357c99431a326a6c1fa2ba002300912b922cd3d5589ac5da367d2fbcee209f9a2 SHA512 4a7a65691af8b8d5b47461133b7870ea21ea04ac2ee8ee5714a6b9bab2f072baa6b5d8bf011baba09c62a7ce2dc9d60f3040cc6fdb77dc498b6e03a24fc0fe08
-EBUILD fityk-1.3.1-r100.ebuild 1095 BLAKE2B 9b9c881a159e38b8c3d38fc9743dbc348d47517885ba046b1f6c58dc0518457ebc431d82d492eee1f7fa996b820f9fca7df39b1df5a6336b36b7fabbba80950a SHA512 7c3afc1bc38cef2597a2d29caa5b802f1bd3d8d339cccad79b5965068ca12221c90ad0d976cb0db8f2c843c1e6a593acc33df5e838df215a474ca1dc1a1fb520
+EBUILD fityk-1.3.1-r101.ebuild 1192 BLAKE2B ae3186a4293cb255425d3ca67bccf7e51176e95d7289ebd319832f9d200678ba38510b49f1d200d6ed911ab476554b67ad9edcfe1720a013a6ab6e099b24e4da SHA512 72673ebb78b8e9c17440c193312d62c928a2e7f69a69a4bdf6417829f24a325ebc9f0846b111154ea18de6f2b3d2e451b50b79745566627fd2531d8e0127010a
MISC metadata.xml 1378 BLAKE2B a6b73be959353e2a764d5c39ae13c4fe1bc38c5c0ea5a3c2557e32825077e13d0a97504f8d79e338a65803bc98326fe25cb7e86d3aaa8c93c5d9bdce30cbec90 SHA512 38e516a5e0ec249d3ed4e54d4780830e1b53994e9dc1999c664b2f37aac0247df780522e7b25c124ffb0d9766d1292871ec0f9a238c2b3aa9994cef3581befe6
diff --git a/sci-visualization/fityk/files/fityk-1.3.1-c++17.patch b/sci-visualization/fityk/files/fityk-1.3.1-c++17.patch
new file mode 100644
index 000000000000..66c43207fbfb
--- /dev/null
+++ b/sci-visualization/fityk/files/fityk-1.3.1-c++17.patch
@@ -0,0 +1,352 @@
+Backport from
+https://github.com/wojdyr/fityk/pull/38
+
+--- a/fityk/fityk.cpp
++++ b/fityk/fityk.cpp
+@@ -129,8 +129,7 @@
+ delete p_;
+ }
+
+-void Fityk::execute(string const& s) throw(SyntaxError, ExecuteError,
+- ExitRequestedException)
++void Fityk::execute(string const& s)
+ {
+ try {
+ priv_->parse_and_execute_line(s);
+@@ -139,8 +138,7 @@
+ CATCH_EXECUTE_ERROR
+ }
+
+-string Fityk::get_info(string const& s, int dataset) throw(SyntaxError,
+- ExecuteError)
++string Fityk::get_info(string const& s, int dataset)
+ {
+ try {
+ string result;
+@@ -152,8 +150,7 @@
+ return "";
+ }
+
+-realt Fityk::calculate_expr(string const& s, int dataset) throw(SyntaxError,
+- ExecuteError)
++realt Fityk::calculate_expr(string const& s, int dataset)
+ {
+ try {
+ Lexer lex(s.c_str());
+@@ -209,7 +206,7 @@
+ return priv_->mgr.functions()[n];
+ }
+
+-vector<Func*> Fityk::get_components(int dataset, char fz) throw(ExecuteError)
++vector<Func*> Fityk::get_components(int dataset, char fz)
+ {
+ const Model *model = priv_->dk.get_model(hd(priv_, dataset));
+ const vector<int>& indexes = model->get_fz(fz).idx;
+@@ -220,7 +217,7 @@
+ return ret;
+ }
+
+-realt Fityk::get_model_value(realt x, int dataset) throw(ExecuteError)
++realt Fityk::get_model_value(realt x, int dataset)
+ {
+ try {
+ return priv_->dk.get_model(hd(priv_, dataset))->value(x);
+@@ -230,7 +227,6 @@
+ }
+
+ vector<realt> Fityk::get_model_vector(vector<realt> const& x, int dataset)
+- throw(ExecuteError)
+ {
+ vector<realt> xx(x);
+ vector<realt> yy(x.size(), 0.);
+@@ -241,7 +237,7 @@
+ return yy;
+ }
+
+-const Var* Fityk::get_variable(string const& name) throw(ExecuteError)
++const Var* Fityk::get_variable(string const& name)
+ {
+ try {
+ string vname;
+@@ -274,7 +270,6 @@
+ }
+
+ void Fityk::load(LoadSpec const& spec, int dataset)
+- throw(ExecuteError)
+ {
+ if (dataset == DEFAULT_DATASET)
+ dataset = priv_->dk.default_idx();
+@@ -290,7 +285,7 @@
+ vector<realt> const& x,
+ vector<realt> const& y,
+ vector<realt> const& sigma,
+- string const& title) throw(ExecuteError)
++ string const& title)
+ {
+ try {
+ priv_->dk.data(dataset)->load_arrays(x, y, sigma, title);
+@@ -299,7 +294,6 @@
+ }
+
+ void Fityk::add_point(realt x, realt y, realt sigma, int dataset)
+- throw(ExecuteError)
+ {
+ try {
+ priv_->dk.data(hd(priv_, dataset))->add_one_point(x, y, sigma);
+@@ -307,7 +301,7 @@
+ CATCH_EXECUTE_ERROR
+ }
+
+-vector<Point> const& Fityk::get_data(int dataset) throw(ExecuteError)
++vector<Point> const& Fityk::get_data(int dataset)
+ {
+ static const vector<Point> empty;
+ try {
+@@ -335,23 +329,21 @@
+ }
+
+ void Fityk::set_option_as_string(const string& opt, const string& val)
+- throw(ExecuteError)
+ {
+ priv_->mutable_settings_mgr()->set_as_string(opt, val);
+ }
+
+ void Fityk::set_option_as_number(const string& opt, double val)
+- throw(ExecuteError)
+ {
+ priv_->mutable_settings_mgr()->set_as_number(opt, val);
+ }
+
+-string Fityk::get_option_as_string(const string& opt) const throw(ExecuteError)
++string Fityk::get_option_as_string(const string& opt) const
+ {
+ return priv_->settings_mgr()->get_as_string(opt, /*quote_str=*/false);
+ }
+
+-double Fityk::get_option_as_number(const string& opt) const throw(ExecuteError)
++double Fityk::get_option_as_number(const string& opt) const
+ {
+ return priv_->settings_mgr()->get_as_number(opt);
+ }
+@@ -366,7 +358,7 @@
+ return priv_->ui()->get_input_from_user(prompt);
+ }
+
+-realt Fityk::get_wssr(int dataset) throw(ExecuteError)
++realt Fityk::get_wssr(int dataset)
+ {
+ try {
+ return get_wssr_or_ssr(priv_, dataset, true);
+@@ -375,7 +367,7 @@
+ return 0.;
+ }
+
+-realt Fityk::get_ssr(int dataset) throw(ExecuteError)
++realt Fityk::get_ssr(int dataset)
+ {
+ try {
+ return get_wssr_or_ssr(priv_, dataset, false);
+@@ -384,7 +376,7 @@
+ return 0.;
+ }
+
+-realt Fityk::get_rsquared(int dataset) throw(ExecuteError)
++realt Fityk::get_rsquared(int dataset)
+ {
+ try {
+ if (dataset == ALL_DATASETS) {
+@@ -402,7 +394,7 @@
+ return 0.;
+ }
+
+-int Fityk::get_dof(int dataset) throw(ExecuteError)
++int Fityk::get_dof(int dataset)
+ {
+ try {
+ return priv_->get_fit()->get_dof(get_datasets_(priv_, dataset));
+@@ -412,7 +404,6 @@
+ }
+
+ vector<vector<realt> > Fityk::get_covariance_matrix(int dataset)
+- throw(ExecuteError)
+ {
+ try {
+ vector<Data*> dss = get_datasets_(priv_, dataset);
+--- a/fityk/fityk.h
++++ b/fityk/fityk.h
+@@ -118,10 +118,8 @@
+
+ virtual const std::string& get_template_name() const = 0;
+ virtual std::string get_param(int n) const = 0;
+- virtual const std::string& var_name(const std::string& param) const
+- throw(ExecuteError) = 0;
+- virtual realt get_param_value(const std::string& param) const
+- throw(ExecuteError) = 0;
++ virtual const std::string& var_name(const std::string& param) const = 0;
++ virtual realt get_param_value(const std::string& param) const = 0;
+ virtual realt value_at(realt x) const = 0;
+ protected:
+ Func(const std::string name_) : name(name_) {}
+@@ -177,26 +175,23 @@
+ // @{
+
+ /// execute command; throws exception on error
+- void execute(std::string const& s) throw(SyntaxError, ExecuteError,
+- ExitRequestedException);
++ void execute(std::string const& s);
+
+
+ /// load data from file (path should be ascii or utf8, col=0 is index)
+- void load(LoadSpec const& spec, int dataset=DEFAULT_DATASET)
+- throw(ExecuteError);
++ void load(LoadSpec const& spec, int dataset=DEFAULT_DATASET);
+ void load(std::string const& path, int dataset=DEFAULT_DATASET)
+- throw(ExecuteError) { load(LoadSpec(path), dataset); }
++ { load(LoadSpec(path), dataset); }
+
+ /// load data from arrays
+ void load_data(int dataset,
+ std::vector<realt> const& x,
+ std::vector<realt> const& y,
+ std::vector<realt> const& sigma,
+- std::string const& title="") throw(ExecuteError);
++ std::string const& title="");
+
+ /// add one data point to dataset
+- void add_point(realt x, realt y, realt sigma, int dataset=DEFAULT_DATASET)
+- throw(ExecuteError);
++ void add_point(realt x, realt y, realt sigma, int dataset=DEFAULT_DATASET);
+
+ // @}
+
+@@ -220,14 +215,10 @@
+
+ /// @name settings
+ // @{
+- void set_option_as_string(const std::string& opt, const std::string& val)
+- throw(ExecuteError);
+- void set_option_as_number(const std::string& opt, double val)
+- throw(ExecuteError);
+- std::string get_option_as_string(const std::string& opt) const
+- throw(ExecuteError);
+- double get_option_as_number(const std::string& opt) const
+- throw(ExecuteError);
++ void set_option_as_string(const std::string& opt, const std::string& val);
++ void set_option_as_number(const std::string& opt, double val);
++ std::string get_option_as_string(const std::string& opt) const;
++ double get_option_as_number(const std::string& opt) const;
+ // @}
+
+ /// @name input/output
+@@ -253,12 +244,10 @@
+ // @{
+
+ /// return output of the info command
+- std::string get_info(std::string const& s, int dataset=DEFAULT_DATASET)
+- throw(SyntaxError, ExecuteError);
++ std::string get_info(std::string const& s, int dataset=DEFAULT_DATASET);
+
+ /// return expression value, similarly to the print command
+- realt calculate_expr(std::string const& s, int dataset=DEFAULT_DATASET)
+- throw(SyntaxError, ExecuteError);
++ realt calculate_expr(std::string const& s, int dataset=DEFAULT_DATASET);
+
+ //(planned)
+ /// returns dataset titles
+@@ -273,8 +262,7 @@
+ int get_default_dataset() const;
+
+ /// get data points
+- std::vector<Point> const& get_data(int dataset=DEFAULT_DATASET)
+- throw(ExecuteError);
++ std::vector<Point> const& get_data(int dataset=DEFAULT_DATASET);
+
+ /// returns number of simple-variables (parameters that can be fitted)
+ int get_parameter_count() const;
+@@ -286,7 +274,7 @@
+ std::vector<Var*> all_variables() const;
+
+ /// returns variable $name
+- const Var* get_variable(std::string const& name) throw(ExecuteError);
++ const Var* get_variable(std::string const& name);
+
+ /// returns all %functions
+ std::vector<Func*> all_functions() const;
+@@ -295,17 +283,14 @@
+ const Func* get_function(const std::string& name) const;
+
+ /// returns %functions used in dataset
+- std::vector<Func*> get_components(int dataset=DEFAULT_DATASET, char fz='F')
+- throw(ExecuteError);
++ std::vector<Func*> get_components(int dataset=DEFAULT_DATASET, char fz='F');
+
+ /// returns the value of the model for a given dataset at x
+- realt get_model_value(realt x, int dataset=DEFAULT_DATASET)
+- throw(ExecuteError);
++ realt get_model_value(realt x, int dataset=DEFAULT_DATASET);
+
+ /// multiple point version of the get_model_value()
+ std::vector<realt>
+- get_model_vector(std::vector<realt> const& x, int dataset=DEFAULT_DATASET)
+- throw(ExecuteError);
++ get_model_vector(std::vector<realt> const& x, int dataset=DEFAULT_DATASET);
+
+ /// get coordinates of rectangle set by the plot command
+ /// side is one of L(eft), R(ight), T(op), B(ottom)
+@@ -317,20 +302,20 @@
+ // @{
+
+ /// get WSSR for given dataset or for all datasets
+- realt get_wssr(int dataset=ALL_DATASETS) throw(ExecuteError);
++ realt get_wssr(int dataset=ALL_DATASETS);
+
+ /// get SSR for given dataset or for all datasets
+- realt get_ssr(int dataset=ALL_DATASETS) throw(ExecuteError);
++ realt get_ssr(int dataset=ALL_DATASETS);
+
+ /// get R-squared for given dataset or for all datasets
+- realt get_rsquared(int dataset=ALL_DATASETS) throw(ExecuteError);
++ realt get_rsquared(int dataset=ALL_DATASETS);
+
+ /// get number of degrees-of-freedom for given dataset or for all datasets
+- int get_dof(int dataset=ALL_DATASETS) throw(ExecuteError);
++ int get_dof(int dataset=ALL_DATASETS);
+
+ /// get covariance matrix (for given dataset or for all datasets)
+ std::vector<std::vector<realt> >
+- get_covariance_matrix(int dataset=ALL_DATASETS) throw(ExecuteError);
++ get_covariance_matrix(int dataset=ALL_DATASETS);
+ // @}
+
+ /// UiApi contains functions used by CLI and may be used to implement
+--- a/fityk/func.cpp
++++ b/fityk/func.cpp
+@@ -197,7 +197,7 @@
+ return n;
+ }
+
+-realt Function::get_param_value(const string& param) const throw(ExecuteError)
++realt Function::get_param_value(const string& param) const
+ {
+ realt a;
+ if (!param.empty() && islower(param[0]))
+--- a/fityk/func.h
++++ b/fityk/func.h
+@@ -86,8 +86,7 @@
+ #pragma clang diagnostic push
+ #pragma clang diagnostic ignored "-Wdeprecated"
+ #endif
+- virtual realt get_param_value(const std::string& param) const
+- throw(ExecuteError); // exc. spec. is used by SWIG
++ virtual realt get_param_value(const std::string& param) const;
+
+ realt numarea(realt x1, realt x2, int nsteps) const;
+
+@@ -101,7 +100,6 @@
+ // implementation of members of Func
+ virtual const std::string& get_template_name() const { return tp_->name; }
+ virtual const std::string& var_name(const std::string& param) const
+- throw(ExecuteError) // exc. spec. is used by SWIG
+ { return used_vars_.get_name(get_param_nr(param)); }
+ #ifdef __clang__
+ #pragma clang diagnostic pop
diff --git a/sci-visualization/fityk/files/fityk-1.3.1-fix-gtk3.patch b/sci-visualization/fityk/files/fityk-1.3.1-fix-gtk3.patch
new file mode 100644
index 000000000000..7b64f7f582fa
--- /dev/null
+++ b/sci-visualization/fityk/files/fityk-1.3.1-fix-gtk3.patch
@@ -0,0 +1,31 @@
+From 85ea545db65d7c6fbb94988b85f1e8cf1c9cbba5 Mon Sep 17 00:00:00 2001
+From: Marcin Wojdyr <wojdyr@gmail.com>
+Date: Sun, 17 Jan 2021 19:18:47 +0100
+Subject: [PATCH] allow building with wxGTK3 (closes #32)
+
+It works, but with some problems.
+
+The separator in wxSplitterWindow is not updated, as per:
+http://trac.wxwidgets.org/ticket/16890
+
+wxSpinCtrl is much wider (it has [+][-] instead of arrows)
+---
+ wxgui/app.cpp | 5 -----
+ 1 file changed, 5 deletions(-)
+
+diff --git a/wxgui/app.cpp b/wxgui/app.cpp
+index 526c8f14..1041eccf 100644
+--- a/wxgui/app.cpp
++++ b/wxgui/app.cpp
+@@ -8,11 +8,6 @@
+ #include <wx/filesys.h>
+ #include <wx/tooltip.h>
+
+-#ifdef __WXGTK3__
+-#error "Not everything is working with wxGTK3. Use default wxGTK instead, " \
+- "based on GTK+2. If you want to test it, just remove this #error."
+-#endif
+-
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <vector>
diff --git a/sci-visualization/fityk/fityk-1.3.1-r100.ebuild b/sci-visualization/fityk/fityk-1.3.1-r101.ebuild
index 8a9af85ba44e..541fb7bba06b 100644
--- a/sci-visualization/fityk/fityk-1.3.1-r100.ebuild
+++ b/sci-visualization/fityk/fityk-1.3.1-r101.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
LUA_COMPAT=( lua5-{1..3} )
-WX_GTK_VER=3.0
+WX_GTK_VER=3.0-gtk3
inherit lua-single wxwidgets xdg
@@ -16,7 +16,6 @@ LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
IUSE="gnuplot nlopt readline wxwidgets"
-
REQUIRED_USE="${LUA_REQUIRED_USE}"
DEPEND="
@@ -30,6 +29,11 @@ RDEPEND="${DEPEND}
gnuplot? ( sci-visualization/gnuplot )"
BDEPEND="dev-lang/swig"
+PATCHES=(
+ "${FILESDIR}"/${P}-fix-gtk3.patch
+ "${FILESDIR}"/${P}-c++17.patch # bug 787317
+)
+
src_configure() {
use wxwidgets && setup-wxwidgets