gEDA-dev: First CVS checkin of xgsch2pcb (aka "monitor", aka "proejct manager")

Peter Clifton pcjc2 at cam.ac.uk
Wed Sep 20 13:23:12 EDT 2006


Hi,

We completed the initial CVS check-in of our project manager work so
far. It should work, but currently depends on Python 2.4+ and Pygtk2.8+

The program implements a frontend to gsch2pcb, and allows launching of
gschem, gattrib, pcb. An mtime based test automatically prompts the user
to update their layout if changes have been made.

Rather than executing gsch2pcb on the user's project file, we instead
save a temporary copy of the user's open PCB layout, run gsch2pcb on
that, and forward the results into the still running PCB instance. New
components are placed into the top corner of the schematic.

To work around a file-write race condition, xgsch2pcb requires a patched
version of PCB. This prints status messages to stdout after certain
actions (file operations), so the update scripting can synchronise with
PCB.

For testing, you'll need to apply pcb.projectman.patch to a CVS HEAD
download of PCB. This is basically a hack (lots of printf's in the
action code), and we're working on a better implementation. 

The patch can be found in the "support" subdirectory of the CVS
checkout.

There is an autoconf system which checks that you've got compatible
versions of various libraries. It also sets up the prefix for python
files.

Based upon the gEDA devel page:

CVS checkout using:

For bash:
        export
        CVSROOT=:pserver:anoncvs at cvs.seul.org:/home/cvspsrv/cvsroot
        
        For csh/tcsh:
        setenv
        CVSROOT :pserver:anoncvs at cvs.seul.org:/home/cvspsrv/cvsroot
        
cvs login 
        
        The password is 'guest' (without the quotes)
        
mkdir somedirectory
cd somedirectory
cvs co geda/xgsch2pcb/

You need to run autoreconf in the cvs checkout before you can proceed.

For testing, you can ./configure --prefix={path_to_source}. This
configures the xgsch2pcb program to work straight in the CVS checkout
directory. No need to make install.

Example: if your checkout is in /home/user/test/geda/xgsch2pcb/, you
could configure with:

cd /home/user/test/geda/xgsch2pcb
autoreconf
./configure --prefix=/home/user/test/geda/xgsch2pcb
make
./xgsch2pcb

For the tool to work fully, it must find gschem, gattrib, gsch2pcb and
pcb in the current environment's path.

The ".po" i18n stuff isn't set to install at present, as we've not
resolved issues in determining the correct search path for an arbitrary
prefix install. There will be a warning about i18n on stdout when the
program runs.

Peter




More information about the geda-dev mailing list