/[meta-cvs]/meta-cvs/F-83F0E6A90D5BBCDFB58440970E850925.c
ViewVC logotype

Log of /meta-cvs/F-83F0E6A90D5BBCDFB58440970E850925.c

Parent Directory Parent Directory | Revision Log Revision Log


Links to HEAD: (view) (annotate)
Sticky Tag:

Revision 1.16 - (view) (annotate) - [select for diffs]
Fri Jun 24 07:22:53 2005 UTC (8 years, 9 months ago) by kaz
Branch: MAIN
CVS Tags: HEAD, 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.15: +35 -0 lines
Diff to previous 1.15 , to selected 1.3
Add hack to get our own main() function which calls the one
inside CLISP.

* code/unix-bindings/link.sh: Add objcopy hack.

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

Revision 1.15 - (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.14: +0 -9 lines
Diff to previous 1.14 , to selected 1.3
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.14 - (view) (annotate) - [select for diffs]
Wed Apr 23 05:39:27 2003 UTC (10 years, 11 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-1-1-0
Changes since 1.13: +12 -0 lines
Diff to previous 1.13 , to selected 1.3
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.4.2.11 - (view) (annotate) - [select for diffs]
Wed Apr 23 05:37:35 2003 UTC (10 years, 11 months ago) by kaz
Branch: mcvs-1-0-branch
CVS Tags: mcvs-1-0-10, mcvs-1-0-11, mcvs-1-0-12, mcvs-1-0-13, mcvs-1-0-7, mcvs-1-0-8, mcvs-1-0-9, mcvs-1-0-branch~merged-to-HEAD-0, mcvs-1-0-branch~merged-to-HEAD-1
Changes since 1.4.2.10: +12 -0 lines
Diff to previous 1.4.2.10 , to branch point 1.4 , to next main 1.16 , to selected 1.3
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.13 - (view) (annotate) - [select for diffs]
Wed Feb 26 03:54:39 2003 UTC (11 years, 1 month ago) by kaz
Branch: MAIN
Changes since 1.12: +4 -2 lines
Diff to previous 1.12 , to selected 1.3
Merging from mcvs-1-0-branch.

* code/unix-bindings/wrap.c (mcvs_spawn): One more waitpid() bug!
The SIGCHLD signal handler was being set in the child process only,
so although we fixed the waitpid() behavior in the CVS child
process, we did not fix it in the Meta-CVS process. The ECHILD
problem was sporadically reproduced by Johannes Grødem on a fast
Athlon machine; it requires CVS to exit before Meta-CVS reaches
the waitpid() call.

Revision 1.4.2.10 - (view) (annotate) - [select for diffs]
Wed Feb 26 03:53:28 2003 UTC (11 years, 1 month ago) by kaz
Branch: mcvs-1-0-branch
CVS Tags: mcvs-1-0-5, mcvs-1-0-6
Changes since 1.4.2.9: +4 -2 lines
Diff to previous 1.4.2.9 , to branch point 1.4 , to selected 1.3
* code/unix-bindings/wrap.c (mcvs_spawn): One more waitpid() bug!
The SIGCHLD signal handler was being set in the child process only,
so although we fixed the waitpid() behavior in the CVS child
process, we did not fix it in the Meta-CVS process. The ECHILD
problem was sporadically reproduced by Johannes Grødem on a fast
Athlon machine; it requires CVS to exit before Meta-CVS reaches
the waitpid() call.

Revision 1.12 - (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.11: +17 -10 lines
Diff to previous 1.11 , to selected 1.3
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.4.2.9 - (view) (annotate) - [select for diffs]
Fri Feb 21 06:23:08 2003 UTC (11 years, 1 month ago) by kaz
Branch: mcvs-1-0-branch
CVS Tags: mcvs-1-0-4
Changes since 1.4.2.8: +0 -1 lines
Diff to previous 1.4.2.8 , to branch point 1.4 , to selected 1.3
Remove debug statement.

Revision 1.4.2.8 - (view) (annotate) - [select for diffs]
Fri Feb 21 06:21:51 2003 UTC (11 years, 1 month ago) by kaz
Branch: mcvs-1-0-branch
Changes since 1.4.2.7: +18 -10 lines
Diff to previous 1.4.2.7 , to branch point 1.4 , to selected 1.3
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.11 - (view) (annotate) - [select for diffs]
Thu Feb 13 06:16:42 2003 UTC (11 years, 2 months ago) by kaz
Branch: MAIN
CVS Tags: mcvs-1-0-3
Changes since 1.10: +7 -0 lines
Diff to previous 1.10 , to selected 1.3
Merging from mcvs-1-0-branch.

* code/unix-bindings/wrap.c (mcvs-spawn): In the child process,
reset the signal handler for SIGCHLD to SIG_DFL before exec-ing
the new image. This is needed because CLISP set it to SIG_IGN,
which causes child reaping problems in spawned programs.
This should fix the ``No child processes'' problem when running
CVS from Meta-CVS.

Revision 1.4.2.7 - (view) (annotate) - [select for diffs]
Thu Feb 13 06:10:16 2003 UTC (11 years, 2 months ago) by kaz
Branch: mcvs-1-0-branch
Changes since 1.4.2.6: +7 -0 lines
Diff to previous 1.4.2.6 , to branch point 1.4 , to selected 1.3
* code/unix-bindings/wrap.c (mcvs-spawn): In the child process,
reset the signal handler for SIGCHLD to SIG_DFL before exec-ing
the new image. This is needed because CLISP set it to SIG_IGN,
which causes child reaping problems in spawned programs.
This should fix the ``No child processes'' problem when running
CVS from Meta-CVS.

Revision 1.10 - (view) (annotate) - [select for diffs]
Sun Feb 2 19:38:12 2003 UTC (11 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.9: +5 -1 lines
Diff to previous 1.9 , to selected 1.3
Merging from mcvs-1-0-branch.

* code/unix-bindings/wrap.c (impl_spawn): Try waitpid again in a loop
while it returns -1, and errno is EINTR.
Reported by Johannes Grødem <johs@copyleft.no>.

Revision 1.4.2.6 - (view) (annotate) - [select for diffs]
Sun Feb 2 03:31:35 2003 UTC (11 years, 2 months ago) by kaz
Branch: mcvs-1-0-branch
CVS Tags: mcvs-1-0-2
Changes since 1.4.2.5: +5 -1 lines
Diff to previous 1.4.2.5 , to branch point 1.4 , to selected 1.3
* code/unix-bindings/wrap.c (impl_spawn): Try waitpid again in a loop
while it returns -1, and errno is EINTR.
Reported by Johannes Grødem <johs@copyleft.no>.

Revision 1.9 - (view) (annotate) - [select for diffs]
Sun Jan 26 00:50:13 2003 UTC (11 years, 2 months ago) by kaz
Branch: MAIN
Changes since 1.8: +2 -0 lines
Diff to previous 1.8 , to selected 1.3
Merging from mcvs-1-0-branch.

* code/unix-bindings/wrap.c (mcvs_getcwd): If getcwd() returns
NULL, it only means that the buffer is too small if errno is also
set to ERANGE. This second condition was not being tested.

* code/clisp-unix.lisp (getcwd-error): New condition.
(initialize-instance (getcwd-error)): New method.
(getcwd): Raise getcwd-error condition if unix-funcs::getcwd
returns NIL.

Revision 1.4.2.5 - (view) (annotate) - [select for diffs]
Sun Jan 26 00:44:10 2003 UTC (11 years, 2 months ago) by kaz
Branch: mcvs-1-0-branch
CVS Tags: mcvs-1-0-1
Changes since 1.4.2.4: +2 -0 lines
Diff to previous 1.4.2.4 , to branch point 1.4 , to selected 1.3
* code/unix-bindings/wrap.c (mcvs_getcwd): If getcwd() returns
NULL, it only means that the buffer is too small if errno is also
set to ERANGE. This second condition was not being tested.

* code/clisp-unix.lisp (getcwd-error): New condition.
(initialize-instance (getcwd-error)): New method.
(getcwd): Raise getcwd-error condition if unix-funcs::getcwd
returns NIL.

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
Changes since 1.7: +14 -14 lines
Diff to previous 1.7 , to selected 1.3
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.4.2.4 - (view) (annotate) - [select for diffs]
Thu Jan 16 05:06:09 2003 UTC (11 years, 3 months ago) by kaz
Branch: mcvs-1-0-branch
Changes since 1.4.2.3: +14 -14 lines
Diff to previous 1.4.2.3 , to branch point 1.4 , to selected 1.3
* 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]
Thu Jan 2 04:02:51 2003 UTC (11 years, 3 months ago) by kaz
Branch: MAIN
Changes since 1.6: +17 -2 lines
Diff to previous 1.6 , to selected 1.3
Merging from mcvs-1-0-branch.

* code/unix-bindings/impl.c (impl_spawn): For Cygwin, re-implemented
this function as a wrapper for the spawnvp function. The combination
of fork + execvp + waitpid does not work because waitpid is broken;
it waits for thep rocess, but then returns -1 and sets errno
to ECHILD.

Revision 1.4.2.3 - (view) (annotate) - [select for diffs]
Thu Jan 2 03:51:10 2003 UTC (11 years, 3 months ago) by kaz
Branch: mcvs-1-0-branch
CVS Tags: mcvs-1-0
Changes since 1.4.2.2: +17 -2 lines
Diff to previous 1.4.2.2 , to branch point 1.4 , to selected 1.3
* code/unix-bindings/impl.c (impl_spawn): For Cygwin, re-implemented
this function as a wrapper for the spawnvp function. The combination
of fork + execvp + waitpid does not work because waitpid is broken;
it waits for thep rocess, but then returns -1 and sets errno
to ECHILD.

Revision 1.6 - (view) (annotate) - [select for diffs]
Tue Dec 3 07:25:00 2002 UTC (11 years, 4 months ago) by kaz
Branch: MAIN
Changes since 1.5: +1 -1 lines
Diff to previous 1.5 , to selected 1.3
Add missing cast.

Revision 1.4.2.2 - (view) (annotate) - [select for diffs]
Tue Dec 3 07:24:42 2002 UTC (11 years, 4 months ago) by kaz
Branch: mcvs-1-0-branch
Changes since 1.4.2.1: +1 -1 lines
Diff to previous 1.4.2.1 , to branch point 1.4 , to selected 1.3
Add missing cast.

Revision 1.5 - (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.4: +30 -0 lines
Diff to previous 1.4 , to selected 1.3
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
spawn.

* 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
unix-funcs:run-program.

Revision 1.4.2.1 - (view) (annotate) - [select for diffs]
Tue Dec 3 07:21:05 2002 UTC (11 years, 4 months ago) by kaz
Branch: mcvs-1-0-branch
Changes since 1.4: +30 -0 lines
Diff to previous 1.4 , to selected 1.3
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
spawn.

* 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
unix-funcs:run-program.

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, mcvs-0-24, mcvs-0-95, mcvs-0-96, mcvs-0-97, mcvs-0-98, mcvs-0-99, mcvs-1-0-branch~branch-point
Branch point for: mcvs-1-0-branch
Changes since 1.3: +37 -0 lines
Diff to previous 1.3
Merging symlink-branch to main trunk.

Revision 1.3.2.1 - (view) (annotate) - [select for diffs]
Sun Aug 25 16:07:05 2002 UTC (11 years, 7 months ago) by kaz
Branch: symlink-branch
CVS Tags: symlink-branch~merged-to-HEAD-0
Changes since 1.3: +37 -0 lines
Diff to previous 1.3 , to next main 1.16
Support for symbolic links added to the mapping module.  The format of
the map file has changed to accomodate this.  The new format of the
list entries is (:keyword "id" "path" ...) where the keyword is either
:file or :symlink (for now, extensible obviously), "id" is a unique
identifier (for regular files, it is their MCVS/F-* name) and "path" is
the sandbox path. Other things can follow; for symlinks, there is a
string representing the symlink target.  Internally, a new data type
called mapping-entry is used; this is a struct. So the functions which
read and write maps now convert between the struct format and the above
format.

* code/unix-bindings/unix.lisp (unix-funcs:readlink): New function.

* code/unix-bindings/impl.c (impl_readlink): New function.

* code/clisp-unix.lisp (readlink-error): New condition.
(initialize-instance readlink-error): New method for
initialize-instance generic function, specialized for readlink-error.
(readlink): New function.

* code/mapping.lisp (mapping-entry): New struct, with slots
file, id, path and target.
(mapping-same-object-p): Renamed to mapping-same-id-p.
(mapping-object-lookup, mapping-moved-p): Unused functions removed.
(mapping-extract-paths, mapping-lookup, mapping-prefix-lookup,
mapping-prefix-matches, mapping-same-path-p, mapping-rename-files,
mapping-removed-files): Functions updated to use the new data
structure.
(mapping-dupe-checks): Rewritten for new data structure, and to
use hashes rather than silly sorting.
(mapping-convert-old-style-in, mapping-convert-in,
mapping-convert-out): New functions.
(mapping-read): Handle new and old style representations,
handle conversion to internal representation.
(mapping-write): Convert to new-style external representation
before writing out.
(mapping-synchronize): Handle symbolic links. If a link is missing,
create it. If it's present but different from what it should be,
erase it and re-create it.
(mapping-update): Use new data structure. Handle symbolic links.

* code/remove.lisp (mcvs-remove): Refer to new function
name, mapping-same-id-p.

Revision 1.3 - (view) (annotate) - [selected]
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: +32 -0 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: +9 -0 lines
Diff to previous 1.1 , to selected 1.3
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:30 2002 UTC (11 years, 8 months ago) by kaz
Branch: MAIN
Diff to selected 1.3
Retargetting CVS with new system call bindings that are not GNU/Linux
specific.

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