cmake作成規則のまとめ
cmake作成規則
cmake_minimum_required(VERSION 2.8)
#
project(XXX)
# Release Debug , Release: -O3 -DNDEBUG, Debug: -g
SET(CMAKE_BUILD_TYPE Release)
#
# CMAKE_C_FLAGS: CFLAGS
# CMAKE_CXX_FLAGS: CxxFLAGS
# CMAKE_EXE_LINKER_FLAGS: LDFLAGS
SET(CMAKE_CXX_FLAGS "-std=c++11 -O2 -mfloat-abi=hard -mfpu=neon")
SET(INCLUDE_PATH . ../ /usr/include/eigen3 /srv/boost_1_63_0 )
SET(LINK_PATH /srv/boost_1_63_0/stage/lib )
# rpath
# SET(CMAKE_INSTALL_RPATH .)
# -I
target_include_directories(Camera $(INCLUDE_PATH))
# -L
link_directories($(Link_PATH)$)
# -l
target_link_libraries(Camera PRIVATE libusb)
#
add_executable(hello $(SRC_LIST))
# ,SHARED ,STATIC
add_library(usb STATIC ${LIB_SRC_LIST})
# src CMakeLists.txt src
# bin, lib bin,lib. build/bin build/lib
add_subdirectories(src_dir, bin_dir)