Re: potential developer/questions


Subject: Re: potential developer/questions
From: Dom Lachowicz (cinamod@hotmail.com)
Date: Sun May 06 2001 - 16:31:39 CDT


Hi Peter,

>I've been looking at Abiword for some time now, with the intent of joining
>the project.

Excellent! I'll try to answer these questions and help you out as much as
possible. John also did a good job, but I'd like to add a few things:

>- The build system
>
>I try tracking the latest CVS version in order to keep up to date with the
>development. Most of the time a CVS update results in compiler/linker
>errors when I try compiling afterwards. Deleting the abi directory and
>checking a new one out solves this. So it seems that some of the files
>aren't recompiled. Since I haven't seen anyone else complaining I guess i'm
>doing something wrong here. Any hints?

The build system uses a "diving makefile" mechanism, and we don't currently
track and dependency relationships, unfortunately. This means that if the
sizeof any class changesd (or if a method name changes, etc...) you get
unresolved link errors or SEGVs on startup. There are 2 ways around this:

1) Use the autoconf build. Sam has done an excellent job with this thus far.
This keeps track of dependencies nicely.
2) 'make clean realclean' before rebuilding if you see any 'P somefile.h'
file when you do a cvs update.

>- Source code structure

Well, most of the structure has a lot of history. I won't go into that here.

src/wp: Word-Processor Specific code
src/text: Our piece table and format/layout engine
src/af: Application specific framework stuff, not specific to any one app
(hopefully)
src/af/util: Utility code, such as hashtables, vectors, utility functions
src/af/ev: Event handling code, such as keyboards, toolbars, menus
src/af/gr: Graphic, image, and font classes
src/af/xap: Cross-Application dialogs and classes, theoretically useful to
any one of a number of applications (such as a font dialog, language dialog,
etc...)

If you have any questions on specific classes or sets of classes, please
don't hesitate to ask.

>getting a feel for it. Maybe the best way is to start working in one small
>part and get to know that first? In that case: Any hints for good "beginner
>projects"?

Killing some bugs in bugzilla is a great way to learn some code. See if any
bugs in particular bug you, or if any seem like interesting problems.

Dom

_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com



This archive was generated by hypermail 2b25 : Sat May 26 2001 - 03:51:03 CDT