X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=Build;fp=Build;h=49614efc74d9e79403e6d8175b23c549aa0aeadc;hb=3bbbba4a23a153e6f272ca0a75cff73abec84212;hp=0000000000000000000000000000000000000000;hpb=bd4b334e22159c4f48e8d579952146c486a5a058;p=ext%2Fopenal.git diff --git a/Build b/Build new file mode 100644 index 0000000..49614ef --- /dev/null +++ b/Build @@ -0,0 +1,317 @@ +package "openal" +{ + if_arch "windows" + { + feature "winmm" "Enable WinMM backend" + { + default "yes"; + }; + if_feature "winmm" + { + build_info + { + library "winmm"; + }; + }; + + feature "dsound" "Enable DirectSound backend" + { + default "yes"; + }; + + feature "wasapi" "Enable WASAPI backend" + { + default "yes"; + }; + }; + + feature "wave" "Enable WaveFile backend" + { + default "yes"; + }; + + build_info + { + incpath "."; + incpath "common"; + define "HAVE_MALLOC_H" "1"; + define "HAVE_PTHREAD_SETSCHEDPARAM" "1"; + define "RESTRICT" " "; + }; + + if_arch "linux" + { + define "HAVE_PTHREAD_SETNAME_NP" "1"; + build_info + { + library "dl"; + }; + }; + + if_arch "windows" + { + build_info + { + define "NOMINMAX" "1"; + define "HAVE__ALIGNED_MALLOC" "1"; + define "HAVE_INTRIN_H" "1"; + define "HAVE_CPUID_INTRINSIC" "1"; + define "HAVE_GUIDDEF_H" "1"; + define "HAVE_INITGUID_H" "1"; + define "AL_API" "__declspec(dllexport)"; + define "ALC_API" "__declspec(dllexport)"; + library "ole32"; + library "shell32"; + library "user32"; + }; + }; + + if_arch "gcc" + { + build_info + { + define "HAVE_CPUID_H" "1"; + define "HAVE_GCC_GET_CPUID" "1"; + define "AL_API" "__attribute__((visibility(\"default\")))"; + define "ALC_API" "__attribute__((visibility(\"default\")))"; + }; + }; + + if_arch "msvc" + { + build_info + { + fatal_warnings false; + }; + }; + + if_arch "!windows" + { + build_info + { + define "HAVE_POSIX_MEMALIGN" "1"; + define "HAVE_DLFCN_H" "1"; + }; + }; + + library "openal" + { + source "common/albit.h"; + source "common/albyte.h"; + source "common/alcomplex.cpp"; + source "common/alcomplex.h"; + source "common/aldeque.h"; + source "common/alfstream.cpp"; + source "common/alfstream.h"; + source "common/almalloc.cpp"; + source "common/almalloc.h"; + source "common/alnumbers.h"; + source "common/alnumeric.h"; + source "common/aloptional.h"; + source "common/alspan.h"; + source "common/alstring.cpp"; + source "common/alstring.h"; + source "common/altraits.h"; + source "common/atomic.h"; + source "common/comptr.h"; + source "common/dynload.cpp"; + source "common/dynload.h"; + source "common/intrusive_ptr.h"; + source "common/opthelpers.h"; + source "common/phase_shifter.h"; + source "common/polyphase_resampler.cpp"; + source "common/polyphase_resampler.h"; + source "common/pragmadefs.h"; + source "common/ringbuffer.cpp"; + source "common/ringbuffer.h"; + source "common/strutils.cpp"; + source "common/strutils.h"; + source "common/threads.cpp"; + source "common/threads.h"; + source "common/vecmat.h"; + source "common/vector.h"; + + source "core/ambdec.cpp"; + source "core/ambdec.h"; + source "core/ambidefs.cpp"; + source "core/ambidefs.h"; + source "core/async_event.h"; + source "core/bformatdec.cpp"; + source "core/bformatdec.h"; + source "core/bs2b.cpp"; + source "core/bs2b.h"; + source "core/bsinc_defs.h"; + source "core/bsinc_tables.cpp"; + source "core/bsinc_tables.h"; + source "core/bufferline.h"; + source "core/buffer_storage.cpp"; + source "core/buffer_storage.h"; + source "core/context.cpp"; + source "core/context.h"; + source "core/converter.cpp"; + source "core/converter.h"; + source "core/cpu_caps.cpp"; + source "core/cpu_caps.h"; + source "core/cubic_defs.h"; + source "core/cubic_tables.cpp"; + source "core/cubic_tables.h"; + source "core/devformat.cpp"; + source "core/devformat.h"; + source "core/device.cpp"; + source "core/device.h"; + source "core/effects/base.h"; + source "core/effectslot.cpp"; + source "core/effectslot.h"; + source "core/except.cpp"; + source "core/except.h"; + source "core/filters/biquad.h"; + source "core/filters/biquad.cpp"; + source "core/filters/nfc.cpp"; + source "core/filters/nfc.h"; + source "core/filters/splitter.cpp"; + source "core/filters/splitter.h"; + source "core/fmt_traits.cpp"; + source "core/fmt_traits.h"; + source "core/fpu_ctrl.cpp"; + source "core/fpu_ctrl.h"; + source "core/front_stablizer.h"; + source "core/helpers.cpp"; + source "core/helpers.h"; + source "core/hrtf.cpp"; + source "core/hrtf.h"; + source "core/logging.cpp"; + source "core/logging.h"; + source "core/mastering.cpp"; + source "core/mastering.h"; + source "core/mixer.cpp"; + source "core/mixer.h"; + source "core/resampler_limits.h"; + source "core/uhjfilter.cpp"; + source "core/uhjfilter.h"; + source "core/uiddefs.cpp"; + source "core/voice.cpp"; + source "core/voice.h"; + source "core/voice_change.h"; + + source "core/mixer/defs.h"; + source "core/mixer/hrtfbase.h"; + source "core/mixer/hrtfdefs.h"; + source "core/mixer/mixer_c.cpp"; + + source "al/auxeffectslot.cpp"; + source "al/auxeffectslot.h"; + source "al/buffer.cpp"; + source "al/buffer.h"; + source "al/effect.cpp"; + source "al/effect.h"; + source "al/effects/autowah.cpp"; + source "al/effects/chorus.cpp"; + source "al/effects/compressor.cpp"; + source "al/effects/convolution.cpp"; + source "al/effects/dedicated.cpp"; + source "al/effects/distortion.cpp"; + source "al/effects/echo.cpp"; + source "al/effects/effects.cpp"; + source "al/effects/effects.h"; + source "al/effects/equalizer.cpp"; + source "al/effects/fshifter.cpp"; + source "al/effects/modulator.cpp"; + source "al/effects/null.cpp"; + source "al/effects/pshifter.cpp"; + source "al/effects/reverb.cpp"; + source "al/effects/vmorpher.cpp"; + source "al/error.cpp"; + source "al/event.cpp"; + source "al/event.h"; + source "al/extension.cpp"; + source "al/filter.cpp"; + source "al/filter.h"; + source "al/listener.cpp"; + source "al/listener.h"; + source "al/source.cpp"; + source "al/source.h"; + source "al/state.cpp"; + + source "alc/alc.cpp"; + source "alc/alu.cpp"; + source "alc/alu.h"; + source "alc/alconfig.cpp"; + source "alc/alconfig.h"; + source "alc/context.cpp"; + source "alc/context.h"; + source "alc/device.cpp"; + source "alc/device.h"; + source "alc/effects/base.h"; + source "alc/effects/autowah.cpp"; + source "alc/effects/chorus.cpp"; + source "alc/effects/compressor.cpp"; + source "alc/effects/convolution.cpp"; + source "alc/effects/dedicated.cpp"; + source "alc/effects/distortion.cpp"; + source "alc/effects/echo.cpp"; + source "alc/effects/equalizer.cpp"; + source "alc/effects/fshifter.cpp"; + source "alc/effects/modulator.cpp"; + source "alc/effects/null.cpp"; + source "alc/effects/pshifter.cpp"; + source "alc/effects/reverb.cpp"; + source "alc/effects/vmorpher.cpp"; + source "alc/inprogext.h"; + source "alc/panning.cpp"; + + if_arch "x86-64" + { + source "core/mixer/mixer_sse2.cpp"; + build_info + { + define "HAVE_SSE2" "1"; + define "HAVE_SSE_INTRINSICS" "1"; + }; + }; + + source "alc/backends/base.cpp"; + source "alc/backends/base.h"; + source "alc/backends/loopback.cpp"; + source "alc/backends/loopback.h"; + source "alc/backends/null.cpp"; + source "alc/backends/null.h"; + + if_feature "winmm" + { + source "alc/backends/winmm.cpp"; + source "alc/backends/winmm.h"; + }; + + if_feature "dsound" + { + source "alc/backends/dsound.cpp"; + source "alc/backends/dsound.h"; + }; + + if_feature "wasapi" + { + source "alc/backends/wasapi.cpp"; + source "alc/backends/wasapi.h"; + }; + + if_feature "wave" + { + source "alc/backends/wave.cpp"; + source "alc/backends/wave.h"; + }; + + build_info + { + define "AL_BUILD_LIBRARY" "1"; + define "AL_ALEXT_PROTOTYPES" "1"; + }; + + install true; + install_headers false; + }; + + install "include/AL" + { + source "include/AL"; + }; +};