fpmake.pp 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. {$ifndef ALLPACKAGES}
  2. {$mode objfpc}{$H+}
  3. program fpmake;
  4. uses fpmkunit;
  5. Var
  6. P : TPackage;
  7. T : TTarget;
  8. begin
  9. With Installer do
  10. begin
  11. {$endif ALLPACKAGES}
  12. P:=AddPackage('httpd20');
  13. {$ifdef ALLPACKAGES}
  14. P.Directory:=ADirectory;
  15. {$endif ALLPACKAGES}
  16. P.Version:='2.7.1';
  17. P.Author := 'Library: Apache Foundation, header: Felipe Monteiro de Carvalho';
  18. P.License := 'Library: Apache License 2, header: LGPL with modification, ';
  19. P.HomepageURL := 'www.freepascal.org';
  20. P.Email := '';
  21. P.Description := 'Headers for the Apache 2.0(.58) www server';
  22. P.NeedLibC:= true; // true for headers that indirectly link to libc?
  23. {$ifdef ALLPACKAGES}
  24. P.OSes := []; // By default, do not build this package
  25. {$else ALLPACKAGES}
  26. P.OSes := AllUnixOSes+AllWindowsOSes-[qnx];
  27. {$endif ALLPACKAGES}
  28. P.SourcePath.Add('src');
  29. P.SourcePath.Add('src/apr');
  30. P.SourcePath.Add('src/apriconv');
  31. P.SourcePath.Add('src/aprutil');
  32. P.IncludePath.Add('src');
  33. P.IncludePath.Add('src/apr');
  34. P.IncludePath.Add('src/apriconv');
  35. P.IncludePath.Add('src/aprutil');
  36. // P.Dependencies.Add('x11');
  37. T:=P.Targets.AddUnit('apriconv.pas');
  38. with T.Dependencies do
  39. begin
  40. AddInclude('apr_iconv.inc');
  41. AddInclude('api_version.inc');
  42. AddUnit('apr');
  43. end;
  44. T:=P.Targets.AddUnit('apr.pas');
  45. with T.Dependencies do
  46. begin
  47. AddInclude('apr_errno.inc');
  48. AddInclude('apr_pools.inc');
  49. AddInclude('apr_allocator.inc');
  50. AddInclude('apr_general.inc');
  51. AddInclude('apr_dso.inc');
  52. AddInclude('apr_user.inc');
  53. AddInclude('apr_time.inc');
  54. AddInclude('apr_tables.inc');
  55. AddInclude('apr_file_info.inc');
  56. AddInclude('apr_file_io.inc');
  57. AddInclude('apr_strings.inc');
  58. AddInclude('apr_lib.inc');
  59. AddInclude('apr_signal.inc');
  60. AddInclude('apr_network_io.inc');
  61. AddInclude('apr_thread_proc.inc');
  62. AddInclude('apr_version.inc');
  63. AddInclude('apr_poll.inc');
  64. end;
  65. T:=P.Targets.AddUnit('aprutil.pas');
  66. with T.Dependencies do
  67. begin
  68. AddInclude('apr_xml.inc');
  69. AddInclude('apr_uri.inc');
  70. AddInclude('apr_md5.inc');
  71. AddInclude('apr_xlate.inc');
  72. AddUnit('apr');
  73. end;
  74. T:=P.Targets.AddUnit('httpd.pas');
  75. with T.Dependencies do
  76. begin
  77. AddInclude('ap_provider.inc');
  78. AddInclude('util_cfgtree.inc');
  79. AddInclude('httpd.inc');
  80. AddInclude('ap_config.inc');
  81. AddInclude('ap_mmn.inc');
  82. AddInclude('ap_release.inc');
  83. AddInclude('apr_buckets.inc');
  84. AddInclude('pcreposix.inc');
  85. AddInclude('http_config.inc');
  86. AddInclude('http_core.inc');
  87. AddInclude('apr_hash.inc');
  88. AddInclude('util_filter.inc');
  89. AddInclude('http_log.inc');
  90. AddInclude('http_main.inc');
  91. AddInclude('http_protocol.inc');
  92. AddInclude('http_request.inc');
  93. AddInclude('http_connection.inc');
  94. AddInclude('http_vhost.inc');
  95. AddInclude('util_script.inc');
  96. AddInclude('util_time.inc');
  97. AddInclude('util_md5.inc');
  98. AddInclude('ap_mpm.inc');
  99. AddUnit('apr');
  100. AddUnit('aprutil');
  101. end;
  102. P.ExamplePath.Add('examples');
  103. T:=P.Targets.AddExampleProgram('minimain.pas');
  104. T:=P.Targets.AddExampleProgram('mod_hello.pp');
  105. T:=P.Targets.AddExampleProgram('mod_example.pp');
  106. T.Dependencies.AddInclude('define.inc');
  107. T:=P.Targets.AddExampleProgram('mod_spelling.pp');
  108. T.Dependencies.AddInclude('define.inc');
  109. T:=P.Targets.AddExampleProgram('testmodule.pp');
  110. T.Dependencies.AddInclude('define.inc');
  111. {$ifndef ALLPACKAGES}
  112. Run;
  113. end;
  114. end.
  115. {$endif ALLPACKAGES}