diff --git a/CMakeLists.txt b/CMakeLists.txt index cc608e7978..f9a3abbe3b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -15,6 +15,10 @@ option(ENABLE_PCH "Use PCH to speed up compilation" ON) option(ENABLE_LTO "Enables Link Time Optimization" OFF) option(ENABLE_GENERIC "Enables generic build that should run on any little-endian host" OFF) option(ENABLE_HEADLESS "Enables running Dolphin as a headless variant" OFF) +option(ENABLE_ALSA "Enables ALSA sound backend" ON) +option(ENABLE_AO "Enables libao sound backend" ON) +option(ENABLE_PULSEAUDIO "Enables PulseAudio sound backend" ON) +option(ENABLE_OPENAL "Enables OpenAL sound backend" ON) # Maintainers: if you consider blanket disabling this for your users, please # consider the following points: @@ -445,23 +449,31 @@ if (OPENGL_GL) include_directories(${OPENGL_INCLUDE_DIR}) endif() -include(FindALSA OPTIONAL) -if(ALSA_FOUND) - add_definitions(-DHAVE_ALSA=1) - message("ALSA found, enabling ALSA sound backend") +if(ENABLE_ALSA) + include(FindALSA OPTIONAL) + if(ALSA_FOUND) + add_definitions(-DHAVE_ALSA=1) + message("ALSA found, enabling ALSA sound backend") + else() + add_definitions(-DHAVE_ALSA=0) + message("ALSA NOT found, disabling ALSA sound backend") + endif() else() - add_definitions(-DHAVE_ALSA=0) - message("ALSA NOT found, disabling ALSA sound backend") -endif(ALSA_FOUND) + message("ALSA explicitly disabled, disabling ALSA sound backend") +endif() -check_lib(AO ao ao QUIET) -if(AO_FOUND) - add_definitions(-DHAVE_AO=1) - message("ao found, enabling ao sound backend") +if(ENABLE_AO) + check_lib(AO ao ao QUIET) + if(AO_FOUND) + add_definitions(-DHAVE_AO=1) + message("ao found, enabling ao sound backend") + else() + add_definitions(-DHAVE_AO=0) + message("ao NOT found, disabling ao sound backend") + endif() else() - add_definitions(-DHAVE_AO=0) - message("ao NOT found, disabling ao sound backend") -endif(AO_FOUND) + message("ao explicitly disabled, disabling ao sound backend") +endif() check_lib(BLUEZ bluez bluez QUIET) if(BLUEZ_FOUND) @@ -472,24 +484,32 @@ else() message("bluez NOT found, disabling bluetooth support") endif(BLUEZ_FOUND) -check_lib(PULSEAUDIO libpulse pulse QUIET) -if(PULSEAUDIO_FOUND) - add_definitions(-DHAVE_PULSEAUDIO=1) - message("PulseAudio found, enabling PulseAudio sound backend") +if(ENABLE_PULSEAUDIO) + check_lib(PULSEAUDIO libpulse pulse QUIET) + if(PULSEAUDIO_FOUND) + add_definitions(-DHAVE_PULSEAUDIO=1) + message("PulseAudio found, enabling PulseAudio sound backend") + else() + add_definitions(-DHAVE_PULSEAUDIO=0) + message("PulseAudio NOT found, disabling PulseAudio sound backend") + endif() else() - add_definitions(-DHAVE_PULSEAUDIO=0) - message("PulseAudio NOT found, disabling PulseAudio sound backend") -endif(PULSEAUDIO_FOUND) + message("PulseAudio explicitly disabled, disabling PulseAudio sound backend") +endif() -include(FindOpenAL OPTIONAL) -if(OPENAL_FOUND) - add_definitions(-DHAVE_OPENAL=1) - include_directories(${OPENAL_INCLUDE_DIR}) - message("OpenAL found, enabling OpenAL sound backend") +if(ENABLE_OPENAL) + include(FindOpenAL OPTIONAL) + if(OPENAL_FOUND) + add_definitions(-DHAVE_OPENAL=1) + include_directories(${OPENAL_INCLUDE_DIR}) + message("OpenAL found, enabling OpenAL sound backend") + else() + add_definitions(-DHAVE_OPENAL=0) + message("OpenAL NOT found, disabling OpenAL sound backend") + endif() else() - add_definitions(-DHAVE_OPENAL=0) - message("OpenAL NOT found, disabling OpenAL sound backend") -endif(OPENAL_FOUND) + message("OpenAL explicitly disabled, disabling OpenAL sound backend") +endif() include(FindLLVM OPTIONAL) if (LLVM_FOUND)