fpmake.pp 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248
  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-web');
  13. P.ShortName:='fclw';
  14. {$ifdef ALLPACKAGES}
  15. P.Directory:=ADirectory;
  16. {$endif ALLPACKAGES}
  17. P.Version:='3.1.1';
  18. P.OSes := [beos,haiku,freebsd,darwin,iphonesim,solaris,netbsd,openbsd,linux,win32,win64,wince,aix,amiga,aros,morphos,dragonfly];
  19. P.Dependencies.Add('fcl-base');
  20. P.Dependencies.Add('fcl-db');
  21. P.Dependencies.Add('fcl-xml');
  22. P.Dependencies.Add('fcl-json');
  23. P.Dependencies.Add('fcl-net');
  24. P.Dependencies.Add('fcl-process');
  25. P.Dependencies.Add('fastcgi');
  26. P.Dependencies.Add('httpd22', AllOses - [amiga,aros,morphos]);
  27. P.Dependencies.Add('httpd24', AllOses - [amiga,aros,morphos]);
  28. // (Temporary) indirect dependencies, not detected by fpcmake:
  29. P.Dependencies.Add('univint',[MacOSX,iphonesim]);
  30. P.Author := 'FreePascal development team';
  31. P.License := 'LGPL with modification, ';
  32. P.HomepageURL := 'www.freepascal.org';
  33. P.Email := '';
  34. P.Description := 'Web(app) related parts of Free Component Libraries (FCL), FPC''s OOP library.';
  35. P.NeedLibC:= false;
  36. P.SourcePath.Add('src/base');
  37. P.SourcePath.Add('src/webdata');
  38. P.SourcePath.Add('src/jsonrpc');
  39. T:=P.Targets.AddUnit('cgiapp.pp');
  40. T.ResourceStrings:=true;
  41. T:=P.Targets.AddUnit('custcgi.pp');
  42. T.ResourceStrings:=true;
  43. with T.Dependencies do
  44. begin
  45. AddUnit('httpprotocol');
  46. AddUnit('cgiprotocol');
  47. AddUnit('httpdefs');
  48. end;
  49. T:=P.Targets.AddUnit('ezcgi.pp');
  50. T:=P.Targets.AddUnit('fpcgi.pp');
  51. with T.Dependencies do
  52. begin
  53. AddUnit('httpdefs');
  54. AddUnit('fphttp');
  55. end;
  56. T:=P.Targets.AddUnit('fpdatasetform.pp');
  57. with T.Dependencies do
  58. begin
  59. AddUnit('fphtml');
  60. end;
  61. T:=P.Targets.AddUnit('fphtml.pp');
  62. T.ResourceStrings:=true;
  63. with T.Dependencies do
  64. begin
  65. AddUnit('httpdefs');
  66. AddUnit('fphttp');
  67. end;
  68. T:=P.Targets.AddUnit('fphttp.pp');
  69. T.ResourceStrings:=true;
  70. with T.Dependencies do
  71. begin
  72. AddUnit('httpdefs');
  73. end;
  74. T:=P.Targets.AddUnit('fpweb.pp');
  75. T.ResourceStrings:=true;
  76. with T.Dependencies do
  77. begin
  78. AddUnit('httpdefs');
  79. AddUnit('fphttp');
  80. AddUnit('websession');
  81. end;
  82. T:=P.Targets.AddUnit('httpprotocol.pp');
  83. T:=P.Targets.AddUnit('cgiprotocol.pp');
  84. T:=P.Targets.AddUnit('httpdefs.pp');
  85. T.Dependencies.AddUnit('httpprotocol');
  86. T.ResourceStrings:=true;
  87. T:=P.Targets.AddUnit('iniwebsession.pp');
  88. T.ResourceStrings:=true;
  89. with T.Dependencies do
  90. begin
  91. AddUnit('fphttp');
  92. AddUnit('httpdefs');
  93. end;
  94. T:=P.Targets.AddUnit('websession.pp');
  95. with T.Dependencies do
  96. begin
  97. AddUnit('iniwebsession');
  98. end;
  99. T:=P.Targets.AddUnit('webutil.pp');
  100. with T.Dependencies do
  101. begin
  102. AddUnit('httpdefs');
  103. end;
  104. with P.Targets.AddUnit('custweb.pp') do
  105. begin
  106. ResourceStrings:=true;
  107. Dependencies.AddUnit('httpdefs');
  108. Dependencies.AddUnit('fphttp');
  109. end;
  110. with P.Targets.AddUnit('webpage.pp') do
  111. begin
  112. Dependencies.AddUnit('httpdefs');
  113. Dependencies.AddUnit('fphtml');
  114. Dependencies.AddUnit('fpweb');
  115. end;
  116. with P.Targets.AddUnit('fpfcgi.pp') do
  117. begin
  118. OSes:=AllOses-[wince,darwin,iphonesim,aix,amiga,aros,morphos];
  119. Dependencies.AddUnit('custfcgi');
  120. end;
  121. with P.Targets.AddUnit('custfcgi.pp') do
  122. begin
  123. OSes:=AllOses-[wince,darwin,iphonesim,aix,amiga,aros,morphos];
  124. Dependencies.AddUnit('httpprotocol');
  125. Dependencies.AddUnit('cgiprotocol');
  126. Dependencies.AddUnit('custcgi');
  127. Dependencies.AddUnit('httpdefs');
  128. Dependencies.AddUnit('custweb');
  129. ResourceStrings:=true;
  130. end;
  131. with P.Targets.AddUnit('fpapache.pp') do
  132. begin
  133. OSes:=AllOses-[amiga,aros,morphos];
  134. Dependencies.AddUnit('httpprotocol');
  135. Dependencies.AddUnit('fphttp');
  136. Dependencies.AddUnit('custweb');
  137. ResourceStrings:=true;
  138. end;
  139. with P.Targets.AddUnit('fpapache24.pp') do
  140. begin
  141. OSes:=AllOses-[amiga,aros,morphos];
  142. Dependencies.AddUnit('fphttp');
  143. Dependencies.AddUnit('custweb');
  144. ResourceStrings:=true;
  145. end;
  146. T:=P.Targets.AddUnit('fcgigate.pp');
  147. T.ResourceStrings:=true;
  148. With T.Dependencies do
  149. begin
  150. AddUnit('httpdefs');
  151. AddUnit('custcgi');
  152. end;
  153. T:=P.Targets.AddUnit('fphttpserver.pp');
  154. T.ResourceStrings:=true;
  155. with T.Dependencies do
  156. begin
  157. AddUnit('httpdefs');
  158. end;
  159. T:=P.Targets.AddUnit('fphttpclient.pp');
  160. T.ResourceStrings:=true;
  161. T:=P.Targets.AddUnit('custhttpapp.pp');
  162. // T.ResourceStrings:=true;
  163. T:=P.Targets.AddUnit('fphttpapp.pp');
  164. T:=P.Targets.AddUnit('fpwebfile.pp');
  165. T.ResourceStrings:=true;
  166. T:=P.Targets.AddUnit('fpwebdata.pp');
  167. T.ResourceStrings:=true;
  168. With T.Dependencies do
  169. begin
  170. AddUnit('httpdefs');
  171. AddUnit('fphttp');
  172. AddUnit('websession');
  173. end;
  174. T:=P.Targets.AddUnit('sqldbwebdata.pp');
  175. T.ResourceStrings:=true;
  176. With T.Dependencies do
  177. begin
  178. AddUnit('fpwebdata');
  179. AddUnit('fphttp');
  180. end;
  181. T:=P.Targets.AddUnit('fpextjs.pp');
  182. T.ResourceStrings:=true;
  183. With T.Dependencies do
  184. begin
  185. AddUnit('fpwebdata');
  186. AddUnit('httpdefs');
  187. AddUnit('fphttp');
  188. end;
  189. T:=P.Targets.AddUnit('extjsxml.pp');
  190. T.ResourceStrings:=true;
  191. With T.Dependencies do
  192. begin
  193. AddUnit('fpwebdata');
  194. AddUnit('httpdefs');
  195. AddUnit('fpextjs');
  196. end;
  197. T:=P.Targets.AddUnit('extjsjson.pp');
  198. T.ResourceStrings:=true;
  199. With T.Dependencies do
  200. begin
  201. AddUnit('fpwebdata');
  202. AddUnit('httpdefs');
  203. AddUnit('fpextjs');
  204. end;
  205. T:=P.Targets.AddUnit('fpjsonrpc.pp');
  206. T.ResourceStrings:=true;
  207. T:=P.Targets.AddUnit('webjsonrpc.pp');
  208. With T.Dependencies do
  209. begin
  210. AddUnit('fpjsonrpc');
  211. end;
  212. T:=P.Targets.AddUnit('fpdispextdirect.pp');
  213. With T.Dependencies do
  214. begin
  215. AddUnit('fpjsonrpc');
  216. end;
  217. T:=P.Targets.AddUnit('fpextdirect.pp');
  218. T.ResourceStrings:=true;
  219. With T.Dependencies do
  220. begin
  221. AddUnit('fpdispextdirect');
  222. AddUnit('webjsonrpc');
  223. AddUnit('httpdefs');
  224. end;
  225. T:=P.Targets.AddUnit('fpwebclient.pp');
  226. T:=P.Targets.AddUnit('fpjwt.pp');
  227. T:=P.Targets.AddUnit('fpoauth2.pp');
  228. T.Dependencies.AddUnit('fpwebclient');
  229. T.Dependencies.AddUnit('fpjwt');
  230. T:=P.Targets.AddUnit('fpoauth2ini.pp');
  231. T.Dependencies.AddUnit('fpoauth2');
  232. T:=P.Targets.AddUnit('fphttpwebclient.pp');
  233. T.Dependencies.AddUnit('fpwebclient');
  234. T:=P.Targets.AddUnit('restbase.pp');
  235. T:=P.Targets.AddUnit('restcodegen.pp');
  236. {$ifndef ALLPACKAGES}
  237. Run;
  238. end;
  239. end.
  240. {$endif ALLPACKAGES}