diff --git a/plugins/linux-pulseaudio/CMakeLists.txt b/plugins/linux-pulseaudio/CMakeLists.txt index 8f36d79b4d196a76c7d1692d812798a40a6e1157..7f6eca61b33ac16f4615b5d632341b5b0d7fa1f2 100644 --- a/plugins/linux-pulseaudio/CMakeLists.txt +++ b/plugins/linux-pulseaudio/CMakeLists.txt @@ -1,7 +1,14 @@ project(linux-pulseaudio) +if(DISABLE_PULSEAUDIO) + message(STATUS "PulseAudio support disabled") + return() +endif() + find_package(PulseAudio) -if(NOT PulseAudio_FOUND) +if(NOT PULSEAUDIO_FOUND AND ENABLE_PULSEAUDIO) + message(FATAL_ERROR "PulseAudio not found but set as enabled") +elseif(NOT PULSEAUDIO_FOUND) message(STATUS "PulseAudio not found, disabling PulseAudio plugin") return() endif() diff --git a/plugins/linux-v4l2/CMakeLists.txt b/plugins/linux-v4l2/CMakeLists.txt index 4c1f0e4da59f7a82c51f694e9a86d38a8351d9ef..db728f475e574f9870867afc2eee7fbb5a1ced6b 100644 --- a/plugins/linux-v4l2/CMakeLists.txt +++ b/plugins/linux-v4l2/CMakeLists.txt @@ -1,13 +1,18 @@ -include_directories(SYSTEM "${CMAKE_SOURCE_DIR}/libobs") +project(linux-v4l2) + +if(DISABLE_V4L2) + message(STATUS "v4l2 plugin disabled") + return() +endif() find_package(Libv4l2) -if(NOT LIBV4L2_FOUND) +if(NOT LIBV4L2_FOUND AND ENABLE_V4L2) + message(FATAL_ERROR "libv4l2 not found bit plugin set as enabled") +elseif(NOT LIBV4L2_FOUND) message(STATUS "libv4l2 not found, disabling v4l2 plugin") return() endif() -include_directories(SYSTEM "${CMAKE_SOURCE_DIR}/libobs") - set(linux-v4l2_SOURCES linux-v4l2.c v4l2-input.c diff --git a/plugins/obs-libfdk/CMakeLists.txt b/plugins/obs-libfdk/CMakeLists.txt index 1b260e1398ae65fbf28ce7ae13121eb2c851accf..f804d01248628ba1217a7078da52b19dd232546e 100644 --- a/plugins/obs-libfdk/CMakeLists.txt +++ b/plugins/obs-libfdk/CMakeLists.txt @@ -1,7 +1,14 @@ project(obs-libfdk) +if(DISABLE_LIBFDK) + message(STATUS "Libfdk support disabled") + return() +endif() + find_package(Libfdk QUIET) -if(NOT LIBFDK_FOUND) +if(NOT LIBFDK_FOUND AND ENABLE_LIBFDK) + message(FATAL_ERROR "Libfdk not found but set as enabled") +elseif(NOT LIBFDK_FOUND) message(STATUS "Libfdk not found - obs-libfdk plugin disabled") return() endif() diff --git a/plugins/text-freetype2/CMakeLists.txt b/plugins/text-freetype2/CMakeLists.txt index dba08e038f7120e3034c4c85e1a6c8b4bf723c35..26af5492316d8aeb5e4b3c9eb6599197c228a4df 100644 --- a/plugins/text-freetype2/CMakeLists.txt +++ b/plugins/text-freetype2/CMakeLists.txt @@ -1,7 +1,14 @@ project(text-freetype2) +if(DISABLE_FREETYPE) + message(STATUS "Freetype text plugin disabled") + return() +endif() + find_package(Freetype QUIET) -if(NOT FREETYPE_FOUND) +if(NOT FREETYPE_FOUND AND ENABLE_FREETYPE) + message(FATAL_ERROR "Freetype library not found but set as enabled") +elseif(NOT FREETYPE_FOUND) message(STATUS "Freetype library not found, Freetype text plugin disabled") return() endif() @@ -12,7 +19,9 @@ if(WIN32) find-font-windows.c) elseif(APPLE) find_package(Iconv QUIET) - if(NOT ICONV_FOUND) + if(NOT ICONV_FOUND AND ENABLE_FREETYPE) + message(FATAL_ERROR "Iconv library not found but plugin set as enabled") + elseif(NOT ICONV_FOUND) message(STATUS "Iconv library not found, Freetype text plugin disabled") return() endif() @@ -35,7 +44,9 @@ elseif(APPLE) PROPERTIES LANGUAGE C) else() find_package(Fontconfig QUIET) - if(NOT FONTCONFIG_FOUND) + if(NOT FONTCONFIG_FOUND AND ENABLE_FREETYPE) + message(FATAL_ERROR "fontconfig not found but plugin set as enabled") + elseif(NOT FONTCONFIG_FOUND) message(STATUS "fontconfig not found, Freetype text plugin disabled") return() endif()