Skip to content

Commit 5064a15

Browse files
committed
Merge branch 'master' into develop
2 parents 38d99a5 + d573a21 commit 5064a15

24 files changed

+369
-449
lines changed

Makefile

+18-8
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@
2222
# and file LOCALIZATION for details
2323
#
2424

25-
VERSION = 10.7.4
26-
INT_VERSION = 10704
25+
VERSION = 10.7.5
26+
INT_VERSION = 10705
2727

2828
default: makefile_build
2929
make -f makefile_build
@@ -60,7 +60,7 @@ help:
6060
@echo " "
6161
@echo "For other customization options (exe dir, install dir, etc) see the file doc/INSTALL"
6262

63-
# make newlisp.exe and newlisp.dll on a MinGW, MSYS system
63+
# make 32 bit newlisp.exe and newlisp.dll on a MinGW, MSYS system
6464
# also needs the installer NSYS installed
6565
winall:
6666
make clean
@@ -69,8 +69,9 @@ winall:
6969
make -f makefile_mingwdll_ffi
7070
rm *.o
7171
./newlisp qa-dot
72+
tar czvf newlisp-win.tgz newlisp.exe newlisp.dll
7273

73-
# make newlisp.exe and newlisp.dll in UTF-8 flavor
74+
# make 32 bit newlisp.exe and newlisp.dll in UTF-8 flavor
7475
winall_utf8:
7576
make clean
7677
make -f makefile_mingw_utf8_ffi
@@ -99,6 +100,18 @@ winall64_utf8:
99100
./newlisp qa-dot
100101
tar czvf newlisp-win64-utf8.tgz newlisp.exe newlisp.dll
101102

103+
# make macOS newlisp 64bit executable and dynamic link library
104+
macosall:
105+
make clean
106+
make -f makefile_darwinLP64_utf8_ffi
107+
rm *.o
108+
make -f makefile_darwinLP64_utf8_lib
109+
rm *.o
110+
./newlisp qa-dot
111+
tar czvf newlisp-macos-utf8.tgz newlisp newlisp.dylib
112+
113+
114+
102115
# this cleans the tree for a rebuild using the same configuration as before
103116
clean:
104117
-rm -f *~ *.bak *.o *.obj *.map *.core core *.tgz *.txt TEST newlisp-universal
@@ -197,7 +210,7 @@ dist: clean
197210
cp README newlisp-$(VERSION)
198211
cp nl*.c newlisp.c *.h pcre*.c index.cgi newlisp-$(VERSION)
199212
cp win64-dll.def win-*.* unix*.c newlisp-$(VERSION)
200-
cp Makefile configure* makefile* qa-dot qa-comma newlisp-$(VERSION)
213+
cp Makefile configure* make* qa-dot qa-comma newlisp-$(VERSION)
201214
cp modules/* newlisp-$(VERSION)/modules
202215
cp examples/* newlisp-$(VERSION)/examples
203216
cp doc/* newlisp-$(VERSION)/doc
@@ -259,9 +272,6 @@ version:
259272
sed -i.bak -E 's/Reference v.+<\/h2>/Reference v.$(VERSION)<\/h2>/' doc/newlisp_manual.html
260273
sed -i.bak -E 's/VERSION=.+/VERSION=$(VERSION)/' configure-alt
261274
sed -i.bak -E 's/VERSION=.+/VERSION=$(VERSION)/' makefile_original_install
262-
sed -i.bak -E 's/VERSION=.+/VERSION=$(VERSION)/' makefile_darwin_package
263-
sed -i.bak -E 's/VERSION=.+/VERSION=$(VERSION)/' makefile_wings
264-
sed -i.bak -E 's/VERSION=.+/VERSION=$(VERSION)/' makefile_wings64
265275

266276
# Prepare the manual file for PDF conversion, by replaceing all <span class="function"></span>
267277
# with <font color="#DD0000"></font> in the syntax statements and replacing &rarr; (one line

configure-alt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/bin/sh
22

33
PACKAGE=newlisp
4-
VERSION=10.7.4
4+
VERSION=10.7.5
55

66
rm -f config.h makefile_build makefile_install
77

doc/CHANGES

+5
Original file line numberDiff line numberDiff line change
@@ -7242,3 +7242,8 @@ Dec 6, 2009
72427242

72437243
(rotate theList -offsetOfRotation) was buggy
72447244

7245+
10.7.5
7246+
In getPutPostDeleteUrl(....) sock wasn't closed when returning with webError(..)
7247+
7248+
compareLists() in nl-math.c did not take list lengths into account. Also update
7249+
of qa-dot for relevant cases.

doc/INSTALL

+44-189
Original file line numberDiff line numberDiff line change
@@ -1,80 +1,29 @@
1-
BINARY INSTALL, BUILD, TOOLS, LOCALIZING (last updated 2011-11-14
1+
BINARY INSTALL, BUILD, TOOLS, LOCALIZING (last updated 2019-02-22)
22
-------------------------------------------------------------------
33

44
CONTENTS
55

6-
(1) WIN32 BINARY DISTRIBUTION INSTALLATION
7-
(2) Mac OS X BINARY DISTRIBUTION INSTALLATION
8-
(3) UBUNTU Linux DEBIAN DISTRIBUTION INSTALLATION
9-
(4) MINIMUM INSTALL
10-
(5) BUILD, TEST AND INSTALL newLISP FROM SOURCE
11-
(6) COMMENTS FOR COMPILING AND LINKING
12-
(7) LOCALIZATION
13-
(8) UNINSTALL
14-
(9) RUNNING newLISP IN A SHELL OR CONSOLE WINDOW
15-
(10) RUNNING THE newLISP-GS GRAPHICAL FRONTEND
16-
(11) INSTRUCTIONS FOR CUSTOMIZED INSTALL AND PACKAGE CREATORS
17-
(12) COMMENTS ABOUT LIBFFI
6+
(1) MINIMUM INSTALL
7+
(2) BUILD, TEST AND INSTALL newLISP FROM SOURCE
8+
(3) UNINSTALL
9+
(4) COMMENTS FOR COMPILING AND LINKING
10+
(5) LOCALIZATION
11+
(6) RUNNING newLISP IN A SHELL OR CONSOLE WINDOW
12+
(7) COMMENTS ABOUT LIBFFI
1813

1914

20-
(1) WIN32 BINARY DISTRIBUTION INSTALLATION
21-
------------------------------------------
22-
23-
The Win32 binary distribution comes packed as a Win32 installer
24-
application. After downloading a file:
25-
26-
newlisp-xxxx-win-gs-xxx.exe
27-
28-
double click on the downloaded file and follow instructions. xxxx and xxx
29-
are the version numbers for newLISP and the newLISP-GS the GUI frontend.
30-
On Win32 a ASCII version of newlisp.exe capable of ISO/IEC 8859 code pages
31-
is installed. A UTF-8 capable version is available from the newlisp download
32-
directory at: http://www.newlisp.org/downloads/UTF-8_win32/
33-
34-
35-
(2) Mac OS X BINARY DISTRIBUTION INSTALLATION
36-
---------------------------------------------
37-
38-
After downloading double-click on the Mac OS X disk image file:
39-
40-
newlisp-xxxx-ppc.dmg # for older PPC type Macs
41-
or
42-
newlisp-xxxx-intel.dmg # since at least end of 2007
43-
44-
This installs an applications icon in the Mac OS X Applications folder.
45-
On Mac OS X a UTF-8 capable version is installed by default. On both,
46-
Intel and PPC architectures Mac OS X v10.5 Leopard is minimum.
47-
48-
49-
(3) UBUNTU Linux DEBIAN DISTRIBUTION INSTALLATION
50-
-------------------------------------------------
51-
52-
Double click the file:
53-
54-
newlisp-xxxx-x_i386.deb
55-
or
56-
newlisp-xxxx-utf8_i386.deb
57-
58-
This will bring up the debian installer application.
59-
60-
On some UBUNTU libraries libreadline and libffi may have to be installed
61-
when making from source:
62-
63-
sudo apt-get install libreadline6 libreadline6-dev
64-
and
65-
apt-get install libffi-dev
66-
67-
68-
(4) MINIMUM INSTALL
15+
(1) MINIMUM INSTALL
6916
-------------------
7017

71-
For a minumum install, only the executable file: newlisp (or newlisp.exe
72-
on Win32) needs to be moved to a directory in the executable path, i.e.
73-
/usr/local/bin/newlisp on Unix. No other files are required. This installation
74-
is recommended for ISPs and other server installations. If modules are
75-
installed the environment NEWLISPDIR should be defined to point to
18+
For a minumum install, only the executable file, newlisp iin on UNIX like
19+
operating systems or newlisp.exe on Win32/64, needs to be moved to a directory
20+
in the executable path, i.e. /usr/local/bin/newlisp on Unix.
21+
No other files are required.
22+
23+
If modules are installed the environment NEWLISPDIR can be defined to point to
7624
the modules parent directory. If NEWLISPDIR is not defined, newLISP sets
77-
it to /usr/local/share/newlisp during startup.
25+
it to /usr/local/share/newlisp during startup on MacOS, Linux, BADs and other
26+
UNIX.
7827

7928
To reduce an exisiting UNIX install to a minimum installation, remove all
8029
files in /usr/share/newlisp and /usr/local/share/doc/newlisp and the executable
@@ -85,7 +34,7 @@ Applications folder. On Windows remove all file except newlisp.exe in
8534
C:/Program Files/newlisp.
8635

8736

88-
(5) BUILD AND INSTALL newLISP FROM SOURCE
37+
(2) BUILD AND INSTALL newLISP FROM SOURCE
8938
-----------------------------------------
9039

9140
Un-tar/gunzip the distribution file newlisp_9.x.x.tgz :
@@ -131,7 +80,22 @@ Using 'make testall' or 'make checkall' more tests and a speed
13180
benchmark are performed.
13281

13382

134-
(6) COMMENTS FOR COMPILING AND LINKING
83+
(3) UNINSTALL
84+
-------------
85+
86+
On MacOS, Linux, BSDs and other UNIX:
87+
88+
sudo make uninstall
89+
90+
or if installed with: make install_home
91+
92+
make uninstall_home
93+
94+
To manually uninstall on Windows remove all files in
95+
c:\Program files\newlisp
96+
97+
98+
(4) COMMENTS FOR COMPILING AND LINKING
13599
--------------------------------------
136100

137101
If skipping the ./configure step and just doing make, the
@@ -147,13 +111,7 @@ make file manually or use configure-alt.
147111

148112
If compiling with READLINE fails on Linux , it may be due to missing
149113
readline.h and history.h include files. In this case the package
150-
'libreadline5-dev' has to be installed.
151-
152-
On some platforms the warning message "ANSI does not support long long"
153-
will be issued for every file compiled. This message can be discarded
154-
and does not occur on newer versions of GCC. The 'long long' data type
155-
is not used anywhere in the newLISP source but part of some header files
156-
of the GCC installation.
114+
'libreadline5-dev' or a later version has to be installed.
157115

158116
Most of the makefile_xxxxx can also be used this way:
159117

@@ -238,7 +196,7 @@ off_t 8
238196
time_t 8
239197

240198

241-
(7) LOCALIZATION
199+
(5) LOCALIZATION
242200
----------------
243201

244202
The PCRE Regular Expressions code can be localized to your country/language
@@ -251,133 +209,30 @@ runtime without performance loss, (see newlisp_manual.html).
251209
There are UTF-8 versions/makefiles available in the source distribution.
252210
See the chapter about 'Customization, localization and UTF-8' in the manual.
253211

254-
255-
(8) UNINSTALL
256-
-------------
257-
258-
On Win32 use the uninstall application from the newlisp applications
259-
menu.
260-
261-
On Mac OS X double click on the uninstall script in the diskimage of
262-
the installer package.
263-
264-
On UBUNTU Linux execute:
265-
266-
sudo dpkg -r newlisp
267-
268-
On all other UNIX, to uninstall if installed with make install do:
269-
270-
sudo make uninstall
271-
272-
or if installed with: make install_home
273-
274-
make uninstall_home
275-
276-
To manually uninstall on Win32 remove all files in c:\Program files\newlisp
277-
278-
On Mac OS X and other UNIX remove all files in /usr/local/share/newlisp and
279-
/usr/share/doc/newlisp and the executable files /usr/local/bin/newlisp,
280-
/usr/local/bin/newliso-edit and /usr/local/bin/newlispdoc. On Mac OX X also
281-
remove the newLISP icon in the Applications folder.
282-
283-
284-
(8) RUNNING newLISP IN A SHELL OR CONSOLE WINDOW
212+
(6) RUNNING newLISP IN A SHELL OR CONSOLE WINDOW
285213
------------------------------------------------
286214

287215
On all platforms simply execute:
288216

289217
newlisp
290218

291-
On Win32 the execution path of newlisp.exe was added to the environment
292-
during installation. On all other platforms the newlisp binary is in
293-
/usr/local/bin/newlisp or when using the home install in $HOME/bin
294-
where $HOME is the the home directory of the user taken from the environment
295-
variable HOME.
296-
297-
298-
(10) RUNNING THE newLISP-GS GRAPHICAL FRONTEND
299-
----------------------------------------------
300-
301-
On Win32 and Mac OS X a Java based syntaxhighlighting editor is installed in
302-
in the Applications menus. In other UNIX execute:
303-
304-
newlisp-edit
305-
306-
from the command line in a terminal window.
307-
The editor needs a Java runtime environment JRE version 1.5 as a minimum.
308-
In case it is not installed it can be obtained from:
309-
http://www.oracle.com/technetwork/java/javase/downloads/index.html
310-
311-
Since Mac OS X 10.7 Lion, Java is not installed by default. Install
312-
Java for OS X 10.7 Lion from here: http://support.apple.com/kb/DL1421
313-
314-
(11) INSTRUCTIONS FOR CUSTOMIZED INSTALL AND PACKAGE CREATORS
315-
-------------------------------------------------------------
316-
317-
By default the configure script uses the following install directories:
318-
319-
/usr/local/bin/
320-
/usr/local/share/newlisp
321-
/usr/local/share/doc/newlisp
322-
323-
As an alternative the configure-alt script can be used. Do a:
324-
325-
./configure-alt --help
326-
327-
To see all the options available. Options for install directories,
328-
readline support, UTF-8 support and memory model used are available.
329-
330-
Like configure, configure-alt creates a makefile_build and makefile_install.
331-
Both makefiles are used by Makefile when doing:
332-
333-
make
334-
make install
335-
make test
336-
337-
or for a bigger testsuite
338-
339-
make testall
340-
341-
These are the standard configuration options recommended by newlisp.org:
342-
343-
- use ILP32 memory model as a default, use LP64 only when ILP32 is not
344-
available on the platform (configure-alt will take the default offered
345-
on the platform)
346-
347-
- use the default IPV4 support IPV6 has not been thoroughly tested yet
348-
although it passes the standard qa-net test script (configure-alt
349-
defaults to IPV4.
350-
351-
- use readline support if possible (configure-alt uses it if available)
352-
353-
- offer both packages, one with and one without UTF-8 support on UNIX
354-
installations. newlisp.org ships UTF-8 support on MAC OSX by default and
355-
ships without UTF-8 support on Win32 (offering UTF-8 binaries on the
356-
newlisp.org website).
357-
358-
- for a brief, one line description of the package, use:
359-
360-
newLISP is a LISP like, general purpose scripting language
361-
362-
- for a longer description of the package, use:
363-
364-
newLISP is a scripting language for developing web applications and
365-
programs in general and in the domains of artificial intelligence (AI)
366-
and statistics.
219+
On Windows the execution path of newlisp.exe should be added to the environment
220+
during installation. On all other platforms the newlisp binary should be in
221+
/usr/local/bin/newlisp or /usr/bin/newlisp.
367222

368223

369-
(12) COMMENTS ABOUT LIBFFI
370-
--------------------------
224+
(7) COMMENTS ABOUT LIBFFI
225+
-------------------------
371226

372227
Here some general comments for usage of libffi in newLISP:
373228

374229
The extended ffi requiring libffi and ffi.h for compiling, was only
375230
introduced a short time ago in February of 2012. Except for module/gsl.lsp
376231
all other modules shipped in the distributions work with the older simple
377-
form of import not requiring libffi.
232+
form of import not requiring libffi. Both are documented in the manual.
378233

379234
The configure utility will pick libffi enabled makefiles only for Windows,
380-
OSX and Linux. For all other OS it will pick makefiles not requiring libffi.
235+
MacOS and Linux. For all other OS it will pick makefiles not requiring libffi.
381236

382237
Ted Walther's configure-alt utility, which automatically configures the
383238
memory model (32-bit or 64-bit) never configures for the new extended ffi

0 commit comments

Comments
 (0)