Merge topic 'bsd-variables'

a20d7a9707 BSD: Set *BSD variables when targeting a *BSD system
2ae42d0aa3 kFreeBSD: Do not unset LINUX variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7573
This commit is contained in:
Craig Scott
2022-08-22 21:37:33 +00:00
committed by Kitware Robot
12 changed files with 54 additions and 2 deletions

View File

@@ -301,6 +301,7 @@ Variables that Describe the System
/variable/ANDROID
/variable/APPLE
/variable/BORLAND
/variable/BSD
/variable/CMAKE_ANDROID_NDK_VERSION
/variable/CMAKE_CL_64
/variable/CMAKE_COMPILER_2005
@@ -320,6 +321,8 @@ Variables that Describe the System
/variable/CMAKE_SYSTEM_PROCESSOR
/variable/CMAKE_SYSTEM_VERSION
/variable/CYGWIN
/variable/DRAGONFLYBSD
/variable/FREEBSD
/variable/GHSMULTI
/variable/IOS
/variable/LINUX
@@ -338,6 +341,8 @@ Variables that Describe the System
/variable/MSVC_TOOLSET_VERSION
/variable/MSVC_VERSION
/variable/MSYS
/variable/NETBSD
/variable/OPENBSD
/variable/UNIX
/variable/WIN32
/variable/WINCE

View File

@@ -0,0 +1,9 @@
bsd-variables
-------------
* The :variable:`BSD` variable is set to true when the target system
is BSD (DragonFlyBSD, FreeBSD, OpenBSD, or NetBSD)
* The :variable:`DRAGONFLYBSD` variable is set to true when the target system is DragonFlyBSD.
* The :variable:`FREEBSD` variable is set to true when the target system is FreeBSD.
* The :variable:`NETBSD` variable is set to true when the target system is NetBSD.
* The :variable:`OPENBSD` variable is set to true when the target system is OpenBSD.

6
Help/variable/BSD.rst Normal file
View File

@@ -0,0 +1,6 @@
BSD
---
.. versionadded:: 3.25
Set to true when the target system is BSD (DragonFlyBSD, FreeBSD, OpenBSD, or NetBSD)

View File

@@ -0,0 +1,6 @@
DRAGONFLYBSD
------------
.. versionadded:: 3.25
Set to true when the target system is DragonFlyBSD.

View File

@@ -0,0 +1,6 @@
FREEBSD
-------
.. versionadded:: 3.25
Set to true when the target system is FreeBSD.

6
Help/variable/NETBSD.rst Normal file
View File

@@ -0,0 +1,6 @@
NETBSD
------
.. versionadded:: 3.25
Set to true when the target system is NetBSD.

View File

@@ -0,0 +1,6 @@
OPENBSD
-------
.. versionadded:: 3.25
Set to true when the target system is OpenBSD.

View File

@@ -3,6 +3,8 @@
# see http://archive.netbsd.se/?ml=dfbsd-users&a=2007-07&m=4678361
include(Platform/FreeBSD)
unset(FREEBSD)
set(DRAGONFLYBSD 1)
# DragonFly BSD requires -z origin to enable $ORIGIN expansion in RPATH.
# This is not required for FreeBSD since 10.2-RELEASE.

View File

@@ -1,3 +1,5 @@
set(FREEBSD 1)
set(BSD 1)
set(CMAKE_DL_LIBS "")
set(CMAKE_C_COMPILE_OPTIONS_PIC "-fPIC")
set(CMAKE_C_COMPILE_OPTIONS_PIE "-fPIE")

View File

@@ -1,3 +1,5 @@
set(NETBSD 1)
set(BSD 1)
set(CMAKE_DL_LIBS "")
set(CMAKE_C_COMPILE_OPTIONS_PIC "-fPIC")
set(CMAKE_C_COMPILE_OPTIONS_PIE "-fPIE")

View File

@@ -1,4 +1,6 @@
include(Platform/NetBSD)
unset(NETBSD)
set(OPENBSD 1)
# On OpenBSD, the compile time linker does not share it's configuration with
# the runtime linker. This will extract the library search paths from the

View File

@@ -1,5 +1,5 @@
# kFreeBSD looks just like Linux.
# kFreeBSD is a Debian GNU distribution with a kernel from FreeBSD,
# and should be marked as LINUX
include(Platform/Linux)
unset(LINUX)
set(CMAKE_LIBRARY_ARCHITECTURE_REGEX "[a-z0-9_]+(-[a-z0-9_]+)?-kfreebsd-gnu[a-z0-9_]*")