indigo-node
Version:
Indigo nodejs bindings
46 lines (41 loc) • 1.9 kB
Plain Text
cmake_minimum_required(VERSION 2.8)
project(Pixman C)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/../../common/cmake/)
if (USE_SYSTEM_PIXMAN)
find_package(PIXMAN)
if (NOT PIXMAN_FOUND)
MESSAGE(FATAL_ERROR "Cannot find system pixman library")
endif()
endif()
if (NOT PIXMAN_FOUND)
message(STATUS "Using local Pixman library")
set(Pixman_headers_dir ${CMAKE_CURRENT_SOURCE_DIR}/pixman)
include_directories(${Pixman_headers_dir})
add_definitions(-DPACKAGE -DHAVE_PTHREAD_SETSPECIFIC)
file (GLOB Pixman_src "pixman/*.c")
file (GLOB Pixman_headers "pixman/*.h")
list(REMOVE_ITEM Pixman_src ${CMAKE_CURRENT_SOURCE_DIR}/pixman/pixman-arm-neon.c)
list(REMOVE_ITEM Pixman_src ${CMAKE_CURRENT_SOURCE_DIR}/pixman/pixman-arm-simd.c)
list(REMOVE_ITEM Pixman_src ${CMAKE_CURRENT_SOURCE_DIR}/pixman/pixman-mips-dspr2.c)
list(REMOVE_ITEM Pixman_src ${CMAKE_CURRENT_SOURCE_DIR}/pixman/pixman-vmx.c)
list(REMOVE_ITEM Pixman_src ${CMAKE_CURRENT_SOURCE_DIR}/pixman/pixman-mmx.c)
list(REMOVE_ITEM Pixman_src ${CMAKE_CURRENT_SOURCE_DIR}/pixman/pixman-sse2.c)
list(REMOVE_ITEM Pixman_src ${CMAKE_CURRENT_SOURCE_DIR}/pixman/pixman-region.c)
if (APPLE)
list(REMOVE_ITEM Pixman_src ${CMAKE_CURRENT_SOURCE_DIR}/pixman/pixman-timer.c)
endif()
include_directories(${PNG_INCLUDE_DIR})
add_library(pixman STATIC ${Pixman_src} ${Pixman_headers})
if(NOT PNG_FOUND)
target_link_libraries(pixman png)
else()
target_link_libraries(pixman ${PNG_LIBRARIES})
endif()
set_target_properties(pixman PROPERTIES COMPILE_FLAGS "${COMPILE_FLAGS}")
set_property(TARGET pixman PROPERTY FOLDER "third_party")
if (NOT NO_STATIC)
pack_static(pixman)
endif()
else()
set(Pixman_headers_dir ${PIXMAN_INCLUDE_DIRS})
endif()