fpmake.pp 7.3 KB

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