/[meta-cvs]/meta-cvs/F-AFC09F145399B1273F4BF98702F5BE8C
ViewVC logotype

Contents of /meta-cvs/F-AFC09F145399B1273F4BF98702F5BE8C

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.6 - (hide annotations)
Sat Jan 26 02:37:53 2002 UTC (12 years, 2 months ago) by kaz
Branch: MAIN
CVS Tags: cvs-options-passthrough
Changes since 1.5: +4 -0 lines
Copyright notices.
1 kaz 1.6 ;;; This source file is part of the MCVS program,
2     ;;; which is distributed under the GNU license.
3     ;;; Copyright 2002 Kaz Kylheku
4    
5 kaz 1.1 (require "system")
6     (require "mapping")
7     (require "chatter")
8     (provide "diff")
9    
10 kaz 1.5 (defun mcvs-diff (cvs-options diff-options files)
11 kaz 1.3 (in-sandbox-root-dir
12     (let (filemap files-to-diff)
13 kaz 1.1 (with-open-file (file *mcvs-map-local* :direction :input)
14     (setf filemap (read file)))
15    
16     (chatter-info "Preparing diff list.~%")
17     (when (null files)
18     (setf files '(".")))
19     (dolist (file files)
20     (can-restart-here ("Continue preparing diff list.")
21 kaz 1.3 (let* ((full-name (sandbox-translate-path file))
22 kaz 1.4 (entries (filemap-prefix-matches filemap full-name)))
23 kaz 1.3 (if (not entries)
24     (error "mcvs-diff: ~a is not known to MCVS." full-name)
25     (setf files-to-diff (nconc files-to-diff entries))))))
26 kaz 1.1
27     (when files-to-diff
28     (chatter-info "Synchronizing.~%")
29     (mapping-synchronize)
30    
31     (current-dir-restore
32     (chdir *mcvs-dir*)
33     (chatter-info "Invoking CVS.~%")
34 kaz 1.4 (execute-program `("cvs" ,@cvs-options "diff" ,@diff-options
35 kaz 1.1 ,@(mapcar #'(lambda (x)
36     (basename (first x)))
37     files-to-diff))))))
38     (values)))
39 kaz 1.4
40     (defun mcvs-diff-wrapper (cvs-options cvs-specific-options mcvs-args)
41     (mcvs-diff cvs-options cvs-specific-options mcvs-args))

  ViewVC Help
Powered by ViewVC 1.1.5