diff --git a/cmake/Modules/FindAppKit.cmake b/cmake/Modules/FindAppKit.cmake index 355232160bde7ada8998867189abfb6c6c7ee4bc..1cc1e84514b73e85e28b7a67601848ee8495de4c 100644 --- a/cmake/Modules/FindAppKit.cmake +++ b/cmake/Modules/FindAppKit.cmake @@ -1,18 +1,12 @@ # Once done these will be defined: # -# AppKit_FOUND -# AppKit_LIBRARIES -# - -if(AppKit_LIBRARIES) - set(AppKit_FOUND TRUE) -else() - find_library(APPKIT_FRAMEWORK AppKit) +# APPKIT_FOUND +# APPKIT_LIBRARIES - set(AppKit_LIBRARIES ${APPKIT_FRAMEWORK} CACHE STRING "AppKit framework") +find_library(APPKIT_FRAMEWORK AppKit) - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(AppKit DEFAULT_MSG APPKIT_FRAMEWORK) - mark_as_advanced(APPKIT_FRAMEWORK) -endif() +set(APPKIT_LIBRARIES ${APPKIT_FRAMEWORK}) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(AppKit DEFAULT_MSG APPKIT_FRAMEWORK) +mark_as_advanced(APPKIT_FRAMEWORK) diff --git a/cmake/Modules/FindFontconfig.cmake b/cmake/Modules/FindFontconfig.cmake index 321108cc66f04e69a761cc6860e951ae7ee2b067..205a9f51b837835efc8fa74d6212e7a5bbe7b55a 100644 --- a/cmake/Modules/FindFontconfig.cmake +++ b/cmake/Modules/FindFontconfig.cmake @@ -3,37 +3,32 @@ # FONTCONFIG_FOUND # FONTCONFIG_INCLUDE_DIRS # FONTCONFIG_LIBRARIES -# -if(FONTCONFIG_INCLUDE_DIRS AND FONTCONFIG_LIBRARIES) - set(FONTCONFIG_FOUND TRUE) -else() - find_package(PkgConfig QUIET) - if (PKG_CONFIG_FOUND) - pkg_check_modules(_FONTCONFIG QUIET fontconfig) - endif() +find_package(PkgConfig QUIET) +if (PKG_CONFIG_FOUND) + pkg_check_modules(_FONTCONFIG QUIET fontconfig) +endif() - find_path(FONTCONFIG_INCLUDE_DIR - NAMES fontconfig/fontconfig.h - HINTS - ${_FONTCONFIG_INCLUDE_DIRS} - PATHS - /usr/include /usr/local/include /opt/local/include) +find_path(FONTCONFIG_INCLUDE_DIR + NAMES fontconfig/fontconfig.h + HINTS + ${_FONTCONFIG_INCLUDE_DIRS} + PATHS + /usr/include /usr/local/include /opt/local/include) - find_library(FONTCONFIG_LIB - NAMES fontconfig - HINTS - ${_FONTCONFIG_LIBRARY_DIRS} - PATHS - /usr/lib /usr/local/lib /opt/local/lib) +find_library(FONTCONFIG_LIB + NAMES fontconfig + HINTS + ${_FONTCONFIG_LIBRARY_DIRS} + PATHS + /usr/lib /usr/local/lib /opt/local/lib) - set(FONTCONFIG_INCLUDE_DIRS ${FONTCONFIG_INCLUDE_DIR} - CACHE PATH "fontconfig include dir") - set(FONTCONFIG_LIBRARIES "${FONTCONFIG_LIB}" - CACHE STRING "fontconfig libraries") +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Fontconfig DEFAULT_MSG FONTCONFIG_LIB + FONTCONFIG_INCLUDE_DIR) +mark_as_advanced(FONTCONFIG_INCLUDE_DIR FONTCONFIG_LIB) - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(Fontconfig DEFAULT_MSG FONTCONFIG_LIB - FONTCONFIG_INCLUDE_DIR) - mark_as_advanced(FONTCONFIG_INCLUDE_DIR FONTCONFIG_LIB) +if(FONTCONFIG_FOUND) + set(FONTCONFIG_INCLUDE_DIRS ${FONTCONFIG_INCLUDE_DIR}) + set(FONTCONFIG_LIBRARIES "${FONTCONFIG_LIB}") endif() diff --git a/cmake/Modules/FindFreetype.cmake b/cmake/Modules/FindFreetype.cmake index 26f2484d9696062e194ffcd3acc0c9021f170085..c7e61161200795b281067bc9bd6d8a96a7604918 100644 --- a/cmake/Modules/FindFreetype.cmake +++ b/cmake/Modules/FindFreetype.cmake @@ -3,79 +3,79 @@ # FREETYPE_FOUND # FREETYPE_INCLUDE_DIRS # FREETYPE_LIBRARIES -# -if(FREETYPE_INCLUDE_DIRS AND FREETYPE_LIBRARIES) - set(FREETYPE_FOUND TRUE) -else() - find_package(PkgConfig QUIET) - if (PKG_CONFIG_FOUND) - pkg_check_modules(_FREETYPE QUIET freetype2) - endif() +find_package(PkgConfig QUIET) +if (PKG_CONFIG_FOUND) + pkg_check_modules(_FREETYPE QUIET freetype2) +endif() - if(CMAKE_SIZEOF_VOID_P EQUAL 8) - set(_lib_suffix 64) - else() - set(_lib_suffix 32) - endif() +if(CMAKE_SIZEOF_VOID_P EQUAL 8) + set(_lib_suffix 64) +else() + set(_lib_suffix 32) +endif() - find_path(FREETYPE_INCLUDE_DIR_ft2build - NAMES - ft2build.h - HINTS - ${_FREETYPE_INCLUDE_DIRS} - "${CMAKE_SOURCE_DIR}/additional_install_files/include" - "$ENV{obsAdditionalInstallFiles}/include" - ENV FreetypePath${_lib_suffix} - ENV FreetypePath - ENV FREETYPE_DIR - PATHS - /usr/include /usr/local/include /opt/local/include /sw/include - PATH_SUFFIXES - include/freetype2 include) +find_path(FREETYPE_INCLUDE_DIR_ft2build + NAMES + ft2build.h + HINTS + ${_FREETYPE_INCLUDE_DIRS} + "${CMAKE_SOURCE_DIR}/additional_install_files/include" + "$ENV{obsAdditionalInstallFiles}/include" + ENV FreetypePath${_lib_suffix} + ENV FreetypePath + ENV FREETYPE_DIR + PATHS + /usr/include /usr/local/include /opt/local/include /sw/include + PATH_SUFFIXES + freetype2 include/freetype2 include) - find_path(FREETYPE_INCLUDE_DIR_freetype2 - NAMES - freetype/config/ftheader.h - config/ftheader.h - HINTS - ${_FREETYPE_INCLUDE_DIRS} - "${CMAKE_SOURCE_DIR}/additional_install_files/include" - "$ENV{obsAdditionalInstallFiles}/include" - ENV FreetypePath${_lib_suffix} - ENV FreetypePath - ENV FREETYPE_DIR - PATHS - /usr/include /usr/local/include /opt/local/include /sw/include - PATH_SUFFIXES - include/freetype2 include) +find_path(FREETYPE_INCLUDE_DIR_freetype2 + NAMES + freetype/config/ftheader.h + config/ftheader.h + HINTS + ${_FREETYPE_INCLUDE_DIRS} + "${CMAKE_SOURCE_DIR}/additional_install_files/include" + "$ENV{obsAdditionalInstallFiles}/include" + ENV FreetypePath${_lib_suffix} + ENV FreetypePath + ENV FREETYPE_DIR + PATHS + /usr/include /usr/local/include /opt/local/include /sw/include + PATH_SUFFIXES + freetype2 include/freetype2 include) - find_library(FREETYPE_LIB - NAMES ${_FREETYPE_LIBRARIES} freetype libfreetype - HINTS - ${_FREETYPE_LIBRARY_DIRS} - "${FREETYPE_INCLUDE_DIR_ft2build}/../lib" - "${FREETYPE_INCLUDE_DIR_ft2build}/../lib${_lib_suffix}" - "${FREETYPE_INCLUDE_DIR_ft2build}/../libs${_lib_suffix}" - "${FREETYPE_INCLUDE_DIR_ft2build}/lib" - "${FREETYPE_INCLUDE_DIR_ft2build}/lib${_lib_suffix}" - ENV FREETYPE_DIR - PATHS - /usr/lib /usr/local/lib /opt/local/lib /sw/lib - PATH_SUFFIXES - lib${_lib_suffix} lib) +find_library(FREETYPE_LIB + NAMES ${_FREETYPE_LIBRARIES} freetype libfreetype + HINTS + ${_FREETYPE_LIBRARY_DIRS} + "${CMAKE_SOURCE_DIR}/additional_install_files/lib${_lib_suffix}" + "$ENV{obsAdditionalInstallFiles}/lib${_lib_suffix}" + "${FREETYPE_INCLUDE_DIR_ft2build}/../../lib${_lib_suffix}" + "${FREETYPE_INCLUDE_DIR_ft2build}/../../lib" + "${FREETYPE_INCLUDE_DIR_ft2build}/../lib${_lib_suffix}" + "${FREETYPE_INCLUDE_DIR_ft2build}/../lib" + "${FREETYPE_INCLUDE_DIR_ft2build}/lib${_lib_suffix}" + "${FREETYPE_INCLUDE_DIR_ft2build}/lib" + ENV FREETYPE_DIR + PATHS + /usr/lib /usr/local/lib /opt/local/lib /sw/lib + PATH_SUFFIXES + lib${_lib_suffix} lib) - if(FREETYPE_INCLUDE_DIR_ft2build AND FREETYPE_INCLUDE_DIR_freetype2) - set(FREETYPE_INCLUDE_DIR "${FREETYPE_INCLUDE_DIR_ft2build};${FREETYPE_INCLUDE_DIR_freetype2}") - list(REMOVE_DUPLICATES FREETYPE_INCLUDE_DIR) - else() - unset(FREETYPE_INCLUDE_DIR) - endif() +if(FREETYPE_INCLUDE_DIR_ft2build AND FREETYPE_INCLUDE_DIR_freetype2) + set(FREETYPE_INCLUDE_DIR "${FREETYPE_INCLUDE_DIR_ft2build};${FREETYPE_INCLUDE_DIR_freetype2}") + list(REMOVE_DUPLICATES FREETYPE_INCLUDE_DIR) +else() + unset(FREETYPE_INCLUDE_DIR) +endif() - set(FREETYPE_INCLUDE_DIRS ${FREETYPE_INCLUDE_DIR} CACHE PATH "freetype include dirs") - set(FREETYPE_LIBRARIES ${FREETYPE_LIB} CACHE STRING "freetype libraries") +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Freetype DEFAULT_MSG FREETYPE_LIB FREETYPE_INCLUDE_DIR_ft2build FREETYPE_INCLUDE_DIR_freetype2) +mark_as_advanced(FREETYPE_INCLUDE_DIR FREETYPE_INCLUDE_DIR_ft2build FREETYPE_INCLUDE_DIR_freetype2 FREETYPE_LIB) - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(Freetype DEFAULT_MSG FREETYPE_LIB FREETYPE_INCLUDE_DIR_ft2build FREETYPE_INCLUDE_DIR_freetype2) - mark_as_advanced(FREETYPE_INCLUDE_DIR FREETYPE_INCLUDE_DIR_ft2build FREETYPE_INCLUDE_DIR_freetype2 FREETYPE_LIB) +if(FREETYPE_FOUND) + set(FREETYPE_INCLUDE_DIRS ${FREETYPE_INCLUDE_DIR}) + set(FREETYPE_LIBRARIES ${FREETYPE_LIB}) endif() diff --git a/cmake/Modules/FindIconv.cmake b/cmake/Modules/FindIconv.cmake index 7dd65c31628b7f97482a432ef0653a57e74561db..82d71288c020018163e00d45f478e8a92755c18a 100644 --- a/cmake/Modules/FindIconv.cmake +++ b/cmake/Modules/FindIconv.cmake @@ -3,51 +3,48 @@ # ICONV_FOUND # ICONV_INCLUDE_DIRS # ICONV_LIBRARIES -# -if(ICONV_INCLUDE_DIRS AND ICONV_LIBRARIES) - set(ICONV_FOUND TRUE) -else() - find_package(PkgConfig QUIET) - if (PKG_CONFIG_FOUND) - pkg_check_modules(_ICONV QUIET iconv) - endif() +find_package(PkgConfig QUIET) +if (PKG_CONFIG_FOUND) + pkg_check_modules(_ICONV QUIET iconv) +endif() - if(CMAKE_SIZEOF_VOID_P EQUAL 8) - set(_lib_suffix 64) - else() - set(_lib_suffix 32) - endif() +if(CMAKE_SIZEOF_VOID_P EQUAL 8) + set(_lib_suffix 64) +else() + set(_lib_suffix 32) +endif() - set(ICONV_PATH_ARCH IconvPath${_lib_suffix}) +set(ICONV_PATH_ARCH IconvPath${_lib_suffix}) - find_path(ICONV_INCLUDE_DIR - NAMES iconv.h - HINTS - ${_ICONV_INCLUDE_DIRS} - "${CMAKE_SOURCE_DIR}/additional_install_files/include" - "$ENV{obsAdditionalInstallFiles}/include" - ENV IconvPath - ENV ${ICONV_PATH_ARCH} - PATHS - /usr/include /usr/local/include /opt/local/include /sw/include) +find_path(ICONV_INCLUDE_DIR + NAMES iconv.h + HINTS + ${_ICONV_INCLUDE_DIRS} + "${CMAKE_SOURCE_DIR}/additional_install_files/include" + "$ENV{obsAdditionalInstallFiles}/include" + ENV IconvPath + ENV ${ICONV_PATH_ARCH} + PATHS + /usr/include /usr/local/include /opt/local/include /sw/include) - find_library(ICONV_LIB - NAMES ${_ICONV_LIBRARIES} iconv libiconv - HINTS - ${_ICONV_LIBRARY_DIRS} - "${ICONV_INCLUDE_DIR}/../lib${_lib_suffix}" - "${ICONV_INCLUDE_DIR}/../lib" - "${ICONV_INCLUDE_DIR}/../libs${_lib_suffix}" - "${ICONV_INCLUDE_DIR}/lib" - "${ICONV_INCLUDE_DIR}/lib${_lib_suffix}" - PATHS - /usr/lib /usr/local/lib /opt/local/lib /sw/lib) +find_library(ICONV_LIB + NAMES ${_ICONV_LIBRARIES} iconv libiconv + HINTS + ${_ICONV_LIBRARY_DIRS} + "${ICONV_INCLUDE_DIR}/../lib${_lib_suffix}" + "${ICONV_INCLUDE_DIR}/../lib" + "${ICONV_INCLUDE_DIR}/../libs${_lib_suffix}" + "${ICONV_INCLUDE_DIR}/lib" + "${ICONV_INCLUDE_DIR}/lib${_lib_suffix}" + PATHS + /usr/lib /usr/local/lib /opt/local/lib /sw/lib) - set(ICONV_INCLUDE_DIRS ${ICONV_INCLUDE_DIR} CACHE PATH "iconv include dir") - set(ICONV_LIBRARIES ${ICONV_LIB} CACHE STRING "iconv libraries") +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Iconv DEFAULT_MSG ICONV_LIB ICONV_INCLUDE_DIR) +mark_as_advanced(ICONV_INCLUDE_DIR ICONV_LIB) - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(Iconv DEFAULT_MSG ICONV_LIB ICONV_INCLUDE_DIR) - mark_as_advanced(ICONV_INCLUDE_DIR ICONV_LIB) +if(ICONV_FOUND) + set(ICONV_INCLUDE_DIRS ${ICONV_INCLUDE_DIR}) + set(ICONV_LIBRARIES ${ICONV_LIB}) endif() diff --git a/cmake/Modules/FindJansson.cmake b/cmake/Modules/FindJansson.cmake index d3b7812c4b7f4ba87471a8353eaccdd044228cdd..7c74ff1201e8227d1f72f457a6a2c8adab5a7739 100644 --- a/cmake/Modules/FindJansson.cmake +++ b/cmake/Modules/FindJansson.cmake @@ -4,73 +4,64 @@ # JANSSON_INCLUDE_DIRS # JANSSON_LIBRARIES # JANSSON_VERSION -# -if(JANSSON_INCLUDE_DIRS AND JANSSON_LIBRARIES) - set(JANSSON_FOUND TRUE) +find_package(PkgConfig QUIET) +if (PKG_CONFIG_FOUND) + pkg_check_modules(_JANSSON QUIET jansson) +endif() + +if(CMAKE_SIZEOF_VOID_P EQUAL 8) + set(_lib_suffix 64) else() - find_package(PkgConfig QUIET) - if (PKG_CONFIG_FOUND) - pkg_check_modules(_JANSSON QUIET jansson) - endif() + set(_lib_suffix 32) +endif() - if(CMAKE_SIZEOF_VOID_P EQUAL 8) - set(_lib_suffix 64) - else() - set(_lib_suffix 32) - endif() +set(JANSSON_PATH_ARCH JanssonPath${_lib_suffix}) - set(JANSSON_PATH_ARCH JanssonPath${_lib_suffix}) +find_path(Jansson_INCLUDE_DIR + NAMES jansson.h + HINTS + ${_JANSSON_INCLUDE_DIRS} + ENV JanssonPath + ENV ${JANSSON_PATH_ARCH} + PATHS + /usr/include /usr/local/include /opt/local/include /sw/include) - find_path(Jansson_INCLUDE_DIR - NAMES jansson.h - HINTS - ${_JANSSON_INCLUDE_DIRS} - ENV JanssonPath - ENV ${JANSSON_PATH_ARCH} - PATHS - /usr/include /usr/local/include /opt/local/include /sw/include) +find_library(Jansson_LIB + NAMES ${_JANSSON_LIBRARIES} jansson libjansson + HINTS + ${_JANSSON_LIBRARY_DIRS} + "${Jansson_INCLUDE_DIR}/../lib" + "${Jansson_INCLUDE_DIR}/lib${_lib_suffix}" + PATHS + /usr/lib /usr/local/lib /opt/local/lib /sw/lib) - find_library(Jansson_LIB - NAMES ${_JANSSON_LIBRARIES} jansson libjansson - HINTS - ${_JANSSON_LIBRARY_DIRS} - "${Jansson_INCLUDE_DIR}/../lib" - "${Jansson_INCLUDE_DIR}/lib${_lib_suffix}" - PATHS - /usr/lib /usr/local/lib /opt/local/lib /sw/lib) - - if(JANSSON_VERSION) - set(_JANSSON_VERSION_STRING "${JANSSON_VERSION}") - elseif(_JANSSON_FOUND AND _JANSSON_VERSION) - set(_JANSSON_VERSION_STRING "${_JANSSON_VERSION}") - elseif(EXISTS "${Jansson_INCLUDE_DIR}/jansson.h") - file(STRINGS "${Jansson_INCLUDE_DIR}/jansson.h" _jansson_version_parse - REGEX "#define[ \t]+JANSSON_VERSION[ \t]+.+") - string(REGEX REPLACE - ".*#define[ \t]+JANSSON_VERSION[ \t]+\"(.+)\".*" "\\1" - _JANSSON_VERSION_STRING "${_jansson_version_parse}") - else() - if(NOT Jansson_FIND_QUIETLY) - message(WARNING "Failed to find Jansson version") - endif() - set(_JANSSON_VERSION_STRING "unknown") +if(JANSSON_VERSION) + set(_JANSSON_VERSION_STRING "${JANSSON_VERSION}") +elseif(_JANSSON_FOUND AND _JANSSON_VERSION) + set(_JANSSON_VERSION_STRING "${_JANSSON_VERSION}") +elseif(EXISTS "${Jansson_INCLUDE_DIR}/jansson.h") + file(STRINGS "${Jansson_INCLUDE_DIR}/jansson.h" _jansson_version_parse + REGEX "#define[ \t]+JANSSON_VERSION[ \t]+.+") + string(REGEX REPLACE + ".*#define[ \t]+JANSSON_VERSION[ \t]+\"(.+)\".*" "\\1" + _JANSSON_VERSION_STRING "${_jansson_version_parse}") +else() + if(NOT Jansson_FIND_QUIETLY) + message(WARNING "Failed to find Jansson version") endif() + set(_JANSSON_VERSION_STRING "unknown") +endif() - set(JANSSON_INCLUDE_DIRS ${Jansson_INCLUDE_DIR} CACHE PATH "Jansson include dir") - set(JANSSON_LIBRARIES ${Jansson_LIB} CACHE STRING "Jansson libraries") - set(JANSSON_VERSION "${_JANSSON_VERSION_STRING}" CACHE STRING "Jansson version") - - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(Jansson - FOUND_VAR JANSSON_FOUND - REQUIRED_VARS Jansson_LIB Jansson_INCLUDE_DIR - VERSION_VAR JANSSON_VERSION) - mark_as_advanced(Jansson_INCLUDE_DIR Jansson_LIB) +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Jansson + FOUND_VAR JANSSON_FOUND + REQUIRED_VARS Jansson_LIB Jansson_INCLUDE_DIR + VERSION_VAR _JANSSON_VERSION_STRING) +mark_as_advanced(Jansson_INCLUDE_DIR Jansson_LIB) - if(NOT JANSSON_FOUND) - unset(JANSSON_INCLUDE_DIRS CACHE) - unset(JANSSON_LIBRARIES CACHE) - endif() +if(JANSSON_FOUND) + set(JANSSON_INCLUDE_DIRS ${Jansson_INCLUDE_DIR}) + set(JANSSON_LIBRARIES ${Jansson_LIB}) + set(JANSSON_VERSION ${_JANSSON_VERSION_STRING}) endif() - diff --git a/cmake/Modules/FindLibavcodec.cmake b/cmake/Modules/FindLibavcodec.cmake index f81f50e5c7d085dcb3242b1370a4e3a7a3da03e1..49ac68d98dcec5a0fdeb3b61b44b335014754885 100644 --- a/cmake/Modules/FindLibavcodec.cmake +++ b/cmake/Modules/FindLibavcodec.cmake @@ -7,53 +7,49 @@ # For use in OBS: # # FFMPEG_INCLUDE_DIR -# - -if(LIBAVCODEC_INCLUDE_DIRS AND LIBAVCODEC_LIBRARIES) - set(LIBAVCODEC_FOUND TRUE) -else() - find_package(PkgConfig QUIET) - if (PKG_CONFIG_FOUND) - pkg_check_modules(_AVCODEC QUIET libavcodec) - endif() - - if(CMAKE_SIZEOF_VOID_P EQUAL 8) - set(_lib_suffix 64) - else() - set(_lib_suffix 32) - endif() - - set(FFMPEG_PATH_ARCH FFmpegPath${_lib_suffix}) - find_path(FFMPEG_INCLUDE_DIR - NAMES libavcodec/avcodec.h - HINTS - ${_AVCODEC_INCLUDE_DIRS} - "${CMAKE_SOURCE_DIR}/additional_install_files/include" - "$ENV{obsAdditionalInstallFiles}/include" - ENV FFmpegPath - ENV ${FFMPEG_PATH_ARCH} - PATHS - /usr/include /usr/local/include /opt/local/include /sw/include - PATH_SUFFIXES ffmpeg libav) - - find_library(AVCODEC_LIB - NAMES ${_AVCODEC_LIBRARIES} avcodec-ffmpeg avcodec - HINTS - ${_AVCODEC_LIBRARY_DIRS} - "${FFMPEG_INCLUDE_DIR}/../lib" - "${FFMPEG_INCLUDE_DIR}/../lib${_lib_suffix}" - "${FFMPEG_INCLUDE_DIR}/../libs${_lib_suffix}" - "${FFMPEG_INCLUDE_DIR}/lib" - "${FFMPEG_INCLUDE_DIR}/lib${_lib_suffix}" - PATHS - /usr/lib /usr/local/lib /opt/local/lib /sw/lib) - - set(LIBAVCODEC_INCLUDE_DIRS ${FFMPEG_INCLUDE_DIR} CACHE PATH "Libavcodec include dir") - set(LIBAVCODEC_LIBRARIES ${AVCODEC_LIB} CACHE STRING "Libavcodec libraries") +find_package(PkgConfig QUIET) +if (PKG_CONFIG_FOUND) + pkg_check_modules(_AVCODEC QUIET libavcodec) +endif() - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(Libavcodec DEFAULT_MSG AVCODEC_LIB FFMPEG_INCLUDE_DIR) - mark_as_advanced(FFMPEG_INCLUDE_DIR AVCODEC_LIB) +if(CMAKE_SIZEOF_VOID_P EQUAL 8) + set(_lib_suffix 64) +else() + set(_lib_suffix 32) endif() +set(FFMPEG_PATH_ARCH FFmpegPath${_lib_suffix}) + +find_path(FFMPEG_INCLUDE_DIR + NAMES libavcodec/avcodec.h + HINTS + ${_AVCODEC_INCLUDE_DIRS} + "${CMAKE_SOURCE_DIR}/additional_install_files/include" + "$ENV{obsAdditionalInstallFiles}/include" + ENV FFmpegPath + ENV ${FFMPEG_PATH_ARCH} + PATHS + /usr/include /usr/local/include /opt/local/include /sw/include + PATH_SUFFIXES ffmpeg libav) + +find_library(AVCODEC_LIB + NAMES ${_AVCODEC_LIBRARIES} avcodec-ffmpeg avcodec + HINTS + ${_AVCODEC_LIBRARY_DIRS} + "${FFMPEG_INCLUDE_DIR}/../lib" + "${FFMPEG_INCLUDE_DIR}/../lib${_lib_suffix}" + "${FFMPEG_INCLUDE_DIR}/../libs${_lib_suffix}" + "${FFMPEG_INCLUDE_DIR}/lib" + "${FFMPEG_INCLUDE_DIR}/lib${_lib_suffix}" + PATHS + /usr/lib /usr/local/lib /opt/local/lib /sw/lib) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Libavcodec DEFAULT_MSG AVCODEC_LIB FFMPEG_INCLUDE_DIR) +mark_as_advanced(FFMPEG_INCLUDE_DIR AVCODEC_LIB) + +if(LIBAVCODEC_FOUND) + set(LIBAVCODEC_INCLUDE_DIRS ${FFMPEG_INCLUDE_DIR}) + set(LIBAVCODEC_LIBRARIES ${AVCODEC_LIB}) +endif() diff --git a/cmake/Modules/FindLibavformat.cmake b/cmake/Modules/FindLibavformat.cmake index bf1e130d3b6fe24781d6a4761fb5a119513c101d..1f7d9c8dbd23df3dab1e436fc4dd39c94d7c3262 100644 --- a/cmake/Modules/FindLibavformat.cmake +++ b/cmake/Modules/FindLibavformat.cmake @@ -3,53 +3,49 @@ # LIBAVFORMAT_FOUND # LIBAVFORMAT_INCLUDE_DIRS # LIBAVFORMAT_LIBRARIES -# - -if(LIBAVFORMAT_INCLUDE_DIRS AND LIBAVFORMAT_LIBRARIES) - set(LIBAVFORMAT_FOUND TRUE) -else() - find_package(PkgConfig QUIET) - if (PKG_CONFIG_FOUND) - pkg_check_modules(_AVFORMAT QUIET libavformat) - endif() - - if(CMAKE_SIZEOF_VOID_P EQUAL 8) - set(_lib_suffix 64) - else() - set(_lib_suffix 32) - endif() - - set(FFMPEG_PATH_ARCH FFmpegPath${_lib_suffix}) - find_path(FFMPEG_INCLUDE_DIR - NAMES libavformat/avformat.h - HINTS - ${_AVFORMAT_INCLUDE_DIRS} - "${CMAKE_SOURCE_DIR}/additional_install_files/include" - "$ENV{obsAdditionalInstallFiles}/include" - ENV FFmpegPath - ENV ${FFMPEG_PATH_ARCH} - PATHS - /usr/include /usr/local/include /opt/local/include /sw/include - PATH_SUFFIXES ffmpeg libav) - - find_library(AVFORMAT_LIB - NAMES ${_AVFORMAT_LIBRARIES} avformat-ffmpeg avformat - HINTS - ${_AVFORMAT_LIBRARY_DIRS} - "${FFMPEG_INCLUDE_DIR}/../lib" - "${FFMPEG_INCLUDE_DIR}/../lib${_lib_suffix}" - "${FFMPEG_INCLUDE_DIR}/../libs${_lib_suffix}" - "${FFMPEG_INCLUDE_DIR}/lib" - "${FFMPEG_INCLUDE_DIR}/lib${_lib_suffix}" - PATHS - /usr/lib /usr/local/lib /opt/local/lib /sw/lib) - - set(LIBAVFORMAT_INCLUDE_DIRS ${FFMPEG_INCLUDE_DIR} CACHE PATH "Libavformat include dir") - set(LIBAVFORMAT_LIBRARIES ${AVFORMAT_LIB} CACHE STRING "Libavformat libraries") +find_package(PkgConfig QUIET) +if (PKG_CONFIG_FOUND) + pkg_check_modules(_AVFORMAT QUIET libavformat) +endif() - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(Libavformat DEFAULT_MSG AVFORMAT_LIB FFMPEG_INCLUDE_DIR) - mark_as_advanced(FFMPEG_INCLUDE_DIR AVFORMAT_LIB) +if(CMAKE_SIZEOF_VOID_P EQUAL 8) + set(_lib_suffix 64) +else() + set(_lib_suffix 32) endif() +set(FFMPEG_PATH_ARCH FFmpegPath${_lib_suffix}) + +find_path(FFMPEG_INCLUDE_DIR + NAMES libavformat/avformat.h + HINTS + ${_AVFORMAT_INCLUDE_DIRS} + "${CMAKE_SOURCE_DIR}/additional_install_files/include" + "$ENV{obsAdditionalInstallFiles}/include" + ENV FFmpegPath + ENV ${FFMPEG_PATH_ARCH} + PATHS + /usr/include /usr/local/include /opt/local/include /sw/include + PATH_SUFFIXES ffmpeg libav) + +find_library(AVFORMAT_LIB + NAMES ${_AVFORMAT_LIBRARIES} avformat-ffmpeg avformat + HINTS + ${_AVFORMAT_LIBRARY_DIRS} + "${FFMPEG_INCLUDE_DIR}/../lib" + "${FFMPEG_INCLUDE_DIR}/../lib${_lib_suffix}" + "${FFMPEG_INCLUDE_DIR}/../libs${_lib_suffix}" + "${FFMPEG_INCLUDE_DIR}/lib" + "${FFMPEG_INCLUDE_DIR}/lib${_lib_suffix}" + PATHS + /usr/lib /usr/local/lib /opt/local/lib /sw/lib) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Libavformat DEFAULT_MSG AVFORMAT_LIB FFMPEG_INCLUDE_DIR) +mark_as_advanced(FFMPEG_INCLUDE_DIR AVFORMAT_LIB) + +if(LIBAVFORMAT_FOUND) + set(LIBAVFORMAT_INCLUDE_DIRS ${FFMPEG_INCLUDE_DIR}) + set(LIBAVFORMAT_LIBRARIES ${AVFORMAT_LIB}) +endif() diff --git a/cmake/Modules/FindLibavutil.cmake b/cmake/Modules/FindLibavutil.cmake index 623c5d69b42e2173d82e41f6a46834e5ab82ff67..1ece8ae4efda19142e5844b70e6eca67e47de1f9 100644 --- a/cmake/Modules/FindLibavutil.cmake +++ b/cmake/Modules/FindLibavutil.cmake @@ -3,53 +3,49 @@ # LIBAVUTIL_FOUND # LIBAVUTIL_INCLUDE_DIRS # LIBAVUTIL_LIBRARIES -# - -if(LIBAVUTIL_INCLUDE_DIRS AND LIBAVUTIL_LIBRARIES) - set(LIBAVUTIL_FOUND TRUE) -else() - find_package(PkgConfig QUIET) - if (PKG_CONFIG_FOUND) - pkg_check_modules(_AVUTIL QUIET libavutil) - endif() - - if(CMAKE_SIZEOF_VOID_P EQUAL 8) - set(_lib_suffix 64) - else() - set(_lib_suffix 32) - endif() - - set(FFMPEG_PATH_ARCH FFmpegPath${_lib_suffix}) - find_path(FFMPEG_INCLUDE_DIR - NAMES libavutil/avutil.h - HINTS - ${_AVUTIL_INCLUDE_DIRS} - "${CMAKE_SOURCE_DIR}/additional_install_files/include" - "$ENV{obsAdditionalInstallFiles}/include" - ENV FFmpegPath - ENV ${FFMPEG_PATH_ARCH} - PATHS - /usr/include /usr/local/include /opt/local/include /sw/include - PATH_SUFFIXES ffmpeg libav) - - find_library(AVUTIL_LIB - NAMES ${_AVUTIL_LIBRARIES} avutil-ffmpeg avutil - HINTS - ${_AVUTIL_LIBRARY_DIRS} - "${FFMPEG_INCLUDE_DIR}/../lib" - "${FFMPEG_INCLUDE_DIR}/../lib${_lib_suffix}" - "${FFMPEG_INCLUDE_DIR}/../libs${_lib_suffix}" - "${FFMPEG_INCLUDE_DIR}/lib" - "${FFMPEG_INCLUDE_DIR}/lib${_lib_suffix}" - PATHS - /usr/lib /usr/local/lib /opt/local/lib /sw/lib) - - set(LIBAVUTIL_INCLUDE_DIRS ${FFMPEG_INCLUDE_DIR} CACHE PATH "Libavutil include dir") - set(LIBAVUTIL_LIBRARIES ${AVUTIL_LIB} CACHE STRING "Libavutil libraries") +find_package(PkgConfig QUIET) +if (PKG_CONFIG_FOUND) + pkg_check_modules(_AVUTIL QUIET libavutil) +endif() - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(Libavutil DEFAULT_MSG AVUTIL_LIB FFMPEG_INCLUDE_DIR) - mark_as_advanced(FFMPEG_INCLUDE_DIR AVUTIL_LIB) +if(CMAKE_SIZEOF_VOID_P EQUAL 8) + set(_lib_suffix 64) +else() + set(_lib_suffix 32) endif() +set(FFMPEG_PATH_ARCH FFmpegPath${_lib_suffix}) + +find_path(FFMPEG_INCLUDE_DIR + NAMES libavutil/avutil.h + HINTS + ${_AVUTIL_INCLUDE_DIRS} + "${CMAKE_SOURCE_DIR}/additional_install_files/include" + "$ENV{obsAdditionalInstallFiles}/include" + ENV FFmpegPath + ENV ${FFMPEG_PATH_ARCH} + PATHS + /usr/include /usr/local/include /opt/local/include /sw/include + PATH_SUFFIXES ffmpeg libav) + +find_library(AVUTIL_LIB + NAMES ${_AVUTIL_LIBRARIES} avutil-ffmpeg avutil + HINTS + ${_AVUTIL_LIBRARY_DIRS} + "${FFMPEG_INCLUDE_DIR}/../lib" + "${FFMPEG_INCLUDE_DIR}/../lib${_lib_suffix}" + "${FFMPEG_INCLUDE_DIR}/../libs${_lib_suffix}" + "${FFMPEG_INCLUDE_DIR}/lib" + "${FFMPEG_INCLUDE_DIR}/lib${_lib_suffix}" + PATHS + /usr/lib /usr/local/lib /opt/local/lib /sw/lib) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Libavutil DEFAULT_MSG AVUTIL_LIB FFMPEG_INCLUDE_DIR) +mark_as_advanced(FFMPEG_INCLUDE_DIR AVUTIL_LIB) + +if(LIBAVUTIL_FOUND) + set(LIBAVUTIL_INCLUDE_DIRS ${FFMPEG_INCLUDE_DIR}) + set(LIBAVUTIL_LIBRARIES ${AVUTIL_LIB}) +endif() diff --git a/cmake/Modules/FindLibfdk.cmake b/cmake/Modules/FindLibfdk.cmake index 6d658772976598faca0e0e48113a3747b73c35e5..f8b913204b1ceee034c382485b49728ad0d78869 100644 --- a/cmake/Modules/FindLibfdk.cmake +++ b/cmake/Modules/FindLibfdk.cmake @@ -7,55 +7,51 @@ # For use in OBS: # # Libfdk_INCLUDE_DIR -# - -if(LIBFDK_INCLUDE_DIRS AND LIBFDK_LIBRARIES) - set(LIBFDK_FOUND TRUE) -else() - find_package(PkgConfig QUIET) - if (PKG_CONFIG_FOUND) - pkg_check_modules(_LIBFDK QUIET fdk-aac) - endif() - - if(CMAKE_SIZEOF_VOID_P EQUAL 8) - set(_lib_suffix 64) - else() - set(_lib_suffix 32) - endif() - - set(LIBFDK_PATH_ARCH LibfdkPath${_lib_suffix}) - set(FFMPEG_PATH_ARCH FFmpegPath${_lib_suffix}) - find_path(Libfdk_INCLUDE_DIR - NAMES fdk-aac/aacenc_lib.h - HINTS - ${_LIBFDK_INCLUDE_DIRS} - "${CMAKE_SOURCE_DIR}/additional_install_files/include" - "$ENV{obsAdditionalInstallFiles}/include" - ENV LibfdkPath - ENV FFmpegPath - ENV ${LIBFDK_PATH_ARCH} - ENV ${FFMPEG_PATH_ARCH} - PATHS - /usr/include /usr/local/include /opt/local/include /sw/include) - - find_library(Libfdk_LIB - NAMES ${_LIBFDK_LIBRARIES} fdk-aac libfdk-aac - HINTS - ${_LIBFDK_LIBRARY_DIRS} - "${Libfdk_INCLUDE_DIR}/../lib" - "${Libfdk_INCLUDE_DIR}/../lib${_lib_suffix}" - "${Libfdk_INCLUDE_DIR}/../libs${_lib_suffix}" - "${Libfdk_INCLUDE_DIR}/lib" - "${Libfdk_INCLUDE_DIR}/lib${_lib_suffix}" - PATHS - /usr/lib /usr/local/lib /opt/local/lib /sw/lib) - - set(LIBFDK_INCLUDE_DIRS ${Libfdk_INCLUDE_DIR} CACHE PATH "Libfdk include dir") - set(LIBFDK_LIBRARIES ${Libfdk_LIB} CACHE STRING "Libfdk libraries") +find_package(PkgConfig QUIET) +if (PKG_CONFIG_FOUND) + pkg_check_modules(_LIBFDK QUIET fdk-aac) +endif() - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(Libfdk DEFAULT_MSG Libfdk_LIB Libfdk_INCLUDE_DIR) - mark_as_advanced(Libfdk_INCLUDE_DIR Libfdk_LIB) +if(CMAKE_SIZEOF_VOID_P EQUAL 8) + set(_lib_suffix 64) +else() + set(_lib_suffix 32) endif() +set(LIBFDK_PATH_ARCH LibfdkPath${_lib_suffix}) +set(FFMPEG_PATH_ARCH FFmpegPath${_lib_suffix}) + +find_path(Libfdk_INCLUDE_DIR + NAMES fdk-aac/aacenc_lib.h + HINTS + ${_LIBFDK_INCLUDE_DIRS} + "${CMAKE_SOURCE_DIR}/additional_install_files/include" + "$ENV{obsAdditionalInstallFiles}/include" + ENV LibfdkPath + ENV FFmpegPath + ENV ${LIBFDK_PATH_ARCH} + ENV ${FFMPEG_PATH_ARCH} + PATHS + /usr/include /usr/local/include /opt/local/include /sw/include) + +find_library(Libfdk_LIB + NAMES ${_LIBFDK_LIBRARIES} fdk-aac libfdk-aac + HINTS + ${_LIBFDK_LIBRARY_DIRS} + "${Libfdk_INCLUDE_DIR}/../lib" + "${Libfdk_INCLUDE_DIR}/../lib${_lib_suffix}" + "${Libfdk_INCLUDE_DIR}/../libs${_lib_suffix}" + "${Libfdk_INCLUDE_DIR}/lib" + "${Libfdk_INCLUDE_DIR}/lib${_lib_suffix}" + PATHS + /usr/lib /usr/local/lib /opt/local/lib /sw/lib) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Libfdk DEFAULT_MSG Libfdk_LIB Libfdk_INCLUDE_DIR) +mark_as_advanced(Libfdk_INCLUDE_DIR Libfdk_LIB) + +if(LIBFDK_FOUND) + set(LIBFDK_INCLUDE_DIRS ${Libfdk_INCLUDE_DIR}) + set(LIBFDK_LIBRARIES ${Libfdk_LIB}) +endif() diff --git a/cmake/Modules/FindLibswresample.cmake b/cmake/Modules/FindLibswresample.cmake index 0e8986d26610e0975cc9443d664d2264677ffacb..72008bbd85bdde5a5dcbaeadc0480aa6c56a62c1 100644 --- a/cmake/Modules/FindLibswresample.cmake +++ b/cmake/Modules/FindLibswresample.cmake @@ -3,53 +3,49 @@ # LIBSWRESAMPLE_FOUND # LIBSWRESAMPLE_INCLUDE_DIRS # LIBSWRESAMPLE_LIBRARIES -# -if(LIBSWRESAMPLE_INCLUDE_DIRS AND LIBSWRESAMPLE_LIBRARIES) - set(LIBSWRESAMPLE_FOUND TRUE) +find_package(PkgConfig QUIET) +if (PKG_CONFIG_FOUND) + pkg_check_modules(_SWRESAMPLE QUIET libswresample) +endif() + +if(CMAKE_SIZEOF_VOID_P EQUAL 8) + set(_lib_suffix 64) else() - find_package(PkgConfig QUIET) - if (PKG_CONFIG_FOUND) - pkg_check_modules(_SWRESAMPLE QUIET libswresample) - endif() + set(_lib_suffix 32) +endif() - if(CMAKE_SIZEOF_VOID_P EQUAL 8) - set(_lib_suffix 64) - else() - set(_lib_suffix 32) - endif() - - set(FFMPEG_PATH_ARCH FFmpegPath${_lib_suffix}) +set(FFMPEG_PATH_ARCH FFmpegPath${_lib_suffix}) - find_path(FFMPEG_INCLUDE_DIR - NAMES libswresample/swresample.h - HINTS - ${_SWRESAMPLE_INCLUDE_DIRS} - "${CMAKE_SOURCE_DIR}/additional_install_files/include" - "$ENV{obsAdditionalInstallFiles}/include" - ENV FFmpegPath - ENV ${FFMPEG_PATH_ARCH} - PATHS - /usr/include /usr/local/include /opt/local/include /sw/include - PATH_SUFFIXES ffmpeg libav) +find_path(FFMPEG_INCLUDE_DIR + NAMES libswresample/swresample.h + HINTS + ${_SWRESAMPLE_INCLUDE_DIRS} + "${CMAKE_SOURCE_DIR}/additional_install_files/include" + "$ENV{obsAdditionalInstallFiles}/include" + ENV FFmpegPath + ENV ${FFMPEG_PATH_ARCH} + PATHS + /usr/include /usr/local/include /opt/local/include /sw/include + PATH_SUFFIXES ffmpeg libav) - find_library(SWRESAMPLE_LIB - NAMES ${_SWRESAMPLE_LIBRARIES} swresample-ffmpeg swresample - HINTS - ${_SWRESAMPLE_LIBRARY_DIRS} - "${FFMPEG_INCLUDE_DIR}/../lib" - "${FFMPEG_INCLUDE_DIR}/../lib${_lib_suffix}" - "${FFMPEG_INCLUDE_DIR}/../libs${_lib_suffix}" - "${FFMPEG_INCLUDE_DIR}/lib" - "${FFMPEG_INCLUDE_DIR}/lib${_lib_suffix}" - PATHS - /usr/lib /usr/local/lib /opt/local/lib /sw/lib) +find_library(SWRESAMPLE_LIB + NAMES ${_SWRESAMPLE_LIBRARIES} swresample-ffmpeg swresample + HINTS + ${_SWRESAMPLE_LIBRARY_DIRS} + "${FFMPEG_INCLUDE_DIR}/../lib" + "${FFMPEG_INCLUDE_DIR}/../lib${_lib_suffix}" + "${FFMPEG_INCLUDE_DIR}/../libs${_lib_suffix}" + "${FFMPEG_INCLUDE_DIR}/lib" + "${FFMPEG_INCLUDE_DIR}/lib${_lib_suffix}" + PATHS + /usr/lib /usr/local/lib /opt/local/lib /sw/lib) - set(LIBSWRESAMPLE_INCLUDE_DIRS ${FFMPEG_INCLUDE_DIR} CACHE PATH "Libswresample include dir") - set(LIBSWRESAMPLE_LIBRARIES ${SWRESAMPLE_LIB} CACHE STRING "Libswresample libraries") +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Libswresample DEFAULT_MSG SWRESAMPLE_LIB FFMPEG_INCLUDE_DIR) +mark_as_advanced(FFMPEG_INCLUDE_DIR SWRESAMPLE_LIB) - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(Libswresample DEFAULT_MSG SWRESAMPLE_LIB FFMPEG_INCLUDE_DIR) - mark_as_advanced(FFMPEG_INCLUDE_DIR SWRESAMPLE_LIB) +if(LIBSWRESAMPLE_FOUND) + set(LIBSWRESAMPLE_INCLUDE_DIRS ${FFMPEG_INCLUDE_DIR}) + set(LIBSWRESAMPLE_LIBRARIES ${SWRESAMPLE_LIB}) endif() - diff --git a/cmake/Modules/FindLibswscale.cmake b/cmake/Modules/FindLibswscale.cmake index 40540a963292a28c1b1d7aaa2621a685ab1cd902..1ace7106b5e90cfbb38ad1b2348d5fdd1207c3ca 100644 --- a/cmake/Modules/FindLibswscale.cmake +++ b/cmake/Modules/FindLibswscale.cmake @@ -3,53 +3,49 @@ # LIBSWSCALE_FOUND # LIBSWSCALE_INCLUDE_DIRS # LIBSWSCALE_LIBRARIES -# -if(LIBSWSCALE_INCLUDE_DIRS AND LIBSWSCALE_LIBRARIES) - set(LIBSWSCALE_FOUND TRUE) +find_package(PkgConfig QUIET) +if (PKG_CONFIG_FOUND) + pkg_check_modules(_SWSCALE QUIET libswscale) +endif() + +if(CMAKE_SIZEOF_VOID_P EQUAL 8) + set(_lib_suffix 64) else() - find_package(PkgConfig QUIET) - if (PKG_CONFIG_FOUND) - pkg_check_modules(_SWSCALE QUIET libswscale) - endif() + set(_lib_suffix 32) +endif() - if(CMAKE_SIZEOF_VOID_P EQUAL 8) - set(_lib_suffix 64) - else() - set(_lib_suffix 32) - endif() - - set(FFMPEG_PATH_ARCH FFmpegPath${_lib_suffix}) +set(FFMPEG_PATH_ARCH FFmpegPath${_lib_suffix}) - find_path(FFMPEG_INCLUDE_DIR - NAMES libswscale/swscale.h - HINTS - ${_SWSCALE_INCLUDE_DIRS} - "${CMAKE_SOURCE_DIR}/additional_install_files/include" - "$ENV{obsAdditionalInstallFiles}/include" - ENV FFmpegPath - ENV ${FFMPEG_PATH_ARCH} - PATHS - /usr/include /usr/local/include /opt/local/include /sw/include - PATH_SUFFIXES ffmpeg libav) +find_path(FFMPEG_INCLUDE_DIR + NAMES libswscale/swscale.h + HINTS + ${_SWSCALE_INCLUDE_DIRS} + "${CMAKE_SOURCE_DIR}/additional_install_files/include" + "$ENV{obsAdditionalInstallFiles}/include" + ENV FFmpegPath + ENV ${FFMPEG_PATH_ARCH} + PATHS + /usr/include /usr/local/include /opt/local/include /sw/include + PATH_SUFFIXES ffmpeg libav) - find_library(SWSCALE_LIB - NAMES ${_SWSCALE_LIBRARIES} swscale-ffmpeg swscale - HINTS - ${_SWSCALE_LIBRARY_DIRS} - "${FFMPEG_INCLUDE_DIR}/../lib" - "${FFMPEG_INCLUDE_DIR}/../lib${_lib_suffix}" - "${FFMPEG_INCLUDE_DIR}/../libs${_lib_suffix}" - "${FFMPEG_INCLUDE_DIR}/lib" - "${FFMPEG_INCLUDE_DIR}/lib${_lib_suffix}" - PATHS - /usr/lib /usr/local/lib /opt/local/lib /sw/lib) +find_library(SWSCALE_LIB + NAMES ${_SWSCALE_LIBRARIES} swscale-ffmpeg swscale + HINTS + ${_SWSCALE_LIBRARY_DIRS} + "${FFMPEG_INCLUDE_DIR}/../lib" + "${FFMPEG_INCLUDE_DIR}/../lib${_lib_suffix}" + "${FFMPEG_INCLUDE_DIR}/../libs${_lib_suffix}" + "${FFMPEG_INCLUDE_DIR}/lib" + "${FFMPEG_INCLUDE_DIR}/lib${_lib_suffix}" + PATHS + /usr/lib /usr/local/lib /opt/local/lib /sw/lib) - set(LIBSWSCALE_INCLUDE_DIRS ${FFMPEG_INCLUDE_DIR} CACHE PATH "Libswscale include dir") - set(LIBSWSCALE_LIBRARIES ${SWSCALE_LIB} CACHE STRING "Libswscale libraries") +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Libswscale DEFAULT_MSG SWSCALE_LIB FFMPEG_INCLUDE_DIR) +mark_as_advanced(FFMPEG_INCLUDE_DIR SWSCALE_LIB) - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(Libswscale DEFAULT_MSG SWSCALE_LIB FFMPEG_INCLUDE_DIR) - mark_as_advanced(FFMPEG_INCLUDE_DIR SWSCALE_LIB) +if(LIBSWSCALE_FOUND) + set(LIBSWSCALE_INCLUDE_DIRS ${FFMPEG_INCLUDE_DIR}) + set(LIBSWSCALE_LIBRARIES ${SWSCALE_LIB}) endif() - diff --git a/cmake/Modules/FindLibv4l2.cmake b/cmake/Modules/FindLibv4l2.cmake index 7b2865cd4f13515fc4002db59767d97420997b88..bffa24f8258e05c901c82da9f70fa564d78294ff 100644 --- a/cmake/Modules/FindLibv4l2.cmake +++ b/cmake/Modules/FindLibv4l2.cmake @@ -3,37 +3,31 @@ # LIBV4L2_FOUND # LIBV4L2_INCLUDE_DIRS # LIBV4L2_LIBRARIES -# -if(LIBV4L2_INCLUDE_DIRS AND LIBV4L2_LIBRARIES) - set(LIBV4L2_FOUND TRUE) -else() - find_package(PkgConfig QUIET) - if (PKG_CONFIG_FOUND) - pkg_check_modules(_V4L2 QUIET v4l-utils) - endif() +find_package(PkgConfig QUIET) +if (PKG_CONFIG_FOUND) + pkg_check_modules(_V4L2 QUIET v4l-utils) +endif() - find_path(V4L2_INCLUDE_DIR - NAMES libv4l2.h - HINTS - ${_V4L2_INCLUDE_DIRS} - PATHS - /usr/include /usr/local/include /opt/local/include) +find_path(V4L2_INCLUDE_DIR + NAMES libv4l2.h + HINTS + ${_V4L2_INCLUDE_DIRS} + PATHS + /usr/include /usr/local/include /opt/local/include) - find_library(V4L2_LIB - NAMES v4l2 - HINTS - ${_V4L2_LIBRARY_DIRS} - PATHS - /usr/lib /usr/local/lib /opt/local/lib) +find_library(V4L2_LIB + NAMES v4l2 + HINTS + ${_V4L2_LIBRARY_DIRS} + PATHS + /usr/lib /usr/local/lib /opt/local/lib) - set(LIBV4L2_INCLUDE_DIRS ${V4L2_INCLUDE_DIR} - CACHE PATH "v4l2 include dir") - set(LIBV4L2_LIBRARIES "${V4L2_LIB}" - CACHE STRING "v4l2 libraries") +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(LibV4L2 DEFAULT_MSG V4L2_LIB V4L2_INCLUDE_DIR) +mark_as_advanced(V4L2_INCLUDE_DIR V4L2_LIB) - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(LibV4L2 DEFAULT_MSG V4L2_LIB - V4L2_INCLUDE_DIR) - mark_as_advanced(V4L2_INCLUDE_DIR V4L2_LIB) +if(LIBV4L2_FOUND) + set(LIBV4L2_INCLUDE_DIRS ${V4L2_INCLUDE_DIR}) + set(LIBV4L2_LIBRARIES ${V4L2_LIB}) endif() diff --git a/cmake/Modules/FindLibx264.cmake b/cmake/Modules/FindLibx264.cmake index 4434b69c7cb80deb04f9aa96c34d39ab37b9713c..c6e214f6b89d3e7111ee9f7f9aeed93070729a90 100644 --- a/cmake/Modules/FindLibx264.cmake +++ b/cmake/Modules/FindLibx264.cmake @@ -7,54 +7,51 @@ # For use in OBS: # # X264_INCLUDE_DIR -# -if(LIBX264_INCLUDE_DIRS AND LIBX264_LIBRARIES) - set(LIBX264_FOUND TRUE) -else() - find_package(PkgConfig QUIET) - if (PKG_CONFIG_FOUND) - pkg_check_modules(_X264 QUIET x264) - endif() +find_package(PkgConfig QUIET) +if (PKG_CONFIG_FOUND) + pkg_check_modules(_X264 QUIET x264) +endif() - if(CMAKE_SIZEOF_VOID_P EQUAL 8) - set(_lib_suffix 64) - else() - set(_lib_suffix 32) - endif() +if(CMAKE_SIZEOF_VOID_P EQUAL 8) + set(_lib_suffix 64) +else() + set(_lib_suffix 32) +endif() - set(X264_PATH_ARCH x264Path${_lib_suffix}) - set(FFMPEG_PATH_ARCH FFmpegPath${_lib_suffix}) +set(X264_PATH_ARCH x264Path${_lib_suffix}) +set(FFMPEG_PATH_ARCH FFmpegPath${_lib_suffix}) - find_path(X264_INCLUDE_DIR - NAMES x264.h - HINTS - ${_X264_INCLUDE_DIRS} - "${CMAKE_SOURCE_DIR}/additional_install_files/include" - "$ENV{obsAdditionalInstallFiles}/include" - ENV x264Path - ENV FFmpegPath - ENV ${X264_PATH_ARCH} - ENV ${FFMPEG_PATH_ARCH} - PATHS - /usr/include /usr/local/include /opt/local/include /sw/include) +find_path(X264_INCLUDE_DIR + NAMES x264.h + HINTS + ${_X264_INCLUDE_DIRS} + "${CMAKE_SOURCE_DIR}/additional_install_files/include" + "$ENV{obsAdditionalInstallFiles}/include" + ENV x264Path + ENV FFmpegPath + ENV ${X264_PATH_ARCH} + ENV ${FFMPEG_PATH_ARCH} + PATHS + /usr/include /usr/local/include /opt/local/include /sw/include) - find_library(X264_LIB - NAMES ${_X264_LIBRARIES} x264 libx264 - HINTS - ${_X264_LIBRARY_DIRS} - "${X264_INCLUDE_DIR}/../lib" - "${X264_INCLUDE_DIR}/../lib${_lib_suffix}" - "${X264_INCLUDE_DIR}/../libs${_lib_suffix}" - "${X264_INCLUDE_DIR}/lib" - "${X264_INCLUDE_DIR}/lib${_lib_suffix}" - PATHS - /usr/lib /usr/local/lib /opt/local/lib /sw/lib) +find_library(X264_LIB + NAMES ${_X264_LIBRARIES} x264 libx264 + HINTS + ${_X264_LIBRARY_DIRS} + "${X264_INCLUDE_DIR}/../lib" + "${X264_INCLUDE_DIR}/../lib${_lib_suffix}" + "${X264_INCLUDE_DIR}/../libs${_lib_suffix}" + "${X264_INCLUDE_DIR}/lib" + "${X264_INCLUDE_DIR}/lib${_lib_suffix}" + PATHS + /usr/lib /usr/local/lib /opt/local/lib /sw/lib) - set(LIBX264_INCLUDE_DIRS ${X264_INCLUDE_DIR} CACHE PATH "x264 include dir") - set(LIBX264_LIBRARIES ${X264_LIB} CACHE STRING "x264 libraries") +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Libx264 DEFAULT_MSG X264_LIB X264_INCLUDE_DIR) +mark_as_advanced(X264_INCLUDE_DIR X264_LIB) - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(Libx264 DEFAULT_MSG X264_LIB X264_INCLUDE_DIR) - mark_as_advanced(X264_INCLUDE_DIR X264_LIB) +if(LIBX264_FOUND) + set(LIBX264_INCLUDE_DIRS ${X264_INCLUDE_DIR}) + set(LIBX264_LIBRARIES ${X264_LIB}) endif() diff --git a/obs/CMakeLists.txt b/obs/CMakeLists.txt index 40c7e472a7bb4c16ce87ad681b9ace061869d3fe..84a14a844ed3e367e1cea652f3458f1c72213597 100644 --- a/obs/CMakeLists.txt +++ b/obs/CMakeLists.txt @@ -1,11 +1,13 @@ project(obs) -include_directories(SYSTEM "${CMAKE_SOURCE_DIR}/libobs") - -if(CMAKE_SIZEOF_VOID_P EQUAL 8) - set(_lib_suffix 64) +option(ENABLE_UI "Enables the OBS user interfaces" ON) +if(DISABLE_UI) + message(STATUS "UI disabled") + return() +elseif(ENABLE_UI) + set(FIND_MODE REQUIRED) else() - set(_lib_suffix 32) + set(FIND_MODE QUIET) endif() if(DEFINED ENV{QTDIR${_lib_suffix}}) @@ -17,8 +19,25 @@ endif() set(CMAKE_INCLUDE_CURRENT_DIR TRUE) set(CMAKE_AUTOMOC TRUE) -find_package(Qt5Widgets REQUIRED) -find_package(Qt5Network REQUIRED) +if(CMAKE_SIZEOF_VOID_P EQUAL 8) + set(_lib_suffix 64) +else() + set(_lib_suffix 32) +endif() + +find_package(Qt5Widgets ${FIND_MODE}) +find_package(Qt5Network ${FIND_MODE}) + +if(NOT Qt5Widgets_FOUND OR NOT Qt5Network_FOUND) + if (ENABLE_UI) + message(FATAL_ERROR "Failed to find Qt5") + else() + message(STATUS "Qt5 not found - UI disabled") + return() + endif() +endif() + +include_directories(SYSTEM "${CMAKE_SOURCE_DIR}/libobs") if(WIN32) set(obs_PLATFORM_SOURCES @@ -28,7 +47,7 @@ elseif(APPLE) platform-osx.mm) find_package(AppKit REQUIRED) - set(obs_PLATFORM_LIBRARIES ${AppKit_LIBRARIES}) + set(obs_PLATFORM_LIBRARIES ${APPKIT_LIBRARIES}) add_definitions(-fobjc-arc) elseif(UNIX) 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()