fpmake.pp 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  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-base');
  13. {$ifdef ALLPACKAGES}
  14. P.Directory:='fcl-base';
  15. {$endif ALLPACKAGES}
  16. P.Version:='2.2.1';
  17. P.SourcePath.Add('src');
  18. P.SourcePath.Add('src/unix',AllUnixOSes);
  19. P.SourcePath.Add('src/win',AllWindowsOSes);
  20. P.SourcePath.Add('src/$(OS)',AllOSes-AllWindowsOSes-AllUnixOSes);
  21. P.IncludePath.Add('src');
  22. P.IncludePath.Add('src/unix',AllUnixOSes);
  23. P.IncludePath.Add('src/win',AllWindowsOSes);
  24. P.IncludePath.Add('src/$(OS)',AllOSes-AllWindowsOSes-AllUnixOSes);
  25. T:=P.Targets.AddUnit('avl_tree.pp');
  26. T:=P.Targets.AddUnit('base64.pp');
  27. T:=P.Targets.AddUnit('blowfish.pp');
  28. T:=P.Targets.AddUnit('bufstream.pp');
  29. T:=P.Targets.AddUnit('cachecls.pp');
  30. T.ResourceStrings:=true;
  31. T:=P.Targets.AddUnit('cgiapp.pp');
  32. T.ResourceStrings:=true;
  33. with T.Dependencies do
  34. begin
  35. AddUnit('custapp');
  36. AddUnit('iostream');
  37. end;
  38. T:=P.Targets.AddUnit('contnrs.pp');
  39. T:=P.Targets.AddUnit('custapp.pp');
  40. T.ResourceStrings:=true;
  41. T:=P.Targets.AddUnit('daemonapp.pp',AllWindowsOSes+AllUnixOSes);
  42. with T.Dependencies do
  43. begin
  44. AddInclude('daemonapp.inc');
  45. AddUnit('custapp');
  46. AddUnit('eventlog');
  47. end;
  48. T:=P.Targets.AddUnit('eventlog.pp');
  49. T.ResourceStrings:=true;
  50. with T.Dependencies do
  51. begin
  52. AddInclude('eventlog.inc');
  53. end;
  54. T:=P.Targets.AddUnit('ezcgi.pp');
  55. T:=P.Targets.AddUnit('fptimer.pp',AllWindowsOSes+AllUnixOSes);
  56. T:=P.Targets.AddUnit('gettext.pp');
  57. T:=P.Targets.AddUnit('idea.pp');
  58. T:=P.Targets.AddUnit('inicol.pp');
  59. T.ResourceStrings:=true;
  60. with T.Dependencies do
  61. begin
  62. AddUnit('inifiles');
  63. end;
  64. T:=P.Targets.AddUnit('inifiles.pp');
  65. with T.Dependencies do
  66. begin
  67. AddUnit('contnrs');
  68. end;
  69. T:=P.Targets.AddUnit('iostream.pp');
  70. T:=P.Targets.AddUnit('libtar.pp');
  71. T:=P.Targets.AddUnit('maskutils.pp');
  72. T:=P.Targets.AddUnit('pooledmm.pp');
  73. T:=P.Targets.AddUnit('rtfpars.pp');
  74. with T.Dependencies do
  75. begin
  76. AddInclude('rtfdata.inc');
  77. end;
  78. T:=P.Targets.AddUnit('rttiutils.pp');
  79. T:=P.Targets.AddUnit('streamcoll.pp');
  80. T.ResourceStrings:=true;
  81. T:=P.Targets.AddUnit('streamex.pp');
  82. T:=P.Targets.AddUnit('streamio.pp');
  83. T:=P.Targets.AddUnit('syncobjs.pp',AllOSes-[GO32v2,OS2,EMX]);
  84. T:=P.Targets.AddUnit('wformat.pp');
  85. T:=P.Targets.AddUnit('whtml.pp');
  86. with T.Dependencies do
  87. begin
  88. AddUnit('wformat');
  89. end;
  90. T:=P.Targets.AddUnit('wtex.pp');
  91. with T.Dependencies do
  92. begin
  93. AddUnit('wformat');
  94. end;
  95. // Windows units
  96. T:=P.Targets.AddUnit('ServiceManager.pas',[Win32,Win64]);
  97. T:=P.Targets.AddUnit('fileinfo',AllWindowsOSes);
  98. // Additional sources
  99. P.Sources.AddSrcFiles('src/win/fclel.*');
  100. {$ifndef ALLPACKAGES}
  101. Run;
  102. end;
  103. end.
  104. {$endif ALLPACKAGES}