fpmake.pp 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623
  1. {$ifndef ALLPACKAGES}
  2. {$mode objfpc}{$H+}
  3. program fpmake;
  4. uses fpmkunit;
  5. Var
  6. P : TPackage;
  7. T : TTarget;
  8. begin
  9. With Installer do
  10. begin
  11. {$endif ALLPACKAGES}
  12. P:=AddPackage('fcl-db');
  13. P.Author := '<various>';
  14. P.License := 'LGPL with modification, ';
  15. P.HomepageURL := 'www.freepascal.org';
  16. P.Email := '';
  17. P.Description := 'Database library of Free Component Libraries(FCL), FPC''s OOP library.';
  18. P.NeedLibC:= false;
  19. {$ifdef ALLPACKAGES}
  20. P.Directory:='fcl-db';
  21. {$endif ALLPACKAGES}
  22. P.Version:='2.2.2-0';
  23. P.SourcePath.Add('src');
  24. P.SourcePath.Add('src/base');
  25. P.SourcePath.Add('src/paradox');
  26. P.SourcePath.Add('src/sqldb');
  27. P.SourcePath.Add('src/sqldb/postgres');
  28. P.SourcePath.Add('src/sqldb/sqlite');
  29. P.SourcePath.Add('src/sqldb/interbase');
  30. P.SourcePath.Add('src/sqldb/mysql');
  31. P.SourcePath.Add('src/sqldb/odbc');
  32. P.SourcePath.Add('src/sqldb/examples');
  33. P.SourcePath.Add('src/sqldb/oracle');
  34. P.SourcePath.Add('src/sdf');
  35. P.SourcePath.Add('src/datadict');
  36. P.SourcePath.Add('src/memds');
  37. P.SourcePath.Add('src/codegen');
  38. P.SourcePath.Add('src/export');
  39. P.SourcePath.Add('src/sqlite');
  40. P.SourcePath.Add('src/dbase');
  41. P.IncludePath.Add('src/base');
  42. P.IncludePath.Add('src/sqldb');
  43. P.IncludePath.Add('src/sqldb/postgres');
  44. P.IncludePath.Add('src/sqldb/mysql');
  45. P.IncludePath.Add('src/sdf');
  46. P.IncludePath.Add('src/memds');
  47. P.IncludePath.Add('src/sqlite');
  48. P.IncludePath.Add('src/dbase');
  49. P.Dependencies.Add('fcl-base');
  50. P.Dependencies.Add('fcl-xml');
  51. P.Dependencies.Add('ibase');
  52. P.Dependencies.Add('mysql');
  53. P.Dependencies.Add('odbc');
  54. P.Dependencies.Add('oracle');
  55. P.Dependencies.Add('postgres');
  56. P.Dependencies.Add('sqlite');
  57. P.Dependencies.Add('pxlib');
  58. P.Options.Add('-S2h');
  59. // base
  60. T:=P.Targets.AddUnit('bufdataset.pas');
  61. with T.Dependencies do
  62. begin
  63. AddUnit('db');
  64. AddUnit('bufdataset_parser');
  65. AddUnit('dbconst');
  66. end;
  67. T:=P.Targets.AddUnit('bufdataset_parser.pp');
  68. with T.Dependencies do
  69. begin
  70. AddUnit('db');
  71. AddUnit('dbf_prscore');
  72. AddUnit('dbf_prsdef');
  73. AddUnit('dbconst');
  74. end;
  75. T:=P.Targets.AddUnit('db.pas');
  76. with T.Dependencies do
  77. begin
  78. AddInclude('dataset.inc');
  79. AddInclude('fields.inc');
  80. AddInclude('datasource.inc');
  81. AddInclude('database.inc');
  82. AddInclude('dsparams.inc');
  83. AddUnit('dbconst');
  84. end;
  85. T:=P.Targets.AddUnit('dbcoll.pp');
  86. with T.Dependencies do
  87. begin
  88. AddUnit('db');
  89. end;
  90. T:=P.Targets.AddUnit('dbconst.pas');
  91. T.ResourceStrings:=true;
  92. T:=P.Targets.AddUnit('sqlscript.pp');
  93. T.ResourceStrings:=true;
  94. T:=P.Targets.AddUnit('dbwhtml.pp');
  95. with T.Dependencies do
  96. begin
  97. AddUnit('db');
  98. AddUnit('dbconst');
  99. end;
  100. T:=P.Targets.AddUnit('xmldatapacketreader.pp');
  101. T.ResourceStrings:=true;
  102. with T.Dependencies do
  103. begin
  104. AddUnit('bufdataset');
  105. AddUnit('db');
  106. end;
  107. // dbase
  108. T:=P.Targets.AddUnit('dbf.pas');
  109. with T.Dependencies do
  110. begin
  111. AddInclude('dbf_common.inc');
  112. AddUnit('db');
  113. AddUnit('dbf_common');
  114. AddUnit('dbf_dbffile');
  115. AddUnit('dbf_parser');
  116. AddUnit('dbf_prsdef');
  117. AddUnit('dbf_cursor');
  118. AddUnit('dbf_fields');
  119. AddUnit('dbf_pgfile');
  120. AddUnit('dbf_idxfile');
  121. AddUnit('dbf_wtil');
  122. AddUnit('dbf_idxcur');
  123. AddUnit('dbf_memo');
  124. AddUnit('dbf_str');
  125. end;
  126. T:=P.Targets.AddUnit('dbf_collate.pas');
  127. with T.Dependencies do
  128. begin
  129. AddInclude('dbf_common.inc');
  130. AddUnit('dbf_lang');
  131. end;
  132. T:=P.Targets.AddUnit('dbf_common.pas');
  133. with T.Dependencies do
  134. begin
  135. AddInclude('dbf_common.inc');
  136. AddUnit('db');
  137. AddUnit('dbf_wtil');
  138. end;
  139. T:=P.Targets.AddUnit('dbf_cursor.pas');
  140. with T.Dependencies do
  141. begin
  142. AddInclude('dbf_common.inc');
  143. AddUnit('dbf_pgfile');
  144. AddUnit('dbf_common');
  145. end;
  146. T:=P.Targets.AddUnit('dbf_dbffile.pas');
  147. with T.Dependencies do
  148. begin
  149. AddInclude('dbf_common.inc');
  150. AddInclude('dbf_struct.inc');
  151. AddUnit('dbf_wtil');
  152. AddUnit('db');
  153. AddUnit('dbf_common');
  154. AddUnit('dbf_cursor');
  155. AddUnit('dbf_pgfile');
  156. AddUnit('dbf_fields');
  157. AddUnit('dbf_memo');
  158. AddUnit('dbf_idxfile');
  159. AddUnit('dbf_str');
  160. AddUnit('dbf_lang');
  161. AddUnit('dbf_prssupp');
  162. AddUnit('dbf_prsdef');
  163. end;
  164. T:=P.Targets.AddUnit('dbf_fields.pas');
  165. with T.Dependencies do
  166. begin
  167. AddInclude('dbf_common.inc');
  168. AddInclude('dbf_struct.inc');
  169. AddUnit('db');
  170. AddUnit('dbf_common');
  171. AddUnit('dbf_str');
  172. AddUnit('dbf_dbffile');
  173. end;
  174. T:=P.Targets.AddUnit('dbf_idxcur.pas');
  175. with T.Dependencies do
  176. begin
  177. AddInclude('dbf_common.inc');
  178. AddUnit('dbf_cursor');
  179. AddUnit('dbf_idxfile');
  180. AddUnit('dbf_prsdef');
  181. AddUnit('dbf_wtil');
  182. AddUnit('dbf_common');
  183. end;
  184. T:=P.Targets.AddUnit('dbf_idxfile.pas');
  185. with T.Dependencies do
  186. begin
  187. AddInclude('dbf_common.inc');
  188. AddUnit('dbf_wtil');
  189. AddUnit('db');
  190. AddUnit('dbf_pgfile');
  191. AddUnit('dbf_parser');
  192. AddUnit('dbf_prsdef');
  193. AddUnit('dbf_cursor');
  194. AddUnit('dbf_collate');
  195. AddUnit('dbf_common');
  196. AddUnit('dbf_dbffile');
  197. AddUnit('dbf_fields');
  198. AddUnit('dbf_str');
  199. AddUnit('dbf_prssupp');
  200. AddUnit('dbf_prscore');
  201. AddUnit('dbf_lang');
  202. end;
  203. T:=P.Targets.AddUnit('dbf_lang.pas');
  204. with T.Dependencies do
  205. begin
  206. AddInclude('dbf_common.inc');
  207. AddUnit('dbf_wtil');
  208. end;
  209. T:=P.Targets.AddUnit('dbf_memo.pas');
  210. with T.Dependencies do
  211. begin
  212. AddInclude('dbf_common.inc');
  213. AddUnit('dbf_pgfile');
  214. AddUnit('dbf_common');
  215. AddUnit('dbf_dbffile');
  216. end;
  217. T:=P.Targets.AddUnit('dbf_parser.pas');
  218. with T.Dependencies do
  219. begin
  220. AddInclude('dbf_common.inc');
  221. AddUnit('dbf_wtil');
  222. AddUnit('db');
  223. AddUnit('dbf_prscore');
  224. AddUnit('dbf_common');
  225. AddUnit('dbf_fields');
  226. AddUnit('dbf_prsdef');
  227. AddUnit('dbf_prssupp');
  228. AddUnit('dbf');
  229. AddUnit('dbf_dbffile');
  230. AddUnit('dbf_str');
  231. end;
  232. T:=P.Targets.AddUnit('dbf_pgfile.pas');
  233. with T.Dependencies do
  234. begin
  235. AddInclude('dbf_common.inc');
  236. AddUnit('dbf_common');
  237. AddUnit('dbf_wtil');
  238. AddUnit('dbf_str');
  239. end;
  240. T:=P.Targets.AddUnit('dbf_prscore.pas');
  241. with T.Dependencies do
  242. begin
  243. AddInclude('dbf_common.inc');
  244. AddUnit('db');
  245. AddUnit('dbf_prssupp');
  246. AddUnit('dbf_prsdef');
  247. end;
  248. T:=P.Targets.AddUnit('dbf_prsdef.pas');
  249. with T.Dependencies do
  250. begin
  251. AddInclude('dbf_common.inc');
  252. AddUnit('db');
  253. AddUnit('dbf_prssupp');
  254. end;
  255. T:=P.Targets.AddUnit('dbf_prssupp.pas');
  256. with T.Dependencies do
  257. begin
  258. AddInclude('dbf_common.inc');
  259. AddInclude('getstrfromint.inc');
  260. AddInclude('getstrfromint.inc');
  261. end;
  262. T:=P.Targets.AddUnit('dbf_str.pas');
  263. with T.Dependencies do
  264. begin
  265. AddInclude('dbf_common.inc');
  266. AddInclude('dbf_str.inc');
  267. end;
  268. T:=P.Targets.AddUnit('dbf_wtil.pas');
  269. with T.Dependencies do
  270. begin
  271. AddInclude('dbf_common.inc');
  272. end;
  273. T:=P.Targets.AddUnit('fpcgcreatedbf.pp');
  274. with T.Dependencies do
  275. begin
  276. AddUnit('fpddcodegen');
  277. AddUnit('db');
  278. end;
  279. T:=P.Targets.AddUnit('fpcgdbcoll.pp');
  280. with T.Dependencies do
  281. begin
  282. AddUnit('db');
  283. AddUnit('fpddcodegen');
  284. end;
  285. T:=P.Targets.AddUnit('fpcgsqlconst.pp');
  286. with T.Dependencies do
  287. begin
  288. AddUnit('fpddcodegen');
  289. end;
  290. T:=P.Targets.AddUnit('fpcgtiopf.pp');
  291. with T.Dependencies do
  292. begin
  293. AddUnit('db');
  294. AddUnit('fpddcodegen');
  295. end;
  296. T:=P.Targets.AddUnit('fpcsvexport.pp');
  297. with T.Dependencies do
  298. begin
  299. AddUnit('db');
  300. AddUnit('fpdbexport');
  301. end;
  302. T:=P.Targets.AddUnit('fpdatadict.pp');
  303. with T.Dependencies do
  304. begin
  305. AddUnit('db');
  306. end;
  307. T:=P.Targets.AddUnit('fpdbexport.pp');
  308. with T.Dependencies do
  309. begin
  310. AddUnit('db');
  311. end;
  312. T:=P.Targets.AddUnit('fpdbfexport.pp');
  313. with T.Dependencies do
  314. begin
  315. AddUnit('db');
  316. AddUnit('dbf');
  317. AddUnit('fpdbexport');
  318. end;
  319. T:=P.Targets.AddUnit('fpddcodegen.pp');
  320. with T.Dependencies do
  321. begin
  322. AddUnit('db');
  323. AddUnit('fpdatadict');
  324. end;
  325. T:=P.Targets.AddUnit('fpdddbf.pp');
  326. with T.Dependencies do
  327. begin
  328. AddUnit('db');
  329. AddUnit('dbf');
  330. AddUnit('fpdatadict');
  331. AddUnit('dbf_idxfile');
  332. end;
  333. T:=P.Targets.AddUnit('fpddfb.pp');
  334. with T.Dependencies do
  335. begin
  336. AddUnit('sqldb');
  337. AddUnit('fpdatadict');
  338. AddUnit('fpddsqldb');
  339. AddUnit('ibconnection');
  340. end;
  341. T:=P.Targets.AddUnit('fpddmysql40.pp');
  342. with T.Dependencies do
  343. begin
  344. AddUnit('sqldb');
  345. AddUnit('fpdatadict');
  346. AddUnit('fpddsqldb');
  347. AddUnit('mysql40conn');
  348. end;
  349. T:=P.Targets.AddUnit('fpddmysql41.pp');
  350. with T.Dependencies do
  351. begin
  352. AddUnit('sqldb');
  353. AddUnit('fpdatadict');
  354. AddUnit('fpddsqldb');
  355. AddUnit('mysql41conn');
  356. end;
  357. T:=P.Targets.AddUnit('fpddmysql50.pp');
  358. with T.Dependencies do
  359. begin
  360. AddUnit('sqldb');
  361. AddUnit('fpdatadict');
  362. AddUnit('fpddsqldb');
  363. AddUnit('mysql50conn');
  364. end;
  365. T:=P.Targets.AddUnit('fpddodbc.pp');
  366. with T.Dependencies do
  367. begin
  368. AddUnit('sqldb');
  369. AddUnit('fpdatadict');
  370. AddUnit('fpddsqldb');
  371. AddUnit('odbcconn');
  372. end;
  373. T:=P.Targets.AddUnit('fpddoracle.pp');
  374. with T.Dependencies do
  375. begin
  376. AddUnit('sqldb');
  377. AddUnit('fpdatadict');
  378. AddUnit('fpddsqldb');
  379. AddUnit('oracleconnection');
  380. end;
  381. T:=P.Targets.AddUnit('fpddpq.pp');
  382. with T.Dependencies do
  383. begin
  384. AddUnit('sqldb');
  385. AddUnit('fpdatadict');
  386. AddUnit('fpddsqldb');
  387. AddUnit('pqconnection');
  388. end;
  389. T:=P.Targets.AddUnit('fpddregstd.pp');
  390. with T.Dependencies do
  391. begin
  392. AddUnit('fpdatadict');
  393. AddUnit('fpdddbf');
  394. AddUnit('fpddfb');
  395. AddUnit('fpddpq');
  396. AddUnit('fpddoracle');
  397. AddUnit('fpddsqlite3');
  398. AddUnit('fpddmysql40');
  399. AddUnit('fpddmysql41');
  400. AddUnit('fpddmysql50');
  401. AddUnit('fpddodbc');
  402. end;
  403. T:=P.Targets.AddUnit('customsqliteds.pas');
  404. with T.Dependencies do
  405. begin
  406. AddUnit('db');
  407. AddUnit('dbconst');
  408. end;
  409. T:=P.Targets.AddUnit('fpddsqldb.pp');
  410. with T.Dependencies do
  411. begin
  412. AddUnit('db');
  413. AddUnit('sqldb');
  414. AddUnit('fpdatadict');
  415. end;
  416. T:=P.Targets.AddUnit('fpddsqlite3.pp');
  417. with T.Dependencies do
  418. begin
  419. AddUnit('sqldb');
  420. AddUnit('fpdatadict');
  421. AddUnit('fpddsqldb');
  422. AddUnit('sqlite3conn');
  423. end;
  424. T:=P.Targets.AddUnit('fpfixedexport.pp');
  425. with T.Dependencies do
  426. begin
  427. AddUnit('db');
  428. AddUnit('fpdbexport');
  429. end;
  430. T:=P.Targets.AddUnit('fprtfexport.pp');
  431. with T.Dependencies do
  432. begin
  433. AddUnit('db');
  434. AddUnit('fpdbexport');
  435. end;
  436. T:=P.Targets.AddUnit('fpsimplejsonexport.pp');
  437. with T.Dependencies do
  438. begin
  439. AddUnit('db');
  440. AddUnit('fpdbexport');
  441. end;
  442. T:=P.Targets.AddUnit('fpsimplexmlexport.pp');
  443. with T.Dependencies do
  444. begin
  445. AddUnit('db');
  446. AddUnit('fpdbexport');
  447. end;
  448. T:=P.Targets.AddUnit('fpsqlexport.pp');
  449. with T.Dependencies do
  450. begin
  451. AddUnit('db');
  452. AddUnit('fpdbexport');
  453. end;
  454. T:=P.Targets.AddUnit('fpstdexports.pp');
  455. with T.Dependencies do
  456. begin
  457. AddUnit('fpdbexport');
  458. AddUnit('fpcsvexport');
  459. AddUnit('fpfixedexport');
  460. AddUnit('fpsimplexmlexport');
  461. AddUnit('fpsimplejsonexport');
  462. AddUnit('fpsqlexport');
  463. AddUnit('fptexexport');
  464. AddUnit('fprtfexport');
  465. AddUnit('fpdbfexport');
  466. end;
  467. T:=P.Targets.AddUnit('fptexexport.pp');
  468. with T.Dependencies do
  469. begin
  470. AddUnit('db');
  471. AddUnit('fpdbexport');
  472. end;
  473. T:=P.Targets.AddUnit('ibconnection.pp');
  474. with T.Dependencies do
  475. begin
  476. AddUnit('sqldb');
  477. AddUnit('db');
  478. AddUnit('dbconst');
  479. AddUnit('bufdataset');
  480. end;
  481. T:=P.Targets.AddUnit('memds.pp');
  482. with T.Dependencies do
  483. begin
  484. AddUnit('db');
  485. end;
  486. T:=P.Targets.AddUnit('mysql40conn.pas');
  487. with T.Dependencies do
  488. begin
  489. AddInclude('mysqlconn.inc');
  490. AddUnit('bufdataset');
  491. AddUnit('sqldb');
  492. AddUnit('db');
  493. AddUnit('dbconst');
  494. end;
  495. T:=P.Targets.AddUnit('mysql41conn.pas');
  496. with T.Dependencies do
  497. begin
  498. AddInclude('mysqlconn.inc');
  499. AddUnit('bufdataset');
  500. AddUnit('sqldb');
  501. AddUnit('db');
  502. AddUnit('dbconst');
  503. end;
  504. T:=P.Targets.AddUnit('mysql4conn.pas');
  505. with T.Dependencies do
  506. begin
  507. AddInclude('mysqlconn.inc');
  508. AddUnit('bufdataset');
  509. AddUnit('sqldb');
  510. AddUnit('db');
  511. AddUnit('dbconst');
  512. end;
  513. T:=P.Targets.AddUnit('mysql50conn.pas');
  514. with T.Dependencies do
  515. begin
  516. AddInclude('mysqlconn.inc');
  517. AddUnit('bufdataset');
  518. AddUnit('sqldb');
  519. AddUnit('db');
  520. AddUnit('dbconst');
  521. end;
  522. T:=P.Targets.AddUnit('odbcconn.pas');
  523. with T.Dependencies do
  524. begin
  525. AddUnit('sqldb');
  526. AddUnit('db');
  527. AddUnit('bufdataset');
  528. AddUnit('dbconst');
  529. end;
  530. T:=P.Targets.AddUnit('oracleconnection.pp');
  531. with T.Dependencies do
  532. begin
  533. AddUnit('sqldb');
  534. AddUnit('db');
  535. AddUnit('dbconst');
  536. end;
  537. T:=P.Targets.AddUnit('paradox.pp');
  538. with T.Dependencies do
  539. begin
  540. AddUnit('db');
  541. AddUnit('bufdataset_parser');
  542. end;
  543. T:=P.Targets.AddUnit('pqconnection.pp');
  544. with T.Dependencies do
  545. begin
  546. AddUnit('sqldb');
  547. AddUnit('db');
  548. AddUnit('dbconst');
  549. AddUnit('bufdataset');
  550. end;
  551. T:=P.Targets.AddUnit('sdfdata.pp');
  552. with T.Dependencies do
  553. begin
  554. AddUnit('db');
  555. end;
  556. T:=P.Targets.AddUnit('sqldb.pp');
  557. with T.Dependencies do
  558. begin
  559. AddUnit('db');
  560. AddUnit('bufdataset');
  561. AddUnit('dbconst');
  562. end;
  563. T:=P.Targets.AddUnit('sqlite3conn.pp');
  564. with T.Dependencies do
  565. begin
  566. AddUnit('db');
  567. AddUnit('bufdataset');
  568. AddUnit('sqldb');
  569. AddUnit('dbconst');
  570. end;
  571. T:=P.Targets.AddUnit('sqlite3ds.pas');
  572. with T.Dependencies do
  573. begin
  574. AddUnit('customsqliteds');
  575. AddUnit('db');
  576. end;
  577. T:=P.Targets.AddUnit('sqliteds.pas');
  578. with T.Dependencies do
  579. begin
  580. AddUnit('customsqliteds');
  581. AddUnit('db');
  582. end;
  583. P.ExamplePath.Add('tests');
  584. T:=P.Targets.AddExampleProgram('dbftoolsunit.pas');
  585. T:=P.Targets.AddExampleProgram('dbtestframework.pas');
  586. T:=P.Targets.AddExampleProgram('memdstoolsunit.pas');
  587. T:=P.Targets.AddExampleProgram('sdfdstoolsunit.pas');
  588. T:=P.Targets.AddExampleProgram('sqldbtoolsunit.pas');
  589. T:=P.Targets.AddExampleProgram('testbasics.pas');
  590. T:=P.Targets.AddExampleProgram('testdatasources.pas');
  591. T:=P.Targets.AddExampleProgram('testdbbasics.pas');
  592. T:=P.Targets.AddExampleProgram('testdddiff.pp');
  593. T:=P.Targets.AddExampleProgram('testfieldtypes.pas');
  594. T:=P.Targets.AddExampleProgram('testsqlscript.pas');
  595. T:=P.Targets.AddExampleProgram('toolsunit.pas');
  596. // database.ini.txt
  597. // README.txt
  598. {$ifndef ALLPACKAGES}
  599. Run;
  600. end;
  601. end.
  602. {$endif ALLPACKAGES}