All checks were successful
Build ptprnt / build (push) Successful in 1m45s
Improve logging output Reviewed-on: #9
62 lines
1.5 KiB
Markdown
62 lines
1.5 KiB
Markdown
# ptprnt
|
|
|
|
This is a rewrite of [ptouch-print](https://git.familie-radermacher.ch/linux/ptouch-print.git) as a toy project for my personal amusement. The currently available solutions are good enough for generating labels, but i wanted to explore libusb and maybe improve the functionality of my label printer. All credits for reverse engineering the USB commands to Dominic Rademacher.
|
|
|
|
## Dependencies
|
|
This project requires:
|
|
- spdlog
|
|
- libusb
|
|
- pango
|
|
- cairo
|
|
- meson
|
|
- gtest (optional, for testing, will be installed by meson)
|
|
- gcov (optional, for coverage reports)
|
|
|
|
Install dependencies on Arch Linux
|
|
``` bash
|
|
pacman -S libusb spdlog pango cairo meson gcovr
|
|
```
|
|
|
|
Install dependencies on Debian/Ubuntu
|
|
``` bash
|
|
apt-get install libusb-1.0-0-dev libspdlog-dev libfmt-dev libpango1.0-dev libcairo2-dev meson gcovr
|
|
```
|
|
|
|
## Build
|
|
|
|
Clone the repository and simply let meson do the heavy lifting.
|
|
|
|
```bash
|
|
meson setup builddir
|
|
```
|
|
If you want to generate coverage reports, enable them via the command line switch
|
|
```bash
|
|
meson setup builddir -Db_coverage=true
|
|
```
|
|
|
|
Rebuild by simply invoking ninja
|
|
```bash
|
|
ninja -C builddir
|
|
```
|
|
|
|
## Run
|
|
Run the binary from your builddir
|
|
```bash
|
|
builddir/ptprnt
|
|
```
|
|
|
|
## Test
|
|
Testing is done via gtest. To run your test simply invoke ninja with the "test" target.
|
|
```bash
|
|
ninja -C builddir test
|
|
```
|
|
|
|
Coverage reports can be generated via gcov if you enabled them (see Build section) by building the `coverage-text` target.
|
|
|
|
## License
|
|
|
|
GPLv3, see [LICENSE](./LICENSE)
|
|
|
|
## Author
|
|
Moritz Martinius <moritz@admiralackbar.de>
|