Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
sagemath
GitHub Repository: sagemath/sagesmc
Path: blob/master/build/pkgs/ecl/SPKG.txt
8817 views
1
= ECL =
2
3
== Description ==
4
5
ECL is an implementation of the Common Lisp language as defined by the
6
ANSI X3J13 specification. The most relevant features:
7
8
* A bytecodes compiler and interpreter.
9
* Compiles Lisp also with any C/C++ compiler.
10
* It can build standalone executables and libraries.
11
* ASDF, Sockets, Gray streams, MOP, and other useful components.
12
* Extremely portable.
13
* A reasonable license.
14
15
ECL supports the operating systems Linux, FreeBSD, NetBSD, OpenBSD,
16
Solaris and Windows, running on top of the Intel, Sparc, Alpha and
17
PowerPC processors. Porting to other architectures should be rather
18
easy.
19
20
Website: http://ecls.sourceforge.net/
21
22
== License ==
23
24
* LGPL V2+ or compatible - for details see
25
http://ecls.sourceforge.net/license.html
26
27
== SPKG Maintainers ==
28
29
* David Kirkby
30
31
== Upstream Contact ==
32
33
* the ECL mailing list - see http://ecls.sourceforge.net/resources.html
34
35
== Dependencies ==
36
37
* mpir
38
* boehm_gc
39
40
== Special Update/Build Instructions ==
41
* Deleting the following directories saves space: without doing
42
this, the spkg can grow from under 2.5 megabytes to almost 7
43
megabytes. Deleting these files is done automatically by the
44
`spkg-src` script.
45
- The directory src/msvc/
46
- The directory src/src/gc-unstable
47
- The directory src/src/libffi
48
- Most of the contents of the src/src/gmp directory:
49
everything except install-sh, config.*, configfsf.*
50
- The directory src/contrib/encodings/
51
- The directory src/contrib/unicode/
52
* The directories src/contrib/encodings/ and src/contrib/unicode/ may
53
be removed because we build with --enable-unicode=no.
54
Building with --enable-unicode=yes, the default in the latest ECL
55
source, leads to problems with some strings in the Sage-Maxima-ECL
56
interface.
57
* Note: for the time being, ECL is built single threaded library as it
58
seems to interact badly with the pexpect interface and Sage's signal
59
handling when built multithreaded.
60
* Do NOT quote SAGE_LOCAL when setting CPPFLAGS and/or LDFLAGS,
61
in spkg-install as this caused the build to break. See
62
http://trac.sagemath.org/sage_trac/ticket/10187#comment:117
63
* TODO: Add the ECL test suite, and an spkg-check file to run it.
64
* TODO: Make ECL use Sage's Boehm GC on MacOS X as well (but perhaps
65
put some changes from ECL's into Sage's Boehm GC), then remove
66
the src/src/gc directory, too.
67
68
== Changelog ==
69
70
=== ecl-12.12.1.p4 (Jeroen Demeyer, 30 May 2013) ===
71
* #14662: Add symbolic link local/lib/ecl/ecl -> local/include/ecl
72
73
=== ecl-12.12.1.p3 (Volker Braun, 4 May 2013) ===
74
* #14055: Disable ECL's SIGCHLD handler
75
76
=== ecl-12.12.1.p2 (Jeroen Demeyer, 9 April 2013) ===
77
* #14426: write_error.patch: avoid an infinite loop when reporting
78
an error while writing to stderr.
79
* Rename spkg-make to spkg-src.
80
* Don't unset MAKEFLAGS (it was not clear why this was needed).
81
* It seems no longer needed to disable Altivec.
82
* Support ECL_CONFIGURE environment variable for options to
83
./configure.
84
85
=== ecl-12.12.1.p1 (Jean-Pierre Flori, 18 December 2012) ===
86
* #9167: Resolve ecl.dll conflict on Cygwin.
87
* Add a patch (implib.patch) to follow usual naming scheme for dlls on Cygwin
88
and generate an import library.
89
90
=== ecl-12.12.1.p0 (Jean-Pierre Flori, 15 December 2012) ===
91
* #13324: upgrade to upstream version 12.12.1.
92
* Remove patches (cygwin.patch, signal.patch) which have been integrated
93
upstream.
94
* Add upstream patch (infloop.patch) to avoid infinite loops when compiling
95
lisp to C.
96
97
=== ecl-12.7.1.p0 (Jean-Pierre Flori, 27 November 2012) ===
98
* #13324: upgrade to upstream version 12.7.1.
99
* Add a patch (cygwin.patch) to let ECL build on Cygwin (integrated upstream).
100
* Add a patch (signal.patch) to correctly handle signals
101
(integrated upstream).
102
* Remove patches (libraries.d.patch, scale_exponent.patch) which have been
103
integrated upstream.
104
* Ensure the library is built single threaded by passing --disable-threads
105
to configure.
106
107
=== ecl-11.1.2.cvs20111120.p2 (Julien Puydt, 27 May 2012) ===
108
* #12586: Added a patch from Juan Jose Garcia-Ripoll (upstream) fixing
109
the problem (scale_exponent.patch).
110
111
=== ecl-11.1.2.cvs20111120.p1 (Simon King, 10 December 2011) ===
112
* #12131: Use --libdir, to make the package work on openSUSE.
113
114
=== ecl-11.1.2.cvs20111120.p0 (Jeroen Demeyer, 24 November 2011) ===
115
* Trac #11884. Use the CVS snapshot from 2011-11-20. This is needed
116
to make Maxima (and other ECL libraries) compile on OS X 10.4.
117
118
=== ecl-11.1.2.cvs20111115.p0 (Jeroen Demeyer, 15 November 2011) ===
119
* Trac #11884. Use the CVS snapshot from 2011-11-15, which also
120
works on Mac OS X 10.4 PPC.
121
* Add file spkg-make to re-create the src/ tree using CVS.
122
123
=== ecl-11.1.2.git.20111030.p0 (John H. Palmieri, 4 November 2011) ===
124
* Trac #11884. General clean-up: remove unneeded patches,
125
remove some source files (as described above in "Special
126
Update/Build Instructions"), echo error messages to stderr, etc.
127
* Check the error code when running 'patch' in spkg-install.
128
* Run configure with the option "--enable-unicode=no" -- this was
129
the default in previous versions of ECL, and using the new default
130
of "yes" causes problems with some strings.
131
* Run configure with the option "--with-gmp-prefix=$SAGE_LOCAL".
132
133
=== ecl-11.1.2.git.20111030 (William Stein, 30th October 2011) ===
134
* Upgraded for trac 11884. I got this by using
135
136
git clone git://ecls.git.sourceforge.net/gitroot/ecls/ecl
137
rm -rf src
138
mv ecl src
139
cd ecl; rm -rf .git* # remove saved 20MB
140
141
I'm calling it 11.1.2.git so that the version number still sorts
142
correctly, and since one could view this as a snapshot of what
143
will be 11.1.2 eventually.
144
145
=== ecl-11.1.1.p3 (Karl-Dieter Crisman, 27th June 2011) ===
146
* Two more fixes for Cygwin from upstream, fixing
147
double inclusion of fenv.h in h/impl/math_fenv.h and
148
c/unixint.d
149
* These two fixes and the one in p2 are all in ECL CVS
150
and should be removed upon upgrade.
151
152
=== ecl-11.1.1.p2 (Karl-Dieter Crisman, 24th June 2011) ===
153
* Fix for Cygwin, including sys/stat.h in ffi/libraries.d
154
* This should be removed, or a if/else statement for which version
155
of Cygwin once a different fix is in a released version
156
(see http://cygwin.com/ml/cygwin/2011-04/msg00336.html)
157
158
=== ecl-11.1.1.p1 (Dmitrii Pasechnik, 6th May 2011) ===
159
* altivec must be disabled for ECL on PPC OSX 10.5
160
(hopefully ECL people will fix it, then it can be removed)
161
162
=== ecl-11.1.1.p0 (Francois Bissey, 23rd March 2011) ===
163
* #10986 on some configuration (debian and gentoo are case in point)
164
etags can be linked to exuberant-ctags. ecl building system automatically
165
detects etags and if etags is actually ctags the build will break.
166
We circumvent the building of TAGS so this doesn't happen.
167
168
=== ecl-11.1.1 (François Bissey, 13th February 2011) ===
169
* #10766 Update to the latest stable release of ECL which will
170
solve some long standing problems on 64-bit solaris.
171
* Added a patch (ecls-11.1.1-cmploc.lisp.patch) cherrypicked from
172
an upstream commit. The problem caused are discussed here:
173
http://www.mail-archive.com/[email protected]/msg00671.html
174
and the commit used to create the patch is here:
175
http://ecls.git.sourceforge.net/git/gitweb.cgi?p=ecls/ecl;a=commit;h=ce19c67a1b9f63cd232e7c0a621b6ca87aaa7214
176
177
=== ecl-10.4.1 (David Kirkby, 11th November 2010) ===
178
* #10187 Update to the latest stable release of ECL, which is needed
179
to build on Fedora 14 (see #10185).
180
* Added the word "Error" in front of all error messages.
181
* Added a TODO to add an spkg-check file. Doing this is not
182
trivial. The ECL developer has said the test code on the
183
ECL site is outdated, and ECL is not really designed to
184
run the test suite after building. We might need to
185
address this later.
186
* Removed an extra semi-colon on the line:
187
echo "SAGE_LOCAL undefined ... exiting";
188
That line, with the extra semi-colon is in half the Sage packages.
189
Gradually they are getting removed.
190
* Used a more portable test for SAGE_LOCAL.
191
* Replaced 'make' by '$MAKE' but set MAKE to be "$MAKE -j1" so
192
ECL builds serially, and not in parallel.
193
* Removed any code in spkg-install related to Fortran. There is only one
194
Fortran file in ECL, and that's only used on a Cray. Nobody is
195
making any attempt to port Sage to a Cray, and I doubt they will
196
either. Removal of the Fortran related variables aids clarity.
197
* Removed checks for Sun/GNU compilers, as the prereq script does all this.
198
* Likewise remove checks that SAGE_FORTRAN and SAGE_FORTRAN_LIB are
199
set, as the prereq script does this.
200
* Removed code from spkg-install which deleted temporary files, as the bug
201
that required this, has been fixed in the ECL source code. This was
202
originally bug #8951 but was actually fixed in #9474.
203
* Removed the 'patches' directory as there are no patches!
204
* Note, I've left the gmp source code in place, as removing it requires that
205
a hacked configure script be produced. This is dangerous, as someone
206
is bound to at some point not do that step properly. For a couple of MB, it
207
it worth leaving the src unmodified, except for the msvc code. If someone
208
forgets to remove the msvc code it will causes no problems. If someone
209
fails to update the configure script properly, it will cause havoc.
210
* Added variable CFLAG64 and CXXFLAG64 to be consistent with other
211
packages, which will permit Sage to build 64-bit even if the right
212
compiler flag is not -m64.
213
* Removed the patch to dpp.c (bug #9917) as that has been fixed in the
214
upstream source code.
215
* Changed code to set optimisation flag -O0 if SAGE_DEBUG=yes. This
216
is more consistent with other packages.
217
* Removed set -e / set +e. When used properly, these are useful, but it
218
is very easy for someoone to fail to set them properly, so it's safer
219
to not use them.
220
* Made notes in this file and spkg-install that the way ECL is configured
221
in Sage, the values of CXX and CXXFLAGS are ignored.
222
* Removed an inaccurate comment about what MAKE="$MAKE -j1" does.
223
* Noted that a certain bit of code would be executed on Solaris Express too,
224
rather than just the Solaris and OpenSolaris that were listed before.
225
* Ensured that user-defined values for CFLAGS & CXXFLAGS do not get
226
overridden, as they would have been when SAGE_DEBUG was not "yes"
227
228
229
=== ecl-10.2.1.p3 (David Kirkby, David Kirkby, 17th September 2010) ===
230
* #9917 Add a missing argument on line 678 of dpp.c. The code is fixed
231
upstream, so the line is just taken from the upstream source code
232
retrieved on 17th September 2010. Note, the upstream source code has
233
many changes - only this, and the next change were put in Sage. We have
234
NOT updated the ECL version to the latest unstable upstream version.
235
* Removed an extra argument on line 680 of dpp.c Same comments as above.
236
237
=== ecl-10.2.1.p2 (David Kirkby, 30th July 2010) ===
238
* #9643 Force ECL to disable assembly code on Solaris 10 as
239
it does on OpenSolaris. The conditions for disabling
240
assembly code were relaxed, so the release (Solaris 10
241
or OpenSolaris) are now ignored.
242
243
=== ecl-10.2.1.p1 (Mitesh Patel, 11th July 2010) ===
244
* Originally #9187, backported to 10.2.1: Set an empty MAKEFLAGS
245
variable before "make". On OS X, at least, this fixes building
246
multiple spkgs in parallel (cf. #8306).
247
248
=== ecl-10.2.1.p0 (David Kirkby, 11th July 2010) ===
249
* #9474 Revert ECL back to version 10.2.1 (along with Maxima too)
250
since some Maxima tests have failed on sage.math.
251
* #8089 Add the configure option '--with-dffi=no' on
252
OpenSolaris on the x86 processor. This disables assembly code.
253
This was originally #8089, but is back-ported to 10.2.1
254
* Delete temp files in /tmp, as they cause problems building
255
ECL in a multi-user environment. This was originally
256
#8951
257
258
=== ecl-10.2.1 (William Stein, 14 February 2010) ===
259
* Upgrade to latest stable upstream release.
260
261
=== ecl-9.10.2-20091105cvs.p1 (William Stein, December 17, 2009) ===
262
* Removed the encodings directory, since it contains potentially
263
dangerous binary files.
264
265
=== ecl-9.10.2-20091105cvs.p0 (Mike Hansen, November 5, 2009) ===
266
* Updated to the latest version of ECL. This has a number of fixes
267
in it, including the patch that was in patches/mach_dep.c.
268
269
=== ecl-9.8.4-20090913cvs.p3 (William Stein, Oct 14, 2009) ===
270
* trac 7213 -- put * in right place in rm command to make
271
sure ecl still works when sage is moved (properly delete old versions)
272
273
=== ecl-9.8.4-20090913cvs.p2 (William Stein, Oct 11, 2009) ===
274
* trac 7186 -- make sure ecl still works when sage is moved
275
276
=== ecl-9.8.4-20090913cvs.p1 (William Stein, Sept 20th, 2009) ===
277
* Make the name more canonical
278
* Patch for boehm GC code to also work on OS X 10.6
279
280
=== ecl-9.8.4-cvs-13th-Sept-2009 (David Kirkby and Minh Van Nguyen, Sept 15th, 2009) ===
281
* Download the latest CVS from the ECL web site, as version
282
9.8.4 is acknowledged by the main ECL developer it will not work
283
on 64-bit OS X
284
* Correct failure to build on OS X ticket #6883 This replaces
285
./configure --prefix=$SAGE_LOCAL --with-system-gmp --enable-boehm=system
286
with
287
./configure --prefix=SAGE_LOCAL
288
in spkg-install.
289
* Changed use of FFLAGS to FCFLAGS in spkg-install.
290
* Set ABI to 64 and Export it. Only needed for OS X, but
291
ignored on other platforms.
292
* Print variable names, to aid debugging.
293
* Unset make, as it appears to break parallel builds.
294
295
=== ecl-9.8.4 (David Kirkby, August 20th, 2009) ===
296
* Updated to the latest 9.8.4 release of ECL (#6564)
297
* removed the unneeded directory msvc from src to save disk space
298
* Removed the patches directory, as there are none.
299
* Changed spkg-install so no patches are applied.
300
* Improved spkg-install so some sanity checks of the
301
compilers takes place.
302
* Enable all warnings on gcc.
303
* Build 64-bit if SAGE64 is set to 'yes'
304
* Removed the 'unset MAKE' in install-spkg.
305
* Allow debug information to be removed from file, if
306
SAGE_DEBUG is set to 'no', 'false' or '0'
307
By default, debugging information will be supplied.
308
* Removed an automatic addition of -g on 64-bit ( -g
309
will be enable by default.)
310
* Set CXXFLAGS and FFLAGS to have -m64 for a 64-bit build
311
(originally only CFLAGS was done, yet there are C++ and
312
Fortran files too).
313
* Removed -m64 from LDFLAGS - it is not needed and unportable.
314
* Add a check that someone is not mixing the Sun and GNU
315
compilers.
316
* Removed all the special build instructions from this file,
317
as we are not sure they are needed.
318
* Changed dependency note above from gmp to mpir.
319
* Added my own name as a maintainer.
320
321
=== ecl-9.4.1 (Michael Abshoff, May 15th, 2009) ===
322
* Initial version.
323
324
325