fpmake.pp 7.5 KB

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