openal.lua 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. --
  2. -- Copyright (c) 2012-2015 Daniele Bartolini and individual contributors.
  3. -- License: https://github.com/taylor001/crown/blob/master/LICENSE
  4. --
  5. project "openal"
  6. kind "SharedLib"
  7. configuration {}
  8. local AL_DIR = (CROWN_DIR .. "third/openal/")
  9. defines {
  10. "AL_ALEXT_PROTOTYPES",
  11. "AL_BUILD_LIBRARY",
  12. "_LARGEFILE_SOURCE",
  13. "_LARGE_FILES",
  14. }
  15. configuration { "development or release", "linux-*" }
  16. buildoptions {
  17. "-fomit-frame-pointer",
  18. }
  19. configuration { "vs*" }
  20. defines {
  21. "_WINDOWS",
  22. "_WIN32_WINNT=0x0502",
  23. "restrict=",
  24. "inline=__inline",
  25. "_CRT_NONSTDC_NO_DEPRECATE",
  26. "strcasecmp=_stricmp",
  27. "strncasecmp=_strnicmp",
  28. "snprintf=_snprintf",
  29. }
  30. buildoptions {
  31. "/wd4098",
  32. }
  33. includedirs {
  34. AL_DIR .. "OpenAL32/config_vs2013",
  35. }
  36. files {
  37. AL_DIR .. "Alc/backends/mmdevapi.c",
  38. AL_DIR .. "Alc/backends/dsound.c",
  39. AL_DIR .. "Alc/backends/winmm.c",
  40. }
  41. links {
  42. "winmm",
  43. }
  44. configuration { "linux-*" }
  45. defines {
  46. -- These are needed on non-Windows systems for extra features
  47. "_GNU_SOURCE=1",
  48. "_POSIX_C_SOURCE=200809L",
  49. "_XOPEN_SOURCE=700",
  50. }
  51. buildoptions {
  52. "-std=c99",
  53. "-Winline",
  54. "-fPIC",
  55. "-fvisibility=hidden",
  56. "-pthread",
  57. }
  58. includedirs {
  59. AL_DIR .. "OpenAL32/config_linux",
  60. }
  61. files {
  62. AL_DIR .. "Alc/backends/alsa.c",
  63. AL_DIR .. "Alc/backends/pulseaudio.c",
  64. }
  65. configuration {}
  66. includedirs {
  67. AL_DIR .. "include",
  68. AL_DIR .. "Alc",
  69. AL_DIR .. "OpenAL32/Include",
  70. }
  71. files {
  72. AL_DIR .. "common/atomic.c",
  73. AL_DIR .. "common/rwlock.c",
  74. AL_DIR .. "common/threads.c",
  75. AL_DIR .. "common/uintmap.c",
  76. AL_DIR .. "Alc/ALc.c",
  77. AL_DIR .. "Alc/ALu.c",
  78. AL_DIR .. "Alc/alcConfig.c",
  79. AL_DIR .. "Alc/alcRing.c",
  80. AL_DIR .. "Alc/bs2b.c",
  81. AL_DIR .. "Alc/effects/autowah.c",
  82. AL_DIR .. "Alc/effects/chorus.c",
  83. AL_DIR .. "Alc/effects/compressor.c",
  84. AL_DIR .. "Alc/effects/dedicated.c",
  85. AL_DIR .. "Alc/effects/distortion.c",
  86. AL_DIR .. "Alc/effects/echo.c",
  87. AL_DIR .. "Alc/effects/equalizer.c",
  88. AL_DIR .. "Alc/effects/flanger.c",
  89. AL_DIR .. "Alc/effects/modulator.c",
  90. AL_DIR .. "Alc/effects/null.c",
  91. AL_DIR .. "Alc/effects/reverb.c",
  92. AL_DIR .. "Alc/helpers.c",
  93. AL_DIR .. "Alc/hrtf.c",
  94. AL_DIR .. "Alc/panning.c",
  95. AL_DIR .. "Alc/mixer.c",
  96. AL_DIR .. "Alc/mixer_c.c",
  97. AL_DIR .. "Alc/midi/base.c",
  98. AL_DIR .. "Alc/midi/sf2load.c",
  99. AL_DIR .. "Alc/midi/dummy.c",
  100. AL_DIR .. "Alc/midi/fluidsynth.c",
  101. AL_DIR .. "Alc/midi/soft.c",
  102. -- Assume SSE2 available everywhere
  103. AL_DIR .. "Alc/mixer_sse2.c",
  104. AL_DIR .. "Alc/mixer_sse.c",
  105. AL_DIR .. "Alc/backends/base.c",
  106. AL_DIR .. "Alc/backends/loopback.c",
  107. AL_DIR .. "Alc/backends/null.c",
  108. AL_DIR .. "OpenAL32/alAuxEffectSlot.c",
  109. AL_DIR .. "OpenAL32/alBuffer.c",
  110. AL_DIR .. "OpenAL32/alEffect.c",
  111. AL_DIR .. "OpenAL32/alError.c",
  112. AL_DIR .. "OpenAL32/alExtension.c",
  113. AL_DIR .. "OpenAL32/alFilter.c",
  114. AL_DIR .. "OpenAL32/alFontsound.c",
  115. AL_DIR .. "OpenAL32/alListener.c",
  116. AL_DIR .. "OpenAL32/alMidi.c",
  117. AL_DIR .. "OpenAL32/alPreset.c",
  118. AL_DIR .. "OpenAL32/alSoundfont.c",
  119. AL_DIR .. "OpenAL32/alSource.c",
  120. AL_DIR .. "OpenAL32/alState.c",
  121. AL_DIR .. "OpenAL32/alThunk.c",
  122. AL_DIR .. "OpenAL32/sample_cvt.c",
  123. }
  124. configuration {}