= epubgrep
:showtitle:
:toc: preamble
:project: epubgrep
:uri-base: https://schlomp.space/tastytea/{project}
:uri-branch-main: {uri-base}/src/branch/main

:uri-gcc: https://gcc.gnu.org/
:uri-clang: https://clang.llvm.org/
:uri-cmake: https://cmake.org/
:uri-catch: https://github.com/catchorg/Catch2
:uri-gettext: https://www.gnu.org/software/gettext/

*{project}* is a search tool for EPUB ebooks.

== Install

[alt="Packaging status" link=https://repology.org/project/epubgrep/versions]
image::https://repology.org/badge/vertical-allrepos/epubgrep.svg[]

// === Gentoo

// [source,shell]
// --------------------------------------------------------------------------------
// eselect repository enable tastytea
// echo 'app-text/epubgrep' >> /etc/portage/package.accept_keywords/epubgrep
// emaint sync -r tastytea
// emerge -a app-text/epubgrep
// --------------------------------------------------------------------------------

=== From source

==== Dependencies

* Tested OS: Linux
* C\++ compiler with C++17 support (tested: link:{uri-gcc}[GCC] 7/10,
  link:{uri-clang}[clang] 6/11)
* link:{uri-cmake}[CMake] (at least: 3.12)
* link:{uri-gettext}[gettext] (tested: 0.21)
* Optional
  ** Tests: link:{uri-catch}[Catch] (tested: 2.5 / 1.2)

==== Get sourcecode

// ===== Release

// Download the current release at link:{uri-base}/releases[schlomp.space].

===== Development version

[source,shell]
--------------------------------------------------------------------------------
git clone https://schlomp.space/tastytea/epubgrep.git
--------------------------------------------------------------------------------

==== Compile

[source,shell]
--------------------------------------------------------------------------------
mkdir -p build && cd build
cmake ..
cmake --build . -- --jobs=$(nproc --ignore=1)
--------------------------------------------------------------------------------

.CMake options:
* `-DCMAKE_BUILD_TYPE=Debug` for a debug build.
* `-DWITH_TESTS=YES` if you want to compile the tests.
* `-DGENERATE_POT=NO` to not (re-)generate the .pot file.
* `-DXGETTEXT_CMD=String` The program to use instead of `xgettext`.

include::{uri-base}/raw/branch/main/CONTRIBUTING.adoc[]
