fpmake.pp 2.4 KB

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