fpmake.pp 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604
  1. {$ifndef ALLPACKAGES}
  2. {$mode objfpc}{$H+}
  3. program fpmake;
  4. uses {$ifdef unix}cthreads,{$endif} fpmkunit;
  5. {$endif ALLPACKAGES}
  6. procedure add_fcl_web(const ADirectory: string);
  7. Const
  8. LibMicroHttpdOSes = AllUnixOSes + [win32,win64];
  9. SqldbConnectionOSes = [aix,beos,haiku,linux,freebsd,darwin,iphonesim,ios,netbsd,openbsd,solaris,win32,win64,wince,android,dragonfly];
  10. SqliteOSes = [aix,beos,haiku,linux,freebsd,darwin,iphonesim,ios,netbsd,openbsd,solaris,win32,win64,wince,android,dragonfly];
  11. NoSocketsOSes = [wasip1,wasip1threads];
  12. NoApacheOSes = [amiga,aros,morphos,wasip1,wasip1threads];
  13. NoCGIOSes = [amiga,aros,morphos,wasip1,wasip1threads];
  14. ApacheOSes = AllOSes - NoApacheOSes;
  15. SocketsOSes = AllOSes - NoSocketsOSes;
  16. CGIOSes = ALLOSes - NoCGIOSes;
  17. Var
  18. T : TTarget;
  19. P : TPackage;
  20. lOSes : TOSes;
  21. begin
  22. With Installer do
  23. begin
  24. P:=AddPackage('fcl-web');
  25. P.ShortName:='fclw';
  26. P.Directory:=ADirectory;
  27. P.Version:='3.3.1';
  28. P.OSes := [beos,haiku,freebsd,darwin,iphonesim,ios,solaris,netbsd,openbsd,linux,win32,win64,wince,aix,amiga,aros,morphos,dragonfly,android,wasip1,wasip1threads];
  29. if Defaults.CPU=jvm then
  30. P.OSes := P.OSes - [java,android];
  31. P.Dependencies.Add('fcl-base');
  32. P.Dependencies.Add('fcl-db');
  33. P.Dependencies.Add('fcl-xml');
  34. P.Dependencies.Add('fcl-json');
  35. P.Dependencies.Add('fcl-net',SocketsOSes);
  36. P.Dependencies.Add('fcl-process',SocketsOSes); // FGI-gate
  37. P.Dependencies.Add('fcl-fpcunit');
  38. P.Dependencies.Add('fcl-hash');
  39. P.Dependencies.Add('hash');
  40. P.Dependencies.Add('fcl-registry', AllWindowsOSes);
  41. P.Dependencies.Add('openssl', AllUnixOSes+AllWindowsOSes);
  42. P.Dependencies.Add('fastcgi',CGIOSes);
  43. {$ifndef ALLPACKAGES}
  44. P.Dependencies.Add('httpd20', ApacheOSes);
  45. {$endif ALLPACKAGES}
  46. P.Dependencies.Add('httpd22', ApacheOSes);
  47. P.Dependencies.Add('httpd24', ApacheOSes);
  48. P.Dependencies.Add('winunits-base', [Win32,Win64]);
  49. // (Temporary) indirect dependencies, not detected by fpcmake:
  50. P.Dependencies.Add('univint', [MacOSX,iphonesim,ios]);
  51. P.Dependencies.Add('libmicrohttpd', LibMicroHttpdOSes);
  52. P.Dependencies.Add('fcl-jsonschema');
  53. P.Dependencies.Add('fcl-openapi');
  54. P.Author := 'FreePascal development team';
  55. P.License := 'LGPL with modification, ';
  56. P.HomepageURL := 'www.freepascal.org';
  57. P.Email := '';
  58. P.Description := 'Web(app) related parts of Free Component Libraries (FCL), FPC''s OOP library.';
  59. P.NeedLibC:= false;
  60. P.SourcePath.Add('src/base');
  61. P.SourcePath.Add('src/webdata');
  62. P.SourcePath.Add('src/jwt');
  63. P.SourcePath.Add('src/jsonrpc');
  64. P.SourcePath.Add('src/hpack');
  65. P.SourcePath.Add('src/restbridge');
  66. P.SourcePath.Add('src/websocket');
  67. P.SourcePath.Add('src/fcm');
  68. P.SourcePath.Add('src/openapi');
  69. T:=P.Targets.addUnit('fpmimetypes.pp');
  70. T:=P.Targets.AddUnit('httpdefs.pp');
  71. T.ResourceStrings:=true;
  72. T.Dependencies.AddUnit('httpprotocol');
  73. T:=P.Targets.AddUnit('httproute.pp');
  74. T.ResourceStrings:=true;
  75. T.Dependencies.AddUnit('httpdefs');
  76. T:=P.Targets.AddUnit('httpjson.pp');
  77. T.ResourceStrings:=true;
  78. T.Dependencies.AddUnit('httpdefs');
  79. T.Dependencies.AddUnit('httpprotocol');
  80. T:=P.Targets.AddUnit('cgiapp.pp');
  81. T.ResourceStrings:=true;
  82. T:=P.Targets.AddUnit('custcgi.pp');
  83. T.ResourceStrings:=true;
  84. with T.Dependencies do
  85. begin
  86. AddUnit('httpprotocol');
  87. AddUnit('cgiprotocol');
  88. AddUnit('httpdefs');
  89. end;
  90. T:=P.Targets.AddUnit('ezcgi.pp');
  91. T:=P.Targets.AddUnit('fpcgi.pp');
  92. with T.Dependencies do
  93. begin
  94. AddUnit('httpdefs');
  95. AddUnit('fphttp');
  96. end;
  97. T:=P.Targets.AddUnit('fpdatasetform.pp');
  98. with T.Dependencies do
  99. begin
  100. AddUnit('fphtml');
  101. end;
  102. T:=P.Targets.AddUnit('fphtml.pp');
  103. T.ResourceStrings:=true;
  104. with T.Dependencies do
  105. begin
  106. AddUnit('httpdefs');
  107. AddUnit('fphttp');
  108. end;
  109. T:=P.Targets.AddUnit('fphttp.pp');
  110. T.ResourceStrings:=true;
  111. with T.Dependencies do
  112. begin
  113. AddUnit('httpdefs');
  114. end;
  115. T:=P.Targets.AddUnit('fpweb.pp');
  116. T.ResourceStrings:=true;
  117. with T.Dependencies do
  118. begin
  119. AddUnit('httpdefs');
  120. AddUnit('fphttp');
  121. AddUnit('websession');
  122. end;
  123. T:=P.Targets.AddUnit('httpprotocol.pp');
  124. T:=P.Targets.AddUnit('cgiprotocol.pp');
  125. T:=P.Targets.AddUnit('iniwebsession.pp');
  126. T.ResourceStrings:=true;
  127. with T.Dependencies do
  128. begin
  129. AddUnit('fphttp');
  130. AddUnit('httpdefs');
  131. end;
  132. T:=P.Targets.AddUnit('websession.pp');
  133. with T.Dependencies do
  134. begin
  135. AddUnit('iniwebsession');
  136. end;
  137. T:=P.Targets.AddUnit('webutil.pp');
  138. with T.Dependencies do
  139. begin
  140. AddUnit('httpdefs');
  141. end;
  142. with P.Targets.AddUnit('custweb.pp') do
  143. begin
  144. ResourceStrings:=true;
  145. Dependencies.AddUnit('httpdefs');
  146. Dependencies.AddUnit('httproute');
  147. Dependencies.AddUnit('fphttp');
  148. end;
  149. with P.Targets.AddUnit('webpage.pp') do
  150. begin
  151. Dependencies.AddUnit('httpdefs');
  152. Dependencies.AddUnit('fphtml');
  153. Dependencies.AddUnit('fpweb');
  154. end;
  155. with P.Targets.AddUnit('fpfcgi.pp') do
  156. begin
  157. OSes:=CGIOSes;
  158. Dependencies.AddUnit('custfcgi');
  159. end;
  160. with P.Targets.AddUnit('custfcgi.pp') do
  161. begin
  162. OSes:=CGIOSes;
  163. Dependencies.AddUnit('httpprotocol');
  164. Dependencies.AddUnit('cgiprotocol');
  165. Dependencies.AddUnit('custcgi');
  166. Dependencies.AddUnit('httpdefs');
  167. Dependencies.AddUnit('custweb');
  168. ResourceStrings:=true;
  169. end;
  170. with P.Targets.AddUnit('custapache.pp') do
  171. begin
  172. OSes:=ApacheOses;
  173. Dependencies.AddUnit('httpprotocol');
  174. Dependencies.AddUnit('fphttp');
  175. Dependencies.AddUnit('custweb');
  176. ResourceStrings:=true;
  177. end;
  178. with P.Targets.AddUnit('fpapache.pp') do
  179. begin
  180. OSes:=ApacheOSes;
  181. Dependencies.AddUnit('custapache');
  182. end;
  183. with P.Targets.AddUnit('custapache24.pp') do
  184. begin
  185. OSes:=ApacheOSes;
  186. Dependencies.AddUnit('fphttp');
  187. Dependencies.AddUnit('custweb');
  188. ResourceStrings:=true;
  189. end;
  190. with P.Targets.AddUnit('fpapache24.pp') do
  191. begin
  192. OSes:=ApacheOSes;
  193. Dependencies.AddUnit('custapache24');
  194. end;
  195. with P.Targets.AddUnit('custhttpsys.pp') do
  196. begin
  197. OSes:=[Win32,Win64];
  198. Dependencies.AddUnit('custweb');
  199. Dependencies.AddUnit('httpdefs');
  200. Dependencies.AddUnit('httpprotocol');
  201. ResourceStrings:=true;
  202. end;
  203. with P.Targets.AddUnit('fphttpsys.pp') do
  204. begin
  205. OSes:=[Win32,Win64];
  206. Dependencies.AddUnit('custhttpsys');
  207. end;
  208. with P.Targets.AddUnit('custmicrohttpapp.pp') do
  209. begin
  210. Dependencies.AddUnit('custweb');
  211. Dependencies.AddUnit('httpdefs');
  212. Dependencies.AddUnit('httpprotocol');
  213. ResourceStrings:=true;
  214. OSes := LibMicroHttpdOSes;
  215. if Defaults.CPU=jvm then
  216. OSes := OSes - [java,android];
  217. end;
  218. with P.Targets.AddUnit('microhttpapp.pp') do
  219. begin
  220. Dependencies.AddUnit('custweb');
  221. Dependencies.AddUnit('httpdefs');
  222. Dependencies.AddUnit('httpprotocol');
  223. Dependencies.AddUnit('custmicrohttpapp');
  224. OSes := LibMicroHttpdOSes;
  225. if Defaults.CPU=jvm then
  226. OSes := OSes - [java,android];
  227. end;
  228. with P.Targets.AddUnit('fphttpstatus.pas') do
  229. begin
  230. OSes:=SocketsOSes;
  231. Dependencies.AddUnit('fphttpserver');
  232. Dependencies.AddUnit('HTTPDefs');
  233. end;
  234. with P.Targets.AddUnit('fcgigate.pp') do
  235. begin
  236. OSes:=CGIOSes;
  237. ResourceStrings:=true;
  238. Dependencies.AddUnit('httpdefs');
  239. Dependencies.AddUnit('custcgi');
  240. end;
  241. T:=P.Targets.AddUnit('fphttpserver.pp');
  242. T.ResourceStrings:=true;
  243. T.OSes:=SocketsOSes;
  244. with T.Dependencies do
  245. begin
  246. AddUnit('httpdefs');
  247. end;
  248. T:=P.Targets.AddUnit('fphttpclient.pp');
  249. T.OSes:=SocketsOSes;
  250. T.ResourceStrings:=true;
  251. T:=P.Targets.AddUnit('custhttpapp.pp');
  252. T.OSes:=SocketsOSes;
  253. // T.ResourceStrings:=true;
  254. T:=P.Targets.AddUnit('fphttpapp.pp');
  255. T.OSes:=SocketsOSes;
  256. T:=P.Targets.AddUnit('fpwebfile.pp');
  257. With T.Dependencies do
  258. begin
  259. AddUnit('fphttp');
  260. AddUnit('httpdefs');
  261. AddUnit('httproute');
  262. end;
  263. T:=P.Targets.AddUnit('fpdebugcapturesvc.pp');
  264. With T.Dependencies do
  265. begin
  266. AddUnit('fphttp');
  267. AddUnit('httpdefs');
  268. AddUnit('httproute');
  269. end;
  270. T:=P.Targets.AddUnit('fpwebproxy.pp');
  271. T.OSes:=SocketsOSes;
  272. With T.Dependencies do
  273. begin
  274. AddUnit('fphttp');
  275. AddUnit('httpdefs');
  276. AddUnit('httpprotocol');
  277. AddUnit('fphttpclient');
  278. end;
  279. T.ResourceStrings:=true;
  280. T:=P.Targets.AddUnit('fpwebdata.pp');
  281. T.ResourceStrings:=true;
  282. With T.Dependencies do
  283. begin
  284. AddUnit('httpdefs');
  285. AddUnit('fphttp');
  286. AddUnit('websession');
  287. end;
  288. T:=P.Targets.AddUnit('sqldbwebdata.pp');
  289. T.ResourceStrings:=true;
  290. T.OSes:=SqldbConnectionOSes;
  291. With T.Dependencies do
  292. begin
  293. AddUnit('fpwebdata');
  294. AddUnit('fphttp');
  295. end;
  296. T:=P.Targets.AddUnit('fpextjs.pp');
  297. T.ResourceStrings:=true;
  298. With T.Dependencies do
  299. begin
  300. AddUnit('fpwebdata');
  301. AddUnit('httpdefs');
  302. AddUnit('fphttp');
  303. end;
  304. T:=P.Targets.AddUnit('extjsxml.pp');
  305. T.ResourceStrings:=true;
  306. With T.Dependencies do
  307. begin
  308. AddUnit('fpwebdata');
  309. AddUnit('httpdefs');
  310. AddUnit('fpextjs');
  311. end;
  312. T:=P.Targets.AddUnit('extjsjson.pp');
  313. T.ResourceStrings:=true;
  314. With T.Dependencies do
  315. begin
  316. AddUnit('fpwebdata');
  317. AddUnit('httpdefs');
  318. AddUnit('fpextjs');
  319. end;
  320. T:=P.Targets.AddUnit('fprpcstrings.pp');
  321. T.ResourceStrings:=true;
  322. T:=P.Targets.AddUnit('fpjsonrpc.pp');
  323. T:=P.Targets.AddUnit('webjsonrpc.pp');
  324. With T.Dependencies do
  325. begin
  326. AddUnit('fpjsonrpc');
  327. end;
  328. T:=P.Targets.AddUnit('fprpcrtti.pp');
  329. With T.Dependencies do
  330. begin
  331. AddUnit('fpjsonrpc');
  332. end;
  333. T:=P.Targets.AddUnit('fprpcclient.pp');
  334. T.OSes:=SocketsOSes;
  335. T.Dependencies.AddUnit('fpwebclient');
  336. T.Dependencies.AddUnit('fphttpwebclient');
  337. T:=P.Targets.AddUnit('fprpccodegen.pp');
  338. T:=P.Targets.AddUnit('fpdispextdirect.pp');
  339. T.OSes:=AllOSes-[wasip1,wasip1threads];
  340. With T.Dependencies do
  341. begin
  342. AddUnit('fpjsonrpc');
  343. end;
  344. T:=P.Targets.AddUnit('fpextdirect.pp');
  345. T.OSes:=AllOSes-[wasip1,wasip1threads];
  346. With T.Dependencies do
  347. begin
  348. AddUnit('fpdispextdirect');
  349. AddUnit('webjsonrpc');
  350. AddUnit('httpdefs');
  351. end;
  352. T:=P.Targets.AddUnit('fpwebclient.pp');
  353. T:=P.Targets.AddUnit('fpjwt.pp');
  354. T:=P.Targets.AddUnit('fpoauth2.pp');
  355. T.ResourceStrings:=true;
  356. T.Dependencies.AddUnit('fpwebclient');
  357. T.Dependencies.AddUnit('fpjwt');
  358. T:=P.Targets.AddUnit('fpoauth2ini.pp');
  359. T.Dependencies.AddUnit('fpoauth2');
  360. T:=P.Targets.AddUnit('fpjwasha256.pp');
  361. T.Dependencies.AddUnit('fpjwt');
  362. T:=P.Targets.AddUnit('fpjwasha512.pp');
  363. T.Dependencies.AddUnit('fpjwt');
  364. T:=P.Targets.AddUnit('fpjwasha384.pp');
  365. T.Dependencies.AddUnit('fpjwt');
  366. T:=P.Targets.AddUnit('fpjwaes256.pp');
  367. T.Dependencies.AddUnit('fpjwt');
  368. T:=P.Targets.AddUnit('fpjwarsa.pp');
  369. T.Dependencies.AddUnit('fpjwt');
  370. T:=P.Targets.AddUnit('fphttpwebclient.pp');
  371. T.oses:=SocketsOSes;
  372. T.Dependencies.AddUnit('fpwebclient');
  373. T:=P.Targets.AddUnit('restbase.pp');
  374. T:=P.Targets.AddUnit('restcodegen.pp');
  375. T:=P.Targets.AddUnit('uhpacktables.pp');
  376. T:=P.Targets.AddUnit('uhpackimp.pp');
  377. With T.Dependencies do
  378. AddUnit('uhpacktables');
  379. T:=P.Targets.AddUnit('uhpack.pp');
  380. With T.Dependencies do
  381. begin
  382. AddUnit('uhpackimp');
  383. end;
  384. T:=P.Targets.AddUnit('sqldbrestconst.pp');
  385. T.ResourceStrings:=true;
  386. T.OSes:=SqldbConnectionOSes;
  387. T:=P.Targets.AddUnit('sqldbrestschema.pp');
  388. T.OSes:=SqldbConnectionOSes;
  389. With T.Dependencies do
  390. begin
  391. AddUnit('sqldbrestconst');
  392. end;
  393. T:=P.Targets.AddUnit('sqldbrestio.pp');
  394. T.OSes:=SqldbConnectionOSes;
  395. With T.Dependencies do
  396. begin
  397. AddUnit('sqldbrestconst');
  398. AddUnit('sqldbrestschema');
  399. end;
  400. T:=P.Targets.AddUnit('sqldbrestdata.pp');
  401. T.OSes:=SqldbConnectionOSes;
  402. With T.Dependencies do
  403. begin
  404. AddUnit('sqldbrestconst');
  405. AddUnit('sqldbrestschema');
  406. AddUnit('sqldbrestio');
  407. end;
  408. T:=P.Targets.AddUnit('sqldbrestauth.pp');
  409. T.OSes:=SqldbConnectionOSes;
  410. With T.Dependencies do
  411. begin
  412. AddUnit('sqldbrestconst');
  413. AddUnit('sqldbrestio');
  414. AddUnit('sqldbrestschema');
  415. end;
  416. T:=P.Targets.AddUnit('sqldbrestjson.pp');
  417. T.OSes:=SqldbConnectionOSes;
  418. With T.Dependencies do
  419. begin
  420. AddUnit('sqldbrestio');
  421. AddUnit('sqldbrestschema');
  422. AddUnit('sqldbrestconst');
  423. end;
  424. T:=P.Targets.AddUnit('sqldbrestbridge.pp');
  425. T.OSes:=SqldbConnectionOSes;
  426. With T.Dependencies do
  427. begin
  428. AddUnit('sqldbrestio');
  429. AddUnit('sqldbrestdata');
  430. AddUnit('sqldbrestschema');
  431. AddUnit('sqldbrestconst');
  432. end;
  433. T:=P.Targets.AddUnit('sqldbrestcds.pp');
  434. T.OSes:=SqldbConnectionOSes;
  435. With T.Dependencies do
  436. begin
  437. AddUnit('sqldbrestio');
  438. AddUnit('sqldbrestschema');
  439. AddUnit('sqldbrestconst');
  440. end;
  441. T:=P.Targets.AddUnit('sqldbrestcsv.pp');
  442. T.OSes:=SqldbConnectionOSes;
  443. With T.Dependencies do
  444. begin
  445. AddUnit('sqldbrestio');
  446. AddUnit('sqldbrestschema');
  447. AddUnit('sqldbrestconst');
  448. end;
  449. T:=P.Targets.AddUnit('sqldbrestxml.pp');
  450. T.OSes:=SqldbConnectionOSes;
  451. With T.Dependencies do
  452. begin
  453. AddUnit('sqldbrestio');
  454. AddUnit('sqldbrestschema');
  455. AddUnit('sqldbrestconst');
  456. end;
  457. T:=P.Targets.AddUnit('sqldbrestado.pp');
  458. T.OSes:=SqldbConnectionOSes;
  459. With T.Dependencies do
  460. begin
  461. AddUnit('sqldbrestio');
  462. AddUnit('sqldbrestschema');
  463. AddUnit('sqldbrestconst');
  464. end;
  465. T:=P.Targets.AddUnit('sqldbrestini.pp');
  466. T.OSes:=SqldbConnectionOSes;
  467. With T.Dependencies do
  468. begin
  469. AddUnit('sqldbrestbridge');
  470. AddUnit('sqldbrestschema');
  471. AddUnit('sqldbrestconst');
  472. end;
  473. T:=P.Targets.AddUnit('sqldbrestauthini.pp');
  474. T.OSes:=SqldbConnectionOSes;
  475. With T.Dependencies do
  476. begin
  477. AddUnit('sqldbrestauth');
  478. AddUnit('sqldbrestschema');
  479. AddUnit('sqldbrestconst');
  480. end;
  481. T:=P.Targets.AddUnit('sqldbrestmodule.pp');
  482. T.OSes:=SqldbConnectionOSes;
  483. With T.Dependencies do
  484. begin
  485. AddUnit('sqldbrestbridge');
  486. AddUnit('sqldbrestconst');
  487. end;
  488. T:=P.Targets.AddUnit('fpwebsocket.pp');
  489. T.OSes:=SocketsOSes;
  490. T.Resourcestrings:=True;
  491. T:=P.Targets.AddUnit('fpcustwsserver.pp');
  492. T.OSes:=SocketsOSes;
  493. With T.Dependencies do
  494. begin
  495. AddUnit('fpwebsocket');
  496. end;
  497. T:=P.Targets.AddUnit('fpwebsocketserver.pp');
  498. T.OSes:=SocketsOSes;
  499. With T.Dependencies do
  500. begin
  501. AddUnit('fpwebsocket');
  502. AddUnit('fpcustwsserver');
  503. end;
  504. T:=P.Targets.AddUnit('fpwebsocketclient.pp');
  505. T.OSes:=SocketsOSes;
  506. With T.Dependencies do
  507. begin
  508. AddUnit('fpwebsocket');
  509. end;
  510. T:=P.Targets.AddUnit('wsupgrader.pp');
  511. T.OSes:=SocketsOSes;
  512. With T.Dependencies do
  513. begin
  514. AddUnit('fpwebsocket');
  515. AddUnit('fpcustwsserver');
  516. end;
  517. end;
  518. T:=P.Targets.AddUnit('fphttpclientpool.pas');
  519. T.OSes:=SocketsOSes;
  520. T.Resourcestrings:=True;
  521. With T.Dependencies do
  522. begin
  523. AddUnit('fphttpclient');
  524. end;
  525. T:=P.Targets.AddUnit('fphttpclientasyncpool.pas');
  526. T.OSes:=SocketsOSes;
  527. With T.Dependencies do
  528. begin
  529. AddUnit('fphttpclient');
  530. AddUnit('fphttpclientpool');
  531. end;
  532. P.NamespaceMap:='namespaces.lst';
  533. T:=P.Targets.AddUnit('fpfcmstrings.pp');
  534. T:=P.Targets.AddUnit('fpfcmtypes.pp');
  535. With T.Dependencies do
  536. begin
  537. AddUnit('fpjwt');
  538. AddUnit('fpfcmstrings');
  539. end;
  540. T:=P.Targets.AddUnit('fpfcmclient.pp');
  541. With T.Dependencies do
  542. begin
  543. AddUnit('fpfcmstrings');
  544. AddUnit('fpfcmtypes');
  545. end;
  546. T:=P.Targets.AddUnit('fpsimpleserver.pp');
  547. T.OSes:=SocketsOSes;
  548. With T.Dependencies do
  549. begin
  550. AddUnit('httpdefs');
  551. AddUnit('httproute');
  552. AddUnit('fpwebfile');
  553. AddUnit('fpwebproxy');
  554. AddUnit('webutil');
  555. AddUnit('fpdebugcapturesvc');
  556. AddUnit('custhttpapp');
  557. lOSes := LibMicroHttpdOSes;
  558. if Defaults.CPU=jvm then
  559. lOSes := lOSes - [java,android];
  560. AddUnit('custmicrohttpapp',lOSes);
  561. end;
  562. T:=P.Targets.AddUnit('fpopenapiclient.pp');
  563. T.Dependencies.AddUnit('fpwebclient');
  564. T:=P.Targets.AddUnit('fpopenapimodule.pp');
  565. T.Dependencies.AddUnit('httpprotocol');
  566. T.Dependencies.AddUnit('httpdefs');
  567. T.Dependencies.AddUnit('httproute');
  568. end;
  569. {$ifndef ALLPACKAGES}
  570. begin
  571. add_fcl_web('');
  572. Installer.Run;
  573. end.
  574. {$endif ALLPACKAGES}