weston/libweston/color-lcms/meson.build
Leandro Ribeiro 5706d7e5d2 color: add support to the color-management protocol
In this MR we add support to the majority of the interfaces from the
color-management protocol.

That means that we are able to advertise output's images descriptions to
clients, preferred surface images descriptions, and so on. We also
support clients that wants to create ICC-based images descriptions and
set such descriptions for surfaces.

We still don't support the interface to allow clients to create
image descriptions from parameters, but that should be addressed
in the near future.

Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com>
2024-02-14 11:15:35 -03:00

45 lines
1.1 KiB
Meson

build_color_lcms = get_option('color-management-lcms')
config_h.set10('BUILD_COLOR_LCMS', build_color_lcms)
if not build_color_lcms
subdir_done()
endif
if not dep_lcms2.found()
error('color-lcms plugin requires lcms2 which was not found. Or, you can use \'-Dcolor-management-lcms=false\'.')
endif
has_function_cmsGetToneCurveSegment = cc.has_function('cmsGetToneCurveSegment',
dependencies: dep_lcms2)
config_h.set10('HAVE_CMS_GET_TONE_CURVE_SEGMENT',
has_function_cmsGetToneCurveSegment)
srcs_color_lcms = [
color_management_v1_server_protocol_h,
'color-lcms.c',
'color-profile.c',
'color-transform.c',
]
if (has_function_cmsGetToneCurveSegment)
srcs_color_lcms += 'color-curve-segments.c'
endif
deps_color_lcms = [
dep_libm,
dep_libweston_private,
dep_lcms2,
dep_libshared,
]
plugin_color_lcms = shared_library(
'color-lcms',
srcs_color_lcms,
include_directories: common_inc,
dependencies: deps_color_lcms,
name_prefix: '',
install: true,
install_dir: dir_module_libweston
)
env_modmap += 'color-lcms.so=@0@;'.format(plugin_color_lcms.full_path())