mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-21 12:49:33 +02:00
* add all linux units, still need to finish dependencies
git-svn-id: trunk@9877 -
This commit is contained in:
parent
596c61bd9c
commit
ff4b5fcb59
379
rtl/fpmake.pp
379
rtl/fpmake.pp
@ -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;
|
||||
|
Loading…
Reference in New Issue
Block a user