From 1edc8b0525af34ad1030213a90086cd941056b8a Mon Sep 17 00:00:00 2001 From: Igor Pashev Date: Sun, 6 Nov 2022 13:18:47 +0200 Subject: Support FreeBSD --- CMakeLists.txt | 33 ++++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 37185b2..eaaf6b0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,14 +1,29 @@ -CMAKE_MINIMUM_REQUIRED (VERSION 2.6) -PROJECT (FileSender) +CMAKE_MINIMUM_REQUIRED(VERSION 3.0) +PROJECT(FileSender) -INCLUDE (CheckIncludeFiles) -CHECK_INCLUDE_FILES (sys/sendfile.h HAVE_SYS_SENDFILE_H) +INCLUDE(CheckIncludeFiles) +CHECK_INCLUDE_FILES(sys/sendfile.h HAVE_SYS_SENDFILE_H) -INCLUDE (CheckFunctionExists) -CHECK_FUNCTION_EXISTS (socket HAVE_SOCKET) +IF(HAVE_SYS_SENDFILE_H) + ADD_COMPILE_DEFINITIONS(HAVE_SYS_SENDFILE_H) +ENDIF(HAVE_SYS_SENDFILE_H) + +INCLUDE(CheckFunctionExists) +CHECK_FUNCTION_EXISTS(sendfile HAVE_SENDFILE) +IF(HAVE_SENDFILE) + ADD_COMPILE_DEFINITIONS(HAVE_SENDFILE) +ENDIF(HAVE_SENDFILE) + +CHECK_FUNCTION_EXISTS(socket HAVE_SOCKET) IF(NOT HAVE_SOCKET) - CHECK_LIBRARY_EXISTS (socket socket "" HAVE_SOCKET) + CHECK_LIBRARY_EXISTS(socket socket "" HAVE_SOCKET) ENDIF(NOT HAVE_SOCKET) -ADD_EXECUTABLE (server server.c utils.c utils.h) -ADD_EXECUTABLE (client client.c utils.c utils.h) +INCLUDE(CheckStructHasMember) +CHECK_STRUCT_HAS_MEMBER("struct sf_hdtr" hdr_cnt sys/socket.h HAVE_STRUCT_SF_HDTR_HDR_CNT) +IF(HAVE_STRUCT_SF_HDTR_HDR_CNT) + ADD_COMPILE_DEFINITIONS(HAVE_STRUCT_SF_HDTR_HDR_CNT) +ENDIF(HAVE_STRUCT_SF_HDTR_HDR_CNT) + +ADD_EXECUTABLE(server server.c utils.c utils.h) +ADD_EXECUTABLE(client client.c utils.c utils.h) -- cgit v1.2.3