mirror of
https://github.com/louisrubet/rpn
synced 2024-12-28 09:58:52 +01:00
v2.3.1
This commit is contained in:
parent
d53d537c72
commit
4530ff7999
5 changed files with 11 additions and 39 deletions
|
@ -12,7 +12,7 @@ endif()
|
||||||
message(STATUS "Build mode: ${CMAKE_BUILD_TYPE}")
|
message(STATUS "Build mode: ${CMAKE_BUILD_TYPE}")
|
||||||
|
|
||||||
# INFO
|
# INFO
|
||||||
set(RPN_VERSION "2.3")
|
set(RPN_VERSION "2.3.1")
|
||||||
set(RPN_DISPLAY_NAME "rpn")
|
set(RPN_DISPLAY_NAME "rpn")
|
||||||
set(RPN_URL_INFO_ABOUT "https://github.com/louisrubet/rpn")
|
set(RPN_URL_INFO_ABOUT "https://github.com/louisrubet/rpn")
|
||||||
set(RPN_CONTACT "Louis Rubet <louis@rubet.fr>")
|
set(RPN_CONTACT "Louis Rubet <louis@rubet.fr>")
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# **rpn v2.3** - generation
|
# **rpn v2.3.1** - generation
|
||||||
|
|
||||||
For now rpn is proposed only for **GNU/Linux**
|
For now rpn is proposed only for **GNU/Linux**
|
||||||
|
|
||||||
|
@ -8,45 +8,17 @@ It can be generated following the steps below
|
||||||
|
|
||||||
rpn is dynamically linked against
|
rpn is dynamically linked against
|
||||||
- GNU MP v6.1.2
|
- GNU MP v6.1.2
|
||||||
- GNU MPFR v3.1.5
|
- GNU MPFR v4.0.1
|
||||||
|
|
||||||
and embeds the source code of linenoise-ng v1.0.1
|
and embeds the source code of linenoise-ng v1.0.1 as a submodule
|
||||||
|
|
||||||
It is necessary to get MPFR and linenoise-ng to generate rpn.
|
It is necessary to get MPFR to generate rpn
|
||||||
|
|
||||||
## install GNU MPFR v3.1.5-p8 headers
|
## install GNU MPFR headers
|
||||||
|
|
||||||
- download **GNU MPFR v3.1.5-p8** from http://www.mpfr.org
|
- download **GNU MPFR** from http://www.mpfr.org
|
||||||
- install it with usual autotools commands `./configure && make && make install`
|
- install it with usual autotools commands `./configure && make && make install`
|
||||||
|
|
||||||
## install linenoise-ng v1.0.1 source code
|
|
||||||
|
|
||||||
- download **linenoise-ng v1.0.1** from https://github.com/arangodb/linenoise-ng
|
|
||||||
- checkout the tag v1.0.1
|
|
||||||
- apply the following patch to the source code
|
|
||||||
|
|
||||||
```
|
|
||||||
--- ../../../linenoise-ng/src/linenoise.cpp 2017-06-10 18:13:31.752976287 +0200
|
|
||||||
+++ linenoise.cpp 2017-06-12 18:54:50.481794824 +0200
|
|
||||||
@@ -2587,12 +2587,15 @@
|
|
||||||
|
|
||||||
// ctrl-I/tab, command completion, needs to be before switch statement
|
|
||||||
if (c == ctrlChar('I') && completionCallback) {
|
|
||||||
+ // rpn #178: enable autocompletion on void entry
|
|
||||||
+ #if 0
|
|
||||||
if (pos == 0) // SERVER-4967 -- in earlier versions, you could paste
|
|
||||||
// previous output
|
|
||||||
continue; // back into the shell ... this output may have leading
|
|
||||||
// tabs.
|
|
||||||
// This hack (i.e. what the old code did) prevents command completion
|
|
||||||
// on an empty line but lets users paste text with leading tabs.
|
|
||||||
+ #endif
|
|
||||||
|
|
||||||
killRing.lastAction = KillRing::actionOther;
|
|
||||||
historyRecallMostRecent = false;
|
|
||||||
```
|
|
||||||
- install linenoise-ng with cmake commands `mkdir build && cd build && cmake .. && make install`
|
|
||||||
|
|
||||||
## generate rpn
|
## generate rpn
|
||||||
|
|
||||||
- clone [rpn project](https://github.com/louisrubet/rpn/) or download a zipped version from [the release directory](https://github.com/louisrubet/rpn/releases)
|
- clone [rpn project](https://github.com/louisrubet/rpn/) or download a zipped version from [the release directory](https://github.com/louisrubet/rpn/releases)
|
||||||
|
|
|
@ -17,12 +17,12 @@ A help command is provided by rpn:
|
||||||
```
|
```
|
||||||
rpn> help
|
rpn> help
|
||||||
|
|
||||||
rpn v2.3, (c) 2017 <louis@rubet.fr>, GNU LGPL v3
|
rpn v2.3.1, (c) 2017 <louis@rubet.fr>, GNU LGPL v3
|
||||||
|
|
||||||
Reverse Polish Notation language
|
Reverse Polish Notation language
|
||||||
|
|
||||||
using GMP v6.1.2 under GNU LGPL
|
using GMP v6.1.2 under GNU LGPL
|
||||||
MPFR v3.1.5-p8 under GNU LGPL
|
MPFR v4.0.1 under GNU LGPL
|
||||||
and linenoise-ng v1.0.0 under BSD
|
and linenoise-ng v1.0.0 under BSD
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# **rpn** - **R**everse **P**olish **N**otation language [![License: LGPLv3](https://www.gnu.org/graphics/lgplv3-88x31.png)](https://www.gnu.org/licenses/lgpl-3.0.en.html)
|
# **rpn** - **R**everse **P**olish **N**otation language [![License: LGPLv3](https://www.gnu.org/graphics/lgplv3-88x31.png)](https://www.gnu.org/licenses/lgpl-3.0.en.html)
|
||||||
|
|
||||||
### a math language using reverse polish notation
|
### a math functional language using reverse polish notation
|
||||||
|
|
||||||
```
|
```
|
||||||
rpn> 1 2 + 2 sqrt
|
rpn> 1 2 + 2 sqrt
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// version and soft name
|
// version and soft name
|
||||||
#define RPN_VERSION "2.3"
|
#define RPN_VERSION "2.3.1"
|
||||||
static const char version[] = RPN_VERSION;
|
static const char version[] = RPN_VERSION;
|
||||||
static const char uname[] =
|
static const char uname[] =
|
||||||
"rpn v" RPN_VERSION ", (c) 2017 <louis@rubet.fr>, GNU LGPL v3\n";
|
"rpn v" RPN_VERSION ", (c) 2017 <louis@rubet.fr>, GNU LGPL v3\n";
|
||||||
|
|
Loading…
Reference in a new issue