From a8113fb3a89984cc65d51436480cee45b60543e8 Mon Sep 17 00:00:00 2001 From: Laurent Pinchart Date: Thu, 20 Oct 2022 01:25:45 +0300 Subject: apps: Share common source between applications Multiple source files in the src/apps/cam/ directory are used by cam, qcam and lc-compliance. They are compiled separately for each application. Move them to a new src/apps/common/ directory and compile them in a static library to decrease the number of compilation operations. Signed-off-by: Laurent Pinchart Reviewed-by: Umang Jain Reviewed-by: Kieran Bingham --- src/apps/qcam/format_converter.cpp | 2 +- src/apps/qcam/main.cpp | 5 +++-- src/apps/qcam/main_window.cpp | 4 ++-- src/apps/qcam/main_window.h | 2 +- src/apps/qcam/meson.build | 13 ++----------- src/apps/qcam/viewfinder_gl.cpp | 2 +- src/apps/qcam/viewfinder_qt.cpp | 2 +- 7 files changed, 11 insertions(+), 19 deletions(-) (limited to 'src/apps/qcam') diff --git a/src/apps/qcam/format_converter.cpp b/src/apps/qcam/format_converter.cpp index 9331da0c..de76b32c 100644 --- a/src/apps/qcam/format_converter.cpp +++ b/src/apps/qcam/format_converter.cpp @@ -14,7 +14,7 @@ #include -#include "../cam/image.h" +#include "../common/image.h" #define RGBSHIFT 8 #ifndef MAX diff --git a/src/apps/qcam/main.cpp b/src/apps/qcam/main.cpp index d3f01a85..36cb93a5 100644 --- a/src/apps/qcam/main.cpp +++ b/src/apps/qcam/main.cpp @@ -13,8 +13,9 @@ #include -#include "../cam/options.h" -#include "../cam/stream_options.h" +#include "../common/options.h" +#include "../common/stream_options.h" + #include "main_window.h" #include "message_handler.h" diff --git a/src/apps/qcam/main_window.cpp b/src/apps/qcam/main_window.cpp index f553ccb0..fb2db4aa 100644 --- a/src/apps/qcam/main_window.cpp +++ b/src/apps/qcam/main_window.cpp @@ -26,8 +26,8 @@ #include #include -#include "../cam/dng_writer.h" -#include "../cam/image.h" +#include "../common/dng_writer.h" +#include "../common/image.h" #include "cam_select_dialog.h" #ifndef QT_NO_OPENGL diff --git a/src/apps/qcam/main_window.h b/src/apps/qcam/main_window.h index 95b64124..2e3e1b5c 100644 --- a/src/apps/qcam/main_window.h +++ b/src/apps/qcam/main_window.h @@ -27,7 +27,7 @@ #include #include -#include "../cam/stream_options.h" +#include "../common/stream_options.h" #include "viewfinder.h" diff --git a/src/apps/qcam/meson.build b/src/apps/qcam/meson.build index e298101e..eb0712d9 100644 --- a/src/apps/qcam/meson.build +++ b/src/apps/qcam/meson.build @@ -15,9 +15,6 @@ endif qcam_enabled = true qcam_sources = files([ - '../cam/image.cpp', - '../cam/options.cpp', - '../cam/stream_options.cpp', 'cam_select_dialog.cpp', 'format_converter.cpp', 'main.cpp', @@ -36,14 +33,7 @@ qcam_resources = files([ 'assets/feathericons/feathericons.qrc', ]) -qt5_cpp_args = ['-DQT_NO_KEYWORDS'] - -if libtiff.found() - qt5_cpp_args += ['-DHAVE_TIFF'] - qcam_sources += files([ - '../cam/dng_writer.cpp', - ]) -endif +qt5_cpp_args = [apps_cpp_args, '-DQT_NO_KEYWORDS'] if cxx.has_header_symbol('QOpenGLWidget', 'QOpenGLWidget', dependencies : qt5_dep, args : '-fPIC') @@ -73,6 +63,7 @@ resources = qt5.preprocess(moc_headers: qcam_moc_headers, qcam = executable('qcam', qcam_sources, resources, install : true, + link_with : apps_lib, dependencies : [ libatomic, libcamera_public, diff --git a/src/apps/qcam/viewfinder_gl.cpp b/src/apps/qcam/viewfinder_gl.cpp index 38ddad58..f83b99ad 100644 --- a/src/apps/qcam/viewfinder_gl.cpp +++ b/src/apps/qcam/viewfinder_gl.cpp @@ -16,7 +16,7 @@ #include -#include "../cam/image.h" +#include "../common/image.h" static const QList supportedFormats{ /* YUV - packed (single plane) */ diff --git a/src/apps/qcam/viewfinder_qt.cpp b/src/apps/qcam/viewfinder_qt.cpp index c20fd6bc..a7482bea 100644 --- a/src/apps/qcam/viewfinder_qt.cpp +++ b/src/apps/qcam/viewfinder_qt.cpp @@ -20,7 +20,7 @@ #include #include -#include "../cam/image.h" +#include "../common/image.h" #include "format_converter.h" -- cgit v1.2.1