fpmake.pp 17 KB

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