aboutsummaryrefslogtreecommitdiff
path: root/src/platform/graphics/cairo/CMakeLists.txt
blob: addf07c9f8da37483c5513f0f58e2a700da4a4fa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
if (UNIX)
	find_library(LIB_CAIRO cairo REQUIRED)
	find_library(LIB_PANGO NAMES pango pango-1.0 REQUIRED)
	find_path(GLIB_HEADER_DIR NAMES glib.h PATH_SUFFIXES glib glib-2.0 REQUIRED)
	find_path(GLIBCONFIG_HEADER_DIR NAMES glibconfig.h HINTS /usr/lib/${CMAKE_LIBRARY_ARCHITECTURE} PATH_SUFFIXES glib glib/include glib-2.0 glib-2.0/include REQUIRED)
	find_path(HARFBUZZ_HEADER_DIR NAMES hb.h PATH_SUFFIXES harfbuzz REQUIRED)
	find_path(PANGO_HEADER_DIR NAMES pango PATH_SUFFIXES pango-1.0 REQUIRED)
	
	add_library(CruPlatformGraphicsCairo SHARED
	    Base.cpp
		CairoBrush.cpp
		CairoGeometry.cpp
		CairoGraphicsFactory.cpp
		CairoResource.cpp
		PangoFont.cpp
		PangoTextLayout.cpp
	)
	target_compile_definitions(CruPlatformGraphicsCairo PRIVATE CRU_PLATFORM_GRAPHICS_CAIRO_EXPORT_API)
	target_link_libraries(CruPlatformGraphicsCairo PUBLIC CruPlatformGraphics PUBLIC ${LIB_CAIRO} ${LIB_PANGO})
	target_include_directories(CruPlatformGraphicsCairo PUBLIC ${GLIB_HEADER_DIR} ${GLIBCONFIG_HEADER_DIR} ${HARFBUZZ_HEADER_DIR} ${PANGO_HEADER_DIR})
endif()