summaryrefslogtreecommitdiff
path: root/lang/clisp
AgeCommit message (Collapse)AuthorFilesLines
2007-04-01Use "$(TOOLS_PLATFORM.install)" instead of hard coded "install" totron8-24/+25
fix build problems under Solaris. Based on a suggestion by Aleksey Cheusov.
2007-03-29Make this build as non-root user. Patches provided by Aleksey Cheusovtron7-1/+98
in PR pkg/34987. This also fixes PR pkg/36096.
2006-12-29libsigsegv *is* a full dependency at least on DragonFly and FreeBSD.joerg1-1/+2
Bump clisp for the changed dependency.
2006-10-22Fixed PKGMANDIR.rillig1-1/+2
2006-08-07Add USETOOLS+=dvipdf so that the documentation is properly built onperry1-1/+2
all platforms. Previously this was a hidden dependency. Thanks to cube for adding the make magic so dvipdf is now a tool.
2006-07-21Depend on libsigsegv>=2.4, as 2.39 release notes say.wiz1-1/+2
2006-07-20Update to clisp 2.39perry10-58/+36
List of changes from the release notes: 2.39 (2006-07-16) ================= User visible changes -------------------- * SAVEINITMEM now accepts :SCRIPT argument that disables interpreting the first positional argument as the script name; and :DOCUMENTATION argument that is printed by the new -help-image command line option. See <http://clisp.cons.org/impnotes/image.html> and <http://clisp.cons.org/impnotes/clisp.html#opt-help-image> for details. * FFI:UINT64 and FFI:SINT64 are now compatible with C's long long type. * Stack overflow detection and recovery finally work fine on Unix. Libsigsegv is required for this, on all platforms (including MS-Windows). CLISP should neither exit nor crash under infinite recursion. If your distribution has CLISP compiled without libsigsegv, report the missing feature to its maintainer. Note that libsigsegv 2.4 is required, there are bugs in libsigsegv 2.3! * It is now possible to specify the default method-combination of a generic function, to be used when the DEFGENERIC form does not specify the :METHOD-COMBINATION explicitly, through a default initarg specification for the :METHOD-COMBINATION keyword on the generic function class. * Readline completion works with non 1:1 terminal encodings, e.g. UTF-8. * WITH-KEYBOARD works with a Unix tty even when SLIME hijacks *TERMINAL-IO*. * I/O operations on Win32 are now much faster. * New functions: POSIX:FFS, POSIX:PATHCONF. * Infrastructure: + Top-level configure now accepts a new option --with-gmalloc to use the GNU malloc implementation instead of the one supplied by libc. You may need it on older HP-UX and newer OpenBSD systems. See file unix/PLATFORMS for more information. + The value of the environment variable CFLAGS is respected by configure. * Bug fixes: + SOCKET:SOCKET-SERVER :INTERFACE now behaves as documented. + EXT:READ-BYTE-NO-HANG and SOCKET:SOCKET-STATUS used to hang on buffered binary sockets. + Allow DESTRUCTURING-BIND (a . b) with circular and dotted lists. + ADJUST-ARRAY of zero length adjustable string now works. + TIME now reports correct results when the heap grows over 4GB. + RAWSOCK functions now handle :START/:END arguments correctly. + BDB:DBC-GET now accepts :READ-COMMITTED and :READ-UNCOMMITTED. + POSIX:GROUP-INFO and POSIX:USER-INFO now handle errors correctly. * Portability: + Support DragonFly BSD.
2006-05-10Readd the various pieces for DragonFly. Explicitly disable mmap,joerg9-5/+107
it currently doesn't work.
2006-04-17Strip ${PKGLOCALEDIR} from PLISTs of packages that already obeyjlam1-15/+15
PKGLOCALEDIR and which install their locale files directly under ${PREFIX}/${PKGLOCALEDIR} and sort the PLIST file entries. From now on, pkgsrc/mk/plist/plist-locale.awk will automatically handle transforming the PLIST to refer to the correct locale directory.
2006-04-06Over 1200 files touched but no revisions bumped :)reed1-2/+2
RECOMMENDED is removed. It becomes ABI_DEPENDS. BUILDLINK_RECOMMENDED.foo becomes BUILDLINK_ABI_DEPENDS.foo. BUILDLINK_DEPENDS.foo becomes BUILDLINK_API_DEPENDS.foo. BUILDLINK_DEPENDS does not change. IGNORE_RECOMMENDED (which defaulted to "no") becomes USE_ABI_DEPENDS which defaults to "yes". Added to obsolete.mk checking for IGNORE_RECOMMENDED. I did not manually go through and fix any aesthetic tab/spacing issues. I have tested the above patch on DragonFly building and packaging subversion and pkglint and their many dependencies. I have also tested USE_ABI_DEPENDS=no on my NetBSD workstation (where I have used IGNORE_RECOMMENDED for a long time). I have been an active user of IGNORE_RECOMMENDED since it was available. As suggested, I removed the documentation sentences suggesting bumping for "security" issues. As discussed on tech-pkg. I will commit to revbump, pkglint, pkg_install, createbuildlink separately. Note that if you use wip, it will fail! I will commit to pkgsrc-wip later (within day).
2006-04-04Fix build on amd64. Add same workaround for other 64-bit platforms.wiz1-3/+7
Remove outdated comment. From Martijn in PR 33189.
2006-03-16Mark as not-for-sparc64, and add link to sourceforge bug id.wiz1-2/+5
2006-03-14This package depends on zlib>=1.2, mark it so. Addresses (part of?) PR 33074.wiz1-1/+2
2006-03-11Enable zlib and rawsock modules while the update is still fresh.wiz2-4/+9
2006-03-11Update to 2.38:wiz6-109/+59
2.38 (2006-01-24) ================= User visible changes -------------------- * SAVEINITMEM can create standalone executables. Thanks to Frank Buß for the idea. SAVEINITMEM also accepts :NORC argument do disable RC-file loading. See <http://clisp.cons.org/impnotes/image.html> for details. * POSIX:SYSLOG no longer recognizes "%m" and other formatting instructions. For your safety and security, please do all formatting in Lisp. * Fixed the OPEN :IF-EXISTS :APPEND bug introduced in 2.37. * Fixed a crash on woe32 in opening files with names longer than MAX_PATH. * Module berkeley-db now supports Berkeley DB 4.4. 2.37 (2006-01-02) ================= User visible changes -------------------- * Signal a continuable error when an already opened file is opened again, unless both streams are read-only. * SOCKET-SERVER now accepts :BACKLOG and :INTERFACE arguments. The first (optional) argument should be the port number or NIL. Use (SOCKET-SERVER NIL :INTERFACE SOCKET) instead of (SOCKET-SERVER SOCKET). Thanks to Tomas Zellerin See <http://clisp.cons.org/impnotes/socket.html#sose> for details. * EXT:HTTP-PROXY now uses the environment variable "http_proxy", not "HTTP_PROXY", like curl does, to avoid confusing it with CGI arguments. * OPEN :DIRECTION :OUTPUT now creates write-only handles and treats named pipes correctly. * Fixed EXT:SETENV on non-POSIX systems (woe32 and BSD derivatives). * Fixed a bug in EXT:! on 64-bit platforms. Thanks to Dr. Werner Fink 2.36 (2005-12-04) ================= User visible changes -------------------- * Infrastructure: + Top-level configure now accepts the option --enable-maintainer-mode that affects autoconf-related Makefile targets. The default value is determined based on the presence of the CVS directories. + When libsigsegv is not found, print instructions on getting/building libsigsegv and bail out; override with --ignore-absence-of-libsigsegv. + When --with-dynamic-ffi is supplied, but the FFI fails to build, abort. + When --with-readline is supplied, but GNU readline is not found, abort. + makemake no longer checks with_module_* variables. * New function EXT:OPEN-HTTP and macro EXT:WITH-HTTP-INPUT. See <http://clisp.cons.org/impnotes/macros3.html#open-http> for details. * New declaration EXT:NOTSPECIAL undoes the effects of DEFVAR and DEFCONSTANT. See <http://clisp.cons.org/impnotes/declarations.html#notspec-decl> for details. * Function EXT:CLHS is now deprecated in favor of DESCRIBE, which can now point your web browser to the ANSI CL and CLISP-specific documentation. See <http://clisp.cons.org/impnotes/environment-dict.html#describe> for details. * FFI modules can now take advantage of autoconf feature detection. See <http://clisp.cons.org/impnotes/dffi.html#ffi-guard> for details. * New FFI macro FFI:DEF-C-CONST. See <http://clisp.cons.org/impnotes/dffi.html#def-c-const> for details. * New charset BASE64 encodes arbitrary byte sequences with strings of printable ASCII characters (4 characters per 3 bytes). See <http://clisp.cons.org/impnotes/encoding.html#base64> for details. * New module readline offers some advanced readline and history features. It is a BASE module and is available when both FFI and readline are present. * SOCKET:SOCKET-SERVICE-PORT is now deprecated in favor of OS:SERVICE. See <http://clisp.cons.org/impnotes/syscalls.html#service> for details. * New SETF-able functions POSIX:GETUID, POSIX:GETGID, POSIX:GETEUID, POSIX:GETEGID. New functions POSIX:GROUP-INFO and POSIX:STRING-TIME. Function POSIX:USER-DATA is renamed to POSIX:USER-INFO. See <http://clisp.cons.org/impnotes/syscalls.html> for details. * New NEW-CLX demo: foch.lisp draws fractal snowflakes. Implemented XLIB:SET-MODIFIER-MAPPING, XLIB:KEYSYM->KEYCODES, XLIB:ACCESS-HOSTS, XLIB:ADD-ACCESS-HOST, XLIB:REMOVE-ACCESS-HOST, XLIB:CHANGE-KEYBOARD-CONTROL, XLIB:CHANGE-KEYBOARD-MAPPING, XLIB:KEYBOARD-MAPPING, XLIB:KEYSYM-NAME, XLIB:KEYCODE->CHARACTER, XLIB:SHAPE-EXTENTS, XLIB:SHAPE-RECTANGLES, XLIB:DEFAULT-KEYSYM-INDEX. Use MAP instead of ELT for sequence access in NEW-CLX. * ANSI CL compliance issues: + DEFPACKAGE options :SHADOWING-IMPORT-FROM, :USE, :IMPORT-FROM accept package designators, not just package names. + ENCODE-UNIVERSAL-TIME is now the perfect inverse for DECODE-UNIVERSAL-TIME. * The command line option -v now affects *LOAD-ECHO* also. See <http://clisp.cons.org/clisp.html#opt-v> for details. * When a CLISP process is killed, clean-up is always executed. * DEFCLASS now permits user-defined :ALLOCATION arguments. * Fixed (FUNCTION-LAMBDA-EXPRESSION #'(SETF FOO)) on compiled functions. * Fixed re-exporting symbols from POSIX to EXT. * Fixed module rawsock on platforms with non-trivial struct sockaddr layout. Functions that take a BUFFER argument, also take :START and :END arguments. Renamed RAWSOCK:LISTEN to RAWSOCK:SOCK-LISTEN to avoid a conflict with CL. New functions RAWSOCK:PROTOCOL, RAWSOCK:NETWORK, RAWSOCK:GETADDRINFO, RAWSOCK:GETNAMEINFO. See <http://clisp.cons.org/impnotes/rawsock.html> for details. * Fixed module postgresql logging behavior. * Fixed clisp.h generation to conform to the internal definitions. 2.35 (2005-08-29) ================= User visible changes -------------------- * SOCKET:SOCKET-STREAM-SHUTDOWN does not call CLOSE anymore, just shutdown(2) - as it has always been documented. It now also works on raw sockets, thus RAWSOCK:SHUTDOWN has been removed. See <http://clisp.cons.org/impnotes.html#sost-shut> and <http://clisp.cons.org/impnotes.html#rawsock> for details. * When the command line option -E receives an invalid encoding, ISO-8859-1 is used instead. [It was ASCII (for *FOREIGN-ENCODING*) or UTF-8 (for all other encodings) before.] Rationale: this is a 1:1 that corresponds to CLISP CODE-CHAR/CHAR-CODE and avoids spurious errors in DIRECTORY on startup. * New function EXT:COMPILED-FILE-P - checks whether the file is a CLISP-compiled file with a compatible bytecode format. See <http://clisp.cons.org/impnotes.html#compiled-file-p> for details. * New functions EXT:CHAR-INVERTCASE, EXT:STRING-INVERTCASE and EXT:NSTRING-INVERTCASE invert case of characters and strings. See <http://clisp.cons.org/impnotes.html#char-invertcase> and <http://clisp.cons.org/impnotes.html#string-invertcase> for details. * New function POSIX:STREAM-OPTIONS calls fcntl(2). See <http://clisp.cons.org/impnotes.html#fcntl> for details. * Explicitly close all possible file descriptors before exec(). * Danish translations of the user interface messages have been added. Thanks to Dennis Decker Jensen 2.34 (2005-07-20) ================= Important notes --------------- * All .fas files generated by previous CLISP versions are invalid and must be recompiled. This is caused by the addition of MOP, the DEFSETF fixes, and the TRANSLATE-PATHNAME and MAKE-HASH-TABLE enhancements. Set CUSTOM:*LOAD-OBSOLETE-ACTION* to :COMPILE to automate this. See <http://clisp.cons.org/impnotes.html#loadfile> for details. * The name of the Run-Control file has changed from '_clisprc' to '.clisprc' on all platforms. If you are using woe32, please rename your Run-Control file. * Modules i18n, regexp, and syscalls are now present even in the base linking set. Do not pass, e.g., "--with-module=regexp" to configure. User visible changes -------------------- * The CLOS MetaObject Protocol is supported: + New class METAOBJECT. + Classes: New classes STANDARD-READER-METHOD, STANDARD-WRITER-METHOD, FORWARD-REFERENCED-CLASS. New functions ENSURE-CLASS. New generic functions CLASS-DIRECT-SUPERCLASSES, CLASS-PRECEDENCE-LIST, CLASS-DIRECT-SLOTS, CLASS-SLOTS, CLASS-DIRECT-DEFAULT-INITARGS, CLASS-DEFAULT-INITARGS. New customizable generic functions For class creation: ENSURE-CLASS-USING-CLASS, VALIDATE-SUPERCLASS, COMPUTE-DIRECT-SLOT-DEFINITION-INITARGS, COMPUTE-CLASS-PRECEDENCE-LIST, COMPUTE-EFFECTIVE-SLOT-DEFINITION, COMPUTE-EFFECTIVE-SLOT-DEFINITION-INITARGS, COMPUTE-SLOTS, COMPUTE-DEFAULT-INITARGS, READER-METHOD-CLASS, WRITER-METHOD-CLASS. For notification about subclasses: CLASS-DIRECT-SUBCLASSES, ADD-DIRECT-SUBCLASS, REMOVE-DIRECT-SUBCLASS. + Generic Functions: New classes FUNCALLABLE-STANDARD-CLASS, FUNCALLABLE-STANDARD-OBJECT. New functions ENSURE-GENERIC-FUNCTION, SET-FUNCALLABLE-INSTANCE-FUNCTION, COMPUTE-EFFECTIVE-METHOD-AS-FUNCTION. New generic functions GENERIC-FUNCTION-NAME, GENERIC-FUNCTION-METHODS, GENERIC-FUNCTION-METHOD-CLASS, GENERIC-FUNCTION-LAMBDA-LIST, GENERIC-FUNCTION-METHOD-COMBINATION, GENERIC-FUNCTION-ARGUMENT-PRECEDENCE-ORDER, GENERIC-FUNCTION-DECLARATIONS. New customizable generic functions ENSURE-GENERIC-FUNCTION-USING-CLASS, COMPUTE-DISCRIMINATING-FUNCTION, COMPUTE-APPLICABLE-METHODS, COMPUTE-APPLICABLE-METHODS-USING-CLASSES. + Methods: New generic functions METHOD-FUNCTION, METHOD-GENERIC-FUNCTION, METHOD-LAMBDA-LIST, METHOD-SPECIALIZERS, ACCESSOR-METHOD-SLOT-DEFINITION. New functions EXTRACT-LAMBDA-LIST, EXTRACT-SPECIALIZER-NAMES. + Method-Combinations: New generic function FIND-METHOD-COMBINATION. New customizable generic function COMPUTE-EFFECTIVE-METHOD. + Slot-Definitions: New classes SLOT-DEFINITION, STANDARD-SLOT-DEFINITION, DIRECT-SLOT-DEFINITION, STANDARD-DIRECT-SLOT-DEFINITION, EFFECTIVE-SLOT-DEFINITION, STANDARD-EFFECTIVE-SLOT-DEFINITION. New generic functions SLOT-DEFINITION-NAME, SLOT-DEFINITION-INITFORM, SLOT-DEFINITION-INITFUNCTION, SLOT-DEFINITION-TYPE, SLOT-DEFINITION-ALLOCATION, SLOT-DEFINITION-INITARGS, SLOT-DEFINITION-READERS, SLOT-DEFINITION-WRITERS, SLOT-DEFINITION-LOCATION. New customizable generic functions DIRECT-SLOT-DEFINITION-CLASS, EFFECTIVE-SLOT-DEFINITION-CLASS. + Specializers: New classes SPECIALIZER, EQL-SPECIALIZER. New generic functions SPECIALIZER-DIRECT-GENERIC-FUNCTIONS, SPECIALIZER-DIRECT-METHODS. New functions EQL-SPECIALIZER-OBJECT, INTERN-EQL-SPECIALIZER. New customizable generic functions ADD-DIRECT-METHOD, REMOVE-DIRECT-METHOD. + Slot access: New generic functions SLOT-VALUE-USING-CLASS, (SETF SLOT-VALUE-USING-CLASS), SLOT-BOUNDP-USING-CLASS, SLOT-MAKUNBOUND-USING-CLASS. New functions STANDARD-INSTANCE-ACCESS, FUNCALLABLE-STANDARD-INSTANCE-ACCESS. + Dependent object notification: New functions MAP-DEPENDENTS. New customizable generic functions ADD-DEPENDENT, REMOVE-DEPENDENT, UPDATE-DEPENDENT. See <http://clisp.cons.org/impnotes.html#mop-chap> for details, and <http://clisp.cons.org/impnotes.html#mop-clisp> for a list of differences between CLISP and "The Art of the Metaobject Protocol". *FEATURES* now contains :MOP. * CLISP now supports programming with case sensitive symbols. This is the default when CLISP is started with the new command line option "-modern". See <http://clisp.cons.org/impnotes.html#package-case> for details. * Several new datatypes that manage weak references: WEAK-LIST, WEAK-AND-RELATION, WEAK-OR-RELATION, WEAK-MAPPING, WEAK-AND-MAPPING, WEAK-OR-MAPPING, WEAK-ALIST. New functions - for WEAK-LIST: MAKE-WEAK-LIST, WEAK-LIST-P, WEAK-LIST-LIST, (SETF WEAK-LIST-LIST), - for WEAK-AND-RELATION: MAKE-WEAK-AND-RELATION, WEAK-AND-RELATION-P, WEAK-AND-RELATION-LIST, - for WEAK-OR-RELATION: MAKE-WEAK-OR-RELATION, WEAK-OR-RELATION-P, WEAK-OR-RELATION-LIST, - for WEAK-MAPPING: MAKE-WEAK-MAPPING, WEAK-MAPPING-P, WEAK-MAPPING-PAIR, WEAK-MAPPING-VALUE, (SETF WEAK-MAPPING-VALUE), - for WEAK-AND-MAPPING: MAKE-WEAK-AND-MAPPING, WEAK-AND-MAPPING-P, WEAK-AND-MAPPING-PAIR, WEAK-AND-MAPPING-VALUE, (SETF WEAK-AND-MAPPING-VALUE), - for WEAK-OR-MAPPING: MAKE-WEAK-OR-MAPPING, WEAK-OR-MAPPING-P, WEAK-OR-MAPPING-PAIR, WEAK-OR-MAPPING-VALUE, (SETF WEAK-OR-MAPPING-VALUE), - for WEAK-ALIST: MAKE-WEAK-ALIST, WEAK-ALIST-P, WEAK-ALIST-TYPE, WEAK-ALIST-CONTENTS, (SETF WEAK-ALIST-CONTENTS), WEAK-ALIST-ASSOC, WEAK-ALIST-RASSOC, WEAK-ALIST-VALUE, (SETF WEAK-ALIST-VALUE). See <http://clisp.cons.org/impnotes.html#weak> for details. * You can create formatting streams of class EXT:FILL-STREAM. See <http://clisp.cons.org/impnotes.html#fill-stream> for details. * SUBTYPEP can determine subtype relationship and type equivalence much better than it could before. * When *PRINT-READABLY* is true, symbols are now printed with package marker and vertical bars. * ANSI CL compliance issues: + Issue <DECLARATION-SCOPE:NO-HOISTING> is implemented: The scope of declarations that do not apply to bindings, such as free SPECIAL, NOTINLINE or OPTIMIZE declarations, includes only the body forms and no longer includes the initforms of the LAMBDA/LET/LET*/MULTIPLE-VALUE-BIND bindings. + Vectors of element type NIL are now strings in all aspects. But the type BASE-STRING does _not_ include vectors of element type NIL. + TYPE-OF now returns STANDARD-CHAR instead of CHARACTER when possible. + The type COMPILED-FUNCTION no longer encompasses generic functions. + TYPE-OF now returns COMPILED-FUNCTION or STANDARD-GENERIC-FUNCTION instead of FUNCTION when possible. + The space character is printed as "#\ " if CUSTOM:*PRINT-SPACE-CHAR-ANSI* is true. + The #<PACKAGE KEYWORD> no longer has the nickname "". The syntax :FOO for keywords still works, but is now special cased in the reader. + Class redefinition with DEFCLASS no longer modifies the previous class if it doesn't have a "proper name". + Class redefinition with DEFCLASS removes accessor methods that have been installed through the previous DEFCLASS definition of the same class. + Generic function redefinition with DEFGENERIC removes methods that have been installed through the previous DEFGENERIC definition of the same function. + The set of qualifiers allowed for methods that are combined with a method combination defined through the short form of DEFINE-METHOD-COMBINATION now includes the name of the method combination instead of the operator. + FIND-METHOD now gives an error if the list of specializers has a wrong length. + ARRAY-TOTAL-SIZE-LIMIT, ARRAY-DIMENSION-LIMIT, ARRAY-RANK-LIMIT are now fixnums. + SHORT-FLOATs whose absolute value is an integer in the range between 10^5 and 10^7 are now printed with full precision. + Operations combining rational and floating-point numbers now return a floating-point result if CUSTOM:*FLOATING-POINT-RATIONAL-CONTAGION-ANSI* is true. When the mathematical result in a situation is rational, a warning is issued if CUSTOM:*WARN-ON-FLOATING-POINT-RATIONAL-CONTAGION* is true. + Class redefinition with DEFCLASS now updates existing instances as specified. + An ABORT restart is now always installed. + UPDATE-INSTANCE-FOR-DIFFERENT-CLASS does the required argument checking. + Passing invalid initialization arguments to MAKE-INSTANCE and similar now generates a PROGRAM-ERROR instead of just an ERROR. + Documentation strings are now attached to class objects, not just to their name. + Arrays with total array size 0 are printed in a lossy way if CUSTOM:*PRINT-EMPTY-ARRAYS-ANSI* is true and *PRINT-READABLY* is false. + Allow () to match NIL in destructuring lambda lists. + Documentation strings at a place where only declarations and forms are allowed now give a warning, not an error. + LAST, BUTLAST and NBUTLAST check their list argument for circularity. + Different LOAD-TIME-VALUE forms that are EQUAL but not EQ are no longer coalesced by COMPILE-FILE. + DEFSETF lambda-lists now support &ENVIRONMENT. + DEFSETF lambda-lists are no longer destructuring lambda-lists. + NAMESTRING no longer accepts an optional second argument. + SETF of VALUES now uses only the first value of each subform. + SPECIAL declarations of variables are now correctly respected inside macro expanders defined through MACROLET within the declaration's scope. + (EXPORT NIL), (UNEXPORT NIL), (IMPORT NIL), (SHADOWING-IMPORT NIL), (SHADOW NIL) are now nops. + An attempt to create a condition from an invalid condition designator now always results in a TYPE-ERROR being signalled. + The reader's errors are now of type READER-ERROR when they should be. + READ-DELIMITED-LIST now returns NIL when *READ-SUPPRESS* is true. + Printing of multidimensional arrays now respects *PRINT-LEVEL*. + As required by 19.2.3, *DEFAULT-PATHNAME-DEFAULTS* is merged into pathnames before accessing the file system. + LOGICAL-PATHNAME now gives an error if the argument string does not contain a host specification. + The PRINT-UNREADABLE macro prints extraneous spaces if CUSTOM:*PRINT-UNREADABLE-ANSI* is true. + In the #n= and #n# reader syntax, the integer n may now be larger than 7 digits. + IN-PACKAGE forms with constant arguments are no longer executed by the compiler if they occur in a non-null lexical environment. + COMPILE-FILE now always returns the TRUENAME of its output file. + GET-SETF-EXPANSION now accepts NIL as the environment argument to mean null lexical environment Thanks to Paul F. Dietz and his ANSI compliance suite, which helped detect some of these deficiencies. Thanks to Yuji Minejima and his ANSI compliance suite, which helped detect some of these deficiencies. * Global error handlers can now be installed and removed using EXT:SET-GLOBAL-HANDLER, EXT:WITHOUT-GLOBAL-HANDLERS, and -on-error command line option. See <http://clisp.cons.org/impnotes.html#global-handler> and <http://clisp.cons.org/clisp.html#opt-on-error> for details. * TRANSLATE-PATHNAME and TRANSLATE-LOGICAL-PATHNAME accept a new keyword argument :ABSOLUTE which makes them convert their return values to absolute pathnames. See <http://clisp.cons.org/impnotes.html#translate-pathname> and <http://clisp.cons.org/impnotes.html#translate-logpath> for details. * New function EXT:ABSOLUTE-PATHNAME. See <http://clisp.cons.org/impnotes.html#absolute-pathname> for details. * New function EXT:ELASTIC-NEWLINE and new FORMAT directive "~.". See <http://clisp.cons.org/impnotes.html#elastic-newline> and <http://clisp.cons.org/impnotes.html#format-dot> for details. Through this function, CLISP no longer produces spurious blank lines when a program uses the convention of printing a #\Newline before each line. * TRACE has a new option :MAX-DEPTH, that is useful to avoid infinite recursions in the tracer. See <http://clisp.cons.org/impnotes.html#trace> for details. * The function LENGTH and a few other sequence functions now signal a TYPE-ERROR when a circular list has been given as argument. * Function UPGRADED-COMPLEX-PART-TYPE is now as precise as possible. See <http://clisp.cons.org/impnotes.html#ucpt> for details. * In non-interactive batch mode, *ERROR-OUTPUT* now uses the system's standard error stream, instead of the standard output stream. * The macros MUFFLE-CERRORS, APPEASE-CERRORS and EXIT-ON-ERROR now treat CONTINUE restarts which require interactive user intervention like other restarts. Only non-interactive CONTINUE restarts are silently invoked. * LOAD :OBSOLETE-ACTION can now also be :COMPILE to automatically recompile the obsolete *.fas file. LOAD can now ignore erroneous forms using SKIP and STOP restarts. See <http://clisp.cons.org/impnotes.html#loadfile> for details. * References from within macros defined through MACROLET to variables or functions defined in the lexical environment outside the MACROLET form now signal an error. Previously, this resulted in undefined behavior. * The FFI recognizes the c-type declaration (FFI:C-POINTER <c-type>) to handle references without conversion to/from Lisp structures. See <http://clisp.cons.org/impnotes.html#c-pointer> for details. * The FFI variable FFI:*FOREIGN-ENCODING* can now be a multibyte encoding. The warning "*FOREIGN-ENCODING*: reset to ASCII" at startup is gone. * New FFI constructor functions FFI:FOREIGN-VARIABLE and FFI:FOREIGN-FUNCTION, more operators are now exported (FFI:FOREIGN-VALUE, FFI:PARSE-C-TYPE). See <http://clisp.cons.org/impnotes.html#dffi-make-var> and <http://clisp.cons.org/impnotes.html#dffi-make-func> for details. * FFI macro FFI:C-LINES can now be used to fine-tune initialization and finalization. See <http://clisp.cons.org/impnotes.html#c-lines> for details. * New FFI function FFI:CLOSE-FOREIGN-LIBRARY can be used to unload a library. See <http://clisp.cons.org/impnotes.html#dffi-close-lib> for details. * New FFI low-level accessor FFI:MEMORY-AS. See <http://clisp.cons.org/impnotes.html#memory-as> for details. * Foreign functions and variables can now be documented using the :DOCUMENTATION option to FFI:DEF-CALL-OUT and FFI:DEF-C-VAR. * Buffered streams now are suitable for interactive streams. It is no longer necessary to use :BUFFERED NIL to avoid blocking in various situations. * Function EXT:READ-BYTE-SEQUENCE takes a new keyword argument :INTERACTIVE. See <http://clisp.cons.org/impnotes.html#rd-by-seq> for details. * Methods on GRAY:STREAM-READ-BYTE-SEQUENCE and GRAY:STREAM-WRITE-BYTE-SEQUENCE now need to accept a second optional argument. * The possible values of the :WEAK argument of MAKE-HASH-TABLE are changed: Use :KEY-AND-VALUE instead of :EITHER, :KEY-OR-VALUE instead of :BOTH now. * The :LIBRARY option argument to EXT:DEF-CALL-OUT and EXT:DEF-C-VAR is now evaluated (i.e., it can now be a variable) and may take a value of :DEFAULT and :NEXT in addition to being a string as before. See <http://clisp.cons.org/impnotes.html#def-c-var> and <http://clisp.cons.org/impnotes.html#def-call-out> for details. * New user variable CUSTOM:*PRINT-SYMBOL-PACKAGE-PREFIX-SHORTEST* allows using the shortest package (nick)name as the symbol prefix. See <http://clisp.cons.org/impnotes.html#pr-sym-pack-prefix> for details. * The user commands can now be extended using CUSTOM:*USER-COMMANDS*. See <http://clisp.cons.org/impnotes.html#user-commands> for details. * Initialization and finalization of the CLISP process can now be augmented with CUSTOM:*INIT-HOOKS* and CUSTOM:*FINI-HOOKS*. See <http://clisp.cons.org/impnotes.html#init-hooks> and <http://clisp.cons.org/impnotes.html#fini-hooks> for details. * SET functions (like UNION et al) are now much faster on large lists. * The second, optional argument of EXT:SPECIAL-VARIABLE-P can no longer be T; please use (THE-ENVIRONMENT) instead. * New function EXT:FEATUREP - the run-time version of read-time #+/#-. See <http://clisp.cons.org/impnotes.html#featurep> for details. * Bug fixes: + The interpreter no longer executes the body of (EVAL-WHEN (COMPILE) ...) forms. + Fixes to internationalized error messages. + When an interpreted INITIALIZE-INSTANCE method uses CALL-NEXT-METHOD with a modified argument list, MAKE-INSTANCE could in some cases initialize the new object three times instead of just once. + Fixed a compiler bug that could lead to incorrect code when a LAMBDA with SPECIAL-declared optional variables was compiled inline and the initforms of the optional variables depended on the values of the previous optional variables. + Passing a package as second argument of RENAME-PACKAGE led to an unjustified error. + Passing a displaced vector as argument to REVERSE could lead to an unjustified error. + FRESH-LINE did not work in some situations. + Fixed ATANH on complex numbers. + The macros EXT:LETF and EXT:LETF* now work correctly on symbol-macros. + Fixed a spurious crash of MULTIPLE-VALUE-SETQ in interpreted code. + Fixed a crash of (COPY-READTABLE NIL some-readtable). + Fixed a crash when using a hash-table as hash-table key. + Fixed a crash triggered by the READ-BYTE function on streams with element type ([UN]SIGNED-BYTE n), 24 < n < 32, on big-endian platforms. + Fixed a crash that occurred on glibc platforms when writing Unicode characters in the range #\U000E0000..#\U000E007F on a stream with an encoding other than UTF-8. + An invalid bignum could be returned by GET-INTERNAL-RUN-TIME on 64-bit platforms. + Third party code walkers can now handle HANDLER-BIND et al. * Woe32 distribution now comes with a binary driver clisp.exe. Do not copy it anywhere - create a shortcut to it instead! Use install.bat to automate shortcut creation. Modules ------- * New module matlab interfaces to <http://www.mathworks.com/products/matlab/> and allows complicated matrix computations. See <http://clisp.cons.org/impnotes.html#matlab> for details. * New module rawsock offers low-level socket access. Thanks to Fred and Don Cohens. See <http://clisp.cons.org/impnotes.html#rawsock> for details. * New module zlib interfaces to <http://www.zlib.org> and allows compression and uncompression of vectors. See <http://clisp.cons.org/impnotes.html#zlib> for details. * New module i18n now contains the GNU gettext interface as well as other functionality for Lisp program internationalization. See <http://clisp.cons.org/impnotes.html#i18n-mod> for details. * New module PARI interfaces to <http://pari.math.u-bordeaux.fr/>. See <http://clisp.cons.org/impnotes.html#pari> for details. * Module syscalls is significantly expanded. See <http://clisp.cons.org/impnotes.html#syscalls> for details. * Module berkeley-db is vastly expanded. See <http://clisp.cons.org/impnotes.html#berkeley-db> for details. Added support for Berkeley DB 4.3. * Modules now have an exit function. See <http://clisp.cons.org/impnotes.html#modexit> for details. Portability ----------- * Heaps and memory images larger than 4 GB are now supported on 64-bit platforms. * Support files larger than 2 GB or 4 GB also on Windows. * Weak pointers now also work on platforms without mmap(). * Weak hash tables now also work on platforms without mmap(). * Dynamic modules now work on woe32 too. * On most 64-bit platforms, fixnums are now 49 bits wide (including the sign bit), instead of 33 bits wide.
2006-03-04Point MAINTAINER to pkgsrc-users@NetBSD.org in the case where nojlam1-2/+2
developer is officially maintaining the package. The rationale for changing this from "tech-pkg" to "pkgsrc-users" is that it implies that any user can try to maintain the package (by submitting patches to the mailing list). Since the folks most likely to care about the package are the folks that want to use it or are already using it, this would leverage the energy of users who aren't developers.
2005-12-30Fix errno.joerg2-1/+14
2005-12-05Fixed pkglint warnings. The warnings are mostly quoting issues, forrillig1-2/+2
example MAKE_ENV+=FOO=${BAR} is changed to MAKE_ENV+=FOO=${BAR:Q}. Some other changes are outlined in http://mail-index.netbsd.org/tech-pkg/2005/12/02/0034.html
2005-09-02Replaced the DESCR with contents from the SUMMARY file of the distribution,rillig1-26/+13
which is intended for exactly that kind of files. Fixes PR 31121.
2005-08-31Don't do tricks to add modules to the Makefile; there are command linedrochner1-7/+5
options to do it. From PR misc/31094 by Sam Steingold, as far as applicable to 2.33.2.
2005-08-03Peter Schuller in PR 30890:wiz3-5/+15
clisp is not built with any extension modules; including the POSIX/SYSCALLS/OS module which is going to be needed for almost any "real" work with clisp. Enable some more modules and bump PKGREVISION. Shorten DESCR a bit while here.
2005-06-17Fix inappropriate uses of ${LOCALBASE} or ${X11PREFIX} instead ofjlam1-2/+2
${PREFIX}.
2005-05-02update to 2.33.2drochner3-16/+7
changes: -bugfixes -minor portability fixes
2005-04-11Remove USE_BUILDLINK3 and NO_BUILDLINK; these are no longer used.tv1-2/+1
2005-04-05Add other 64bit platforms to NOT_FOR_PLATFORM too; clisp is not 64bit ready.wiz1-2/+2
Suggested by martin.
2005-04-05mjl is behind the times: use tech-pkg as default maintainer, not packages.wiz1-2/+2
2005-04-03Drop me as maintainer, haven't touched it for several years.mjl1-2/+2
2005-02-24Add RMD160 digestsagc1-1/+2
2004-10-03Libtool fix for PR pkg/26633, and other issues. Update libtool to 1.5.10tv1-1/+2
in the process. (More information on tech-pkg.) Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and installing .la files. Bump PKGREVISION (only) of all packages depending directly on the above via a buildlink3 include.
2004-07-28Include libiconv's buildlink3.mk file, since gettext doesn't include it forsalo1-1/+2
us automagically anymore. Fixes compilation on 1.6-ish systems, should fix PR pkg/26460 by <bad>.
2004-05-18Enable pkgviews installation.uebayasi1-1/+3
2004-05-02Convert to buildlink3.snj1-4/+4
2004-03-29Update to 2.33perry15-266/+49
2004-02-14LIBTOOL_OVERRIDE and SHLIBTOOL_OVERRIDE are now lists of shell globsjlam1-8/+1
relative to ${WRKSRC}. Remove redundant LIBTOOL_OVERRIDE settings that are automatically handled by the default setting in bsd.pkg.mk.
2004-01-20Move WRKSRC definition away from the first paragraph in a Makefile.agc1-2/+2
2003-08-18Tweak the getrusage test to a much larger loop value as my machine was fastjmc3-1/+29
enough in the testing for instance that it never got usage on the process.
2003-07-17s/netbsd.org/NetBSD.org/grant1-2/+2
2003-07-13upgrade to 2.30dillo12-89/+145
does no longer include (copies of) libintl and libiconv numerous enhancements and bug fixes, see included NEWS file
2003-07-13PKGREVISION bump for libiconv update.wiz1-2/+2
2003-03-29Place WRKSRC where it belongs, to make pkglint happy; ok'ed by wiz.jmmv1-2/+2
2002-12-01Forgot share/locale -> ${PKGLOCALEDIR}/locale in previous commit.salo1-11/+11
2002-12-01USE_PKGLOCALEDIR, cp -> ${CP}, PKGVERSION -> PKGREVISION.salo1-5/+6
2002-10-25buildlink1 -> buildlink2.wiz1-3/+3
2002-03-14Port to powerpc:jmc12-2/+390
Provide a trampoline implementation that doesn't presume r11 is free (it's not in dynamically linked programs and the ELF ABI says as much but somehow linux managed to avoid this it seems). Use r13 for the time being since while gcc will allocate it, it's the last "local" one allocated so none of the clisp code hits that (nothing needed 17+ local registers in use ever). Update the vacall implementation to match the trampoline calls but otherwise for any assembly use the linux code. Make these changes specific to netbsd, update the test cases so everything works. This now passes all the clisp tests when done/installed.
2002-02-21Update CLISP to 2.27, based on PR 15224 by Shell Hung, libtool-overriddendillo6-207/+87
and buildlinked by me. Changes: Now distributed under the GPL. All .fas files generated by previous CLISP versions are invalid and must be recompiled. Hostname resolution is now optional in EXT:SOCKET-STREAM-PEER and EXT:SOCKET-STREAM-LOCAL. EXT:SOCKET-STATUS now accepts SOCKET-SERVERs too, and the direction of the checks can be specified. Added install.bat for win32 installation. Fixed handling of circular structs and pointers to functions in the FFI. Fixed binary I/O for streams with element type longer than one byte, but not a whole number of bytes.
2002-01-30Unlimit stacksize during build, per discussion on port-sparc.agc1-1/+2
2001-12-05s/root/${ROOT_USER}/g, now that the definition appears in theagc1-2/+2
defs.${OPSYS}.mk files.
2001-11-29Get rid of manually adding "nbX" to PKGNAME when a pkg was changed inhubertf1-2/+3
pkgsrc. Instead, a new variable PKGREVISION is invented that can get bumped independent of DISTNAME and PKGNAME. Example #1: DISTNAME= foo-X.Y PKGREVISION= Z => PKGNAME= foo-X.YnbZ Example #2: DISTNAME= barthing-X.Y PKGNAME= bar-X.Y PKGREVISION= Z => PKGNAME= bar=X.YnbZ (!) On subsequent changes, only PKGREVISION needs to be bumped, no more risk of getting DISTNAME changed accidentally.
2001-11-01Move pkg/ files into package's toplevel directoryzuntum2-1/+1
2001-04-19add distfile sizesagc1-1/+3