demo version
This commit is contained in:
parent
fbb282a801
commit
672d6daa8e
125 changed files with 17918 additions and 1481 deletions
195
demo/camera_client/dependencies/libvisiontransfer/CMakeLists.txt
Normal file
195
demo/camera_client/dependencies/libvisiontransfer/CMakeLists.txt
Normal file
|
@ -0,0 +1,195 @@
|
|||
cmake_minimum_required(VERSION 3.0.0)
|
||||
|
||||
if(COMMAND cmake_policy)
|
||||
cmake_policy(SET CMP0003 NEW)
|
||||
endif(COMMAND cmake_policy)
|
||||
|
||||
MATH(EXPR BITS ${CMAKE_SIZEOF_VOID_P}*8)
|
||||
|
||||
include_directories(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
# Search for PCL for example compilation
|
||||
set(DISABLE_PCL 0 CACHE BOOL "Disables OpenCL example")
|
||||
if(NOT DISABLE_PCL)
|
||||
message(STATUS "looking for PCL")
|
||||
find_package(PCL 1.3 COMPONENTS common io filters)
|
||||
|
||||
if(PCL_FOUND)
|
||||
include_directories(${PCL_INCLUDE_DIRS})
|
||||
link_directories(${PCL_LIBRARY_DIRS})
|
||||
add_definitions(${PCL_DEFINITIONS})
|
||||
else()
|
||||
message(WARNING "Not building PCL example!")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Search for Open3D for example compilation
|
||||
set(DISABLE_OPEN3D 0 CACHE BOOL "Disables Open3D example")
|
||||
if(NOT DISABLE_OPEN3D)
|
||||
# Search for Open3D
|
||||
message(STATUS "looking for Open3D")
|
||||
find_package(Open3D)
|
||||
if(Open3D_FOUND)
|
||||
include_directories(${Open3D_INCLUDE_DIRS})
|
||||
|
||||
# Check Open3D C++ ABI
|
||||
get_property(def TARGET Open3D::Open3D PROPERTY INTERFACE_COMPILE_DEFINITIONS)
|
||||
if(def MATCHES "GLIBCXX_USE_CXX11_ABI=0")
|
||||
set(OPEN3D_CXX11_ABI 0)
|
||||
else()
|
||||
set(OPEN3D_CXX11_ABI 1)
|
||||
endif()
|
||||
|
||||
# Check system C++ ABI
|
||||
include(CheckCXXSourceCompiles)
|
||||
check_cxx_source_compiles("\
|
||||
#include <string>\n\
|
||||
#if _GLIBCXX_USE_CXX11_ABI == 0\n\
|
||||
#error\n\
|
||||
#endif\n\
|
||||
int main(int, char**) {return 0;}"
|
||||
SYSTEM_CXX11_ABI)
|
||||
|
||||
# Check if ABIs match
|
||||
set(OPEN3D_LIB_SUFFIX "")
|
||||
if(NOT MSVC)
|
||||
if(${SYSTEM_CXX11_ABI} AND (NOT ${OPEN3D_CXX11_ABI}))
|
||||
message(WARNING
|
||||
"Open3D was built with old C++ ABI (_GLIBCXX_USE_CXX11_ABI=0). "
|
||||
"A separate version of libvisiontransfer will be built for linking "
|
||||
"against Open3D. Using Open3D in combination with other libraries "
|
||||
"that are built with the more recent C++ ABI will not be possible.")
|
||||
set(BUILD_WITHOUT_CXX11_ABI 1)
|
||||
set(OPEN3D_LIB_SUFFIX "-without-cxx11-abi${LIB_SUFFIX}")
|
||||
endif()
|
||||
endif()
|
||||
else()
|
||||
message(WARNING "Not building Open3D example!")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Search for OpenCV for example compilation
|
||||
set(DISABLE_OPENCV 0 CACHE BOOL "Disables OpenCV example")
|
||||
if(NOT DISABLE_OPENCV)
|
||||
message(STATUS "looking for OpenCV")
|
||||
find_package(OpenCV)
|
||||
if(OpenCV_FOUND)
|
||||
include_directories(${OpenCV_INCLUDE_DIRS})
|
||||
else()
|
||||
message(WARNING "Not building OpenCV example!")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
set(DISABLE_NATIVE 0 CACHE BOOL "Disables native architecture compile flag")
|
||||
if(NOT WIN32 OR MINGW)
|
||||
include(CheckCXXCompilerFlag)
|
||||
|
||||
# Some useful flags
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -Wall")
|
||||
CHECK_CXX_COMPILER_FLAG("-march=native" NATIVE_ARCH_SUPPORT)
|
||||
if(NATIVE_ARCH_SUPPORT AND NOT DISABLE_NATIVE)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native")
|
||||
endif()
|
||||
|
||||
# Activate c++11 or newer support
|
||||
CHECK_CXX_COMPILER_FLAG("-std=c++14" COMPILER_SUPPORTS_CXX14)
|
||||
CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)
|
||||
CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X)
|
||||
if(COMPILER_SUPPORTS_CXX14)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14")
|
||||
elseif(COMPILER_SUPPORTS_CXX11)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
|
||||
elseif(COMPILER_SUPPORTS_CXX0X)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
|
||||
else()
|
||||
message(WARNING "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. Please use a different C++ compiler.")
|
||||
endif()
|
||||
else()
|
||||
set(CMAKE_DEBUG_POSTFIX "-debug")
|
||||
endif()
|
||||
|
||||
# Search for python3
|
||||
set(DISABLE_PYTHON 0 CACHE BOOL "Disables python library")
|
||||
if(NOT DISABLE_PYTHON)
|
||||
message(STATUS "looking for python3")
|
||||
|
||||
if(WIN32 AND NOT MINGW)
|
||||
# Make sure we use the Windows python, not a matching one from msys!
|
||||
set(USERPROFILE $ENV{USERPROFILE})
|
||||
if(${BITS} EQUAL 32)
|
||||
file(GLOB Python3_EXECUTABLE
|
||||
"${USERPROFILE}/AppData/Local/Programs/Python/Python3?-32/python.exe"
|
||||
"${USERPROFILE}/AppData/Local/Programs/Python/Python3??-32/python.exe")
|
||||
else()
|
||||
file(GLOB Python3_EXECUTABLE
|
||||
"${USERPROFILE}/AppData/Local/Programs/Python/Python3?/python.exe"
|
||||
"${USERPROFILE}/AppData/Local/Programs/Python/Python3??/python.exe")
|
||||
endif()
|
||||
|
||||
message(WARNING "Windows build - assuming Python 3 is \"${Python3_EXECUTABLE}\".")
|
||||
else()
|
||||
set(Python3_EXECUTABLE "python3")
|
||||
# This is for CMake 3.12 and up; making sure we get python3
|
||||
find_package (Python3 COMPONENTS Interpreter)
|
||||
if(NOT Python3_FOUND)
|
||||
find_package (Python3 COMPONENTS Interpreter HINTS "/mingw64")
|
||||
endif()
|
||||
if(NOT Python3_FOUND)
|
||||
# We don't give up just yet
|
||||
message(WARNING "Failed finding python3 with FindPython3. Assuming python3 is \"${Python3_EXECUTABLE}\"")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Search for cython
|
||||
message(STATUS "looking for Cython")
|
||||
execute_process(COMMAND "${Python3_EXECUTABLE}" "-c"
|
||||
"\
|
||||
from distutils.core import setup\n\
|
||||
from distutils.extension import Extension\n\
|
||||
from Cython.Build import cythonize\n\
|
||||
print('OK')\
|
||||
"
|
||||
OUTPUT_VARIABLE cython_output
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
if("${cython_output}" STREQUAL "OK")
|
||||
set(BUILD_CYTHON 1)
|
||||
else()
|
||||
message(WARNING "${cython_output}")
|
||||
message(WARNING "Cython not found! Not building python library!")
|
||||
endif()
|
||||
|
||||
# Search for python-wheel
|
||||
message(STATUS "looking for Wheel")
|
||||
execute_process(COMMAND "${Python3_EXECUTABLE}" "-c"
|
||||
"\
|
||||
import wheel\n\
|
||||
print('OK')\
|
||||
"
|
||||
OUTPUT_VARIABLE wheel_output
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
if("${wheel_output}" STREQUAL "OK")
|
||||
set(BUILD_WHEEL 1)
|
||||
else()
|
||||
message(WARNING "${wheel_output}")
|
||||
message(WARNING "Wheel not found! Not building python wheel packages!")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(NOT CMAKE_SUBMODULE)
|
||||
#set the default path for built libraries to the "lib" directory
|
||||
if(NOT WIN32 OR MINGW)
|
||||
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)
|
||||
else()
|
||||
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib${BITS})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
message(STATUS "CXX FLAGS: ${CMAKE_CXX_FLAGS}")
|
||||
|
||||
add_subdirectory(visiontransfer)
|
||||
add_subdirectory(examples)
|
||||
|
||||
if(BUILD_CYTHON)
|
||||
add_subdirectory(python)
|
||||
endif()
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue