1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
7 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
8 SET(EXEC_PREFIX "\${prefix}")
9 SET(INCLUDEDIR "\${prefix}/include")
11 SET(VERSION "${VERSION_MAJOR}.1.0")
13 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR})
15 INCLUDE(FindPkgConfig)
16 pkg_check_modules(pkgs REQUIRED x11 xext xv xdamage libdrm libtbm libdri2 xrandr)
18 FOREACH(flag ${pkgs_CFLAGS})
19 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
22 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden")
23 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g")
24 #SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -finstrument-functions")
26 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
28 ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
29 ADD_DEFINITIONS("-DFACTORYFS=\"${PREFIX}\"")
30 #ADD_DEFINITIONS("-DDEBUG")
32 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS})
33 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
34 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION ${VERSION_MAJOR})
35 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES VERSION ${VERSION})
37 CONFIGURE_FILE(${PROJECT_NAME}.pc.in ${PROJECT_NAME}.pc @ONLY)
39 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
40 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
42 FOREACH(hfile ${HEADERS})
43 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${hfile} DESTINATION include)
46 #ADD_SUBDIRECTORY(test)