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) project($(PROJECT_NAME_STR)) MESSAGE(STATUS "Project : OpenVG Library") SET(DEFAULT_DEV_INSTALL_DIR /usr/local) 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}/src) INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include) # Set up install permissions for file, directories and binaries. # !!! Note that these variables are used by the child cmake files so these # variables must be set before the add_subdirectories() commands below # File permissions (664) set(LIB_FPERMS PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ GROUP_WRITE WORLD_READ) #set(CMAKE_CXX_FLAGS "-O3 -mcpu=cortex-a15 -mfpu=neon-vfpv4 -ftree-vectorize -funsafe-math-optimizations -mfloat-abi=hard" CACHE STRING "" FORCE) set(CMAKE_CXX_FLAGS "-g -std=c++11 -mcpu=cortex-a15 -mfpu=neon-vfpv4 -ftree-vectorize -funsafe-math-optimizations" CACHE STRING "" FORCE) set(CMAKE_C_FLAGS "-g -mcpu=cortex-a15 -mfpu=neon-vfpv4 -ftree-vectorize -funsafe-math-optimizations" CACHE STRING "" FORCE) # set(CMAKE_CXX_FLAGS "-g -O3 -std=c++11 -mcpu=cortex-a15 -mfpu=neon-vfpv4 -ftree-vectorize -funsafe-math-optimizations" CACHE STRING "" FORCE) #LINK_DIRECTORIES(${PROJECT_SOURCE_DIR}/src) set(VG_SOURCEFILES src/es/esShader.c src/es/esShapes.c src/es/esTransform.c src/es/esUtil.c src/vg/Math.cpp src/vg/Image.cpp src/vg/Context.cpp src/vg/Font.cpp src/vg/Path.cpp src/vg/PixelPipe.cpp src/vg/Rasterizer.cpp src/vg/Api.cpp src/vg/EGLAddOn.cpp ) set(VGU_SOURCEFILES src/vgu/VGU.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}) install(TARGETS ${VG_LIBRARY_NAME_STR} LIBRARY DESTINATION lib ${LIB_FPERMS}) install(TARGETS ${VGU_LIBRARY_NAME_STR} LIBRARY DESTINATION lib ${LIB_FPERMS})