cmake_minimum_required(VERSION 2.8) # Project Options: set(PROJECT_NAME_STR OpenVG) set(VG_LIBRARY_NAME_STR ${PROJECT_NAME_STR}) set(VGU_LIBRARY_NAME_STR ${PROJECT_NAME_STR}U) set(MINIEGL_LIBRARY_NAME_STR MiniEGL) project($(PROJECT_NAME_STR)) MESSAGE(STATUS "Project : Khronos OpenVG reference implement Library") SET(DEFAULT_DEV_INSTALL_DIR /opt/openvg) MESSAGE(STATUS "Install path is ${CMAKE_INSTALL_PREFIX}") # choose target if(TARGET) if(${TARGET} STREQUAL "arm") message ("Building for ${TARGET} with fb\n") set(EGL_LIB_PATH "\"/usr/lib/libEGL.so\"") # INCLUDE_DIRECTORIES(/root/Mali_OpenGL_ES_SDK_v2.4.0/inc/EGL) # INCLUDE_DIRECTORIES(/root/Mali_OpenGL_ES_SDK_v2.4.0/inc) elseif(${TARGET} STREQUAL "x86") message ("Building for ${TARGET}\n") set(EGL_LIB_PATH "\"/usr/lib/x86_64-linux-gnu/mesa-egl/libEGL.so\"") INCLUDE_DIRECTORIES(/usr/include/EGL) set(CMAKE_C_FLAGS "-DMESA_EGL_NO_X11_HEADERS") set(CMAKE_CXX_FLAGS "-DMESA_EGL_NO_X11_HEADERS -fpermissive") else() MESSAGE(FATAL_ERROR "Target ${TARGET} is not valid. Choices are \"x86\" and \"arm\".") endif() else(TARGET) message ("TARGET was not set. Choices are \"x86\" and \"arm\".") message ("Example usage: cmake .. -DTARGET=arm") message ("Now using [arm] as default.\n") set (TARGET "arm") message ("Building for ${TARGET}\n") set(EGL_LIB_PATH "\"/usr/lib/libEGL.so\"") endif(TARGET) message ("EGL PATH:${EGL_LIB_PATH} \n") add_definitions( -DEGLLIB=${EGL_LIB_PATH} ) message ("PROJECT_SOURCE_DIR=${PROJECT_SOURCE_DIR}\n") INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/ri/src) INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/ri/include) INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/ri/include/EGL) INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/ri/include/VG) #LINK_DIRECTORIES(${PROJECT_SOURCE_DIR}/src) set(VG_SOURCEFILES ri/src/riApi.cpp ri/src/riContext.cpp ri/src/riFont.cpp ri/src/riImage.cpp ri/src/riMath.cpp ri/src/riPath.cpp ri/src/riPixelPipe.cpp ri/src/riRasterizer.cpp ri/src/riVGU.cpp ri/src/riMiniEGL.cpp ) set(VGU_SOURCEFILES ri/src/riVGU.cpp ri/src/riMiniEGL.cpp ) set(MINIEGL_SOURCEFILES ri/src/riMiniEGL.cpp ri/src/linux/riEGLOS.cpp ri/src/riMiniEGL.cpp ) #set(SOURCEFILES ${RI_SOURCES} ri/src/null/riEGLOS.cpp) message ("VG_SOURCEFILES = ${VG_SOURCEFILES}\n") message ("VGU_SOURCEFILES = ${VGU_SOURCEFILES}\n") add_library(${VG_LIBRARY_NAME_STR} SHARED ${VG_SOURCEFILES}) add_library(${VGU_LIBRARY_NAME_STR} SHARED ${VGU_SOURCEFILES}) #target_link_libraries(${PROJECT_NAME_STR}) add_library(${MINIEGL_LIBRARY_NAME_STR} SHARED ${MINIEGL_SOURCEFILES})