fpmake.pp 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. {$ifndef ALLPACKAGES}
  2. {$mode objfpc}{$H+}
  3. program fpmake;
  4. uses fpmkunit;
  5. Var
  6. P : TPackage;
  7. T : TTarget;
  8. begin
  9. With Installer do
  10. begin
  11. {$endif ALLPACKAGES}
  12. P:=AddPackage('libenet');
  13. P.ShortName:='libenet';
  14. {$ifdef ALLPACKAGES}
  15. P.Directory:=ADirectory;
  16. {$endif ALLPACKAGES}
  17. P.Version:='3.3.1';
  18. P.SourcePath.Add('src');
  19. P.SourcePath.Add('examples');
  20. P.IncludePath.Add('src');
  21. { only enable for darwin after testing }
  22. P.OSes := AllUnixOSes+AllWindowsOSes-[qnx,darwin,iphonesim];
  23. if Defaults.CPU=jvm then
  24. P.OSes := P.OSes - [java,android];
  25. P.Dependencies.Add('rtl-extra'); // winsock2
  26. T:=P.Targets.AddUnit('enettypes.pp');
  27. T:=P.Targets.AddUnit('enetlist.pp');
  28. T:=P.Targets.AddUnit('enetcallbacks.pp');
  29. with T.Dependencies do
  30. AddUnit('enettypes');
  31. T:=P.Targets.AddUnit('enetplatform.pp');
  32. T:=P.Targets.AddUnit('enetprotocol.pp');
  33. T:=P.Targets.AddUnit('enettime.pp');
  34. T:=P.Targets.AddUnit('enet.pp');
  35. with T.Dependencies do
  36. begin
  37. AddUnit('enettypes');
  38. AddUnit('enetprotocol');
  39. AddUnit('enetlist');
  40. AddUnit('enetcallbacks');
  41. AddUnit('enetprotocol');
  42. end;
  43. T:=P.Targets.AddUnit('uenetclass.pp');
  44. with T.Dependencies do
  45. begin
  46. AddUnit('enet');
  47. AddUnit('enettime');
  48. AddUnit('enetprotocol');
  49. end;
  50. // Examples
  51. P.ExamplePath.Add('examples');
  52. P.Targets.AddExampleProgram('serverapp.pp');
  53. P.Targets.AddExampleProgram('clientapp.pp');
  54. {$ifndef ALLPACKAGES}
  55. Run;
  56. end;
  57. end.
  58. {$endif ALLPACKAGES}