Mercurial > hg > xemacs-beta
annotate lib-src/rcs-checkin @ 1330:4542b72c005e
[xemacs-hg @ 2003-03-01 07:25:26 by ben]
build patch
Makefile.in.in: Move src deletions to src/Makefile.in.in.
dump-paths.el, dumped-lisp.el: Delete. Combine stuff into setup-paths.el.
find-paths.el: Removed.
Make this file contain generic routines only. Move stuff to
compute Emacs roots to setup-paths.el.
startup.el: Removed.
Move these variables into setup-paths.el.
setup-paths.el, startup.el: Removed.
Combine all high-level code for computing the paths into
setup-paths.el. Create new function startup-find-load-path to
encapsulate all logic for computing `load-path'. Eliminate
invocation-directory and invocation-name parameters since
there is no point (false generality) -- the code references
other globals, which cannot be specified. Eliminate some code
duplicated between setup-paths.el and startup.el. Clean up
the debug-paths code and output load-path in addition.
Add logic to paths-emacs-root-p to support separated source
and build trees.
loadup.el, make-docfile.el, update-elc-2.el, update-elc.el: Rewrite to allow for separated source and build trees, as may occur
in MS Windows.
NOTE TO BUILD HACKERS:
loadup.el, make-docfile.el, update-elc.el and update-elc-2.el made two
assumptions that are no longer correct:
(1) The source and build trees are in the same place.
(2) They can make assumptions about where `.' is.
These files now compute the locations of the source and build
roots at the top of the file. *ALL* constant file names or path
snippets must now be made absolute using expand-file-name and one
of these roots.
dumped-lisp.el, packages.el: Removed.
Remove some unused lists of Lisp files. packages-hardcoded-lisp
(empty, in any case) moved to dumped-lisp.el.
startup.el: When a compiled init file is out-of-date wrt the uncompiled
version, load the uncompiled version and issue a nasty warning.
update-elc-2.el: Force touching of auto-autoloads files when REBUILD_AUTOLOADS
was set.
update-elc.el: Fix code that checks whether dumping is necessary to check against
xemacs.dmp, not xemacs.exe, when Unix and pdump.
lwlib-Xm.c: Fix compile warning.
README, config.inc.samp, xemacs.mak: -- Major reorganization and cleanup.
-- Add support for separated build tree and source tree.
-- Delete all support for X Windows building, since it's
totally bit-rotten and will never be fixed up. Instruct
people to use Cygwin if they want such support.
make-build-dir: New script to create a skeleton build tree for use with
separated build and source tree compilation.
m/acorn.h, m/alliant-2800.h, m/alliant.h, m/altos.h, m/amdahl.h, m/arm.h, m/att3b.h, m/aviion.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h, m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/ews4800r.h, m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h, m/intel386.h, m/iris4d.h, m/iris5d.h, m/iris6d.h, m/irist.h, m/m68k.h, m/masscomp.h, m/mg1.h, m/mips-nec.h, m/mips-siemens.h, m/mips.h, m/nh3000.h, m/nh4000.h, m/ns32000.h, m/plexus.h, m/powerpc.h, m/sequent-ptx.h, m/sequent.h, m/sgi-challenge.h, m/stride.h, m/tad68k.h, m/targon31.h, m/tekxd88.h, m/template.h, m/tower32.h, m/tower32v3.h, m/ustation.h, m/wicat.h, m/xps100.h, data.c, doc.c, editfns.c, emacs.c, lrecord.h, ntheap.c, process-unix.c, sysdep.c, unexec.c: Delete all support for bit-rotten CANNOT_DUMP. Just use pdump.
Makefile.in.in: Lots o' cleanup. Use names like LISP, SRC instead of
lispdir, srcdir, for consistency with xemacs.mak and the
conventions in the rest of the file. Eliminate use of ${...}
in favor of $(...), to make it easier to move code between
this file and xemacs.mak. Fix dependency handling wrt
NEEDTODUMP to eliminate problems some people (e.g. Vin) have
been seeing with non-GNU makes. Write a long section about
the subtle but oh-so-important differences in dependency
processing between nmake, make, and GNU make. Add
unicode-encapsulate target, from xemacs.mak.
chartab.c, lrecord.h: Fix crash due to attempt to free objects across dump/undump.
author | ben |
---|---|
date | Sat, 01 Mar 2003 07:25:56 +0000 |
parents | 3ecd8885ac67 |
children |
rev | line source |
---|---|
428 | 1 #! /bin/sh |
2 | |
3 # This script accepts any number of file arguments and checks them into RCS. | |
4 # | |
5 # Arguments which are detectably either RCS masters (with names ending in ,v) | |
6 # or Emacs version files (with names of the form foo.~<number>~) are ignored. | |
7 # For each file foo, the script looks for Emacs version files related to it. | |
8 # These files are checked in as deltas, oldest first, so that the contents of | |
9 # the file itself becomes the latest revision in the master. | |
10 # | |
11 # The first line of each file is used as its description text. The file itself | |
12 # is not deleted, as under VC with vc-keep-workfiles at its default of t, but | |
13 # all the version files are. | |
14 # | |
15 # If an argument file is already version-controlled under RCS, any version | |
16 # files are added to the list of deltas and deleted, and then the workfile | |
17 # is checked in again as the latest version. This is probably not quite | |
18 # what was wanted, and is the main reason VC doesn't simply call this to | |
19 # do checkins. | |
20 # | |
21 # This script is intended to be used to convert files with an old-Emacs-style | |
22 # version history for use with VC (the Emacs 19 version-control interface), | |
23 # which likes to use RCS as its back end. It was written by Paul Eggert | |
24 # and revised/documented for use with VC by Eric S. Raymond, Mar 19 1993. | |
25 | |
26 case $# in | |
27 0) | |
28 echo "rcs-checkin: usage: rcs-checkin file ..." | |
29 echo "rcs-checkin: function: checks file.~*~ and file into a new RCS file" | |
30 echo "rcs-checkin: function: uses the file's first line for the description" | |
31 esac | |
32 | |
33 # expr pattern to extract owner from ls -l output | |
34 ls_owner_pattern='[^ ][^ ]* *[^ ][^ ]* *\([^ ][^ ]*\)' | |
35 | |
36 for file | |
37 do | |
38 # Make it easier to say `rcs-checkin *' | |
39 # by ignoring file names that already contain `~', or end in `,v'. | |
40 case $file in | |
41 *~* | *,v) continue | |
42 esac | |
43 # Ignore non-files too. | |
44 test -f "$file" || continue | |
45 | |
46 # Check that file is readable. | |
47 test -r "$file" || exit | |
48 | |
49 # If the RCS file does not already exist, | |
50 # initialize it with a description from $file's first line. | |
51 rlog -R "$file" >/dev/null 2>&1 || | |
52 rcs -i -q -t-"`sed 1q $file`" "$file" || exit | |
53 | |
54 # Get list of old files. | |
55 oldfiles=` | |
56 ls $file.~[0-9]*~ 2>/dev/null | | |
57 sort -t~ -n +1 | |
58 ` | |
59 | |
60 # Check that they are properly sorted by date. | |
61 case $oldfiles in | |
62 ?*) | |
63 oldfiles_by_date=`ls -rt $file $oldfiles` | |
64 test " $oldfiles | |
65 $file" = " $oldfiles_by_date" || { | |
66 echo >&2 "rcs-checkin: skipping $file, because its mod times are out of order. | |
67 | |
68 Sorted by mod time: | |
69 $oldfiles_by_date | |
70 | |
71 Sorted by name: | |
72 $oldfiles | |
73 $file" | |
74 continue | |
75 } | |
76 esac | |
77 | |
78 echo >&2 rcs-checkin: checking in: $oldfiles $file | |
79 | |
80 # Save $file as $file.~-~ temporarily. | |
81 mv "$file" "$file.~-~" || exit | |
82 | |
83 # Rename each old file to $file, and check it in. | |
84 for oldfile in $oldfiles | |
85 do | |
86 mv "$oldfile" "$file" || exit | |
87 ls_l=`ls -l "$file"` || exit | |
88 owner=-w`expr " $ls_l" : " $ls_owner_pattern"` || owner= | |
89 echo "Formerly ${oldfile}" | ci -d -l -q $owner "$file" || exit | |
90 done | |
91 | |
92 # Bring $file back from $file.~-~, and check it in. | |
93 mv "$file.~-~" "$file" || exit | |
94 ls_l=`ls -l "$file"` || exit | |
95 owner=-w`expr " $ls_l" : " $ls_owner_pattern"` || owner= | |
96 ci -d -q -u $owner -m"entered into RCS" "$file" || exit | |
97 done | |
98 |