set(LIBCONFIG_SEARCH_PATH_LIST ${LIBCONFIG_HOME} $ENV{LIBCONFIG_HOME} /usr/local /opt /usr ) find_path(LIBCONFIG_INCLUDE_DIR libconfig.h HINTS ${LIBCONFIG_SEARCH_PATH_LIST} PATH_SUFFIXES include DOC "Find the libconfig include" ) if (WIN32) if(CMAKE_SIZEOF_VOID_P EQUAL 8) find_library(LIBCONFIG_LIBRARY NAMES libconfig.lib HINTS ${LIBCONFIG_SEARCH_PATH_LIST} PATH_SUFFIXES lib/x64 DOC "Find the libconfig libraries" ) elseif(CMAKE_SIZEOF_VOID_P EQUAL 4) find_library(LIBCONFIG_LIBRARY NAMES libconfig.lib HINTS ${LIBCONFIG_SEARCH_PATH_LIST} PATH_SUFFIXES lib/x32 DOC "Find the libconfig libraries" ) endif() else() find_library(LIBCONFIG_LIBRARY NAMES config HINTS ${LIBCONFIG_SEARCH_PATH_LIST} PATH_SUFFIXES lib DOC "Find the libconfig libraries" ) endif() set(LIBCONFIG_LIBRARIES ${LIBCONFIG_LIBRARY}) set(LIBCONFIG_INCLUDE_DIRS ${LIBCONFIG_INCLUDE_DIR}) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Libconfig LIBCONFIG_LIBRARIES LIBCONFIG_INCLUDE_DIRS) mark_as_advanced(LIBCONFIG_LIBRARIES LIBCONFIG_INCLUDE_DIRS)