1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
libcamera_sources = files([
'buffer.cpp',
'camera.cpp',
'camera_manager.cpp',
'camera_sensor.cpp',
'device_enumerator.cpp',
'device_enumerator_sysfs.cpp',
'event_dispatcher.cpp',
'event_dispatcher_poll.cpp',
'event_notifier.cpp',
'formats.cpp',
'geometry.cpp',
'ipa_interface.cpp',
'ipa_module.cpp',
'log.cpp',
'media_device.cpp',
'media_object.cpp',
'object.cpp',
'pipeline_handler.cpp',
'request.cpp',
'signal.cpp',
'stream.cpp',
'timer.cpp',
'utils.cpp',
'v4l2_device.cpp',
'v4l2_subdevice.cpp',
])
libcamera_headers = files([
'include/camera_sensor.h',
'include/device_enumerator.h',
'include/device_enumerator_sysfs.h',
'include/device_enumerator_udev.h',
'include/event_dispatcher_poll.h',
'include/formats.h',
'include/ipa_module.h',
'include/log.h',
'include/media_device.h',
'include/media_object.h',
'include/pipeline_handler.h',
'include/utils.h',
'include/v4l2_device.h',
'include/v4l2_subdevice.h',
])
libcamera_internal_includes = include_directories('include')
includes = [
libcamera_includes,
libcamera_internal_includes,
]
subdir('pipeline')
libudev = dependency('libudev', required : false)
if libudev.found()
config_h.set('HAVE_LIBUDEV', 1)
libcamera_sources += files([
'device_enumerator_udev.cpp',
])
endif
libcamera = shared_library('camera',
libcamera_sources,
install : true,
include_directories : includes,
dependencies : libudev,
link_args : '-ldl')
libcamera_dep = declare_dependency(sources : [libcamera_api, libcamera_h],
include_directories : libcamera_includes,
link_with : libcamera)
|