fpmake.pp 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226
  1. {$ifndef ALLPACKAGES}
  2. {$mode objfpc}{$H+}
  3. program fpmake;
  4. uses {$ifdef unix}cthreads,{$endif} fpmkunit;
  5. Var
  6. P : TPackage;
  7. T : TTarget;
  8. begin
  9. With Installer do
  10. begin
  11. {$endif ALLPACKAGES}
  12. P:=AddPackage('libxml2');
  13. P.ShortName := 'lxml';
  14. {$ifdef ALLPACKAGES}
  15. P.Directory:=ADirectory;
  16. {$endif ALLPACKAGES}
  17. P.Version:='3.3.1';
  18. P.OSes := [freebsd,linux,win32,win64];
  19. P.SourcePath.Add('src');
  20. P.IncludePath.Add('src');
  21. P.Dependencies.Add('rtl-objpas');
  22. T:=P.Targets.AddUnit('xml2.pas');
  23. with T.Dependencies do
  24. begin
  25. AddInclude('xml2h.inc');
  26. AddInclude('xml2.inc');
  27. AddInclude('xinclude.inc');
  28. AddInclude('xpointer.inc');
  29. AddInclude('HTMLparser.inc');
  30. AddInclude('schemasInternals.inc');
  31. AddInclude('SAX2.inc');
  32. AddInclude('xmlversion.inc');
  33. AddInclude('globals.inc');
  34. AddInclude('nanoftp.inc');
  35. AddInclude('SAX.inc');
  36. AddInclude('uri.inc');
  37. AddInclude('debugXML.inc');
  38. AddInclude('xmlunicode.inc');
  39. // AddInclude('DOCBparser.inc');
  40. AddInclude('xmlIO.inc');
  41. AddInclude('xmlsave.inc');
  42. AddInclude('HTMLtree.inc');
  43. AddInclude('parserInternals.inc');
  44. AddInclude('chvalid.inc');
  45. AddInclude('xmlwriter.inc');
  46. AddInclude('relaxng.inc');
  47. AddInclude('threads.inc');
  48. AddInclude('list.inc');
  49. AddInclude('encoding.inc');
  50. AddInclude('catalog.inc');
  51. AddInclude('pattern.inc');
  52. AddInclude('xmlregexp.inc');
  53. AddInclude('xmlerror.inc');
  54. AddInclude('xpath.inc');
  55. AddInclude('xmlautomata.inc');
  56. AddInclude('entities.inc');
  57. AddInclude('xmlreader.inc');
  58. AddInclude('xmlstring.inc');
  59. AddInclude('xmlmemory.inc');
  60. AddInclude('xmlmodule.inc');
  61. AddInclude('xmlschemas.inc');
  62. AddInclude('hash.inc');
  63. AddInclude('nanohttp.inc');
  64. AddInclude('libxmlparser.inc');
  65. AddInclude('tree.inc');
  66. AddInclude('dict.inc');
  67. AddInclude('xlink.inc');
  68. AddInclude('valid.inc');
  69. AddInclude('xpathInternals.inc');
  70. AddInclude('xmlschemastypes.inc');
  71. AddInclude('c14n.inc');
  72. AddInclude('schematron.inc');
  73. AddInclude('fpcfunctions.inc');
  74. AddInclude('macros.inc');
  75. end;
  76. T:=P.Targets.AddUnit('xml2dyn.pas');
  77. with T.Dependencies do
  78. begin
  79. AddInclude('xml2h.inc');
  80. AddInclude('xml2.inc');
  81. AddInclude('xinclude.inc');
  82. AddInclude('xpointer.inc');
  83. AddInclude('HTMLparser.inc');
  84. AddInclude('schemasInternals.inc');
  85. AddInclude('SAX2.inc');
  86. AddInclude('xmlversion.inc');
  87. AddInclude('globals.inc');
  88. AddInclude('nanoftp.inc');
  89. AddInclude('SAX.inc');
  90. AddInclude('uri.inc');
  91. AddInclude('debugXML.inc');
  92. AddInclude('xmlunicode.inc');
  93. AddInclude('xmlIO.inc');
  94. AddInclude('xmlsave.inc');
  95. AddInclude('HTMLtree.inc');
  96. AddInclude('parserInternals.inc');
  97. AddInclude('chvalid.inc');
  98. AddInclude('xmlwriter.inc');
  99. AddInclude('relaxng.inc');
  100. AddInclude('threads.inc');
  101. AddInclude('list.inc');
  102. AddInclude('encoding.inc');
  103. AddInclude('catalog.inc');
  104. AddInclude('pattern.inc');
  105. AddInclude('xmlregexp.inc');
  106. AddInclude('xmlerror.inc');
  107. AddInclude('xpath.inc');
  108. AddInclude('xmlautomata.inc');
  109. AddInclude('entities.inc');
  110. AddInclude('xmlreader.inc');
  111. AddInclude('xmlstring.inc');
  112. AddInclude('xmlmemory.inc');
  113. AddInclude('xmlmodule.inc');
  114. AddInclude('xmlschemas.inc');
  115. AddInclude('hash.inc');
  116. AddInclude('nanohttp.inc');
  117. AddInclude('libxmlparser.inc');
  118. AddInclude('tree.inc');
  119. AddInclude('dict.inc');
  120. AddInclude('xlink.inc');
  121. AddInclude('valid.inc');
  122. AddInclude('xpathInternals.inc');
  123. AddInclude('xmlschemastypes.inc');
  124. AddInclude('c14n.inc');
  125. AddInclude('schematron.inc');
  126. AddInclude('fpcfunctions.inc');
  127. AddInclude('macros.inc');
  128. end;
  129. T:=P.Targets.AddUnit('xmlxsdparser.pas');
  130. T.ResourceStrings := True;
  131. T:=P.Targets.AddUnit('xmlxsd.pas');
  132. T.ResourceStrings := True;
  133. T:=P.Targets.AddUnit('xslt.pas');
  134. with T.Dependencies do
  135. begin
  136. AddInclude('xsltlocale.inc');
  137. AddInclude('xsltInternals.inc');
  138. AddInclude('xslt_item_common_fields.inc');
  139. AddInclude('xsltpattern.inc');
  140. AddInclude('numbersInternals.inc');
  141. AddInclude('documents.inc');
  142. AddInclude('extensions.inc');
  143. AddInclude('security.inc');
  144. AddInclude('xsltutils.inc');
  145. AddInclude('extra.inc');
  146. AddInclude('keys.inc');
  147. AddInclude('namespaces.inc');
  148. AddInclude('variables.inc');
  149. AddInclude('xslt.inc');
  150. AddInclude('xsltconfig.inc');
  151. AddInclude('attributes.inc');
  152. AddInclude('functions.inc');
  153. AddInclude('imports.inc');
  154. AddInclude('preproc.inc');
  155. AddInclude('templates.inc');
  156. AddInclude('transform.inc');
  157. end;
  158. T:=P.Targets.AddUnit('xsltdyn.pas');
  159. with T.Dependencies do
  160. begin
  161. AddInclude('xsltlocale.inc');
  162. AddInclude('xsltInternals.inc');
  163. AddInclude('xslt_item_common_fields.inc');
  164. AddInclude('xsltpattern.inc');
  165. AddInclude('numbersInternals.inc');
  166. AddInclude('documents.inc');
  167. AddInclude('extensions.inc');
  168. AddInclude('security.inc');
  169. AddInclude('xsltutils.inc');
  170. AddInclude('extra.inc');
  171. AddInclude('keys.inc');
  172. AddInclude('namespaces.inc');
  173. AddInclude('variables.inc');
  174. AddInclude('xslt.inc');
  175. AddInclude('xsltconfig.inc');
  176. AddInclude('attributes.inc');
  177. AddInclude('functions.inc');
  178. AddInclude('imports.inc');
  179. AddInclude('preproc.inc');
  180. AddInclude('templates.inc');
  181. AddInclude('transform.inc');
  182. end;
  183. T:=P.Targets.AddUnit('exslt.pas');
  184. with T.Dependencies do
  185. AddInclude('exslt.inc');
  186. T:=P.Targets.AddUnit('exsltdyn.pas');
  187. with T.Dependencies do
  188. AddInclude('exslt.inc');
  189. P.ExamplePath.Add('examples');
  190. P.Targets.AddExampleProgram('reader1.pas');
  191. P.Targets.AddExampleProgram('reader2.pas');
  192. P.Targets.AddExampleProgram('io2.pas');
  193. P.Targets.AddExampleProgram('io1.pas');
  194. P.Targets.AddExampleProgram('tree1.pas');
  195. P.Targets.AddExampleProgram('tree2.pas');
  196. P.Targets.AddExampleProgram('reader2.pas');
  197. P.Targets.AddExampleProgram('parse1.pas');
  198. P.Targets.AddExampleProgram('parse2.pas');
  199. P.Targets.AddExampleProgram('parse3.pas');
  200. P.Targets.AddExampleProgram('parse4.pas');
  201. P.Targets.AddExampleProgram('testWriter.pas');
  202. P.Targets.AddExampleProgram('xpath1.pas');
  203. P.Targets.AddExampleProgram('xpath2.pas');
  204. P.Targets.AddExampleUnit('exutils.pas');
  205. P.Sources.AddExampleFiles('examples/*',P.Directory,false,'.');
  206. P.NamespaceMap:='namespaces.lst';
  207. {$ifndef ALLPACKAGES}
  208. Run;
  209. end;
  210. end.
  211. {$endif ALLPACKAGES}