fpmake.pp 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. {$ifndef ALLPACKAGES}
  2. {$mode objfpc}{$H+}
  3. program fpmake;
  4. uses fpmkunit;
  5. Var
  6. T : TTarget;
  7. P : TPackage;
  8. begin
  9. With Installer do
  10. begin
  11. {$endif ALLPACKAGES}
  12. P:=AddPackage('fcl-process');
  13. P.ShortName:='fclp';
  14. {$ifdef ALLPACKAGES}
  15. P.Directory:=ADirectory;
  16. {$endif ALLPACKAGES}
  17. P.Version:='3.3.1';
  18. P.Author := 'Michael van Canneyt and Free Pascal Development team';
  19. P.License := 'LGPL with modification';
  20. P.HomepageURL := 'www.freepascal.org';
  21. P.Email := '';
  22. P.Description := 'Process (execution) related parts of Free Component Libraries (FCL), FPC''s OOP library.';
  23. P.Options.Add('-S2h');
  24. P.NeedLibC:= false;
  25. P.OSes:=AllOSes-[embedded,msdos,win16,go32v2,nativent,macosclassic,palmos,atari,zxspectrum,msxdos,amstradcpc,sinclairql];
  26. if Defaults.CPU=jvm then
  27. P.OSes := P.OSes - [java,android];
  28. P.SourcePath.Add('src');
  29. P.IncludePath.Add('src',AllOSes);
  30. P.IncludePath.Add('src/unix',AllUnixOSes);
  31. P.IncludePath.Add('src/winall',AllWindowsOSes);
  32. P.IncludePath.Add('src/win',[win32,win64]);
  33. P.IncludePath.Add('src/amicommon',AllAmigaLikeOSes);
  34. P.IncludePath.Add('src/$(OS)',AllOSes-[win32,win64]-AllUnixOSes-AllAmigaLikeOSes);
  35. P.IncludePath.Add('src/dummy',AllOSes-[win32,win64]-AllUnixOSes-AllAmigaLikeOSes);
  36. P.Dependencies.add('morphunits',[morphos]);
  37. P.Dependencies.add('arosunits',[aros]);
  38. if Defaults.CPU=powerpc then
  39. P.Dependencies.add('os4units',[amiga])
  40. else
  41. P.Dependencies.add('amunits',[amiga]);
  42. P.Dependencies.add('fcl-base');
  43. T:=P.Targets.AddUnit('pipes.pp');
  44. T.Dependencies.AddInclude('pipes.inc');
  45. T:=P.Targets.AddUnit('process.pp');
  46. T.Dependencies.AddInclude('processbody.inc');
  47. T.Dependencies.AddInclude('process.inc');
  48. T.ResourceStrings:=True;
  49. T:=P.Targets.AddUnit('processunicode.pp',[win32,win64]);
  50. T.Dependencies.AddInclude('processbody.inc');
  51. T.Dependencies.AddInclude('process.inc');
  52. T.ResourceStrings:=True;
  53. T:=P.Targets.AddUnit('simpleipc.pp');
  54. T.Dependencies.AddInclude('simpleipc.inc');
  55. T.ResourceStrings:=True;
  56. T:=P.Targets.AddUnit('pipesipc.pp',AllUnixOSes);
  57. T.Dependencies.AddInclude('simpleipc.inc');
  58. T.ResourceStrings:=True;
  59. T:=P.Targets.AddUnit('dbugmsg.pp');
  60. T.ResourceStrings:=True;
  61. T:=P.Targets.AddUnit('dbugintf.pp');
  62. T.ResourceStrings:=True;
  63. P.ExamplePath.Add('examples');
  64. T:=P.Targets.AddExampleProgram('ipcclient.pp');
  65. T:=P.Targets.AddExampleProgram('ipcserver.pp');
  66. T:=P.Targets.AddExampleProgram('dbugsrv.pp');
  67. {$ifndef ALLPACKAGES}
  68. Run;
  69. end;
  70. end.
  71. {$endif ALLPACKAGES}