Files
bongo/cmake/FindLibPSL.cmake
2026-07-16 21:44:21 +02:00

46 lines
1.8 KiB
CMake

# /****************************************************************************
# * <Novell-copyright>
# * 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.
# * </Novell-copyright>
# ****************************************************************************/
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)