* add all linux units, still need to finish dependencies

git-svn-id: trunk@9877 -
This commit is contained in:
peter 2008-01-23 00:24:05 +00:00
parent 596c61bd9c
commit ff4b5fcb59

View File

@ -20,20 +20,23 @@ begin
// Where to find the sources using firstmatch
P.SourcePath.Add('$(OS)');
P.SourcePath.Add('$(CPU)');
P.SourcePath.Add('unix',AllUnixOSes);
P.SourcePath.Add('win',AllWindowsOSes);
P.SourcePath.Add('$(CPU)');
P.SourcePath.Add('inc');
P.SourcePath.Add('objpas');
// Where to find the include files using firstmatch
P.IncludePath.Add('$(OS)/$(CPU)',[Linux]);
P.IncludePath.Add('$(OS)');
P.IncludePath.Add('$(CPU)');
P.IncludePath.Add('unix',AllUnixOSes);
P.IncludePath.Add('win',AllWindowsOSes);
P.IncludePath.Add('inc');
P.IncludePath.Add('objpas');
// System unit
T:=P.Targets.AddUnit('system.pp');
T.IncludePath.Add('inc');
T.IncludePath.Add('$(CPU)');
T.IncludePath.Add('$(OS)');
T.IncludePath.Add('$(OS)/$(CPU)',[Linux]);
T.IncludePath.Add('unix',AllUnixOSes);
T.IncludePath.Add('win',AllWindowsOSes);
With T.Dependencies do
begin
// Headers
@ -53,7 +56,6 @@ begin
AddInclude('set.inc');
AddInclude('int64p.inc');
AddInclude('setjump.inc');
AddInclude('systhrd.inc');
AddInclude('sysos.inc');
AddInclude('sysheap.inc');
AddInclude('sysdir.inc');
@ -83,6 +85,8 @@ begin
AddInclude('innr.inc');
AddInclude('$(CPU).inc');
AddInclude('fastmove.inc',[i386],AllOSes);
AddInclude('strpas.inc');
AddInclude('math.inc');
AddInclude('real2str.inc');
// Unix implementations
AddInclude('osdefs.inc',AllUnixOSes);
@ -104,75 +108,163 @@ begin
AddInclude('osmacro.inc',AllUnixOSes);
end;
// Startup
T:=P.Targets.AddUnit('si_c21g.pp');
With T.Dependencies do
begin
AddUnit('system');
AddInclude('si_intf.inc');
AddInclude('sysnr.inc');
AddInclude('si_c21g.inc');
end;
T:=P.Targets.AddUnit('si_c21.pp');
With T.Dependencies do
begin
AddUnit('system');
AddInclude('si_intf.inc');
AddInclude('sysnr.inc');
AddInclude('si_c21.inc');
end;
T:=P.Targets.AddUnit('si_c.pp');
With T.Dependencies do
begin
AddUnit('system');
AddInclude('si_intf.inc');
AddInclude('sysnr.inc');
AddInclude('si_c.inc');
end;
T:=P.Targets.AddUnit('si_dll.pp');
With T.Dependencies do
begin
AddUnit('system');
AddInclude('si_intf.inc');
AddInclude('sysnr.inc');
AddInclude('si_dll.inc');
end;
T:=P.Targets.AddUnit('si_prc.pp');
With T.Dependencies do
begin
AddUnit('system');
AddInclude('si_intf.inc');
AddInclude('sysnr.inc');
AddInclude('si_prc.inc');
end;
T:=P.Targets.AddUnit('si_uc.pp');
With T.Dependencies do
begin
AddUnit('system');
AddInclude('si_intf.inc');
AddInclude('sysnr.inc');
AddInclude('si_uc.inc');
end;
// Compile mode units
T:=P.Targets.AddUnit('objpas.pp');
T.Dependencies.AddUnit('system');
T:=P.Targets.AddUnit('macpas.pp');
T.Dependencies.AddUnit('system');
T:=P.Targets.AddUnit('fpcylix.pp');
With T.Dependencies do
begin
AddUnit('cthreads');
AddUnit('cwstring');
AddUnit('dynlibs');
end;
// Unix units
T:=P.Targets.AddUnit('unixtype.pp',AllUnixOSes);
T.IncludePath.Add('$(OS)/$(CPU)',[Linux]);
T.IncludePath.Add('$(OS)');
T.IncludePath.Add('unix');
With T.Dependencies do
begin
AddUnit('system');
end;
T:=P.Targets.AddUnit('unixutil.pp',AllUnixOSes);
T.IncludePath.Add('unix');
T.IncludePath.Add('inc');
T:=P.Targets.AddUnit('baseunix.pp',AllUnixOSes);
T.IncludePath.Add('$(OS)/$(CPU)',[Linux]);
T.IncludePath.Add('$(OS)');
T.IncludePath.Add('unix');
T.IncludePath.Add('inc');
With T.Dependencies do
begin
AddUnit('unixtype');
AddInclude('osdefs.inc');
AddInclude('aliasptp.inc');
AddInclude('aliasctp.inc');
AddInclude('errno.inc');
AddInclude('ostypes.inc');
AddInclude('stat.inc');
AddInclude('signal.inc');
AddInclude('sighndh.inc');
AddInclude('bunxh.inc');
AddInclude('bunxovlh.inc');
AddInclude('genfunch.inc');
AddInclude('genfuncs.inc');
AddInclude('gensigset.inc');
AddInclude('genfdset.inc');
AddInclude('syscallh.inc');
AddInclude('sysnr.inc');
AddInclude('bsyscall.inc');
AddInclude('bunxsysc.inc');
AddInclude('settimeo.inc');
AddInclude('osmacro.inc');
AddInclude('bunxovl.inc');
AddInclude('textrec.inc');
AddInclude('filerec.inc');
end;
T:=P.Targets.AddUnit('unix.pp',AllUnixOSes);
T.IncludePath.Add('$(OS)/$(CPU)',[Linux]);
T.IncludePath.Add('$(OS)');
T.IncludePath.Add('unix');
T.IncludePath.Add('inc');
T.Dependencies.AddUnit('baseunix');
T.Dependencies.AddUnit('unixutil');
with T.Dependencies do
begin
AddUnit('baseunix');
AddUnit('unixutil');
AddInclude('aliasptp.inc');
AddInclude('aliasctp.inc');
AddInclude('unxconst.inc');
AddInclude('unxsysch.inc');
AddInclude('unxovlh.inc');
AddInclude('unxovl.inc');
AddInclude('syscallh.inc');
AddInclude('unxsysc.inc');
AddInclude('textrec.inc');
AddInclude('filerec.inc');
AddInclude('unxfunc.inc');
AddInclude('timezone.inc');
end;
T:=P.Targets.AddUnit('termio.pp',AllUnixOSes);
T.IncludePath.Add('$(OS)/$(CPU)',[Linux]);
T.IncludePath.Add('$(OS)');
T.IncludePath.Add('unix');
T.IncludePath.Add('inc');
T.Dependencies.AddUnit('baseunix');
with T.Dependencies do
begin
AddUnit('baseunix');
AddInclude('termios.inc');
AddInclude('termiosh.inc');
AddInclude('textrec.inc');
AddInclude('termiosproc.inc');
end;
T:=P.Targets.AddUnit('unix/errors.pp',AllUnixOSes);
T.IncludePath.Add('$(OS)');
T.Dependencies.AddUnit('unixtype');
T.Dependencies.AddInclude('errnostr.inc');
T:=P.Targets.AddUnit('unix/syscall.pp',AllUnixOSes);
T.IncludePath.Add('$(OS)/$(CPU)',[Linux]);
T.IncludePath.Add('$(OS)');
T.Dependencies.AddInclude('sysnr.inc');
T.Dependencies.AddInclude('syscallh.inc');
T:=P.Targets.AddUnit('unix/terminfo.pp',AllUnixOSes);
T.Dependencies.AddUnit('baseunix');
T:=P.Targets.AddUnit('unix/dl.pp',AllUnixOSes);
T:=P.Targets.AddUnit('unix/ipc.pp',AllUnixOSes);
With T.Dependencies do
begin
AddUnit('baseunix');
AddUnit('syscall');
AddInclude('ipccall.inc');
end;
// Linux only
// Linux units
T:=P.Targets.AddUnit('linux/linux.pp',[Linux]);
T:=P.Targets.AddUnit('linux/gpm.pp',[Linux]);
With T.Dependencies do
begin
AddUnit('termio');
AddUnit('sockets');
AddUnit('strings');
AddUnit('unix');
end;
{
With Targets['sysutils'].dependencies do
begin
add('unix');
add('errors');
Add('unixtype');
Add('baseunix');
end;
}
T:=P.Targets.AddUnit('linux/linuxvcs.pp');
// Turbo Pascal RTL units
T:=P.Targets.AddUnit('strings.pp');
T.IncludePath.Add('$(CPU)');
T.IncludePath.Add('inc');
With T.Dependencies do
begin
AddUnit('system');
@ -187,7 +279,11 @@ begin
begin
AddUnit('strings');
AddUnit('unix',AllUnixOSes);
AddInclude('inc/dosh.inc');
AddInclude('dosh.inc');
AddInclude('filerec.inc');
AddInclude('textrec.inc');
AddInclude('dos.inc');
AddInclude('fexpand.inc');
end;
T:=P.Targets.AddUnit('crt.pp');
With T.Dependencies do
@ -195,6 +291,201 @@ begin
AddUnit('unix',AllUnixOSes);
AddInclude('inc/crth.inc');
end;
T:=P.Targets.AddUnit('objects.pp');
T:=P.Targets.AddUnit('ports.pp');
T:=P.Targets.AddUnit('printer.pp');
// Object Pascal RTL units
T:=P.Targets.AddUnit('rtlconsts.pp');
T.Dependencies.AddUnit('objpas');
T.Dependencies.AddInclude('rtlconst.inc');
T:=P.Targets.AddUnit('sysconst.pp');
T.Dependencies.AddUnit('objpas');
T:=P.Targets.AddUnit('sysutils.pp');
T.IncludePath.Add('objpas/sysutils');
With T.Dependencies do
begin
AddUnit('sysconst');
AddUnit('unix',AllUnixOSes);
AddUnit('errors',AllUnixOSes);
AddInclude('sysutilh.inc');
AddInclude('sysinth.inc');
AddInclude('osutilsh.inc');
AddInclude('datih.inc');
AddInclude('sysstrh.inc');
AddInclude('filerec.inc');
AddInclude('textrec.inc');
AddInclude('syspchh.inc');
AddInclude('sysansih.inc');
AddInclude('syswideh.inc');
AddInclude('finah.inc');
AddInclude('filutilh.inc');
AddInclude('diskh.inc');
AddInclude('systhrdh.inc');
AddInclude('intfh.inc');
AddInclude('sysutils.inc');
AddInclude('fina.inc');
AddInclude('fexpand.inc');
AddInclude('varerror.inc');
AddInclude('sysstr.inc');
AddInclude('sysformt.inc');
AddInclude('dati.inc');
AddInclude('syspch.inc');
AddInclude('strings.inc');
AddInclude('genstr.inc');
AddInclude('stringsi.inc');
AddInclude('sysint.inc');
AddInclude('sysansi.inc');
AddInclude('syswide.inc');
AddInclude('sysformt.inc');
AddInclude('sysuthrd.inc');
AddInclude('osutil.inc');
AddInclude('sysuintf.inc');
AddInclude('suuid.inc');
end;
T:=P.Targets.AddUnit('types.pp');
T.Dependencies.AddUnit('objpas');
T:=P.Targets.AddUnit('typinfo.pp');
T.Dependencies.AddUnit('sysutils');
T:=P.Targets.AddUnit('classes.pp');
T.IncludePath.Add('objpas/classes');
With T.Dependencies do
begin
AddUnit('sysutils');
AddUnit('types');
AddUnit('typinfo');
AddUnit('unix',AllUnixOSes);
AddInclude('classesh.inc');
AddInclude('classes.inc');
AddInclude('util.inc');
AddInclude('bits.inc');
AddInclude('streams.inc');
AddInclude('parser.inc');
AddInclude('collect.inc');
AddInclude('lists.inc');
AddInclude('stringl.inc');
AddInclude('tthread.inc');
AddInclude('persist.inc');
AddInclude('compon.inc');
AddInclude('action.inc');
AddInclude('dm.inc');
AddInclude('cregist.inc');
AddInclude('intf.inc');
AddInclude('filer.inc');
AddInclude('reader.inc');
AddInclude('writer.inc');
AddInclude('twriter.inc');
end;
T:=P.Targets.AddUnit('convutils.pp');
T.Dependencies.AddUnit('objpas');
T.Dependencies.AddInclude('convutil.inc');
T:=P.Targets.AddUnit('dateutils.pp');
With T.Dependencies do
begin
AddUnit('sysutils');
AddUnit('math');
AddUnit('types');
AddUnit('sysconst');
AddInclude('dateutil.inc');
end;
T:=P.Targets.AddUnit('stdconvs.pp');
T.Dependencies.AddUnit('convutils');
T:=P.Targets.AddUnit('strutils.pp');
T.Dependencies.AddUnit('sysutils');
T:=P.Targets.AddUnit('varutils.pp');
With T.Dependencies do
begin
AddUnit('sysutils');
AddInclude('varutilh.inc');
AddInclude('varerror.inc');
AddInclude('cvarutil.inc');
AddInclude('varutils.inc');
end;
T:=P.Targets.AddUnit('variants.pp');
With T.Dependencies do
begin
AddUnit('sysutils');
AddUnit('rtlconsts');
AddUnit('typinfo');
end;
T:=P.Targets.AddUnit('fgl.pp');
T.Dependencies.AddUnit('sysutils');
T.Dependencies.AddUnit('types');
T:=P.Targets.AddUnit('fmtbcd.pp');
T.Dependencies.AddUnit('sysutils');
T.Dependencies.AddUnit('variants');
T:=P.Targets.AddUnit('math.pp');
With T.Dependencies do
begin
AddUnit('sysutils');
AddInclude('mathuh.inc');
AddInclude('mathu.inc');
end;
// CPU dependent units
T:=P.Targets.AddUnit('cpu.pp');
T.Dependencies.AddUnit('system');
T:=P.Targets.AddUnit('x86.pp',[i386,x86_64],AllOSes);
T.Dependencies.AddUnit('system');
T.Dependencies.AddUnit('baseunix',AllUnixOSes);
T:=P.Targets.AddUnit('mmx.pp',[i386,x86_64],AllOSes);
T.Dependencies.AddUnit('cpu');
// C Interfacing units
T:=P.Targets.AddUnit('ctypes');
With T.Dependencies do
begin
AddUnit('system');
AddUnit('unixtype',AllUnixOSes);
AddInclude('aliasctp.inc',AllUnixOSes);
end;
T:=P.Targets.AddUnit('initc.pp');
T.Dependencies.AddUnit('ctypes');
T:=P.Targets.AddUnit('cmem.pp');
T.Dependencies.AddUnit('system');
T:=P.Targets.AddUnit('cthreads.pp',AllUnixOSes);
With T.Dependencies do
begin
AddUnit('objpas');
AddUnit('initc');
AddUnit('unix');
AddUnit('dl');
AddInclude('pthread.inc');
end;
T:=P.Targets.AddUnit('cwstring');
With T.Dependencies do
begin
AddUnit('objpas');
AddUnit('initc');
AddUnit('unix');
AddUnit('ctypes');
end;
// Misc units
T:=P.Targets.AddUnit('charset.pp');
T:=P.Targets.AddUnit('ucomplex.pp');
T:=P.Targets.AddUnit('matrix.pp');
T:=P.Targets.AddUnit('getopts.pp');
T:=P.Targets.AddUnit('dynlibs.pas');
With T.Dependencies do
begin
AddUnit('objpas');
AddUnit('dl');
AddInclude('dynlibs.inc');
end;
// Debugging units
T:=P.Targets.AddUnit('exeinfo.pp');
T:=P.Targets.AddUnit('heaptrc.pp');
T:=P.Targets.AddUnit('lineinfo.pp');
T:=P.Targets.AddUnit('lnfodwrf.pp');
// IO units
T:=P.Targets.AddUnit('mouse');
T:=P.Targets.AddUnit('video');
T:=P.Targets.AddUnit('keyboard');
T:=P.Targets.AddUnit('sockets');
T:=P.Targets.AddUnit('serial');
{$ifndef ALLPACKAGES}
Run;