This is the mail archive of the gdb@sourceware.cygnus.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: cvsup & sourceware repositories?


<< added the missing command line I mentioned at the end of the message >>

OK, here is a summary of the steps involved for me to create a local
repository behind a firewall:

- SOCKS5 (needed if you are behind a firewall)
  + Download:
    http://www.socks.nec.com/cgi-bin/download.pl

  + Build and install.

  + Configure to use a socks5 server your site provides:
    * Create /etc/libsocks5.conf:
sockd @=<your_socks_server>,<your_socks_server>.<domain> 0.0.0.0 0.0.0.0

  + Reference:
    http://www.socks.nec.com/socksv5.html

  + How to socksify an application:
    http://www.socks.nec.com/how2socksify.html

- CVS
  + Download:
    http://www.cyclic.com/pub/

  + Build and install.

  + Reference Manual, etc.:
    http://www.loria.fr/~molli/cvs-index.html

- rsync

  + Download:
    http://rsync.samba.org/

  + Socksify rsync source (needed if you are going to use rsync from
    behind a firewall), the quick'n'dirty approach:
    * main.c (main): add 'SOCKSinit (argv[0]);' to the beginning
    of main ().
    + rsync.h: add '#define SOCKS' and '#include <socks.h>' to the
    beginning of file.
    + Makefile.in: add '-L/usr/local/lib' (or the libsocks5 install
    location) and '-lsocks5' to the rsync link line.

  + Configure / Make / Install.

  + Reference:
    rsync(1) man page.
    http://sourceware.cygnus.com/sourceware/ under 'anonymous rsync' link.    

- Local repository creation:
  % mkdir -p <local_repository_root>
  % cd <local_repository_root>
  % rsync --archive --delete --checksum --compress --stats \
    rsync://sourceware.cygnus.com/src-cvs .

- Extract source (this creates <work_directory>/src/ tree with all
  necessary gdb and dejagnu components):
  % setenv CVSROOT <local_repository_root>
  % cd <work_directory>
  % cvs checkout -r HEAD dejagnu gdb

- Routine synchronization of src-cvs repository:
  Use the same rsync command above to synchronize.

That's it!  BTW the <local_repository_root>/CVSROOT/modules file lists
the module aliases / names in the repository, and I found it useful to
decide the module names to use in the cvs checkout command line.
Also, the rsync command line below dumps the list of repositories
available, which I used to figure out that the repository name
for src/cvs is actually src-cvs (that was not apparent to me as a
non-CVS user and was not mentioned in the
sourceware.cygnus.com/sourceware 'anonymous rsync' link):

  % rsync --archive --delete --checksum --compress --stats \
    rsync://sourceware.cygnus.com/ .

- Jimmy Guo, guo@cup.hp.com


>When you get it working, I would appreciate hearing about the procedure
>you used to (finally) make it work.  (You might just want to send a
>followup reply to gdb@sourceware because I suspect that there are others
>out there who'd also like to know.)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]