tomh / rpms / libnitrokey

Forked from rpms/libnitrokey 5 years ago
Clone
Blob Blame History Raw
From 968b4027f4f13ebc311c3aab741fbc2eea50cca3 Mon Sep 17 00:00:00 2001
From: Igor Gnatenko <i.gnatenko.brain@gmail.com>
Date: Wed, 18 Jul 2018 13:52:16 +0200
Subject: [PATCH 09/11] meson: add support for bundled catch

Better to use meson's subproject, but let's go with submodule for now.

Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
---
 README.md   | 9 +++------
 meson.build | 7 ++++++-
 2 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/README.md b/README.md
index 1bc8ef9..b101114 100644
--- a/README.md
+++ b/README.md
@@ -80,14 +80,11 @@ Other build options (all take either `ON` or `OFF`):
 It is possible to use Meson and Ninja to build the project as well (currently available only `master` branch).
 Please run:
 ```
-meson builddir
-cd builddir
-meson configure # to show available build flags
-ninja
+meson builddir <OPTIONS>
+meson configure builddir # to show available build flags
+ninja -C builddir
 ```
 
-Tests build with bundled Catch is not supported yet with this method.
-
 # Using libnitrokey with Python
 To use libnitrokey with Python a [CFFI](http://cffi.readthedocs.io/en/latest/overview.html) library is required (either 2.7+ or 3.0+). It can be installed with:
 ```bash
diff --git a/meson.build b/meson.build
index c81fbbf..b14fe0c 100644
--- a/meson.build
+++ b/meson.build
@@ -113,7 +113,12 @@ pkg.generate(
 )
 
 if get_option('tests') or get_option('offline-tests')
-  dep_catch = dependency('catch')
+  dep_catch = dependency('catch', required : false)
+  if not dep_catch.found()
+    dep_catch = declare_dependency(
+      include_directories : include_directories('unittest/Catch/single_include')
+    )
+  endif
   _catch = static_library(
     'catch',
     sources : [
-- 
2.18.0