[fpc-devel] Free Pascal Extender

Hans-Peter Diettrich DrDiettrich1 at aol.com
Wed Nov 3 13:46:59 CET 2010

Michael Schnell schrieb:

> On 10/30/2010 03:43 PM, Hans-Peter Diettrich wrote:
>> How can I add this directory to the git repository, so that it is 
>> available as a self-contained project/branch?
> Why not fork the branches after these files are added ? I suppose GIT 
> allows to add them in a way that they appear  as if they would have 
> existed before branching.

I managed to create two projects, for the compiler/ and compiler/docs/ 
directories. Unfortunately these are not shown in the SF page, but they 
should be accessible as

The separate compiler project allows to have an playground either inside 
or outside the fpc directory.

Tracking of the SVN repository seems to be somewhat tricky, in detail on 
Windows, due to line-endings. So I finally gave up to track the SVN 
updates myself, and checked out Graeme's fpc repository at
<git://github.com/graemeg/freepascal.git>. In that directory I created a 
new git repo, in the compiler/ subdirectory
git init compiler
and added the above .../compiler external repo to it.

The same for the docs directory, that can reside anywhere (in theory), 
but the FPDoc Editor requires that all documented files reside in a 
package. So I added such a package to the docs, what requires that docs/ 
is a subdirectory of (any) fpc/compiler/ directory.

When the compiler project resides inside an fpc working directory, be 
SVN or Git based, care must be taken to sync both checkouts. For that 
purpose I added several SVN versions to the trunk branch, and intend to 
rebase the branches on newer SVN revisions, from time to time. A user 
will have to checkout the common base revision from the fpc repo first, 
then checkout the desired branch from my compiler repo. When you use 
Graeme's repo (recommended), look at the SVN revision number in the 
commits, in order to checkout the required version. If somebody knows 
about easier procedures, please let me know...

The compiler repo currently contains the branches:

trunk - fpc base revisions
preprocessor - make the PREPROCWRITE code work
AltParser - allow for alternative parsers (includes ParserOPL)
Oberon - an Oberon/ComponentPascal parser, on top of AltParser
AltScanner - a scanner caching entire source files in memory (to come)

The docs repo only contains one branch, and does not rely on a specific 
SVN revision.

The original fpcext repo should not be used, it has too many flaws from 
my first steps into the world of multiple repositories on SF :-(


More information about the fpc-devel mailing list