fpmake.pp 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  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. {$ifdef ALLPACKAGES}
  14. P.Directory:='fcl-base';
  15. {$endif ALLPACKAGES}
  16. P.Version:='2.2.2-0';
  17. P.Dependencies.Add('winunits-jedi',[Win32,Win64]);
  18. P.SourcePath.Add('src');
  19. P.SourcePath.Add('src/unix',AllUnixOSes);
  20. P.SourcePath.Add('src/win',AllWindowsOSes);
  21. P.SourcePath.Add('src/$(OS)',AllOSes-AllWindowsOSes-AllUnixOSes);
  22. P.IncludePath.Add('src');
  23. P.IncludePath.Add('src/unix',AllUnixOSes);
  24. P.IncludePath.Add('src/win',AllWindowsOSes);
  25. P.IncludePath.Add('src/$(OS)',AllOSes-AllWindowsOSes-AllUnixOSes);
  26. T:=P.Targets.AddUnit('avl_tree.pp');
  27. T:=P.Targets.AddUnit('base64.pp');
  28. T:=P.Targets.AddUnit('blowfish.pp');
  29. T:=P.Targets.AddUnit('bufstream.pp');
  30. T:=P.Targets.AddUnit('cachecls.pp');
  31. T.ResourceStrings:=true;
  32. T:=P.Targets.AddUnit('contnrs.pp');
  33. T:=P.Targets.AddUnit('custapp.pp');
  34. T.ResourceStrings:=true;
  35. T:=P.Targets.AddUnit('daemonapp.pp',AllWindowsOSes+AllUnixOSes);
  36. with T.Dependencies do
  37. begin
  38. AddInclude('daemonapp.inc');
  39. AddUnit('custapp');
  40. AddUnit('eventlog');
  41. end;
  42. T:=P.Targets.AddUnit('eventlog.pp');
  43. T.ResourceStrings:=true;
  44. with T.Dependencies do
  45. begin
  46. AddInclude('eventlog.inc');
  47. end;
  48. T:=P.Targets.AddUnit('fptimer.pp',AllWindowsOSes+AllUnixOSes);
  49. T:=P.Targets.AddUnit('gettext.pp');
  50. T:=P.Targets.AddUnit('idea.pp');
  51. T:=P.Targets.AddUnit('inicol.pp');
  52. T.ResourceStrings:=true;
  53. with T.Dependencies do
  54. begin
  55. AddUnit('inifiles');
  56. end;
  57. T:=P.Targets.AddUnit('inifiles.pp');
  58. with T.Dependencies do
  59. begin
  60. AddUnit('contnrs');
  61. end;
  62. T:=P.Targets.AddUnit('iostream.pp');
  63. T:=P.Targets.AddUnit('libtar.pp');
  64. T:=P.Targets.AddUnit('maskutils.pp');
  65. T:=P.Targets.AddUnit('pooledmm.pp');
  66. T:=P.Targets.AddUnit('rtfpars.pp');
  67. with T.Dependencies do
  68. begin
  69. AddInclude('rtfdata.inc');
  70. end;
  71. T:=P.Targets.AddUnit('rttiutils.pp');
  72. T:=P.Targets.AddUnit('streamcoll.pp');
  73. T.ResourceStrings:=true;
  74. T:=P.Targets.AddUnit('streamex.pp');
  75. T:=P.Targets.AddUnit('streamio.pp');
  76. T:=P.Targets.AddUnit('syncobjs.pp',AllOSes-[GO32v2,OS2,EMX]);
  77. T:=P.Targets.AddUnit('uriparser.pp');
  78. T:=P.Targets.AddUnit('wformat.pp');
  79. T:=P.Targets.AddUnit('whtml.pp');
  80. with T.Dependencies do
  81. begin
  82. AddUnit('wformat');
  83. end;
  84. T:=P.Targets.AddUnit('wtex.pp');
  85. with T.Dependencies do
  86. begin
  87. AddUnit('wformat');
  88. end;
  89. // Windows units
  90. T:=P.Targets.AddUnit('ServiceManager.pas',[Win32,Win64]);
  91. T:=P.Targets.AddUnit('fileinfo.pp',AllWindowsOSes);
  92. // Additional sources
  93. P.Sources.AddSrcFiles('src/win/fclel.*');
  94. // Examples
  95. P.ExamplePath.Add('examples');
  96. T:=P.Targets.AddExampleProgram('asiotest.pp');
  97. T:=P.Targets.AddExampleProgram('b64dec.pp');
  98. T:=P.Targets.AddExampleProgram('b64enc.pp');
  99. T:=P.Targets.AddExampleProgram('b64.pp');
  100. T:=P.Targets.AddExampleProgram('b64test2.pp');
  101. T:=P.Targets.AddExampleProgram('b64test.pp');
  102. T:=P.Targets.AddExampleProgram('base64decodingtestcase.pas');
  103. T:=P.Targets.AddExampleProgram('cachetest.pp');
  104. T:=P.Targets.AddExampleProgram('cfgtest.pp');
  105. T:=P.Targets.AddExampleProgram('daemon.pp');
  106. T:=P.Targets.AddExampleProgram('daemon.txt');
  107. T:=P.Targets.AddExampleProgram('dbugsrv.pp');
  108. T:=P.Targets.AddExampleProgram('debugtest.pp');
  109. T:=P.Targets.AddExampleProgram('doecho.pp');
  110. T:=P.Targets.AddExampleProgram('dparser.pp');
  111. T:=P.Targets.AddExampleProgram('dsockcli.pp');
  112. T:=P.Targets.AddExampleProgram('dsocksvr.pp');
  113. T:=P.Targets.AddExampleProgram('fpdoc.dtd');
  114. T:=P.Targets.AddExampleProgram('fstream.pp');
  115. T:=P.Targets.AddExampleProgram('htdump.pp');
  116. T:=P.Targets.AddExampleProgram('ipcclient.pp');
  117. T:=P.Targets.AddExampleProgram('ipcserver.pp');
  118. T:=P.Targets.AddExampleProgram('isockcli.pp');
  119. T:=P.Targets.AddExampleProgram('isocksvr.pp');
  120. T:=P.Targets.AddExampleProgram('istream.pp');
  121. T:=P.Targets.AddExampleProgram('list.pp');
  122. T:=P.Targets.AddExampleProgram('mstream.pp');
  123. T:=P.Targets.AddExampleProgram('poolmm1.pp');
  124. T:=P.Targets.AddExampleProgram('poolmm2.pp');
  125. T:=P.Targets.AddExampleProgram('restest.pp');
  126. T:=P.Targets.AddExampleProgram('showver.pp');
  127. T:=P.Targets.AddExampleProgram('sockcli.pp');
  128. T:=P.Targets.AddExampleProgram('socksvr.pp');
  129. T:=P.Targets.AddExampleProgram('sstream.pp');
  130. T:=P.Targets.AddExampleProgram('stringl.pp');
  131. T:=P.Targets.AddExampleProgram('tarmakerconsgzip.pas');
  132. T:=P.Targets.AddExampleProgram('tarmakercons.pas');
  133. T:=P.Targets.AddExampleProgram('testapp.pp');
  134. T:=P.Targets.AddExampleProgram('testbf.pp');
  135. T:=P.Targets.AddExampleProgram('testbs.pp');
  136. T:=P.Targets.AddExampleProgram('testcgi.pp');
  137. T:=P.Targets.AddExampleProgram('testcont.pp');
  138. T:=P.Targets.AddExampleProgram('testez.pp');
  139. T:=P.Targets.AddExampleProgram('testhres.pp');
  140. T:=P.Targets.AddExampleProgram('testnres.pp');
  141. T:=P.Targets.AddExampleProgram('testol.pp');
  142. T:=P.Targets.AddExampleProgram('testproc.pp');
  143. T:=P.Targets.AddExampleProgram('testreg.pp');
  144. T:=P.Targets.AddExampleProgram('testrhre.pp');
  145. T:=P.Targets.AddExampleProgram('testrnre.pp');
  146. T:=P.Targets.AddExampleProgram('testrsre.pp');
  147. T:=P.Targets.AddExampleProgram('testrtf.pp');
  148. T:=P.Targets.AddExampleProgram('testser.pp');
  149. T:=P.Targets.AddExampleProgram('testsres.pp');
  150. T:=P.Targets.AddExampleProgram('testtimer.pp');
  151. T:=P.Targets.AddExampleProgram('testunzip.pp');
  152. T:=P.Targets.AddExampleProgram('testur.pp');
  153. T:=P.Targets.AddExampleProgram('testweb.pp');
  154. T:=P.Targets.AddExampleProgram('testz2.pp');
  155. T:=P.Targets.AddExampleProgram('testzip.pp');
  156. T:=P.Targets.AddExampleProgram('testz.pp');
  157. T:=P.Targets.AddExampleProgram('threads.pp');
  158. T:=P.Targets.AddExampleProgram('tidea.pp');
  159. T:=P.Targets.AddExampleProgram('tstelcmd.pp');
  160. T:=P.Targets.AddExampleProgram('tstelgtk.pp');
  161. T:=P.Targets.AddExampleProgram('txmlreg.pp');
  162. T:=P.Targets.AddExampleProgram('xmldump.pp');
  163. // example data files.
  164. // README
  165. // kword.xml
  166. // overview.rtf
  167. // showver.rc
  168. // showver.res
  169. // simple.xml
  170. // parser.dat
  171. // testcgi.html
  172. {$ifndef ALLPACKAGES}
  173. Run;
  174. end;
  175. end.
  176. {$endif ALLPACKAGES}