Merge pull request #4487 from linkmauve/optional-dependencies

Add cmake options to disable optional dependencies
This commit is contained in:
Markus Wick 2016-12-27 15:40:06 +01:00 committed by GitHub
commit a9eaaea19c
1 changed files with 71 additions and 43 deletions

View File

@ -15,6 +15,12 @@ option(ENABLE_PCH "Use PCH to speed up compilation" ON)
option(ENABLE_LTO "Enables Link Time Optimization" OFF) 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_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_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)
option(ENABLE_LLVM "Enables LLVM support, for disassembly" ON)
option(ENABLE_BLUEZ "Enables bluetooth support" ON)
# Maintainers: if you consider blanket disabling this for your users, please # Maintainers: if you consider blanket disabling this for your users, please
# consider the following points: # consider the following points:
@ -445,54 +451,75 @@ if (OPENGL_GL)
include_directories(${OPENGL_INCLUDE_DIR}) include_directories(${OPENGL_INCLUDE_DIR})
endif() endif()
include(FindALSA OPTIONAL) if(ENABLE_ALSA)
if(ALSA_FOUND) include(FindALSA OPTIONAL)
if(ALSA_FOUND)
add_definitions(-DHAVE_ALSA=1) add_definitions(-DHAVE_ALSA=1)
message("ALSA found, enabling ALSA sound backend") message("ALSA found, enabling ALSA sound backend")
else() else()
add_definitions(-DHAVE_ALSA=0) add_definitions(-DHAVE_ALSA=0)
message("ALSA NOT found, disabling ALSA sound backend") message("ALSA NOT found, disabling ALSA sound backend")
endif(ALSA_FOUND) endif()
else()
message("ALSA explicitly disabled, disabling ALSA sound backend")
endif()
check_lib(AO ao ao QUIET) if(ENABLE_AO)
if(AO_FOUND) check_lib(AO ao ao QUIET)
if(AO_FOUND)
add_definitions(-DHAVE_AO=1) add_definitions(-DHAVE_AO=1)
message("ao found, enabling ao sound backend") message("ao found, enabling ao sound backend")
else() else()
add_definitions(-DHAVE_AO=0) add_definitions(-DHAVE_AO=0)
message("ao NOT found, disabling ao sound backend") message("ao NOT found, disabling ao sound backend")
endif(AO_FOUND) endif()
else()
message("ao explicitly disabled, disabling ao sound backend")
endif()
check_lib(BLUEZ bluez bluez QUIET) if(ENABLE_BLUEZ)
if(BLUEZ_FOUND) check_lib(BLUEZ bluez bluez QUIET)
if(BLUEZ_FOUND)
add_definitions(-DHAVE_BLUEZ=1) add_definitions(-DHAVE_BLUEZ=1)
message("bluez found, enabling bluetooth support") message("bluez found, enabling bluetooth support")
else() else()
add_definitions(-DHAVE_BLUEZ=0) add_definitions(-DHAVE_BLUEZ=0)
message("bluez NOT found, disabling bluetooth support") message("bluez NOT found, disabling bluetooth support")
endif(BLUEZ_FOUND) endif()
else()
message("bluez explicitly disabled, disabling bluetooth support")
endif()
check_lib(PULSEAUDIO libpulse pulse QUIET) if(ENABLE_PULSEAUDIO)
if(PULSEAUDIO_FOUND) check_lib(PULSEAUDIO libpulse pulse QUIET)
if(PULSEAUDIO_FOUND)
add_definitions(-DHAVE_PULSEAUDIO=1) add_definitions(-DHAVE_PULSEAUDIO=1)
message("PulseAudio found, enabling PulseAudio sound backend") message("PulseAudio found, enabling PulseAudio sound backend")
else() else()
add_definitions(-DHAVE_PULSEAUDIO=0) add_definitions(-DHAVE_PULSEAUDIO=0)
message("PulseAudio NOT found, disabling PulseAudio sound backend") message("PulseAudio NOT found, disabling PulseAudio sound backend")
endif(PULSEAUDIO_FOUND) endif()
else()
message("PulseAudio explicitly disabled, disabling PulseAudio sound backend")
endif()
include(FindOpenAL OPTIONAL) if(ENABLE_OPENAL)
if(OPENAL_FOUND) include(FindOpenAL OPTIONAL)
if(OPENAL_FOUND)
add_definitions(-DHAVE_OPENAL=1) add_definitions(-DHAVE_OPENAL=1)
include_directories(${OPENAL_INCLUDE_DIR}) include_directories(${OPENAL_INCLUDE_DIR})
message("OpenAL found, enabling OpenAL sound backend") message("OpenAL found, enabling OpenAL sound backend")
else() else()
add_definitions(-DHAVE_OPENAL=0) add_definitions(-DHAVE_OPENAL=0)
message("OpenAL NOT found, disabling OpenAL sound backend") message("OpenAL NOT found, disabling OpenAL sound backend")
endif(OPENAL_FOUND) endif()
else()
message("OpenAL explicitly disabled, disabling OpenAL sound backend")
endif()
include(FindLLVM OPTIONAL) if(ENABLE_LLVM)
if (LLVM_FOUND) include(FindLLVM OPTIONAL)
if (LLVM_FOUND)
add_definitions(-DHAS_LLVM=1) add_definitions(-DHAS_LLVM=1)
set(HAS_LLVM 1) set(HAS_LLVM 1)
@ -500,6 +527,7 @@ if (LLVM_FOUND)
list(APPEND LIBS ${LLVM_LIBRARIES}) list(APPEND LIBS ${LLVM_LIBRARIES})
message(STATUS "Found LLVM ${LLVM_PACKAGE_VERSION}") message(STATUS "Found LLVM ${LLVM_PACKAGE_VERSION}")
endif()
endif() endif()
set(USE_X11 0) set(USE_X11 0)