fpmake.pp 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  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('httpd22');
  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.2 series www server';
  22. P.NeedLibC:= true; // true for headers that indirectly link to libc?
  23. P.OSes := AllUnixOSes+AllWindowsOSes-[qnx];
  24. P.SourcePath.Add('src');
  25. P.SourcePath.Add('src/apr');
  26. P.SourcePath.Add('src/apriconv');
  27. P.SourcePath.Add('src/aprutil');
  28. P.IncludePath.Add('src');
  29. P.IncludePath.Add('src/apr');
  30. P.IncludePath.Add('src/apriconv');
  31. P.IncludePath.Add('src/aprutil');
  32. // P.Dependencies.Add('x11');
  33. T:=P.Targets.AddUnit('apriconv.pas');
  34. with T.Dependencies do
  35. begin
  36. AddInclude('apr_iconv.inc');
  37. AddInclude('api_version.inc');
  38. AddUnit('apr');
  39. end;
  40. T:=P.Targets.AddUnit('apr.pas');
  41. with T.Dependencies do
  42. begin
  43. AddInclude('apr_errno.inc');
  44. AddInclude('apr_pools.inc');
  45. AddInclude('apr_allocator.inc');
  46. AddInclude('apr_general.inc');
  47. AddInclude('apr_dso.inc');
  48. AddInclude('apr_user.inc');
  49. AddInclude('apr_time.inc');
  50. AddInclude('apr_tables.inc');
  51. AddInclude('apr_file_info.inc');
  52. AddInclude('apr_file_io.inc');
  53. AddInclude('apr_strings.inc');
  54. AddInclude('apr_lib.inc');
  55. AddInclude('apr_signal.inc');
  56. AddInclude('apr_network_io.inc');
  57. AddInclude('apr_thread_proc.inc');
  58. AddInclude('apr_version.inc');
  59. AddInclude('apr_poll.inc');
  60. end;
  61. T:=P.Targets.AddUnit('aprutil.pas');
  62. with T.Dependencies do
  63. begin
  64. AddInclude('apr_xml.inc');
  65. AddInclude('apr_uri.inc');
  66. AddInclude('apr_md5.inc');
  67. AddInclude('apr_xlate.inc');
  68. AddUnit('apr');
  69. end;
  70. T:=P.Targets.AddUnit('httpd.pas');
  71. with T.Dependencies do
  72. begin
  73. AddInclude('ap_provider.inc');
  74. AddInclude('util_cfgtree.inc');
  75. AddInclude('httpd.inc');
  76. AddInclude('ap_config.inc');
  77. AddInclude('ap_mmn.inc');
  78. AddInclude('ap_release.inc');
  79. AddInclude('apr_buckets.inc');
  80. AddInclude('ap_regex.inc');
  81. AddInclude('http_config.inc');
  82. AddInclude('http_core.inc');
  83. AddInclude('apr_hash.inc');
  84. AddInclude('util_filter.inc');
  85. AddInclude('http_log.inc');
  86. AddInclude('http_main.inc');
  87. AddInclude('http_protocol.inc');
  88. AddInclude('http_request.inc');
  89. AddInclude('http_connection.inc');
  90. AddInclude('http_vhost.inc');
  91. AddInclude('util_script.inc');
  92. AddInclude('util_time.inc');
  93. AddInclude('util_md5.inc');
  94. AddInclude('ap_mpm.inc');
  95. AddUnit('apr');
  96. AddUnit('aprutil');
  97. end;
  98. P.ExamplePath.Add('examples');
  99. T:=P.Targets.AddExampleProgram('minimain.pas');
  100. T:=P.Targets.AddExampleProgram('mod_hello.pp');
  101. T:=P.Targets.AddExampleProgram('mod_example.pp');
  102. T.Dependencies.AddInclude('define.inc');
  103. T:=P.Targets.AddExampleProgram('mod_spelling.pp');
  104. T.Dependencies.AddInclude('define.inc');
  105. T:=P.Targets.AddExampleProgram('testmodule.pp');
  106. T.Dependencies.AddInclude('define.inc');
  107. {$ifndef ALLPACKAGES}
  108. Run;
  109. end;
  110. end.
  111. {$endif ALLPACKAGES}