fpmake.pp 8.3 KB

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