fpmake.pp 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268
  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('fv');
  13. {$ifdef ALLPACKAGES}
  14. P.Directory:='fv';
  15. {$endif ALLPACKAGES}
  16. P.Version:='2.2.2-0';
  17. P.Author := 'Leon De Boer and Pierre Mueller';
  18. P.License := 'LGPL with modification, ';
  19. P.HomepageURL := 'www.freepascal.org';
  20. P.Email := '';
  21. P.Description := 'Free Vision, a portable Turbo Vision clone.';
  22. P.NeedLibC:= false;
  23. P.SourcePath.Add('src');
  24. P.IncludePath.Add('src');
  25. T:=P.Targets.AddUnit('app.pas');
  26. with T.Dependencies do
  27. begin
  28. AddInclude('platform.inc');
  29. AddUnit('fvcommon');
  30. AddUnit('drivers');
  31. AddUnit('views');
  32. AddUnit('menus');
  33. AddUnit('histlist');
  34. AddUnit('dialogs');
  35. AddUnit('msgbox');
  36. AddUnit('fvconsts');
  37. end;
  38. T:=P.Targets.AddUnit('asciitab.pas');
  39. with T.Dependencies do
  40. begin
  41. AddInclude('platform.inc');
  42. AddUnit('fvconsts');
  43. AddUnit('drivers');
  44. AddUnit('views');
  45. AddUnit('app');
  46. end;
  47. T:=P.Targets.AddUnit('buildfv.pas');
  48. with T.Dependencies do
  49. begin
  50. AddUnit('fvcommon');
  51. AddUnit('drivers');
  52. AddUnit('fvconsts');
  53. AddUnit('views');
  54. AddUnit('validate');
  55. AddUnit('msgbox');
  56. AddUnit('dialogs');
  57. AddUnit('menus');
  58. AddUnit('app');
  59. AddUnit('stddlg');
  60. AddUnit('asciitab');
  61. AddUnit('tabs');
  62. AddUnit('outline');
  63. AddUnit('memory');
  64. AddUnit('colortxt');
  65. AddUnit('statuses');
  66. AddUnit('histlist');
  67. AddUnit('inplong');
  68. AddUnit('editors');
  69. AddUnit('gadgets');
  70. AddUnit('timeddlg');
  71. AddUnit('time');
  72. end;
  73. T:=P.Targets.AddUnit('colortxt.pas');
  74. with T.Dependencies do
  75. begin
  76. AddInclude('platform.inc');
  77. AddUnit('drivers');
  78. AddUnit('views');
  79. AddUnit('dialogs');
  80. AddUnit('app');
  81. AddUnit('fvconsts');
  82. end;
  83. T:=P.Targets.AddUnit('dialogs.pas');
  84. with T.Dependencies do
  85. begin
  86. AddInclude('platform.inc');
  87. AddUnit('fvcommon');
  88. AddUnit('fvconsts');
  89. AddUnit('drivers');
  90. AddUnit('views');
  91. AddUnit('validate');
  92. AddUnit('app');
  93. AddUnit('histlist');
  94. end;
  95. T:=P.Targets.AddUnit('drivers.pas');
  96. with T.Dependencies do
  97. begin
  98. AddInclude('platform.inc');
  99. AddUnit('sysmsg');
  100. AddUnit('fvcommon');
  101. AddUnit('fvconsts');
  102. end;
  103. T:=P.Targets.AddUnit('editors.pas');
  104. with T.Dependencies do
  105. begin
  106. AddInclude('platform.inc');
  107. AddUnit('drivers');
  108. AddUnit('views');
  109. AddUnit('dialogs');
  110. AddUnit('fvcommon');
  111. AddUnit('fvconsts');
  112. AddUnit('app');
  113. AddUnit('stddlg');
  114. AddUnit('msgbox');
  115. end;
  116. T:=P.Targets.AddUnit('fvcommon.pas');
  117. with T.Dependencies do
  118. begin
  119. AddInclude('platform.inc');
  120. end;
  121. T:=P.Targets.AddUnit('fvconsts.pas');
  122. T:=P.Targets.AddUnit('gadgets.pas');
  123. with T.Dependencies do
  124. begin
  125. AddInclude('platform.inc');
  126. AddUnit('fvconsts');
  127. AddUnit('time');
  128. AddUnit('drivers');
  129. AddUnit('views');
  130. AddUnit('app');
  131. end;
  132. T:=P.Targets.AddUnit('histlist.pas');
  133. with T.Dependencies do
  134. begin
  135. AddInclude('platform.inc');
  136. AddUnit('fvcommon');
  137. end;
  138. T:=P.Targets.AddUnit('inplong.pas');
  139. with T.Dependencies do
  140. begin
  141. AddInclude('platform.inc');
  142. AddUnit('drivers');
  143. AddUnit('views');
  144. AddUnit('dialogs');
  145. AddUnit('msgbox');
  146. AddUnit('fvconsts');
  147. end;
  148. T:=P.Targets.AddUnit('memory.pas');
  149. with T.Dependencies do
  150. begin
  151. AddInclude('platform.inc');
  152. AddUnit('fvcommon');
  153. end;
  154. T:=P.Targets.AddUnit('menus.pas');
  155. with T.Dependencies do
  156. begin
  157. AddInclude('platform.inc');
  158. AddUnit('drivers');
  159. AddUnit('views');
  160. AddUnit('fvconsts');
  161. end;
  162. T:=P.Targets.AddUnit('msgbox.pas');
  163. with T.Dependencies do
  164. begin
  165. AddInclude('platform.inc');
  166. AddUnit('dialogs');
  167. AddUnit('drivers');
  168. AddUnit('views');
  169. AddUnit('app');
  170. end;
  171. T:=P.Targets.AddUnit('outline.pas');
  172. with T.Dependencies do
  173. begin
  174. AddUnit('drivers');
  175. AddUnit('views');
  176. end;
  177. T:=P.Targets.AddUnit('statuses.pas');
  178. with T.Dependencies do
  179. begin
  180. AddInclude('platform.inc');
  181. AddUnit('fvcommon');
  182. AddUnit('fvconsts');
  183. AddUnit('drivers');
  184. AddUnit('views');
  185. AddUnit('dialogs');
  186. AddUnit('msgbox');
  187. AddUnit('app');
  188. end;
  189. T:=P.Targets.AddUnit('stddlg.pas');
  190. with T.Dependencies do
  191. begin
  192. AddInclude('platform.inc');
  193. AddUnit('fvconsts');
  194. AddUnit('drivers');
  195. AddUnit('views');
  196. AddUnit('dialogs');
  197. AddUnit('validate');
  198. AddUnit('app');
  199. AddUnit('histlist');
  200. AddUnit('msgbox');
  201. end;
  202. T:=P.Targets.AddUnit('sysmsg.pas');
  203. with T.Dependencies do
  204. begin
  205. AddInclude('unixsmsg.inc',AllUnixOSes);
  206. AddInclude('w32smsg.inc',[win32,win64]);
  207. AddInclude('go32smsg.inc',[go32v2]);
  208. end;
  209. T:=P.Targets.AddUnit('tabs.pas');
  210. with T.Dependencies do
  211. begin
  212. AddInclude('platform.inc');
  213. AddUnit('drivers');
  214. AddUnit('views');
  215. AddUnit('fvconsts');
  216. AddUnit('fvcommon');
  217. AddUnit('dialogs');
  218. end;
  219. T:=P.Targets.AddUnit('timeddlg.pas');
  220. with T.Dependencies do
  221. begin
  222. AddInclude('platform.inc');
  223. AddUnit('dialogs');
  224. AddUnit('fvconsts');
  225. AddUnit('drivers');
  226. AddUnit('views');
  227. AddUnit('app');
  228. AddUnit('msgbox');
  229. end;
  230. T:=P.Targets.AddUnit('time.pas');
  231. with T.Dependencies do
  232. begin
  233. AddInclude('platform.inc');
  234. end;
  235. T:=P.Targets.AddUnit('validate.pas');
  236. with T.Dependencies do
  237. begin
  238. AddInclude('platform.inc');
  239. AddUnit('fvcommon');
  240. AddUnit('fvconsts');
  241. AddUnit('msgbox');
  242. end;
  243. T:=P.Targets.AddUnit('views.pas');
  244. with T.Dependencies do
  245. begin
  246. AddInclude('platform.inc');
  247. AddUnit('fvcommon');
  248. AddUnit('drivers');
  249. AddUnit('fvconsts');
  250. end;
  251. P.ExamplePath.Add('examples');
  252. P.Targets.AddExampleProgram('examples/testapp.pas');
  253. P.Targets.AddExampleProgram('examples/platform.inc');
  254. // 'examples/Makefile
  255. // 'examples/testapp.lpi
  256. // 'examples/Makefile.fpc
  257. {$ifndef ALLPACKAGES}
  258. Run;
  259. end;
  260. end.
  261. {$endif ALLPACKAGES}