0% found this document useful (0 votes)
39 views2 pages

C Make Lists

Uploaded by

toantq
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views2 pages

C Make Lists

Uploaded by

toantq
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

cmake_minimum_required(VERSION 3.

5)
project(adas_sal LANGUAGES CXX C)

if(POLICY CMP0069)
set(CMAKE_POLICY_DEFAULT_CMP0069 NEW)
cmake_policy(SET CMP0069 NEW)
endif()

list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules)

set(PLATFORM_ROOT ${CMAKE_CURRENT_SOURCE_DIR})
set(PLATFORM_BUILD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/build)
set(PLATFORM_SOURCE_DIR ${PLATFORM_ROOT}/src)

if (NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE "Release" CACHE STRING "" FORCE)
endif()

execute_process(COMMAND arch OUTPUT_VARIABLE ARCH)


STRING(REPLACE "\n" "" ARCH ${ARCH})
set(ADAS_EXT_LIB_PATH /opt/adas/3rdparty)

set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
set(CMAKE_ASM_FLAGS "${CMAKE_C_FLAGS} -x assembler-with-cpp")
option(USE_GCOV "Create a GCov-enabled build." ON)
if (USE_GCOV)
set(GCC_COVERAGE_COMPILE_FLAGS "-fprofile-arcs -ftest-coverage")
set(GCC_COVERAGE_LINK_FLAGS "-lgcov")
endif()
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${GCC_COVERAGE_COMPILE_FLAGS}" )
set( CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${GCC_COVERAGE_LINK_FLAGS}"
)

if (CMAKE_BUILD_TYPE MATCHES Release)


set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -s -Wall -Werror")
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -s -Wall -Werror")
else()
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -Wall -Werror")
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Wall -Werror")
endif()

option(VERBOSE "Enable verbose output?" OFF)

# Hide messages from Check*.cmake (e.g. CheckCSourceCompiles)


if(NOT VERBOSE)
set(CMAKE_REQUIRED_QUIET ON)
endif()

include(cmake/scripts/setup.cmake)

option(WITH_CAMERA "include camera sensor support" ON)


option(WITH_GPS "include gps sensor support" ON)
option(WITH_IMU "include imu sensor support" ON)
option(WITH_CAN "include CAN bus support" ON)
option(WITH_RADAR "include radar sensor support" ON)
option(WITH_LIDAR "include lidar sensor support" ON)
option(WITH_ULTRASOUND "include ultrasound sensor support" ON)
option(WITH_DEVICE "include misc device support" ON)

if (UNIX)
option(WITH_V4L2 "include V4L2 camera sensor " OFF)
option(WITH_SOCKET_CAN "include socket CAN" OFF)
option(WITH_KVASER "include Kvaser CAN" OFF)
option(WITH_NOVATEL "include Novatel" ON)
endif()

find_package(GLOG REQUIRED)
find_package(GFLAGS REQUIRED)
find_package(lodepng REQUIRED)
find_package(CANLib REQUIRED)
find_package(Boost 1.65 REQUIRED atomic system filesystem program_options thread
serialization python)
find_package(FFmpeg REQUIRED)

SET(CMAKE_SKIP_BUILD_RPATH FALSE)
SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_BUILD_TYPE}/lib")
SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
LIST(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/$
{CMAKE_BUILD_TYPE}/lib" isSystemDir)
IF("${isSystemDir}" STREQUAL "-1")
SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_BUILD_TYPE}/lib")
ENDIF("${isSystemDir}" STREQUAL "-1")

add_subdirectory(src)

You might also like