From e2c524f7c97598e164adbec4248653d6f21ba857 Mon Sep 17 00:00:00 2001 From: Moritz Martinius Date: Sun, 19 Nov 2023 14:22:48 +0100 Subject: [PATCH] Fix build errors for explicitly using libfmt --- .gitea/workflows/build.yaml | 2 +- README.md | 2 +- meson.build | 3 ++- src/interface/IPrinterDriver.hpp | 1 + src/libusbwrap/UsbDevice.hpp | 4 ++-- src/libusbwrap/interface/IUsbDevice.hpp | 5 +++-- src/libusbwrap/interface/IUsbDeviceFactory.hpp | 3 ++- 7 files changed, 12 insertions(+), 8 deletions(-) diff --git a/.gitea/workflows/build.yaml b/.gitea/workflows/build.yaml index d935825..106c7cb 100644 --- a/.gitea/workflows/build.yaml +++ b/.gitea/workflows/build.yaml @@ -14,7 +14,7 @@ jobs: - name: install meson run: apt-get -yq install meson - name: Install build dependencies - run: apt-get -yq install libusb-1.0-0-dev libspdlog-dev libpango1.0-dev libcairo2-dev gcovr + run: apt-get -yq install libusb-1.0-0-dev libspdlog-dev libfmt-dev libpango1.0-dev libcairo2-dev gcovr - name: setup builddir run: meson setup builddir -Db_coverage=true - name: build all targets diff --git a/README.md b/README.md index b0bfc7c..9af98b5 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ pacman -S libusb spdlog pango cairo meson gcovr Install dependencies on Debian/Ubuntu ``` bash -apt-get install libusb-1.0-0-dev libspdlog-dev libpango1.0-dev libcairo2-dev meson gcovr +apt-get install libusb-1.0-0-dev libspdlog-dev libfmt-dev libpango1.0-dev libcairo2-dev meson gcovr ``` ## Build diff --git a/meson.build b/meson.build index 84a0756..fdc0c4a 100644 --- a/meson.build +++ b/meson.build @@ -6,6 +6,7 @@ project('ptprnt', 'cpp', usb_dep = dependency('libusb-1.0') log_dep = dependency('spdlog') +fmt_dep = dependency('fmt') pangocairo_dep = dependency('pangocairo') # CLI11 @@ -23,7 +24,7 @@ ptprnt_exe = executable( 'ptprnt', 'src/main.cpp', install: true, - dependencies : [usb_dep, log_dep, pangocairo_dep, cli11_dep], + dependencies : [usb_dep, log_dep, fmt_dep, pangocairo_dep, cli11_dep], include_directories: incdir, sources: [ptprnt_srcs], cpp_args : ['-DPROJ_VERSION="'+meson.project_version()+'"'], diff --git a/src/interface/IPrinterDriver.hpp b/src/interface/IPrinterDriver.hpp index 0a0ccda..e90dec1 100644 --- a/src/interface/IPrinterDriver.hpp +++ b/src/interface/IPrinterDriver.hpp @@ -30,6 +30,7 @@ namespace ptprnt { class IPrinterDriver { public: + virtual ~IPrinterDriver() = default; virtual const std::string_view getDriverName() = 0; virtual const std::string_view getName() = 0; virtual const std::string_view getVersion() = 0; diff --git a/src/libusbwrap/UsbDevice.hpp b/src/libusbwrap/UsbDevice.hpp index c713e45..7e32ebc 100644 --- a/src/libusbwrap/UsbDevice.hpp +++ b/src/libusbwrap/UsbDevice.hpp @@ -29,8 +29,8 @@ namespace libusbwrap { class UsbDevice : public IUsbDevice { public: - UsbDevice(libusb_context* ctx, libusb_device* dev); - ~UsbDevice(); + explicit UsbDevice(libusb_context* ctx, libusb_device* dev); + ~UsbDevice() override; // delete copy ctor and assignment UsbDevice(const UsbDevice&) = delete; diff --git a/src/libusbwrap/interface/IUsbDevice.hpp b/src/libusbwrap/interface/IUsbDevice.hpp index 9fec3f1..5025c59 100644 --- a/src/libusbwrap/interface/IUsbDevice.hpp +++ b/src/libusbwrap/interface/IUsbDevice.hpp @@ -24,8 +24,9 @@ enum class Speed { class IUsbDevice { public: - virtual bool open() = 0; - virtual void close() = 0; + virtual ~IUsbDevice() = default; + virtual bool open() = 0; + virtual void close() = 0; // libusb wrappers virtual bool detachKernelDriver(int interfaceNo) = 0; diff --git a/src/libusbwrap/interface/IUsbDeviceFactory.hpp b/src/libusbwrap/interface/IUsbDeviceFactory.hpp index 5e11ee6..a31cdc7 100644 --- a/src/libusbwrap/interface/IUsbDeviceFactory.hpp +++ b/src/libusbwrap/interface/IUsbDeviceFactory.hpp @@ -9,7 +9,8 @@ namespace libusbwrap { class IUsbDeviceFactory { public: - virtual std::vector> findAllDevices() = 0; + virtual ~IUsbDeviceFactory() = default; + virtual std::vector> findAllDevices() = 0; virtual std::vector> findDevices(uint16_t vid, uint16_t pid) = 0; }; } // namespace libusbwrap \ No newline at end of file