fpmake.pp 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219
  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-base');
  13. P.ShortName:='fclb';
  14. {$ifdef ALLPACKAGES}
  15. P.Directory:=ADirectory;
  16. {$endif ALLPACKAGES}
  17. P.Version:='3.3.1';
  18. P.Dependencies.Add('univint',[Darwin,iPhoneSim,ios]);
  19. p.Dependencies.Add('rtl-objpas');
  20. P.Author := '<various>';
  21. P.License := 'LGPL with modification, ';
  22. P.Email := '';
  23. P.Description := 'Base library of Free Component Libraries (FCL), FPC''s OOP library.';
  24. P.NeedLibC:= false;
  25. P.OSes:=AllOSes-[embedded,msdos,win16,macosclassic,palmos,zxspectrum,msxdos,amstradcpc,sinclairql];
  26. if Defaults.CPU=jvm then
  27. P.OSes := P.OSes - [java,android];
  28. P.SourcePath.Add('src');
  29. P.SourcePath.Add('src/$(OS)');
  30. P.SourcePath.Add('src/unix',AllUnixOSes);
  31. P.SourcePath.Add('src/win',AllWindowsOSes);
  32. P.IncludePath.Add('src');
  33. P.IncludePath.Add('src/$(OS)');
  34. P.IncludePath.Add('src/unix',AllUnixOSes);
  35. P.IncludePath.Add('src/win',AllWindowsOSes-[WinCE]);
  36. P.IncludePath.Add('src/dummy',AllOSes);
  37. T:=P.Targets.AddUnit('ascii85.pp');
  38. T:=P.Targets.AddUnit('avl_tree.pp');
  39. T:=P.Targets.AddUnit('base64.pp');
  40. T:=P.Targets.AddUnit('pascodegen.pp');
  41. T:=P.Targets.AddUnit('fpobserver.pp');
  42. T.ResourceStrings:=true;
  43. T:=P.Targets.AddUnit('blowfish.pp');
  44. T.ResourceStrings:=true;
  45. T:=P.Targets.AddUnit('bufstream.pp');
  46. T.ResourceStrings:=true;
  47. T:=P.Targets.AddUnit('cachecls.pp');
  48. T.ResourceStrings:=true;
  49. T:=P.Targets.AddUnit('contnrs.pp');
  50. T.ResourceStrings:=true;
  51. T:=P.Targets.AddUnit('singleinstance.pp');
  52. T:=P.Targets.AddUnit('custapp.pp');
  53. T.ResourceStrings:=true;
  54. with T.Dependencies do
  55. AddUnit('singleinstance');
  56. T:=P.Targets.AddUnit('eventlog.pp');
  57. T.ResourceStrings:=true;
  58. with T.Dependencies do
  59. begin
  60. AddInclude('eventlog.inc');
  61. end;
  62. T:=P.Targets.AddUnit('fptimer.pp',AllWindowsOSes+AllUnixOSes);
  63. T:=P.Targets.AddUnit('gettext.pp');
  64. T:=P.Targets.AddUnit('idea.pp');
  65. T:=P.Targets.AddUnit('inicol.pp');
  66. T.ResourceStrings:=true;
  67. with T.Dependencies do
  68. begin
  69. AddUnit('inifiles');
  70. end;
  71. T:=P.Targets.AddUnit('inifiles.pp');
  72. T.ResourceStrings:=true;
  73. with T.Dependencies do
  74. begin
  75. AddUnit('contnrs');
  76. end;
  77. T:=P.Targets.AddUnit('iostream.pp');
  78. T:=P.Targets.AddUnit('nullstream.pp');
  79. T.ResourceStrings:=true;
  80. T:=P.Targets.AddUnit('maskutils.pp');
  81. T.ResourceStrings:=true;
  82. T:=P.Targets.AddUnit('pooledmm.pp');
  83. T:=P.Targets.AddUnit('rtfpars.pp');
  84. with T.Dependencies do
  85. begin
  86. AddInclude('rtfdata.inc');
  87. end;
  88. T:=P.Targets.AddUnit('rttiutils.pp');
  89. T:=P.Targets.AddUnit('streamcoll.pp');
  90. T.ResourceStrings:=true;
  91. T:=P.Targets.AddUnit('streamex.pp');
  92. T.ResourceStrings:=true;
  93. T:=P.Targets.AddUnit('streamio.pp');
  94. T.ResourceStrings:=true;
  95. T:=P.Targets.AddUnit('fptemplate.pp');
  96. T.ResourceStrings:=true;
  97. T:=P.Targets.AddUnit('syncobjs.pp',AllOSes-[go32v2,nativent,atari]);
  98. T.ResourceStrings:=true;
  99. T:=P.Targets.AddUnit('uriparser.pp');
  100. T:=P.Targets.AddUnit('wformat.pp');
  101. T:=P.Targets.AddUnit('whtml.pp');
  102. with T.Dependencies do
  103. begin
  104. AddUnit('wformat');
  105. end;
  106. T:=P.Targets.AddUnit('wtex.pp');
  107. with T.Dependencies do
  108. begin
  109. AddUnit('wformat');
  110. end;
  111. T:=P.Targets.AddUnit('fpexprpars.pp');
  112. T.ResourceStrings:=true;
  113. T:=P.Targets.AddUnit('csvreadwrite.pp');
  114. T:=P.Targets.addUnit('csvdocument.pp');
  115. With T.Dependencies do
  116. begin
  117. AddUnit('csvreadwrite');
  118. AddUnit('contnrs');
  119. end;
  120. T:=P.Targets.addUnit('advancedipc.pp',AllOSes-[atari]);
  121. T.ResourceStrings:=true;
  122. T:=P.Targets.addUnit('advancedsingleinstance.pas',AllOSes-[atari]);
  123. T.ResourceStrings:=true;
  124. T:=P.Targets.AddUnit('fpthreadpool.pp',AllOSes-[go32v2,nativent,atari]);
  125. T.Dependencies.AddUnit('syncobjs');
  126. T.ResourceStrings:=true;
  127. // Additional sources
  128. P.Sources.AddSrcFiles('src/win/fclel.*', P.Directory);
  129. // Install windows resources
  130. P.InstallFiles.Add('src/win/fclel.res',AllWindowsOSes,'$(unitinstalldir)');
  131. // Examples
  132. P.ExamplePath.Add('examples');
  133. T:=P.Targets.AddExampleProgram('asiotest.pp');
  134. T:=P.Targets.AddExampleProgram('b64dec.pp');
  135. T:=P.Targets.AddExampleProgram('b64enc.pp');
  136. T:=P.Targets.AddExampleProgram('b64.pp');
  137. T:=P.Targets.AddExampleProgram('b64test2.pp');
  138. T:=P.Targets.AddExampleProgram('b64test.pp');
  139. T:=P.Targets.AddExampleProgram('base64decodingtestcase.pas');
  140. T:=P.Targets.AddExampleProgram('cachetest.pp');
  141. T:=P.Targets.AddExampleProgram('cfgtest.pp');
  142. T:=P.Targets.AddExampleProgram('debugtest.pp');
  143. T:=P.Targets.AddExampleProgram('doecho.pp');
  144. T:=P.Targets.AddExampleProgram('dparser.pp');
  145. T:=P.Targets.AddExampleProgram('dsockcli.pp');
  146. T:=P.Targets.AddExampleProgram('dsocksvr.pp');
  147. T:=P.Targets.AddExampleProgram('fpdoc.dtd');
  148. T:=P.Targets.AddExampleProgram('fstream.pp');
  149. T:=P.Targets.AddExampleProgram('htdump.pp');
  150. T:=P.Targets.AddExampleProgram('isockcli.pp');
  151. T:=P.Targets.AddExampleProgram('isocksvr.pp');
  152. T:=P.Targets.AddExampleProgram('istream.pp');
  153. T:=P.Targets.AddExampleProgram('list.pp');
  154. T:=P.Targets.AddExampleProgram('mstream.pp');
  155. T:=P.Targets.AddExampleProgram('poolmm1.pp');
  156. T:=P.Targets.AddExampleProgram('poolmm2.pp');
  157. T:=P.Targets.AddExampleProgram('restest.pp');
  158. T:=P.Targets.AddExampleProgram('sockcli.pp');
  159. T:=P.Targets.AddExampleProgram('socksvr.pp');
  160. T:=P.Targets.AddExampleProgram('sstream.pp');
  161. T:=P.Targets.AddExampleProgram('stringl.pp');
  162. T:=P.Targets.AddExampleProgram('tarmakerconsgzip.pas');
  163. T:=P.Targets.AddExampleProgram('tarmakercons.pas');
  164. T:=P.Targets.AddExampleProgram('testapp.pp');
  165. T:=P.Targets.AddExampleProgram('testbf.pp');
  166. T:=P.Targets.AddExampleProgram('testbs.pp');
  167. T:=P.Targets.AddExampleProgram('testcgi.pp');
  168. T:=P.Targets.AddExampleProgram('testcont.pp');
  169. T:=P.Targets.AddExampleProgram('testez.pp');
  170. T:=P.Targets.AddExampleProgram('testhres.pp');
  171. T:=P.Targets.AddExampleProgram('testnres.pp');
  172. T:=P.Targets.AddExampleProgram('testol.pp');
  173. T:=P.Targets.AddExampleProgram('testproc.pp');
  174. T:=P.Targets.AddExampleProgram('testreg.pp');
  175. T:=P.Targets.AddExampleProgram('testrhre.pp');
  176. T:=P.Targets.AddExampleProgram('testrnre.pp');
  177. T:=P.Targets.AddExampleProgram('testrsre.pp');
  178. T:=P.Targets.AddExampleProgram('testrtf.pp');
  179. T:=P.Targets.AddExampleProgram('testser.pp');
  180. T:=P.Targets.AddExampleProgram('testsres.pp');
  181. T:=P.Targets.AddExampleProgram('testtimer.pp');
  182. T:=P.Targets.AddExampleProgram('testunzip.pp');
  183. T:=P.Targets.AddExampleProgram('testur.pp');
  184. T:=P.Targets.AddExampleProgram('testweb.pp');
  185. T:=P.Targets.AddExampleProgram('testz2.pp');
  186. T:=P.Targets.AddExampleProgram('testzip.pp');
  187. T:=P.Targets.AddExampleProgram('testz.pp');
  188. T:=P.Targets.AddExampleProgram('threads.pp');
  189. T:=P.Targets.AddExampleProgram('tidea.pp');
  190. T:=P.Targets.AddExampleProgram('tstelcmd.pp');
  191. T:=P.Targets.AddExampleProgram('tstelgtk.pp');
  192. T:=P.Targets.AddExampleProgram('txmlreg.pp');
  193. T:=P.Targets.AddExampleProgram('xmldump.pp');
  194. T:=P.Targets.AddExampleProgram('testthreadpool.pp');
  195. // example data files.
  196. // README
  197. // kword.xml
  198. // overview.rtf
  199. // simple.xml
  200. // parser.dat
  201. // testcgi.html
  202. {$ifndef ALLPACKAGES}
  203. Run;
  204. end;
  205. end.
  206. {$endif ALLPACKAGES}