fpmake.pp 3.0 KB

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