fpmake.pp 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. {$ifndef ALLPACKAGES}
  2. {$mode objfpc}{$H+}
  3. program fpmake;
  4. uses fpmkunit;
  5. {$endif ALLPACKAGES}
  6. procedure add_fppkg_util(const ADirectory: string);
  7. const
  8. lnetOSes = [linux,beos,haiku,freebsd,netbsd,openbsd,darwin,iphonesim,solaris,win32,win64,wince,aix];
  9. WindowsOSes = [win32,win64,wince];
  10. Var
  11. P : TPackage;
  12. T : TTarget;
  13. VS: string;
  14. begin
  15. With Installer do
  16. begin
  17. P:=AddPackage('utils-fppkg');
  18. P.ShortName:='fpkg';
  19. P.Author := '<various>';
  20. P.License := 'LGPL with modification';
  21. P.HomepageURL := 'www.freepascal.org';
  22. P.Email := '';
  23. P.Description := 'Free Pascal package repository utility.';
  24. P.NeedLibC:= false;
  25. P.Directory:=ADirectory;
  26. P.Version:='3.3.1';
  27. P.OSes:=AllOSes-[embedded,msdos,win16,go32v2,nativent,macos,palmos,atari];
  28. if Defaults.CPU=jvm then
  29. P.OSes := P.OSes - [java,android];
  30. P.SourcePath.Add('lnet',lnetOSes);
  31. P.IncludePath.Add('lnet/sys',lnetOSes);
  32. P.SupportBuildModes:=[bmOneByOne];
  33. P.Options.Add('-Sm');
  34. Str(P.PackageVersion.Major, VS);
  35. P.Options.Add('-dpackage_version_major:='+VS);
  36. Str(P.PackageVersion.Minor, VS);
  37. P.Options.Add('-dpackage_version_minor:='+VS);
  38. Str(P.PackageVersion.Micro, VS);
  39. P.Options.Add('-dpackage_version_micro:='+VS);
  40. Str(P.PackageVersion.Build, VS);
  41. P.Options.Add('-dpackage_version_build:='+VS);
  42. P.Dependencies.Add('fcl-base');
  43. P.Dependencies.Add('fcl-xml');
  44. P.Dependencies.Add('fcl-process');
  45. P.Dependencies.Add('fcl-net');
  46. P.Dependencies.Add('paszlib');
  47. //P.Dependencies.Add('libcurl',[beos,haiku,freebsd,darwin,iphonesim,solaris,netbsd,openbsd,linux,aix]);
  48. P.Dependencies.Add('fppkg');
  49. P.Dependencies.Add('univint', [Darwin, iphonesim]);
  50. T:=P.Targets.AddProgram('fppkg.pp');
  51. T := P.Targets.AddUnit('pkglnet.pp', lnetOSes);
  52. T.Dependencies.AddUnit('lnet');
  53. T.Dependencies.AddUnit('lftp');
  54. T.Dependencies.AddUnit('lhttp');
  55. T.Install:=false;
  56. P.Targets.AddUnit('lnet/fastcgi_base.pp', lnetOSes).install:=false;
  57. P.Targets.AddUnit('lnet/lcontrolstack.pp', lnetOSes).install:=false;
  58. P.Targets.AddUnit('lnet/lhttp.pp', lnetOSes).install:=false;
  59. P.Targets.AddUnit('lnet/lmimestreams.pp', lnetOSes).install:=false;
  60. P.Targets.AddUnit('lnet/lmimewrapper.pp', lnetOSes).install:=false;
  61. P.Targets.AddUnit('lnet/lprocess.pp', lnetOSes).install:=false;
  62. P.Targets.AddUnit('lnet/lspawnfcgi.pp', lnetOSes).install:=false;
  63. P.Targets.AddUnit('lnet/ltelnet.pp', lnetOSes).install:=false;
  64. P.Targets.AddUnit('lnet/lcommon.pp', lnetOSes).install:=false;
  65. P.Targets.AddUnit('lnet/levents.pp', lnetOSes).install:=false;
  66. P.Targets.AddUnit('lnet/lftp.pp', lnetOSes).install:=false;
  67. P.Targets.AddUnit('lnet/lhttputil.pp', lnetOSes).install:=false;
  68. P.Targets.AddUnit('lnet/lmimetypes.pp', lnetOSes).install:=false;
  69. P.Targets.AddUnit('lnet/lnet.pp', lnetOSes).install:=false;
  70. P.Targets.AddUnit('lnet/lstrbuffer.pp', lnetOSes).install:=false;
  71. P.Targets.AddUnit('lnet/ltimer.pp', lnetOSes).install:=false;
  72. P.Targets.AddUnit('lnet/lws2tcpip.pp', WindowsOSes).install:=false;
  73. P.Sources.AddSrc('lnet/lsmtp.pp');
  74. P.Sources.AddSrc('lnet/lwebserver.pp');
  75. P.Sources.AddSrc('lnet/lfastcgi.pp');
  76. P.Sources.AddSrc('lnet/lcontainers.inc');
  77. P.Sources.AddSrc('lnet/lcontainersh.inc');
  78. P.Sources.AddSrc('lnet/lws2tcpip.pp');
  79. P.Sources.AddSrc('lnet/sys/lepolleventerh.inc');
  80. P.Sources.AddSrc('lnet/sys/lkqueueeventerh.inc');
  81. P.Sources.AddSrc('lnet/sys/lspawnfcgiwin.inc');
  82. P.Sources.AddSrc('lnet/sys/lepolleventer.inc');
  83. P.Sources.AddSrc('lnet/sys/lkqueueeventer.inc');
  84. P.Sources.AddSrc('lnet/sys/lspawnfcgiunix.inc');
  85. P.Sources.AddSrc('lnet/sys/osunits.inc');
  86. end;
  87. end;
  88. {$ifndef ALLPACKAGES}
  89. begin
  90. add_fppkg_util('');
  91. Installer.Run;
  92. end.
  93. {$endif ALLPACKAGES}