mandelbrot/CMakeLists.txt

37 lines
1.3 KiB
CMake
Raw Normal View History

2019-06-04 22:59:59 +02:00
project(mandelbrot)
2019-06-05 00:09:56 +02:00
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
2019-06-04 22:59:59 +02:00
cmake_minimum_required(VERSION 2.8)
find_package(PkgConfig REQUIRED)
pkg_search_module(GLIB REQUIRED glib-2.0)
pkg_check_modules(GTK3 REQUIRED gtk+-3.0)
pkg_check_modules(CAIRO REQUIRED cairo)
2019-06-05 00:09:56 +02:00
find_package(OpenCL REQUIRED)
2019-06-04 22:59:59 +02:00
add_subdirectory(glade)
2019-06-05 00:09:56 +02:00
include_directories(${GLIB_INCLUDE_DIRS} ${GTK3_INCLUDE_DIRS} ${CAIRO_INCLUDE_DIRS} ${OPENCL_INCLUDE_DIRS})
2019-06-04 22:59:59 +02:00
link_directories(${GLIB_LINK_DIRS} ${GTK3_LINK_DIRS} ${CAIRO_LINK_DIRS})
add_definitions(${GLIB2_CFLAGS_OTHER})
2019-06-05 00:09:56 +02:00
configure_file("mandelbrot.cl" "cl_kernels/mandelbrot.cl" COPYONLY)
2019-06-04 22:59:59 +02:00
aux_source_directory("src" SOURCES)
add_compile_options(-Wall)
add_executable(${PROJECT_NAME} ${SOURCES} ${CMAKE_CURRENT_BINARY_DIR}/glade/resources.c)
add_dependencies(${PROJECT_NAME} glib-resources)
SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_BINARY_DIR}/glade/resources.c PROPERTIES GENERATED 1)
2019-06-05 00:09:56 +02:00
target_link_libraries(${PROJECT_NAME} ${GLIB_LDFLAGS} ${GTK3_LDFLAGS} ${CAIRO_LDFLAGS} m pthread ${OPENCL_LIBRARIES})
2019-06-04 22:59:59 +02:00
install (TARGETS ${PROJECT_NAME} DESTINATION bin)
2019-06-05 00:09:56 +02:00
message(STATUS "OpenCL found: ${OPENCL_FOUND}")
message(STATUS "OpenCL includes: ${OPENCL_INCLUDE_DIRS}")
message(STATUS "OpenCL CXX includes: ${OPENCL_HAS_CPP_BINDINGS}")
message(STATUS "OpenCL libraries: ${OPENCL_LIBRARIES}")