CMake: only look for Bluez on Linux

Stops CMake from saying "BlueZ NOT found, disabling bluetooth support"
on other OSes. Windows, macOS, and Android support Bluetooth using other
libraries. I'm not sure if non-Linux, non-Android Unices (like FreeBSD)
need another message?
This commit is contained in:
Michael Maltese 2017-05-03 15:15:10 -07:00
parent eaa4565e63
commit 5230a8c996
2 changed files with 13 additions and 11 deletions

View File

@ -24,7 +24,6 @@ option(ENABLE_ALSA "Enables ALSA 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
# consider the following points:

View File

@ -326,18 +326,21 @@ elseif(UNIX)
endif()
# Bluez doesn't support all the communication modes on FreeBSD, so only using it on Linux
if(ENABLE_BLUEZ AND CMAKE_SYSTEM_NAME MATCHES "Linux")
find_package(BlueZ)
if(BLUEZ_FOUND)
message(STATUS "BlueZ found, enabling bluetooth support")
set(SRCS ${SRCS} HW/WiimoteReal/IOLinux.cpp)
set(LIBS ${LIBS} BlueZ::BlueZ)
add_definitions(-DHAVE_BLUEZ=1)
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
option(ENABLE_BLUEZ "Enables bluetooth support" ON)
if(ENABLE_BLUEZ)
find_package(BlueZ)
if(BLUEZ_FOUND)
message(STATUS "BlueZ found, enabling bluetooth support")
set(SRCS ${SRCS} HW/WiimoteReal/IOLinux.cpp)
set(LIBS ${LIBS} BlueZ::BlueZ)
add_definitions(-DHAVE_BLUEZ=1)
else()
message(STATUS "BlueZ NOT found, disabling bluetooth support")
endif()
else()
message(STATUS "BlueZ NOT found, disabling bluetooth support")
message(STATUS "BlueZ explicitly disabled, disabling bluetooth support")
endif()
else()
message(STATUS "BlueZ explicitly disabled, disabling bluetooth support")
endif()
if(HIDAPI_FOUND)