summaryrefslogtreecommitdiff
path: root/lang/ecl/Makefile
diff options
context:
space:
mode:
authorasau <asau@pkgsrc.org>2012-07-26 21:09:29 +0000
committerasau <asau@pkgsrc.org>2012-07-26 21:09:29 +0000
commit7bb49bd3cd7c83000cbfe13e7f3066e3ca6afbc6 (patch)
tree19bb628d5107bf4fc32608e872de14c3e117e315 /lang/ecl/Makefile
parentd54c7004026484be6bb3177bf358b5acb0f785de (diff)
downloadpkgsrc-7bb49bd3cd7c83000cbfe13e7f3066e3ca6afbc6.tar.gz
Update to ECL 12.7.1
ECL 12.7.1: =========== * Bugs fixed: - The implementation of locks and condition variables based on POSIX threads was not safe under interrupts. It has all been reimplemented using atomic userspace operations plus a new wait queue. - :CDECL was not accepted as an FFI declaration due to a typo. - REMOVE-METHOD and FIND-METHOD were not generic functions. - MAKE-LOAD-FORM's methods for standard-object, structure-object and condition did not signal an error). * Visible changes: - ECL builds with support for threads by default (where available). - DIRECTORY no longer complains when it finds an inexistent directory component: it simply returns NIL as the list of pathnames. - CASE now complains when the OTHERWISE/T clause is not the last one. - Instead of issuing an error, LOOP now only produces a STYLE-WARNING when iteration forms appear at the wrong place, as in (LOOP WHILE ...) followed by some assignment. - EXT:MKDIR no longer accepts pathnames as inputs to avoid problems with pathnames that contain name or type components. - ENSURE-DIRECTORIES-EXIST accepts the keyword argument :MODE which is passed to MKDIR. - In EXT:RUN-PROGRAM the child process is delayed until the parent has created the process structure and stored the process id in it. Formerly we had race conditions due to the child exiting before the parent was able to call sigwait(). - Where available, ECL now defines the constants EXT:+SIGRTMIN+ and EXT:+SIGRTMAX+, as well as EXT:+SIGRT0+ through EXT:+RTMINn+ where n = SIGRTMAX - SIGRTMIN Those signals can be then trapped. - The interrupt handler for floating point exceptions does not care about the value of EXT:*INTERRUPTS-ENABLED* or similar mechanisms because such interrupt has to be treated as an error, not as something optional. The same applies to other evil signals, such as SIGSEGV or SIGBUS. - New functions (EXT:GET-INTERRUPT-HANDLER code) and (EXT:SET-INTERRUPT-HANDLER code function-designator) allow the user to customize how these interrupts are caught. SET-INTERRUPT-HANDLER runs an implicit EXT:CATCH-SIGNAL. - ECL now exports the symbols FFI:C-INT-MAX, FFI:C-INT-MIN, FFI:C-LONG-MAX, etc, which correspond to the POSIX C constants INT_MAX, INT_MIN, LONG_MAX, and similar ones. - APROPOS-LIST no longer returns duplicate symbols. - The ABORT restart is now bound on every new thread (except the main one, where either the user or the toplevel must take care of that). * Windows: - ECL guesses whether the input / output / error streams are consoles. If so, it sets up a special type of stream that copes with the deficiencies of read()/write() and similar functions on consoles -- namely that they may read or write a larger number of bytes than demanded because they translate the input/output to and from the corresponding codepage. (EXPERIMENTAL) - ECL detects the codepage that the console is using and applies it as the appropriate external format (with :CRLF convention). - ECL's console stream signals EOF when Ctrl-Z is detected. * Metaobject protocol: - Implemented CLOS:COMPUTE-APPLICABLE-METHODS-USING-CLASSES. - COMPUTE-APPLICABLE-METHODS and CLOS:COMPUTE-EFFECTIVE-METHOD are now generic functions. - Implemented and used in the core: VALIDATE-SUPERCLASSES - UPDATE-DEPENDENT, MAP-DEPENDENTS and related functions have been fixed. They are now invoked by REMOVE-METHOD and REINITIALIZE-INSTANCE, when acting on generic functions, standard classes, etc. - (SETF CLASS-NAME) is now implemented using REINITIALIZE-INSTANCE. - ENSURE-CLASS-USING-CLASS now registers the class with FIND-CLASS. ENSURE-CLASS relies on E-C-U-C doing that. - EXTRACT-LAMBDA-LIST and EXTRACT-SPECIALIZER-NAMES implemented. - CLOS:GENERIC-FUNCTION-DECLARATIONS and slot CLOS:DECLARATIONS are now implemented (even if not used by ECL itself). - Implemented the class CLOS:METAOBJECT - Implemented SPECIALIZER and EQL-SPECIALIZER, together with ADD-DIRECT-METHOD, REMOVE-DIRECT-METHOD, SPECIALIZER-DIRECT-METHODS, SPECIALIZER-DIRECT-GENERIC-FUNCTIONS and EQL-SPECIALIZER-OBJECT. ECL now uses these objects internally for method dispatch. - DEFMETHOD now relies on MAKE-METHOD-LAMBDA to create the appropriate function. - Implemented COMPUTE-DISCRIMINATING-FUNCTION. - ECL's discriminating functions use COMPUTE-APPLICABLE-METHODS-USING-CLASSES on those classes in which the user may redefine or extend the method. Elsewhere, ECL relies on the internal equivalent of COMPUTE-APPLICABLE-METHODS, which _always_ memoizes results. - When reinitializing a class instance, ECL would not remove the class from its former superclasses. - The method combination slot of a generic function is now precomputed by using FIND-METHOD-COMBINATION in SHARED-INITIALIZE. - METHOD-COMBINATION is now a class with slots and it is used by ECL for computing effective methods. - The MOP and CL classes and metaclasses do not contain any slot whose name is exported by any of the CL or CL-USER packages.
Diffstat (limited to 'lang/ecl/Makefile')
-rw-r--r--lang/ecl/Makefile6
1 files changed, 2 insertions, 4 deletions
diff --git a/lang/ecl/Makefile b/lang/ecl/Makefile
index d39fd5ba4d1..978842f4468 100644
--- a/lang/ecl/Makefile
+++ b/lang/ecl/Makefile
@@ -1,10 +1,8 @@
-# $NetBSD: Makefile,v 1.12 2012/07/05 14:51:47 asau Exp $
-#
+# $NetBSD: Makefile,v 1.13 2012/07/26 21:09:29 asau Exp $
-DISTNAME= ecl-12.2.1
+DISTNAME= ecl-12.7.1
CATEGORIES= lang
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=ecls/}
-EXTRACT_SUFX= .tgz
MAINTAINER= asau@inbox.ru
HOMEPAGE= http://ecls.sourceforge.net/