mirror of
https://github.com/FreeRDP/FreeRDP.git
synced 2025-06-03 00:00:20 +00:00
[cmake] unify BSD related configuration in PlatformDefaults.cmake
This commit is contained in:
parent
faf0c74029
commit
09ff2966af
@ -68,7 +68,6 @@ if(WITH_CLANG_FORMAT)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
include(CompilerFlags)
|
include(CompilerFlags)
|
||||||
include(DetectBSD)
|
|
||||||
include(CheckIncludeFiles)
|
include(CheckIncludeFiles)
|
||||||
include(CheckLibraryExists)
|
include(CheckLibraryExists)
|
||||||
include(CheckSymbolExists)
|
include(CheckSymbolExists)
|
||||||
@ -779,18 +778,6 @@ endif()
|
|||||||
|
|
||||||
add_subdirectory(libfreerdp)
|
add_subdirectory(libfreerdp)
|
||||||
|
|
||||||
if(BSD)
|
|
||||||
if(IS_DIRECTORY /usr/local/include)
|
|
||||||
include_directories(/usr/local/include)
|
|
||||||
link_directories(/usr/local/lib)
|
|
||||||
endif()
|
|
||||||
if(OPENBSD)
|
|
||||||
if(IS_DIRECTORY /usr/X11R6/include)
|
|
||||||
include_directories(/usr/X11R6/include)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(WITH_CHANNELS)
|
if(WITH_CHANNELS)
|
||||||
add_subdirectory(channels)
|
add_subdirectory(channels)
|
||||||
endif()
|
endif()
|
||||||
|
@ -1,18 +0,0 @@
|
|||||||
# BSD
|
|
||||||
if(${CMAKE_SYSTEM_NAME} MATCHES "BSD")
|
|
||||||
set(BSD TRUE CACHE INTERNAL "BSD detection")
|
|
||||||
if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
|
|
||||||
set(FREEBSD TRUE CACHE INTERNAL "BSD detection")
|
|
||||||
endif()
|
|
||||||
if(${CMAKE_SYSTEM_NAME} MATCHES "kFreeBSD")
|
|
||||||
set(KFREEBSD TRUE CACHE INTERNAL "BSD detection")
|
|
||||||
endif()
|
|
||||||
if(${CMAKE_SYSTEM_NAME} MATCHES "OpenBSD")
|
|
||||||
set(OPENBSD TRUE CACHE INTERNAL "BSD detection")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(${CMAKE_SYSTEM_NAME} MATCHES "DragonFly")
|
|
||||||
set(BSD TRUE CACHE INTERNAL "BSD detection")
|
|
||||||
set(FREEBSD TRUE CACHE INTERNAL "BSD detection")
|
|
||||||
endif()
|
|
@ -3,7 +3,7 @@
|
|||||||
#
|
#
|
||||||
# Compilation will fail without a replacement defining the symbols, but that can be
|
# Compilation will fail without a replacement defining the symbols, but that can be
|
||||||
# done by supplying a TOOLCHAIN_FILE defining these.
|
# done by supplying a TOOLCHAIN_FILE defining these.
|
||||||
option(USE_PLATFORM_DEFAULT "Use this configuration file for platform defaults. Supply -DCMAKE_TOOLCHAIN_FILE=<yourfile> otherwise." ON)
|
option(USE_PLATFORM_DEFAULT "Use this configuration file for platform defaults. Supply -DCMAKE_TOOLCHAIN_FILE=<yourfile>." ON)
|
||||||
if (USE_PLATFORM_DEFAULT)
|
if (USE_PLATFORM_DEFAULT)
|
||||||
# default defines or other required preferences per platform
|
# default defines or other required preferences per platform
|
||||||
if((CMAKE_SYSTEM_NAME MATCHES "WindowsStore") AND (CMAKE_SYSTEM_VERSION MATCHES "10.0"))
|
if((CMAKE_SYSTEM_NAME MATCHES "WindowsStore") AND (CMAKE_SYSTEM_VERSION MATCHES "10.0"))
|
||||||
@ -19,6 +19,8 @@ if (USE_PLATFORM_DEFAULT)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
if("${CMAKE_SYSTEM_NAME}" MATCHES "FreeBSD")
|
if("${CMAKE_SYSTEM_NAME}" MATCHES "FreeBSD")
|
||||||
|
set(BSD TRUE CACHE INTERNAL "platform default")
|
||||||
|
set(FREEBSD TRUE CACHE INTERNAL "platform default")
|
||||||
# we want POSIX 2008. FreeBSD 14 does only support 2001 fully, but the subset we require from 2008
|
# we want POSIX 2008. FreeBSD 14 does only support 2001 fully, but the subset we require from 2008
|
||||||
# is implemented, so ignore _POSIX_VERSION from unistd.h
|
# is implemented, so ignore _POSIX_VERSION from unistd.h
|
||||||
add_definitions("-D_POSIX_C_SOURCE=200809L")
|
add_definitions("-D_POSIX_C_SOURCE=200809L")
|
||||||
@ -51,6 +53,35 @@ if (USE_PLATFORM_DEFAULT)
|
|||||||
add_definitions("-D_DARWIN_C_SOURCE")
|
add_definitions("-D_DARWIN_C_SOURCE")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(${CMAKE_SYSTEM_NAME} MATCHES "kFreeBSD")
|
||||||
|
set(BSD TRUE CACHE INTERNAL "platform default")
|
||||||
|
set(KFREEBSD TRUE CACHE INTERNAL "platform default")
|
||||||
|
add_definitions(-DKFREEBSD)
|
||||||
|
add_definitions("-D_GNU_SOURCE")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(${CMAKE_SYSTEM_NAME} MATCHES "OpenBSD")
|
||||||
|
set(BSD TRUE CACHE INTERNAL "platform default")
|
||||||
|
set(OPENBSD TRUE CACHE INTERNAL "platform default")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(${CMAKE_SYSTEM_NAME} MATCHES "DragonFly")
|
||||||
|
set(BSD TRUE CACHE INTERNAL "platform default")
|
||||||
|
set(FREEBSD TRUE CACHE INTERNAL "platform default")
|
||||||
|
|
||||||
|
# we want POSIX 2008. FreeBSD 14 does only support 2001 fully, but the subset we require from 2008
|
||||||
|
# is implemented, so ignore _POSIX_VERSION from unistd.h
|
||||||
|
add_definitions("-D_POSIX_C_SOURCE=200809L")
|
||||||
|
# TODO: FreeBSD allows mixing POSIX and BSD API calls if we do not set
|
||||||
|
# _POSIX_C_SOURCE but lack a macro to reenable the BSD calls...
|
||||||
|
add_definitions("-D__BSD_VISIBLE")
|
||||||
|
|
||||||
|
# There are some symbols only visible for XOpen standard
|
||||||
|
add_definitions("-D_XOPEN_SOURCE=700")
|
||||||
|
add_definitions("-D_FILE_OFFSET_BITS=64")
|
||||||
|
set(WINPR_TIMEZONE_FILE "/var/db/zoneinfo")
|
||||||
|
endif()
|
||||||
|
|
||||||
# define a fallback for systems that do not support a timezone file or we did not yet test.
|
# define a fallback for systems that do not support a timezone file or we did not yet test.
|
||||||
# since most of these are BSD try a sensible default
|
# since most of these are BSD try a sensible default
|
||||||
if (NOT WINPR_TIMEZONE_FILE)
|
if (NOT WINPR_TIMEZONE_FILE)
|
||||||
|
@ -23,11 +23,6 @@
|
|||||||
#include <winpr/debug.h>
|
#include <winpr/debug.h>
|
||||||
#include <winpr/assert.h>
|
#include <winpr/assert.h>
|
||||||
|
|
||||||
#if defined(__FreeBSD_kernel__) && defined(__GLIBC__)
|
|
||||||
#define _GNU_SOURCE
|
|
||||||
#define KFREEBSD
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <winpr/wtypes.h>
|
#include <winpr/wtypes.h>
|
||||||
#include <winpr/crt.h>
|
#include <winpr/crt.h>
|
||||||
#include <winpr/file.h>
|
#include <winpr/file.h>
|
||||||
|
Loading…
Reference in New Issue
Block a user