libaribb25/cmake/FindPCSC.cmake
2017-06-15 22:06:00 +09:00

32 lines
870 B
CMake

find_package(PkgConfig)
if(PKG_CONFIG_FOUND AND WITH_PCSC_PACKAGE AND NOT CMAKE_CROSSCOMPILING)
if(WITH_PCSC_PACKAGE STREQUAL "libpcsclite")
pkg_check_modules(PCSC ${WITH_PCSC_PACKAGE})
else()
pkg_check_modules(PCSC REQUIRED ${WITH_PCSC_PACKAGE})
endif()
endif()
if(NOT PCSC_FOUND)
find_path(PCSC_INCLUDE_DIRS NAMES WinSCard.h winscard.h PATH_SUFFIXES PCSC)
if(WITH_PCSC_LIBRARY)
find_library(PCSC_LIBRARIES NAMES ${WITH_PCSC_LIBRARY})
else()
find_library(PCSC_LIBRARIES NAMES pcsclite PCSC WinSCard winscard)
endif()
if(PCSC_LIBRARIES)
set(PCSC_FOUND True)
endif()
endif()
if(NOT PCSC_FOUND AND NOT WITH_PCSC_LIBRARY AND WIN32)
set(PCSC_LIBRARIES winscard)
set(PCSC_FOUND True)
endif()
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(PCSC DEFAULT_MSG PCSC_LIBRARIES)
mark_as_advanced(PCSC_INCLUDE_DIRS PCSC_LIBRARIES)