fpmake.pp 7.9 KB

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