mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-04-28 12:58:00 +03:00
Remove OsIdentity.cmake
Removes the OsIdentity.cmake file and uses a cross-compilation friendly and OS-independent method of detecting system double-precision bullet instead.
This commit is contained in:
parent
7f7041656d
commit
e3a6cb1695
4 changed files with 33 additions and 84 deletions
|
@ -18,16 +18,21 @@ file(WRITE ${TMP_ROOT}/CMakeLists.txt
|
|||
"
|
||||
cmake_minimum_required(VERSION 3.1.0)
|
||||
project(checkbullet)
|
||||
add_executable(checkbullet checkbullet.cpp)
|
||||
find_package(Bullet REQUIRED COMPONENTS BulletCollision LinearMath)
|
||||
target_compile_definitions(checkbullet PUBLIC BT_USE_DOUBLE_PRECISION)
|
||||
include_directories(\$\{BULLET_INCLUDE_DIRS\})
|
||||
include(${CMAKE_SOURCE_DIR}/cmake/OSIdentity.cmake)
|
||||
if (UBUNTU_FOUND OR DEBIAN_FOUND)
|
||||
target_link_libraries(checkbullet BulletCollision-float64 LinearMath-float64)
|
||||
|
||||
# First, try BulletConfig-float64.cmake which comes with Debian derivatives.
|
||||
find_package(Bullet CONFIGS BulletConfig-float64.cmake QUIET COMPONENTS BulletCollision LinearMath)
|
||||
if (BULLET_FOUND)
|
||||
# Fix the relative include:
|
||||
set(BULLET_INCLUDE_DIRS \"\$\{BULLET_ROOT_DIR\}/\$\{BULLET_INCLUDE_DIRS\}\")
|
||||
else()
|
||||
target_link_libraries(checkbullet \$\{BULLET_LIBRARIES\})
|
||||
find_package(Bullet REQUIRED COMPONENTS BulletCollision LinearMath)
|
||||
endif()
|
||||
string(REGEX MATCHALL \"((optimized|debug);)?[^;]*(BulletCollision|LinearMath)[^;]*\" BULLET_LIBRARIES \"$\{BULLET_LIBRARIES\}\")
|
||||
|
||||
add_executable(checkbullet checkbullet.cpp)
|
||||
target_compile_definitions(checkbullet PUBLIC BT_USE_DOUBLE_PRECISION)
|
||||
target_include_directories(checkbullet PUBLIC \$\{BULLET_INCLUDE_DIRS\})
|
||||
target_link_libraries(checkbullet \$\{BULLET_LIBRARIES\})
|
||||
")
|
||||
|
||||
if (DEFINED BULLET_ROOT)
|
||||
|
|
|
@ -1,67 +0,0 @@
|
|||
if (UNIX)
|
||||
|
||||
if (APPLE)
|
||||
|
||||
set(CMAKE_OS_NAME "OSX" CACHE STRING "Operating system name" FORCE)
|
||||
|
||||
else (APPLE)
|
||||
|
||||
## Check for Debian GNU/Linux ________________
|
||||
|
||||
find_file(DEBIAN_FOUND debian_version debconf.conf
|
||||
PATHS /etc
|
||||
)
|
||||
if (DEBIAN_FOUND)
|
||||
set(CMAKE_OS_NAME "Debian" CACHE STRING "Operating system name" FORCE)
|
||||
endif (DEBIAN_FOUND)
|
||||
|
||||
## Check for Fedora _________________________
|
||||
|
||||
find_file(FEDORA_FOUND fedora-release
|
||||
PATHS /etc
|
||||
)
|
||||
if (FEDORA_FOUND)
|
||||
set(CMAKE_OS_NAME "Fedora" CACHE STRING "Operating system name" FORCE)
|
||||
endif (FEDORA_FOUND)
|
||||
|
||||
## Check for RedHat _________________________
|
||||
|
||||
find_file(REDHAT_FOUND redhat-release inittab.RH
|
||||
PATHS /etc
|
||||
)
|
||||
if (REDHAT_FOUND)
|
||||
set(CMAKE_OS_NAME "RedHat" CACHE STRING "Operating system name" FORCE)
|
||||
endif (REDHAT_FOUND)
|
||||
|
||||
## Extra check for Ubuntu ____________________
|
||||
|
||||
if (DEBIAN_FOUND)
|
||||
|
||||
## At its core Ubuntu is a Debian system, with
|
||||
## a slightly altered configuration; hence from
|
||||
## a first superficial inspection a system will
|
||||
## be considered as Debian, which signifies an
|
||||
## extra check is required.
|
||||
|
||||
find_file(UBUNTU_EXTRA legal issue
|
||||
PATHS /etc
|
||||
)
|
||||
|
||||
if (UBUNTU_EXTRA)
|
||||
## Scan contents of file
|
||||
file(STRINGS ${UBUNTU_EXTRA} UBUNTU_FOUND
|
||||
REGEX Ubuntu
|
||||
)
|
||||
## Check result of string search
|
||||
if (UBUNTU_FOUND)
|
||||
set(CMAKE_OS_NAME "Ubuntu" CACHE STRING "Operating system name" FORCE)
|
||||
set(DEBIAN_FOUND FALSE)
|
||||
endif (UBUNTU_FOUND)
|
||||
|
||||
endif (UBUNTU_EXTRA)
|
||||
|
||||
endif (DEBIAN_FOUND)
|
||||
|
||||
endif (APPLE)
|
||||
|
||||
endif (UNIX)
|
Loading…
Add table
Add a link
Reference in a new issue