[fpc-pascal] FPC on NetBSD (i386)

Marco van de Voort marcov at stack.nl
Fri Apr 21 12:08:27 CEST 2006

> -Fi../bsd/i386 -Fi../netbsd/i386 -FE. -FU../../rtl/units/i386-netbsd
> -di386 -Us ../bsd/system.pp
> 4. Ran gmake again  ,  but when building the baseunix unit it is missing some
> files:
> $(BSDINC)/bunxtype.inc
> $(BSDINC)/ctypes.inc
> $(BSDINC)/bunxmain.inc
> $(BSDINC)/bunxfunc.inc
> $(BSDINC)/ossysch.inc
> $(BSDINC)/bunxmacr.inc

These files may have moved or renamed. Note again that it is not just a
compile-on-NetBSD job. Roughly all post 1.9.2 changes to the
1.1.x/1.9.x/2.0.x branch must be applied and enhanced for NetBSD, and the
1.9.2 port was already only basic. This is well over an years mutations.

IMHO the best way to start is to take the FreeBSD rtl, and start porting it,
occasionally looking at the current versions in the NetBSD/ dir for clues if
you get stuck or something isn't working, specially for the implementation
of syscalls and similar stuff.

The usual pain points are:
- the calls that return or pass 64-bit values (off_t)
- the signal to exception handling 
- the assembler startup code.

The good point is that 2.0.x shared a _lot_ more code between Unix
platforms, _and_ has an additional sharing between the BSDs
(Open,Net,FreeBSD + FreeBSD derivatives like Darwin and DragonFly)

More information about the fpc-pascal mailing list