58 lines
2.1 KiB
CMake
58 lines
2.1 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(SPF2_INCLUDE_DIR NAMES spf2/spf.h)
|
|
find_library(SPF2_LIBRARY NAMES spf2)
|
|
|
|
include(CheckCSourceCompiles)
|
|
if(SPF2_INCLUDE_DIR)
|
|
set(_SPF2_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES}")
|
|
set(CMAKE_REQUIRED_INCLUDES "${SPF2_INCLUDE_DIR}")
|
|
check_c_source_compiles([=[
|
|
#include <stddef.h>
|
|
#include <time.h>
|
|
#include <netinet/in.h>
|
|
#include <arpa/inet.h>
|
|
#include <stdio.h>
|
|
#include <string.h>
|
|
#include <spf2/spf.h>
|
|
#ifndef LIBSPF2_RFC7208
|
|
#error Bongo requires its maintained RFC 7208 libspf2 package
|
|
#endif
|
|
int main(void) { return 0; }
|
|
]=] SPF2_HAS_RFC7208_HARDENING)
|
|
set(CMAKE_REQUIRED_INCLUDES "${_SPF2_REQUIRED_INCLUDES}")
|
|
unset(_SPF2_REQUIRED_INCLUDES)
|
|
endif()
|
|
|
|
include(FindPackageHandleStandardArgs)
|
|
find_package_handle_standard_args(SPF2 REQUIRED_VARS
|
|
SPF2_LIBRARY SPF2_INCLUDE_DIR SPF2_HAS_RFC7208_HARDENING)
|
|
|
|
if(SPF2_FOUND AND NOT TARGET SPF2::SPF2)
|
|
add_library(SPF2::SPF2 UNKNOWN IMPORTED)
|
|
set_target_properties(SPF2::SPF2 PROPERTIES
|
|
IMPORTED_LOCATION "${SPF2_LIBRARY}"
|
|
INTERFACE_INCLUDE_DIRECTORIES "${SPF2_INCLUDE_DIR}")
|
|
endif()
|
|
|
|
mark_as_advanced(SPF2_INCLUDE_DIR SPF2_LIBRARY)
|