Re: building 2.4.2 (with XFS) fails <- Useful CVS commands for
update checking ...
Juan Casero wrote:
> Shortly after the message anouncing the release of the 2.4.2 code with
> the XFS patches on the CVS server I logged in to the CVS server and
> grabbed a copy. I performed the update as per the syntax below and I
> did get lots of output so something was happening. I admit to being
> something of a novice with CVS (nothing to be ashamed of really) but
> that might suggest there was something to update. My intention here is
> to be helpful though so don't take my comments as being smug wise cracks.
> I was genuiunely interested in helping the person who was having problems
> compiling the kernel.
For future reference, I recommend the following CVS commands for
checking for updates to a CVS repository, without changing the
contents of your current working directory. A good way to remember
these commands is simply by making aliases for them with your
shell's "alias" command. Again, these commands do *NOT* modify your
working directory (hence the use of the "-n" option). The output of
the two commands are discussed below ...
cvs -n -q update -I '! CVS' -r HEAD
cvs -n -q update -r HEAD
The first command will report on every file in the respository,
including files/types normally filtered by CVS (e.g., .bak, .o,
etc...), except the CVS status directories themselves (e.g., ./CVS
in each working directory). The second command applies the CVS
files/types filter list.
The report is a simple output of the status of each file, one file
per line. If the working directory and repository match, no output
is made for that file. If there is a difference, there is a leading
"status letter" before the filename. "status letters" are as
follows:
? File only in working directory
A File only in working directory, to be added to repository
on next commit operation ("cvs add" wo/"cvs commit")
C Conflict between changes in working directory and new
revision in repository (cvs commit will entail issues)
M Changes in working directory, will send new revision to
to repository on next commit. Could also mean that the
newer revision in repository will merge perfectly with
your changes.
P Newer revision in repository, only needs partial file patch
U Newer revision in repository, needs complete file update
For an example, I will use the second command against the source
tarball located in my kernel-2.4.2-xfscvs_feb24.src.rpm:
# cvs -n -q update -r HEAD
? devfsd
? pcmcia-cs-3.1.24
? alsa-driver-0.5.10b
? configs
? .depend
? .hdepend
? .config
? .version
? vmlinux
? System.map
? arch/i386/boot/bbootsect.s
? arch/i386/boot/bbootsect
? arch/i386/boot/bsetup.s
? arch/i386/boot/bsetup
? arch/i386/boot/bzImage
? arch/i386/boot/compressed/bvmlinux
? arch/i386/boot/compressed/bvmlinux.out
? arch/i386/boot/tools/build
[ ^ These are all locally modified files in the build ]
? arch/i386/kernel/.depend
? arch/i386/kernel/.process.o.flags
? arch/i386/kernel/.semaphore.o.flags
? arch/i386/kernel/.signal.o.flags
<... ^ cut a lot of "*.o.flags" and ".depend" files ...>
[ Side note: Sounds like these should be added to
the "cvsignore" file in the repository CVSROOT??? ]
? drivers/net/hamradio/soundmodem/gentbl
? drivers/net/hamradio/soundmodem/sm_tbl_afsk1200.h
? drivers/net/hamradio/soundmodem/sm_tbl_afsk2666.h
? drivers/net/hamradio/soundmodem/sm_tbl_psk4800.h
? drivers/net/hamradio/soundmodem/sm_tbl_hapn4800.h
? drivers/net/hamradio/soundmodem/sm_tbl_fsk9600.h
? drivers/net/hamradio/soundmodem/sm_tbl_afsk2400_8.h
? drivers/net/hamradio/soundmodem/sm_tbl_afsk2400_7.h
<... cut more .o.flags/.depend files ... >
? include/config
? include/linux/modules
? include/linux/autoconf.h
? include/linux/version.h
? include/linux/compile.h
? include/linux/modversions.h
<... cut more .o.flags/.depend files ... >
? scripts/mkdep
? scripts/split-include
RCS file: /cvs/linux-2.4-xfs/linux/Makefile,v
retrieving revision 1.81
retrieving revision 1.82
Merging differences between 1.81 and 1.82 into Makefile
M Makefile
U Rules.make
U Documentation/filesystems/xfs.txt
M arch/i386/defconfig
[ ^ Ahhh, note a couple of merges and updates now ]
U Documentation/kdb/kdb.mm
U arch/i386/kdb/kdbasupport.c
U arch/i386/kernel/msr.c
U arch/s390x/Makefile
U arch/s390x/boot/Makefile
U arch/s390x/kernel/Makefile
U arch/s390x/lib/Makefile
U arch/s390x/mm/Makefile
U arch/s390x/tools/dasdfmt/Makefile
U arch/s390x/tools/silo/Makefile
U drivers/block/ll_rw_blk.c
U drivers/scsi/scsi_merge.c
U fs/buffer.c
U fs/dquot.c
U fs/pagebuf/page_buf.c
U fs/pagebuf/page_buf_io.c
U fs/xfs/Makefile
U fs/xfs/xfs_log.c
U fs/xfs/xfs_log_recover.c
U fs/xfs/xfs_qm.c
U fs/xfs/dmapi/Makefile
U fs/xfs/linux/Makefile
U fs/xfs/linux/xfs_globals.c
U fs/xfs/linux/xfs_globals.h
U fs/xfs/linux/xfs_iops.c
U fs/xfs/linux/xfs_linux.h
U fs/xfs/linux/xfs_lrw.c
U fs/xfs/linux/xfs_lrw.h
U fs/xfs/support/Makefile
U include/asm-alpha/fcntl.h
U include/asm-i386/fcntl.h
U include/asm-ia64/fcntl.h
U include/asm-s390x/a.out.h
U include/asm-sparc/fcntl.h
U include/asm-sparc64/fcntl.h
U include/linux/fs.h
U include/linux/kallsyms.h
U include/linux/kdb.h
U include/linux/mm.h
U include/linux/page_buf.h
U kdb/ChangeLog
U kdb/kdbmain.c
U kdb/modules/kdbm_pg.c
U kernel/kallsyms.c
U kernel/ksyms.c
U mm/page_alloc.c
U mm/vmscan.c
U scripts/mkdep.c
Now with the "U" (as well as "P" if they existed) we see all the
files that would need to be updated in the repository. Again, these
simple aliases go a _long_way_ to looking at the various files
updated before you actually commit yourself to them.
-- TheBS
--
Bryan "TheBS" Smith, Engineer CONTACT INFO
***********************************************************
Chat: thebs413 @ AOL/MSN/Yahoo (see http://Everybuddy.com)
Email: mailto:thebs@xxxxxxxxxxxxxxxxx,thebs@xxxxxxxxxxx
|