fpmake.pp 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277
  1. {$ifndef ALLPACKAGES}
  2. {$mode objfpc}{$H+}
  3. program fpmake;
  4. uses fpmkunit;
  5. Var
  6. T : TTarget;
  7. P : TPackage;
  8. begin
  9. With Installer do
  10. begin
  11. {$endif ALLPACKAGES}
  12. P:=AddPackage('fcl-image');
  13. {$ifdef ALLPACKAGES}
  14. P.Directory:=ADirectory;
  15. {$endif ALLPACKAGES}
  16. P.Version:='2.7.1';
  17. P.Dependencies.Add('pasjpeg');
  18. P.Dependencies.Add('paszlib');
  19. P.Dependencies.Add('fcl-base');
  20. P.Author := 'Michael Van Canneyt of the Free Pascal development team';
  21. P.License := 'LGPL with modification, ';
  22. P.HomepageURL := 'www.freepascal.org';
  23. P.Email := '';
  24. P.Description := 'Image loading and conversion parts of Free Component Libraries (FCL), FPC''s OOP library.';
  25. P.NeedLibC:= false;
  26. P.OSes := P.OSes - [embedded,nativent];
  27. P.SourcePath.Add('src');
  28. P.IncludePath.Add('src');
  29. T:=P.Targets.AddUnit('bmpcomn.pp');
  30. with T.Dependencies do
  31. begin
  32. AddUnit('fpimgcmn');
  33. end;
  34. T:=P.Targets.AddUnit('fptiffcmn.pas');
  35. with T.Dependencies do
  36. begin
  37. AddUnit('fpimage');
  38. end;
  39. T:=P.Targets.AddUnit('clipping.pp');
  40. T:=P.Targets.AddUnit('ellipses.pp');
  41. with T.Dependencies do
  42. begin
  43. AddUnit('fpimage');
  44. AddUnit('fpcanvas');
  45. end;
  46. T:=P.Targets.AddUnit('extinterpolation.pp');
  47. with T.Dependencies do
  48. begin
  49. AddUnit('fpimage');
  50. AddUnit('fpcanvas');
  51. end;
  52. T:=P.Targets.AddUnit('fpcanvas.pp');
  53. with T.Dependencies do
  54. begin
  55. AddInclude('fphelper.inc');
  56. AddInclude('fpfont.inc');
  57. AddInclude('fppen.inc');
  58. AddInclude('fpbrush.inc');
  59. AddInclude('fpinterpolation.inc');
  60. AddInclude('fpcanvas.inc');
  61. AddInclude('fpcdrawh.inc');
  62. AddUnit('fpimage');
  63. AddUnit('clipping');
  64. end;
  65. T:=P.Targets.AddUnit('fpcolhash.pas');
  66. with T.Dependencies do
  67. begin
  68. AddUnit('fpimage');
  69. end;
  70. T:=P.Targets.AddUnit('fpditherer.pas');
  71. with T.Dependencies do
  72. begin
  73. AddUnit('fpimage');
  74. AddUnit('fpcolhash');
  75. end;
  76. T:=P.Targets.AddUnit('fpimage.pp');
  77. with T.Dependencies do
  78. begin
  79. AddInclude('fpcolors.inc');
  80. AddInclude('fpimage.inc');
  81. AddInclude('fphandler.inc');
  82. AddInclude('fppalette.inc');
  83. AddInclude('fpcolcnv.inc');
  84. AddInclude('fpcompactimg.inc');
  85. end;
  86. T:=P.Targets.AddUnit('fpimgcanv.pp');
  87. with T.Dependencies do
  88. begin
  89. AddUnit('fppixlcanv');
  90. AddUnit('fpimage');
  91. AddUnit('clipping');
  92. end;
  93. T:=P.Targets.AddUnit('fpimgcmn.pp');
  94. T:=P.Targets.AddUnit('fppixlcanv.pp');
  95. with T.Dependencies do
  96. begin
  97. AddUnit('fpimage');
  98. AddUnit('fpcanvas');
  99. AddUnit('pixtools');
  100. AddUnit('ellipses');
  101. AddUnit('clipping');
  102. end;
  103. T:=P.Targets.AddUnit('fpquantizer.pas');
  104. with T.Dependencies do
  105. begin
  106. AddUnit('fpimage');
  107. AddUnit('fpcolhash');
  108. end;
  109. T:=P.Targets.AddUnit('fpreadbmp.pp');
  110. with T.Dependencies do
  111. begin
  112. AddUnit('fpimage');
  113. AddUnit('bmpcomn');
  114. end;
  115. T:=P.Targets.AddUnit('fpreadjpeg.pas');
  116. with T.Dependencies do
  117. begin
  118. AddUnit('fpimage');
  119. end;
  120. T:=P.Targets.AddUnit('fpreadpcx.pas');
  121. with T.Dependencies do
  122. begin
  123. AddUnit('fpimage');
  124. AddUnit('pcxcomn');
  125. end;
  126. T:=P.Targets.AddUnit('fpreadpng.pp');
  127. with T.Dependencies do
  128. begin
  129. AddUnit('fpimage');
  130. AddUnit('fpimgcmn');
  131. AddUnit('pngcomn');
  132. end;
  133. T:=P.Targets.AddUnit('fpreadpnm.pp');
  134. with T.Dependencies do
  135. begin
  136. AddUnit('fpimage');
  137. end;
  138. T:=P.Targets.AddUnit('fpreadtga.pp');
  139. with T.Dependencies do
  140. begin
  141. AddUnit('fpimage');
  142. AddUnit('targacmn');
  143. end;
  144. T:=P.Targets.AddUnit('fpreadtiff.pas');
  145. with T.Dependencies do
  146. begin
  147. AddUnit('fpimage');
  148. AddUnit('fptiffcmn');
  149. end;
  150. T:=P.Targets.AddUnit('fpreadxpm.pp');
  151. with T.Dependencies do
  152. begin
  153. AddUnit('fpimage');
  154. end;
  155. T:=P.Targets.AddUnit('fpreadgif.pas');
  156. with T.Dependencies do
  157. begin
  158. AddUnit('fpimage');
  159. end;
  160. T:=P.Targets.AddUnit('fpreadpsd.pas');
  161. with T.Dependencies do
  162. begin
  163. AddUnit('fpimage');
  164. end;
  165. T:=P.Targets.AddUnit('xwdfile.pp');
  166. T:=P.Targets.AddUnit('fpreadxwd.pas');
  167. with T.Dependencies do
  168. begin
  169. AddUnit('fpimage');
  170. AddUnit('xwdfile');
  171. end;
  172. T:=P.Targets.AddUnit('fpwritebmp.pp');
  173. with T.Dependencies do
  174. begin
  175. AddUnit('fpimage');
  176. AddUnit('bmpcomn');
  177. end;
  178. T:=P.Targets.AddUnit('fpwritejpeg.pas');
  179. with T.Dependencies do
  180. begin
  181. AddUnit('fpimage');
  182. AddUnit('fpreadjpeg');
  183. end;
  184. T:=P.Targets.AddUnit('fpwritepcx.pas');
  185. with T.Dependencies do
  186. begin
  187. AddUnit('fpimage');
  188. AddUnit('pcxcomn');
  189. end;
  190. T:=P.Targets.AddUnit('fpwritepng.pp');
  191. with T.Dependencies do
  192. begin
  193. AddUnit('fpimage');
  194. AddUnit('fpimgcmn');
  195. AddUnit('pngcomn');
  196. end;
  197. T:=P.Targets.AddUnit('fpwritepnm.pp');
  198. with T.Dependencies do
  199. begin
  200. AddUnit('fpimage');
  201. end;
  202. T:=P.Targets.AddUnit('fpwritetga.pp');
  203. with T.Dependencies do
  204. begin
  205. AddUnit('fpimage');
  206. AddUnit('targacmn');
  207. end;
  208. T:=P.Targets.AddUnit('fpwritetiff.pas');
  209. with T.Dependencies do
  210. begin
  211. AddUnit('fpimage');
  212. AddUnit('fptiffcmn');
  213. end;
  214. T:=P.Targets.AddUnit('fpwritexpm.pp');
  215. with T.Dependencies do
  216. begin
  217. AddUnit('fpimage');
  218. end;
  219. T:=P.Targets.AddUnit('freetypeh.pp',[solaris,iphonesim,darwin,freebsd,openbsd,netbsd,linux,haiku,beos,win32,win64,aix]);
  220. T:=P.Targets.AddUnit('freetype.pp',[solaris,iphonesim,darwin,freebsd,openbsd,netbsd,linux,haiku,beos,win32,win64,aix]);
  221. with T.Dependencies do
  222. begin
  223. AddUnit('freetypeh');
  224. AddUnit('fpimgcmn');
  225. end;
  226. T:=P.Targets.AddUnit('ftfont.pp',[solaris,iphonesim,darwin,freebsd,openbsd,netbsd,linux,haiku,beos,win32,win64,aix]);
  227. with T.Dependencies do
  228. begin
  229. AddUnit('fpcanvas');
  230. AddUnit('fpimgcmn');
  231. AddUnit('freetype');
  232. AddUnit('freetypeh');
  233. AddUnit('fpimage');
  234. end;
  235. T:=P.Targets.AddUnit('pcxcomn.pas');
  236. T:=P.Targets.AddUnit('pixtools.pp');
  237. with T.Dependencies do
  238. begin
  239. AddUnit('fpcanvas');
  240. AddUnit('fpimage');
  241. AddUnit('clipping');
  242. AddUnit('ellipses');
  243. end;
  244. T:=P.Targets.AddUnit('pngcomn.pp');
  245. with T.Dependencies do
  246. begin
  247. AddUnit('fpimage');
  248. AddUnit('fpimgcmn');
  249. end;
  250. T:=P.Targets.AddUnit('pscanvas.pp');
  251. T.ResourceStrings:=true;
  252. with T.Dependencies do
  253. begin
  254. AddUnit('fpimage');
  255. AddUnit('fpcanvas');
  256. end;
  257. T:=P.Targets.AddUnit('targacmn.pp');
  258. T:=P.Targets.AddUnit('fpimggauss.pp');
  259. With T.Dependencies do
  260. AddUnit('fpimage');
  261. P.ExamplePath.Add('examples');
  262. T:=P.Targets.AddExampleProgram('drawing.pp');
  263. T:=P.Targets.AddExampleProgram('imgconv.pp');
  264. {$ifndef ALLPACKAGES}
  265. Run;
  266. end;
  267. end.
  268. {$endif ALLPACKAGES}