summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-09-26 18:59:27 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-09-28 20:09:39 +0300
commitff6c50974a2059649f4c96a96d41a50d7eb7a780 (patch)
tree564dfd36aaa7141601355af121fd14ac0a5a272f
parente00149fccb0a16b445359c8037a6f4cfd484a10f (diff)
libcamera: Fix base and ipa include dir
All libcamera headers are meant to be installed in ${prefix}/include/libcamera/libcamera, with pkgconfig specifying the include directory as `-I ${prefix}/include/libcamera`. Applications then include the headers with `#include <libcamera/camera.h>`. The base and ipa headers are meant to be installed in subdirectories of the libcamera headers directory, but are mistakenly installed one level too high, in ${prefix}/include/libcamera. This leads to compilation failures when including the base or ipa header. Fix this by setting the meson libcamera_include_dir variable to the libcamera headers directory. All other header paths are derived from that variable and are now correct. Reported-by: Dorota Czaplejewicz <dorota.czaplejewicz@puri.sm> Bug: https://bugs.libcamera.org/show_bug.cgi?id=79 Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
-rw-r--r--include/libcamera/meson.build14
-rw-r--r--include/meson.build2
2 files changed, 7 insertions, 9 deletions
diff --git a/include/libcamera/meson.build b/include/libcamera/meson.build
index 5b25ef84..567782a6 100644
--- a/include/libcamera/meson.build
+++ b/include/libcamera/meson.build
@@ -1,5 +1,7 @@
# SPDX-License-Identifier: CC0-1.0
+libcamera_include_dir = 'libcamera' / 'libcamera'
+
libcamera_public_headers = files([
'camera.h',
'camera_manager.h',
@@ -16,14 +18,12 @@ libcamera_public_headers = files([
'transform.h',
])
-include_dir = libcamera_include_dir / 'libcamera'
-
subdir('base')
subdir('internal')
subdir('ipa')
install_headers(libcamera_public_headers,
- subdir : include_dir)
+ subdir : libcamera_include_dir)
#
# Generate headers from templates.
@@ -44,7 +44,7 @@ foreach header : control_source_files
output : header + '.h',
command : [gen_controls, '-o', '@OUTPUT@', '@INPUT@'],
install : true,
- install_dir : get_option('includedir') / include_dir)
+ install_dir : get_option('includedir') / libcamera_include_dir)
endforeach
libcamera_public_headers += control_headers
@@ -59,7 +59,7 @@ formats_h = custom_target('formats_h',
output : 'formats.h',
command : [gen_formats, '-o', '@OUTPUT@', '@INPUT@'],
install : true,
- install_dir : get_option('includedir') / include_dir)
+ install_dir : get_option('includedir') / libcamera_include_dir)
libcamera_public_headers += formats_h
# libcamera.h
@@ -68,7 +68,7 @@ libcamera_h = custom_target('gen-header',
output : 'libcamera.h',
command : [gen_header, meson.current_source_dir(), '@OUTPUT@'],
install : true,
- install_dir : get_option('includedir') / include_dir)
+ install_dir : get_option('includedir') / libcamera_include_dir)
libcamera_public_headers += libcamera_h
@@ -82,4 +82,4 @@ libcamera_version_config.set('LIBCAMERA_VERSION_PATCH', version[2])
configure_file(input : 'version.h.in',
output : 'version.h',
configuration : libcamera_version_config,
- install_dir : get_option('includedir') / include_dir)
+ install_dir : get_option('includedir') / libcamera_include_dir)
diff --git a/include/meson.build b/include/meson.build
index 2ac9a3a0..27ce2f41 100644
--- a/include/meson.build
+++ b/include/meson.build
@@ -1,6 +1,4 @@
# SPDX-License-Identifier: CC0-1.0
-libcamera_include_dir = 'libcamera'
-
subdir('android')
subdir('libcamera')