74 lines
2.5 KiB
Meson
74 lines
2.5 KiB
Meson
project('megapixels', 'c')
|
|
gnome = import('gnome')
|
|
gtkdep = dependency('gtk+-3.0')
|
|
tiff = dependency('libtiff-4')
|
|
zbar = dependency('zbar')
|
|
threads = dependency('threads')
|
|
|
|
cc = meson.get_compiler('c')
|
|
libm = cc.find_library('m', required: false)
|
|
|
|
resources = gnome.compile_resources('megapixels-resources', 'org.postmarketos.Megapixels.gresource.xml')
|
|
|
|
conf = configuration_data()
|
|
conf.set_quoted('DATADIR', join_paths(get_option('prefix'), get_option('datadir')))
|
|
conf.set_quoted('SYSCONFDIR', get_option('sysconfdir'))
|
|
configure_file(
|
|
output: 'config.h',
|
|
configuration: conf )
|
|
|
|
# Define DEBUG for debug builds only (debugoptimized is not included on this one)
|
|
if get_option('buildtype') == 'debug'
|
|
add_global_arguments('-DDEBUG', language: 'c')
|
|
endif
|
|
|
|
# Workaround for libtiff having ABI changes but not changing the internal version number
|
|
if get_option('tiffcfapattern')
|
|
add_global_arguments('-DLIBTIFF_CFA_PATTERN', language: 'c')
|
|
endif
|
|
|
|
executable('megapixels',
|
|
'main.c',
|
|
'ini.c',
|
|
'quickpreview.c',
|
|
'camera.c',
|
|
'device.c',
|
|
'pipeline.c',
|
|
'camera_config.c',
|
|
'io_pipeline.c',
|
|
'process_pipeline.c',
|
|
'zbar_pipeline.c',
|
|
'matrix.c',
|
|
resources,
|
|
dependencies : [gtkdep, libm, tiff, zbar, threads],
|
|
install : true)
|
|
|
|
install_data(['data/org.postmarketos.Megapixels.desktop'],
|
|
install_dir : get_option('datadir') / 'applications')
|
|
|
|
install_data(['data/org.postmarketos.Megapixels.metainfo.xml'],
|
|
install_dir : get_option('datadir') / 'metainfo')
|
|
|
|
install_data('data/org.postmarketos.Megapixels.svg',
|
|
install_dir: join_paths(get_option('datadir'), 'icons/hicolor/scalable/apps')
|
|
)
|
|
|
|
install_data([
|
|
'config/pine64,pinephone-1.0.ini',
|
|
'config/pine64,pinephone-1.1.ini',
|
|
'config/pine64,pinephone-1.2.ini',
|
|
'config/pine64,pinetab.ini',
|
|
],
|
|
install_dir : get_option('datadir') / 'megapixels/config/')
|
|
|
|
install_data(['postprocess.sh'],
|
|
install_dir : get_option('datadir') / 'megapixels/',
|
|
install_mode: 'rwxr-xr-x')
|
|
|
|
# Tools
|
|
executable('megapixels-list-devices', 'tools/list_devices.c', 'device.c', dependencies: [gtkdep], install: true)
|
|
executable('megapixels-camera-test', 'tools/camera_test.c', 'camera.c', 'device.c', dependencies: [gtkdep], install: true)
|
|
|
|
test_quickpreview = executable('test_quickpreview', 'tests/test_quickpreview.c', 'quickpreview.c', 'camera.c', dependencies: [gtkdep])
|
|
test('quickpreview', test_quickpreview)
|