cmake_minimum_required(VERSION 2.8.3) project(glviewer) include(FindPkgConfig) find_package(autoware_build_flags REQUIRED) find_package(catkin REQUIRED COMPONENTS roscpp ) find_package(Eigen3 QUIET) if(NOT EIGEN3_FOUND) # Fallback to cmake_modules find_package(cmake_modules REQUIRED) find_package(Eigen REQUIRED) set(EIGEN3_INCLUDE_DIRS ${EIGEN_INCLUDE_DIRS}) set(EIGEN3_LIBRARIES ${EIGEN_LIBRARIES}) # Not strictly necessary as Eigen is head only # Possibly map additional variables to the EIGEN3_ prefix. else() set(EIGEN3_INCLUDE_DIRS ${EIGEN3_INCLUDE_DIR}) endif() set(CMAKE_AUTOMOC ON) #set(CMAKE_AUTOUIC ON) #set(CMAKE_AUTORCC ON) set(CMAKE_INCLUDE_CURRENT_DIR ON) SET(CMAKE_CXX_FLAGS "-O2 -g -Wall ${CMAKE_CXX_FLAGS}") find_package(Qt5Core REQUIRED) find_package(Qt5Widgets REQUIRED) find_package(Qt5OpenGL REQUIRED) find_package(Qt5Gui REQUIRED) find_package(OpenGL REQUIRED) catkin_package( INCLUDE_DIRS include LIBRARIES glviewer ) if("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64" OR "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "i686" OR "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "aarch64") include_directories( include ${catkin_INCLUDE_DIRS} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${EIGEN3_INCLUDE_DIRS} ) qt5_wrap_cpp(glviewer_SRC include/glviewer/glviewer.h ) add_library(glviewer GLViewer/glviewer.cpp ${glviewer_SRC} ) target_link_libraries(glviewer ${catkin_LIBRARIES} ${EIGEN3_LIBRARIES} Qt5::Core Qt5::Widgets Qt5::OpenGL Qt5::Gui ${OPENGL_LIBRARIES} ) install(DIRECTORY include/${PROJECT_NAME}/ DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} FILES_MATCHING PATTERN "*.h" ) install(TARGETS glviewer ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} ) endif()