ViewVC logotype

Log of /meta-cvs/F-258A1D35AE34AADD34D34F5A328405CC.lisp

Parent Directory Parent Directory | Revision Log Revision Log

Links to HEAD: (view) (annotate)
Links to asdf-import-branch~branch-point: (view) (annotate)
Sticky Tag:

Revision 1.18 - (view) (annotate) - [select for diffs]
Tue Nov 28 02:43:15 2006 UTC (7 years, 4 months ago) by kaz
Branch: MAIN
CVS Tags: asdf-import-branch~branch-point, asdf-import-branch~merged-to-HEAD-0, mcvs-1-1-98
Branch point for: asdf-import-branch
Changes since 1.17: +4 -1 lines
Diff to previous 1.17
* code/clisp-ffi.lisp (readlink): No need to coerce result of
readlink-ll to string type.
(getcwd): Add comment.

Revision 1.17 - (view) (annotate) - [select for diffs]
Tue Nov 28 02:30:40 2006 UTC (7 years, 4 months ago) by kaz
Branch: MAIN
Changes since 1.16: +136 -55 lines
Diff to previous 1.16
Ported to Cygwin.

* code/clisp-ffi.lisp (eval-when): Rename :linux-libc6 feature to
just linux. Only push it onto *features* if :cygwin isn't there.
Our platform support is restricted to Linux and Cygwin for the time
(def-libc-call-out): Change macro to handle both Cygwin and Linux.
The only difference is the library.
(errno-location): Cygwin variant uses __errno function rather than
__errno_location. Otherwise it works the same as Linux.
(edeadlk, enametoolong, enolck, enosys, enotempty,
eloop, ewouldblock): Remove these error constants, since we don't
use them anyway and those that exist on Cygwin have different values.
(struct dirent): Define Cygwin variant of structure.
(readdir): Cygwin variation added.
(struct stat): Define Cygwin variant of structure. Small change in
Linux variant.
(stat, lstat, fstat): Cygwin versions defined. These go to _*64
(sighup, sigint, sigquit, sigill, sigtrap, sigabrt, sigemt,
sigfpe, sigkill, sigbus, sigsegv, sigsys, sigpipe, sigalrm,
sigterm, sigurg, sigstop, sigtstp, sigcont, sigchld, sigcld,
sigttin, sigttou, sigio, sigpoll, sigxcpu, sigxfsz, sigvtalrm,
sigprof, sigwinch, siglost, sigusr1, sigusr2): Define for Cygwin.
(getcwd-ll): Not specific to Linux, read-time conditional removed.

Revision 1.16 - (view) (annotate) - [select for diffs]
Mon Nov 27 02:18:20 2006 UTC (7 years, 4 months ago) by kaz
Branch: MAIN
Changes since 1.15: +10 -2 lines
Diff to previous 1.15
Bugfix and enhancmenet in new CLISP FFI module.

* code/clisp-ffi.lisp (pipe): New call-out function added.
(spawn): Fix reversed result comparison.
(defpackage): Export some new symbols.

Revision 1.15 - (view) (annotate) - [select for diffs]
Fri Nov 24 05:04:27 2006 UTC (7 years, 4 months ago) by kaz
Branch: MAIN
Changes since 1.14: +1 -8 lines
Diff to previous 1.14
Get rid of the ffi-pointer-null stuff, since c-pointer foreign types
are automatically converted to null now.

* code/clisp-ffi.lisp (null-pointer-p): Function removed.

* code/clisp-unix.lisp (pointer-null, null-to-nil, when-not-null):
macros removed.
(opendir, closedir): Revert to normal Lisp null checks.

Revision 1.14 - (view) (annotate) - [select for diffs]
Fri Nov 24 04:08:24 2006 UTC (7 years, 4 months ago) by kaz
Branch: MAIN
Changes since 1.13: +261 -95 lines
Diff to previous 1.13
Rewrote the CLISP bindings. The CLISP FFI is used to directly
access the glibc shared library on Linux. This completely eliminates
the need to create a custom linking set. Meta-CVS can now be built
without any C development tools. The downside is that the the FFI
definitions are not portable, since they depend on the glibc ABI.
Support for other C libraries has to be hacked in the clisp-ffi.lisp
module now. The main() hack is gone now too.

* code/unix-bindings/link.sh: Removed.
* code/unix-bindings/Makefile: Likewise.
* code/unix-bindings/wrap.c: Likewise.

* code/unix-bindings/unix.lisp: Renamed to
code/unix-bindings/clisp-ffi.lisp. Contains revamped FFI definitions
targetting Linux glibc.

* code/install.sh: Substantially simplified. No longer builds a CLISP
linking set. No longer builds the mcvs-upgrade tool, which is not
useful any longer. Error tests eliminated with use of ``set -e''.

* code/mcvs.lisp: Updated to load everything properly.

Revision 1.13 - (view) (annotate) - [select for diffs]
Sat Dec 11 07:58:05 2004 UTC (9 years, 4 months ago) by kaz
Branch: MAIN
Changes since 1.12: +1 -10 lines
Diff to previous 1.12
Get rid of CLISP 2.27 support.

* code/unix-bindings/unix.lisp (null-pointer-p): Function removed.

* code/clisp-unix.lisp: The :clisp-old symbol no longer conditionally
pushed onto *features*
(pointer-null): Just version of the macro present; no more
read-time switch.

Revision 1.12 - (view) (annotate) - [select for diffs]
Mon Jul 26 05:35:49 2004 UTC (9 years, 8 months ago) by kaz
Branch: MAIN
Changes since 1.11: +10 -8 lines
Diff to previous 1.11
Merging from mcvs-1-0-branch.

* code/unix-bindings/unix.lisp: Get rid of bogus version check
which assumes that the version can be read as a floating point
number! Rather than rely on the version, check for the specific

Revision 1.11 - (view) (annotate) - [select for diffs]
Fri Jan 9 05:18:14 2004 UTC (10 years, 3 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-1-1-0
Changes since 1.10: +9 -0 lines
Diff to previous 1.10
Merging from mcvs-1-0-branch.

Revision 1.10 - (view) (annotate) - [select for diffs]
Wed Apr 23 05:39:27 2003 UTC (10 years, 11 months ago) by kaz
Branch: MAIN
Changes since 1.9: +10 -1 lines
Diff to previous 1.9
Merging from mcvs-1-0-branch.

Improved error handling.  Use of tty for user interaction, plus
new global option for selecting non-interactive bail behavior.

* code/mcvs-main.lisp (*global-options*): add --error-bail option.
(*usage*): Describe new option.
(mcvs-execute): Dynamically bind *interactive-error-io* variable
to a stream formed by opening the controlling tty.
Send error message to *error-output* rather than *standard-output*.

* code/unix-bindings/unix.lisp (unix-funcs:ctermid): New function,
FFI interface to mcvs_ctermid.

* code/unix-bindings/wrap.c (mcvs_ctermid): New function.

* code/chatter.lisp (chatter): Chatter now goes to *error-output*
rather than *standard-output*.

* code/error.lisp (*interactive-error-io*): New special variable,
holds stream open to controlling tty.
(mcvs-terminate): New function.
(mcvs-error-handler): Use *interactive-error-io* to print menu
and obtain user input. Support the :bail value of
*mcvs-error-treatment* Plus some cosmetic changes.

* code/options.lisp (filter-mcvs-options): Support --error-bail option.

* code/filt.lisp (mcvs-filt-loop): Bugfix, (read-line t ...)
should be (read-line *standard-input* ...) because t stands
for *terminal-io* rather than *standard-io*, unlike in the
format function!

* code/rcs-utils.lisp (rcs-read-token): Read from *standard-input*
rather than *terminal-io*.

Revision 1.9 - (view) (annotate) - [select for diffs]
Fri Feb 21 06:48:43 2003 UTC (11 years, 1 month ago) by kaz
Branch: MAIN
Changes since 1.8: +4 -1 lines
Diff to previous 1.8
Merging from mcvs-1-0-branch.

Fix remaining occurences of SIG_IGN action for SIGCHLD being
passed to child processes.

* code/unix-bindings/unix.lisp (unix-funcs:default-sigchld): New call
out function.

* code/clisp-unix.lisp (with-input-from-program,
with-output-to-program): Call the new default-sigchild function
to set SIGCHILD signal handler to SIG_DFL just before creating
the pipe.

* code/unix-bindings/wrap.c (mcvs_default_sigchld): New function.

Revision 1.8 - (view) (annotate) - [select for diffs]
Thu Jan 16 05:07:21 2003 UTC (11 years, 3 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-1-0-3
Changes since 1.7: +10 -10 lines
Diff to previous 1.7
Merging from mcvs-1-0-branch.

* code/unix-bindings/impl.c: File renamed to wrap.c.
(impl_null_pointer_p, impl_get_errno, impl_set_errno, impl_readdir,
impl_readlink, impl_stat, impl_lstat, impl_fstat, impl_getcwd,
impl_spawn): Prefix changed from ``impl_'' to ``mcvs_''.

* code/unix-bindings/link.sh, code/unix-bindings/Makefile,
code/unix-bindings/unix.lisp: Updated accordingly.

Revision 1.7 - (view) (annotate) - [select for diffs]
Tue Dec 3 07:23:03 2002 UTC (11 years, 4 months ago) by kaz
Branch: MAIN
Changes since 1.6: +18 -2 lines
Diff to previous 1.6
Merging from mcvs-1-0-branch.

Discontinuing use of CLISP's ext:run-program function in favor
of a new workalike which doesn't rely on the shell interpreter.

* code/unix-bindings/unix.lisp (unix-funcs:spawn): New C call out
function (unix-funcs:run-program): New function, implemented using

* code/unix-bindings/impl.c (impl_spawn): New function; wraps
up fork, execvp and waitpid.

* code/clisp-unix.lisp: Switch from ext:run-program to

Revision 1.6 - (view) (annotate) - [select for diffs]
Wed Oct 30 09:36:45 2002 UTC (11 years, 5 months ago) by kaz
Branch: MAIN
Changes since 1.5: +30 -20 lines
Diff to previous 1.5
Merging from mcvs-1-0-branch.

* code/unix-bindings/unix.lisp: Rewrote defpackage to take only
selected symbols from CLISP's FFI package rather using the whole
thing. FFI, and the packages it uses, are moving targets.
The symbol def-c-call-out is interned in unix-funcs.
(unix-funcs:def-c-call-out): New internal macro. CLISP says that
ffi:def-c-call-out is obsolescent.

* code/unix-bindings/Makefile: The ``clean'' target removes
unix.lib, not only unix.fas.

Revision 1.5 - (view) (annotate) - [select for diffs]
Fri Sep 6 02:17:27 2002 UTC (11 years, 7 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-24, mcvs-0-95, mcvs-0-96, mcvs-0-97, mcvs-0-98, mcvs-1-0-branch~branch-point
Branch point for: mcvs-1-0-branch
Changes since 1.4: +8 -2 lines
Diff to previous 1.4
Low level support for versioning executable bit.

* code/unix-bindings/unix.lisp (unix-funcs:chmod): New callout

* code/clisp-unix.lisp (executable-p, make-executable,
make-non-executable): New generic functions.
(executable-p (file-info), make-executable (file-info),
make-executable (string), make-non-executable (file-info),
make-non-executable (string)): New methods.

* code/add.lisp (mcvs-add): Record whether new file is
executable or not, by setting executable slot in mapping-entry.

* code/create.lisp (mcvs-create): Likewise.

* code/sync.lisp (synchronize-files): New parameter,
should-be-executable, tells function which way to set
permissions after synchronizing files.

* code/mapping.lisp (mapping-entry): New slot, executable.
(mapping-entry-parse-attributes): New function, parses
new optional property list from :FILE entries in a mapping.
(mapping-convert-in): Parse property list that may be present in fourth
list element of a :FILE entry.
(mapping-convert-out): Write out executable flag as
:EXEC property, if true.
(mapping-synchronize): Pass executable flag down to synchronize-files.

Revision 1.4 - (view) (annotate) - [select for diffs]
Sat Aug 31 20:53:13 2002 UTC (11 years, 7 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-22, mcvs-0-23
Changes since 1.3: +8 -3 lines
Diff to previous 1.3
Merging symlink-branch to main trunk.

Revision 1.3 - (view) (annotate) - [select for diffs]
Mon Aug 5 19:19:58 2002 UTC (11 years, 8 months ago) by kaz
Branch: MAIN
CVS Tags: symlink-branch~branch-point
Branch point for: symlink-branch
Changes since 1.2: +9 -1 lines
Diff to previous 1.2
Use getcwd to to implement mcvs-locate.

* code/unix-bindings/unix.lisp (getcwd): New call out,
invokes impl_getcwd.

* code/unix-bindings/impl.c (impl_getcwd): New function,
use getcwd() to obtain current working directory, resizing dynamic
buffer if necessary to get the entire path.

* code/clisp-unix.lisp (getcwd): New wrapper function.

* code/dirwalk.lisp (go-up): Function removed.

* code/mapping.lisp (mcvs-locate): Rewritten to obtain
path using getcwd, then try looking for MCVS directory
in successively shorter prefixes of that path.

Revision 1.2 - (view) (annotate) - [select for diffs]
Sun Aug 4 18:15:18 2002 UTC (11 years, 8 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-0-21
Changes since 1.1: +25 -16 lines
Diff to previous 1.1
Working back support for CLISP 2.27.

* code/install.sh: Bogus *null-pointer* hack is no longer added
to the generated mcvs script, since we have our own FFI functions for
doing the test.

* code/unix-bindings/unix.lisp (unix-funcs:null-pointer-p): New
function, tests a C pointer for null, returns T or NIL.
* code/unix-bindings/impl.c (impl_null_pointer_p): New function,
C implementation of unix-funcs:null-pointer-p.

* code/clisp-unix.lisp (pointer-null): New macro, uses
ffi:foreign-address-null under CLISP 2.28 or greater, or
unix-funcs:null-pointer-p, under an older CLISP.

Revision 1.1 - (view) (annotate) - [select for diffs]
Sun Aug 4 15:49:29 2002 UTC (11 years, 8 months ago) by kaz
Branch: MAIN
Retargetting CVS with new system call bindings that are not GNU/Linux

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

  ViewVC Help
Powered by ViewVC 1.1.5