summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt92
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})