summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorRaghav Gururajan <raghavgururajan@disroot.org>2020-07-03 12:06:23 -0400
committerDanny Milosavljevic <dannym@scratchpost.org>2020-08-18 22:56:40 +0200
commit9068eb166d298ed23488be1b97001dd18fd0f3bb (patch)
tree74cbb1d1c30af90055f95946b9e62139948a8ee5 /gnu
parent3afbc16bfad9368e99153b90cbd51c59a6d9358b (diff)
gnu: Add zxing-cpp.
* gnu/packages/aidc.scm (zxing-cpp): New variable. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/aidc.scm45
1 files changed, 45 insertions, 0 deletions
diff --git a/gnu/packages/aidc.scm b/gnu/packages/aidc.scm
index 944ea048bf..3facc6894f 100644
--- a/gnu/packages/aidc.scm
+++ b/gnu/packages/aidc.scm
@@ -28,6 +28,7 @@
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (gnu packages autotools)
+ #:use-module (gnu packages check)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
@@ -37,8 +38,52 @@
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages video)
+ #:use-module (guix build-system cmake)
#:use-module (guix build-system gnu))
+(define-public zxing-cpp
+ (package
+ (name "zxing-cpp")
+ (version "1.0.8")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/nu-book/zxing-cpp.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "011sq8wcjfxbnd8sj6bf2fgkamlp8gj6q835g61c952npvwsnl71"))))
+ (native-inputs
+ `(("googletest-source" ,(package-source googletest))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:out-of-source? #f
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'unpack-googletest
+ ;; Copy the googletest sources to where the CMake build expects them.
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((source (assoc-ref inputs "googletest-source"))
+ (target "test/unit/googletest-src"))
+ (mkdir-p target)
+ (copy-recursively source target)
+ ;; Disable downloading via ExternalProject.
+ (substitute* "test/unit/CMakeLists.txt.in"
+ (("ExternalProject_Add\\(") "message("))
+ #t)))
+ (replace 'check
+ (lambda _
+ (with-directory-excursion "test/unit"
+ (invoke "cmake" ".")
+ (invoke "make")
+ (invoke "./ZXingUnitTest"))
+ #t)))))
+ (synopsis "C++ port of ZXing")
+ (description "ZXing-CPP is a barcode scanning library.")
+ (home-page "https://github.com/nu-book/zxing-cpp")
+ (license license:asl2.0)))
(define-public barcode
(package