fpmake.pp 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  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-net');
  13. {$ifdef ALLPACKAGES}
  14. P.Directory:=ADirectory;
  15. {$endif ALLPACKAGES}
  16. P.Version:='2.7.1';
  17. P.Dependencies.Add('fcl-base');
  18. P.Dependencies.Add('openssl',AllOSes - [amiga,aros]);
  19. P.Dependencies.Add('fcl-xml');
  20. P.Dependencies.Add('fcl-passrc');
  21. P.Dependencies.Add('fcl-async',[linux,freebsd,netbsd,openbsd]);
  22. P.Dependencies.Add('rtl-extra');
  23. P.Author := 'Sebastian Guenther and Free Pascal development team';
  24. P.License := 'LGPL with modification, ';
  25. P.HomepageURL := 'www.freepascal.org';
  26. P.Email := '';
  27. P.Description := 'Network related parts of Free Component Libraries (FCL), FPC''s OOP library.';
  28. P.NeedLibC:= false;
  29. P.OSes:=P.OSes-[embedded,msdos];
  30. P.SourcePath.Add('src');
  31. P.IncludePath.Add('src/unix',AllUnixOSes);
  32. P.IncludePath.Add('src/win',AllWindowsOSes);
  33. P.IncludePath.Add('src/os2',[EMX]);
  34. P.IncludePath.Add('src/$(OS)',AllOSes-AllWindowsOSes-AllUnixOSes-[EMX]);
  35. // IP and Sockets
  36. T:=P.Targets.AddUnit('netdb.pp',AllUnixOSes);
  37. T:=P.Targets.AddUnit('resolve.pp',AllUnixOSes+AllWindowsOSes+[OS2,EMX,amiga,aros]);
  38. with T.Dependencies do
  39. begin
  40. AddInclude('resolve.inc');
  41. AddUnit('netdb',AllUnixOSes);
  42. end;
  43. T.ResourceStrings := True;
  44. T:=P.Targets.AddUnit('ssockets.pp',AllUnixOSes+AllWindowsOSes+[OS2,EMX, amiga,aros]);
  45. with T.Dependencies do
  46. begin
  47. AddUnit('resolve');
  48. end;
  49. T.ResourceStrings := True;
  50. T:=P.Targets.AddUnit('sslsockets.pp',AllUnixOSes+AllWindowsOSes);
  51. with T.Dependencies do
  52. begin
  53. AddUnit('ssockets');
  54. end;
  55. T.ResourceStrings := True;
  56. // HTTP Client
  57. T:=P.Targets.AddUnit('fpsock.pp',[linux,freebsd,netbsd,openbsd]);
  58. with T.Dependencies do
  59. begin
  60. AddUnit('resolve');
  61. end;
  62. T.ResourceStrings := True;
  63. T:=P.Targets.AddUnit('cnetdb.pp',[linux,freebsd]);
  64. P.ExamplePath.Add('examples');
  65. P.Targets.AddExampleProgram('examples/ip6test.pp');
  66. P.Targets.AddExampleProgram('examples/svrclass.pp');
  67. P.Targets.AddExampleProgram('examples/testdns.pp');
  68. P.Targets.AddExampleProgram('examples/testnet.pp');
  69. P.Targets.AddExampleProgram('examples/testhosts.pp');
  70. P.Targets.AddExampleProgram('examples/testsvc.pp');
  71. P.Targets.AddExampleProgram('examples/testhst.pp');
  72. P.Targets.AddExampleProgram('examples/testuri.pp');
  73. P.Targets.AddExampleProgram('examples/testproto.pp');
  74. {$ifndef ALLPACKAGES}
  75. Run;
  76. end;
  77. end.
  78. {$endif ALLPACKAGES}