diff options
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..84db850 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,92 @@ +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}) |