p1788 0.1.0 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.yardopts +1 -0
- data/LICENSE +674 -201
- data/README.md +19 -13
- data/ext/libieeep1788_copy/p1788/decoration/decoration.hpp +1 -1
- data/ext/p1788/extconf.rb +11 -6
- data/ext/p1788/figure.cc +1284 -0
- data/ext/p1788/figure.hh +294 -0
- data/ext/p1788/figure_wrapper.cc +1249 -0
- data/ext/p1788/p1788.cc +3948 -935
- data/ext/p1788/p1788.hh +102 -0
- data/lib/p1788/version.rb +1 -1
- data/lib/p1788.rb +12 -17
- data/p1788.gemspec +9 -4
- data/samples/figure.rb +23 -0
- data/samples/sivia.rb +122 -0
- metadata +9 -4
- data/AUTHORS +0 -6
data/README.md
CHANGED
@@ -10,6 +10,25 @@ The output of operations are guaranteed to enclose the true result of operations
|
|
10
10
|
Forward-mode and reverse-mode elementary functions are implemented to allow building [contractors](https://en.wikipedia.org/wiki/Interval_contractor).
|
11
11
|
|
12
12
|
|
13
|
+
Documentation
|
14
|
+
-------------
|
15
|
+
|
16
|
+
The API documentation is hosted on [rubydoc.info](https://www.rubydoc.info/gems/p1788).
|
17
|
+
|
18
|
+
You can also build the documentation yourself from the [sources](https://gitlab.ensta-bretagne.fr/bollenth/p1788):
|
19
|
+
|
20
|
+
~~~bash
|
21
|
+
# Install yard if you don't have it
|
22
|
+
gem install yard
|
23
|
+
# Clone the repository on your machine
|
24
|
+
git clone https://gitlab.ensta-bretagne.fr/bollenth/p1788.git
|
25
|
+
cd p1788
|
26
|
+
# Build the documentation
|
27
|
+
yard
|
28
|
+
# Open it!
|
29
|
+
firefox doc/index.html
|
30
|
+
~~~
|
31
|
+
|
13
32
|
Installation
|
14
33
|
------------
|
15
34
|
|
@@ -50,16 +69,3 @@ gem build p1788.gemspec
|
|
50
69
|
gem install p1788-x.y.z.gem
|
51
70
|
~~~
|
52
71
|
|
53
|
-
To build the documentation:
|
54
|
-
|
55
|
-
~~~bash
|
56
|
-
# Install yard if you don't have it
|
57
|
-
gem install yard
|
58
|
-
# Go into the P1788 source folder
|
59
|
-
cd p1788
|
60
|
-
# Build the documentation
|
61
|
-
yard
|
62
|
-
# Open it!
|
63
|
-
firefox doc/index.html
|
64
|
-
~~~
|
65
|
-
|
data/ext/p1788/extconf.rb
CHANGED
@@ -1,15 +1,19 @@
|
|
1
1
|
require 'mkmf'
|
2
|
-
require 'fileutils'
|
2
|
+
#require 'fileutils'
|
3
3
|
|
4
4
|
unless have_library('gmp') then
|
5
|
-
abort "-----\nGMP is missing. Please install
|
5
|
+
abort "-----\nGMP is missing. Please install GMP (eg \'sudo apt install libgmp-dev\').\n-----"
|
6
6
|
end
|
7
7
|
|
8
8
|
unless have_library('mpfr') then
|
9
|
-
abort "-----\nMPFR is missing. Please install
|
9
|
+
abort "-----\nMPFR is missing. Please install MPFR (eg \'sudo apt install libmpfr-dev\').\n-----"
|
10
10
|
end
|
11
11
|
|
12
|
-
unless
|
12
|
+
unless have_library('cairo') then
|
13
|
+
abort "-----\ncairo is missing. Please install cairo (eg \'sudo apt install libcairo2-dev\').\n-----"
|
14
|
+
end
|
15
|
+
|
16
|
+
#unless have_header('p1788/p1788.hpp', nil, '-x c++') then
|
13
17
|
ext_dir = File.absolute_path(File.join('..', '..'), __FILE__)
|
14
18
|
=begin
|
15
19
|
## Retrieve headers from Nehmeier's github repository ##
|
@@ -42,8 +46,9 @@ unless have_header('p1788/p1788.hpp', nil, '-x c++') then
|
|
42
46
|
|
43
47
|
## Use the embeded copy of the libieeep1788 headers ##
|
44
48
|
$CXXFLAGS += " -I#{File.join(ext_dir, 'libieeep1788_copy')}"
|
45
|
-
$CXXFLAGS += " -Wno-deprecated-declarations"
|
46
|
-
end
|
49
|
+
$CXXFLAGS += " -Wno-deprecated-declarations -Wno-deprecated-copy"
|
50
|
+
#end
|
47
51
|
|
48
52
|
create_makefile 'p1788/p1788'
|
49
53
|
|
54
|
+
#cppflags = -Wall -Wextra -Wdeprecated-declarations -Wduplicated-cond -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable
|