# /**************************************************************************** # * # * Copyright (c) 2001 Novell, Inc. All Rights Reserved. # * # * This program is free software; you can redistribute it and/or # * modify it under the terms of version 2 of the GNU General Public License # * as published by the Free Software Foundation. # * # * This program is distributed in the hope that it will be useful, # * but WITHOUT ANY WARRANTY; without even the implied warranty of # * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # * GNU General Public License for more details. # * # * You should have received a copy of the GNU General Public License # * along with this program; if not, contact Novell, Inc. # * # * To contact Novell about this file by physical or electronic mail, you # * may find current contact information at www.novell.com. # * # ****************************************************************************/ find_path(LibPSL_INCLUDE_DIR NAMES libpsl.h) find_library(LibPSL_LIBRARY NAMES psl) if(LibPSL_INCLUDE_DIR) file(STRINGS "${LibPSL_INCLUDE_DIR}/libpsl.h" _LibPSL_VERSION_LINE REGEX "^#define PSL_VERSION[ \t]+\"[0-9]+\\.[0-9]+\\.[0-9]+\"") string(REGEX MATCH "\"([0-9]+\\.[0-9]+\\.[0-9]+)\"" _LibPSL_VERSION_MATCH "${_LibPSL_VERSION_LINE}") set(LibPSL_VERSION "${CMAKE_MATCH_1}") endif() include(FindPackageHandleStandardArgs) find_package_handle_standard_args(LibPSL REQUIRED_VARS LibPSL_LIBRARY LibPSL_INCLUDE_DIR VERSION_VAR LibPSL_VERSION) if(LibPSL_FOUND AND NOT TARGET LibPSL::LibPSL) add_library(LibPSL::LibPSL UNKNOWN IMPORTED) set_target_properties(LibPSL::LibPSL PROPERTIES IMPORTED_LOCATION "${LibPSL_LIBRARY}" INTERFACE_INCLUDE_DIRECTORIES "${LibPSL_INCLUDE_DIR}") endif() mark_as_advanced(LibPSL_INCLUDE_DIR LibPSL_LIBRARY)