fpmake.pp 7.7 KB

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