Merge pull request #72 from nils-a/ebuild-prep
switched to find_optional_package to require or ignore opional packages
This commit is contained in:
commit
d5f029d26b
@ -79,13 +79,13 @@ check_include_files(fcntl.h HAVE_FCNTL_H)
|
||||
check_include_files(unistd.h HAVE_UNISTD_H)
|
||||
|
||||
# Libraries that we have a hard dependency on
|
||||
find_package(OpenSSL REQUIRED)
|
||||
find_required_package(OpenSSL)
|
||||
|
||||
if(NOT WIN32)
|
||||
find_package(ZLIB REQUIRED)
|
||||
find_optional_package(ALSA)
|
||||
find_required_package(ZLIB)
|
||||
find_suggested_package(ALSA)
|
||||
find_optional_package(PulseAudio)
|
||||
find_optional_package(Cups)
|
||||
find_suggested_package(Cups)
|
||||
endif()
|
||||
|
||||
# Endian
|
||||
@ -111,7 +111,7 @@ if(APPLE)
|
||||
endif()
|
||||
|
||||
# Build CUnit
|
||||
find_package(CUnit)
|
||||
find_optional_package(CUnit)
|
||||
if(CUNIT_FOUND)
|
||||
add_subdirectory(cunit)
|
||||
enable_testing()
|
||||
|
@ -25,13 +25,13 @@ if(NOT WIN32)
|
||||
add_subdirectory(test)
|
||||
|
||||
# Build X11 Client
|
||||
find_package(X11)
|
||||
find_suggested_package(X11)
|
||||
if(X11_FOUND)
|
||||
add_subdirectory(X11)
|
||||
endif()
|
||||
|
||||
# Build DirectFB Client
|
||||
find_package(DirectFB)
|
||||
find_optional_package(DirectFB)
|
||||
if(DIRECTFB_FOUND)
|
||||
add_subdirectory(DirectFB)
|
||||
endif()
|
||||
|
@ -51,21 +51,21 @@ if(WITH_MANPAGES)
|
||||
endif(XMLTO_FOUND)
|
||||
endif(WITH_MANPAGES)
|
||||
|
||||
find_package(Xinerama)
|
||||
find_suggested_package(Xinerama)
|
||||
if(XINERAMA_FOUND)
|
||||
add_definitions(-DWITH_XINERAMA -DWITH_XEXT)
|
||||
include_directories(${XINERAMA_INCLUDE_DIRS})
|
||||
target_link_libraries(xfreerdp ${XINERAMA_LIBRARIES})
|
||||
endif()
|
||||
|
||||
find_package(Xext)
|
||||
find_suggested_package(Xext)
|
||||
if(XEXT_FOUND)
|
||||
add_definitions(-DWITH_XEXT)
|
||||
include_directories(${XEXT_INCLUDE_DIRS})
|
||||
target_link_libraries(xfreerdp ${XEXT_LIBRARIES})
|
||||
endif()
|
||||
|
||||
find_package(Xcursor)
|
||||
find_suggested_package(Xcursor)
|
||||
if(Xcursor_FOUND)
|
||||
add_definitions(-DWITH_XCURSOR)
|
||||
include_directories(${Xcursor_INCLUDE_DIRS})
|
||||
|
@ -1,7 +1,10 @@
|
||||
# - FindOptionalPackage
|
||||
# Enable or disable optional packages. Also force optional packages.
|
||||
#
|
||||
# This module defines the following variables:
|
||||
# This module defines the following macros:
|
||||
# find_required_package : find a required package, can not be disabled
|
||||
# find_suggested_package : find a suggested package - required but can be disabled
|
||||
# find_optional_package : find an optional package - required only if enabled
|
||||
#
|
||||
|
||||
#=============================================================================
|
||||
@ -20,15 +23,29 @@
|
||||
# limitations under the License.
|
||||
#=============================================================================
|
||||
|
||||
macro(find_required_package _normal_package)
|
||||
find_package(${_normal_package} REQUIRED)
|
||||
endmacro(find_required_package)
|
||||
|
||||
macro(find_suggested_package _normal_package)
|
||||
string(TOUPPER ${_normal_package} _upper_package)
|
||||
option(WITH_${_upper_package} "Add dependency to ${_normal_package} - recommended" ON)
|
||||
|
||||
if(NOT WITHOUT_${_upper_package})
|
||||
message(STATUS "Finding suggested package ${_normal_package}.")
|
||||
message(STATUS " Disable this using \"-DWITH_${_upper_package}=OFF\".")
|
||||
find_package(${_normal_package} REQUIRED)
|
||||
endif(NOT WITHOUT_${_upper_package})
|
||||
endmacro(find_suggested_package)
|
||||
|
||||
macro(find_optional_package _normal_package)
|
||||
STRING(TOUPPER ${_normal_package} _upper_package)
|
||||
OPTION(WITH_${_upper_package} "Force dependencies to ${_normal_package}" OFF)
|
||||
OPTION(WITHOUT_${_upper_package} "Never depend on ${_normal_package}" OFF)
|
||||
string(TOUPPER ${_normal_package} _upper_package)
|
||||
option(WITH_${_upper_package} "Add dependency to ${_normal_package}" OFF)
|
||||
|
||||
if(WITH_${_upper_package})
|
||||
find_package(${_normal_package} REQUIRED)
|
||||
elseif(NOT WITHOUT_${_upper_package})
|
||||
find_package(${_normal_package})
|
||||
else(WITH_${_upper_package})
|
||||
message(STATUS "Skipping optional package ${_normal_package}.")
|
||||
message(STATUS " Enable this using \"-DWITH_${_upper_package}=ON\".")
|
||||
endif(WITH_${_upper_package})
|
||||
endmacro(find_optional_package)
|
||||
|
@ -29,7 +29,7 @@ set(FREERDP_KBD_SRCS
|
||||
|
||||
add_library(freerdp-kbd SHARED ${FREERDP_KBD_SRCS})
|
||||
|
||||
find_package(XKBFile)
|
||||
find_suggested_package(XKBFile)
|
||||
if(XKBFILE_FOUND)
|
||||
add_definitions(-DWITH_XKBFILE)
|
||||
include_directories(${XKBFILE_INCLUDE_DIRS})
|
||||
|
@ -18,7 +18,7 @@
|
||||
# limitations under the License.
|
||||
|
||||
set(CMAKE_THREAD_PREFER_PTHREAD)
|
||||
find_package(Threads REQUIRED)
|
||||
find_required_package(Threads)
|
||||
|
||||
set(FREERDP_UTILS_SRCS
|
||||
args.c
|
||||
|
Loading…
Reference in New Issue
Block a user