fpmake.pp 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  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('libjack');
  13. P.ShortName:='ljack';
  14. {$ifdef ALLPACKAGES}
  15. P.Directory:=ADirectory;
  16. {$endif ALLPACKAGES}
  17. P.Version:='3.3.1';
  18. P.Author := 'Library: libjack';
  19. P.License := 'Audio Server: GPL, Library: LGPL';
  20. P.HomepageURL := 'https://jackaudio.org/';
  21. P.Email := '';
  22. P.Description := 'Headers for the JACK Audio Connection Kit library';
  23. P.NeedLibC:= true; // true for headers that indirectly link to libc?
  24. P.OSes := AllUnixOSes+[win32,win64]-[qnx];
  25. if Defaults.CPU=jvm then
  26. P.OSes := P.OSes - [android];
  27. P.SourcePath.Add('src');
  28. P.IncludePath.Add('src');
  29. T:=P.Targets.AddUnit('jack.pp');
  30. with T.Dependencies do
  31. begin
  32. AddInclude('systemdeps.inc');
  33. AddInclude('transport.inc');
  34. AddInclude('types.inc');
  35. AddInclude('weakmacros.inc');
  36. end;
  37. T:=P.Targets.AddUnit('jackringbuffer.pp');
  38. with T.Dependencies do
  39. begin
  40. AddInclude('ringbuffer.inc');
  41. AddUnit('jack');
  42. end;
  43. T:=P.Targets.AddUnit('jackuuid.pp');
  44. with T.Dependencies do
  45. begin
  46. AddInclude('uuid.inc');
  47. AddUnit('jack');
  48. end;
  49. T:=P.Targets.AddUnit('jacksession.pp');
  50. with T.Dependencies do
  51. begin
  52. AddInclude('session.inc');
  53. AddInclude('weakmacros.inc');
  54. AddUnit('jack');
  55. end;
  56. T:=P.Targets.AddUnit('jackthread.pp');
  57. with T.Dependencies do
  58. begin
  59. AddInclude('thread.inc');
  60. AddInclude('weakmacros.inc');
  61. AddUnit('jack');
  62. end;
  63. T:=P.Targets.AddUnit('jackstatistics.pp');
  64. with T.Dependencies do
  65. begin
  66. AddInclude('statistics.inc');
  67. AddUnit('jack');
  68. end;
  69. T:=P.Targets.AddUnit('jacknet.pp');
  70. with T.Dependencies do
  71. begin
  72. AddInclude('net.inc');
  73. AddInclude('systemdeps.inc');
  74. AddInclude('weakmacros.inc');
  75. AddUnit('jack');
  76. end;
  77. T:=P.Targets.AddUnit('jackmidiport.pp');
  78. with T.Dependencies do
  79. begin
  80. AddInclude('midiport.inc');
  81. AddInclude('weakmacros.inc');
  82. AddUnit('jack');
  83. end;
  84. T:=P.Targets.AddUnit('jackmetadata.pp');
  85. with T.Dependencies do
  86. begin
  87. AddInclude('metadata.inc');
  88. AddUnit('jack');
  89. end;
  90. T:=P.Targets.AddUnit('jackjslist.pp');
  91. with T.Dependencies do
  92. begin
  93. AddInclude('jslist.inc');
  94. end;
  95. T:=P.Targets.AddUnit('jackintclient.pp');
  96. with T.Dependencies do
  97. begin
  98. AddInclude('intclient.inc');
  99. AddUnit('jack');
  100. end;
  101. T:=P.Targets.AddUnit('jackcontrol.pp');
  102. with T.Dependencies do
  103. begin
  104. AddInclude('control.inc');
  105. AddInclude('systemdeps.inc');
  106. AddUnit('jack');
  107. AddUnit('jackjslist');
  108. end;
  109. P.ExamplePath.Add('examples');
  110. P.Targets.AddExampleProgram('capture_client.pp');
  111. P.Targets.AddExampleProgram('simple_client.pp');
  112. P.Targets.AddExampleProgram('simple_session_client.pp');
  113. P.Targets.AddExampleProgram('latent_client.pp');
  114. P.Targets.AddExampleProgram('transport_client.pp');
  115. P.Targets.AddExampleProgram('impulse_grabber.pp');
  116. P.Targets.AddExampleProgram('showtime.pp');
  117. P.Targets.AddExampleProgram('midisine.pp');
  118. P.Targets.AddExampleProgram('midiseq.pp');
  119. P.Targets.AddExampleProgram('metro.pp');
  120. P.NamespaceMap:='namespaces.lst';
  121. {$ifndef ALLPACKAGES}
  122. Run;
  123. end;
  124. end.
  125. {$endif ALLPACKAGES}