[fpc-pascal] Compiling from and to memory

Mattias Gaertner nc-gaertnma at netcologne.de
Fri Apr 20 20:13:36 CEST 2012


On Fri, 20 Apr 2012 18:26:28 +0200
Florian Klaempfl <florian at freepascal.org> wrote:

> Am 19.04.2012 14:11, schrieb OBones:
> > Hello all,
> >
> > I'm currently creating a build chain where FPC is the last step, the one
> > producing a DLL for Windows, x86 and x64.
> > In front of it in the chain, I have designed a generator that creates a
> > program and a set of units from its own representation.
> > Right now, the program and units are written to disk and then FPC is
> > called on those files.
> > This works fine but is somewhat slow because of disk writing and reading.
> > I was thus wondering if there was a way to send the program and unit
> > contents directly to FPC without writing to disk, and then get FPC to
> > output the final DLL to a memory location as well. The last part is
> > optional, being able to send the program and units without disk access
> > would be a nice thing.
> > I looked around in the documentation for "standard input", "pipe", but
> > apart from ways to access them from within a program, I was not able to
> > find any information.
> > Is this possible? If yes, how should I proceed?
> 
> Do you have any proof that writing/reading to the files to disk is an 
> issue? On modern harddisks and OSes the plain I/O speed is normally not 
> the issue when compiling.

True.
Lazarus make clean all under Linux 64 bit:

ramdisk:
real    1m8.377s
user    1m2.584s
sys     0m4.212s

disk:
real    1m11.661s
user    1m5.488s
sys     0m4.352s


Mattias



More information about the fpc-pascal mailing list