From 1506d491f93e1d0ac453392401d503b80bf4fecb Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efraim@flashner.co.il>
Date: Sun, 23 Dec 2018 19:46:40 +0200
Subject: [PATCH] gnu: opencc: Unbundle rapidjson.

* gnu/packages/textutils.scm (opencc)[source]: Add snippet to remove
rapidjson.
[arguments]: Add custom phase to substitute rapidjson.
[native-inputs]: Add rapidjson.
---
 gnu/packages/textutils.scm | 24 +++++++++++++++++++++---
 1 file changed, 21 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm
index 1ea9c954077..91bc64bc1f5 100644
--- a/gnu/packages/textutils.scm
+++ b/gnu/packages/textutils.scm
@@ -52,7 +52,8 @@ (define-module (gnu packages textutils)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages readline)
-  #:use-module (gnu packages slang))
+  #:use-module (gnu packages slang)
+  #:use-module (gnu packages web))
 
 (define-public dos2unix
   (package
@@ -764,10 +765,27 @@ (define-public opencc
               (commit (string-append "ver." version))))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "1pv5md225qwhbn8ql932zdg6gh1qlx3paiajaks8gfsa07yzvhr4"))))
+        (base32
+         "1pv5md225qwhbn8ql932zdg6gh1qlx3paiajaks8gfsa07yzvhr4"))
+       (modules '((guix build utils)))
+       (snippet
+        '(begin
+           ;; TODO: Unbundle tclap, darts-clone, gtest
+           (delete-file-recursively "deps/rapidjson-0.11") #t))))
     (build-system cmake-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-3rd-party-references
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((rapidjson (assoc-ref inputs "rapidjson")))
+               (substitute* "src/CMakeLists.txt"
+                 (("../deps/rapidjson-0.11")
+                  (string-append rapidjson "/include/rapidjson")))
+             #t))))))
     (native-inputs
-     `(("python" ,python-wrapper)))
+     `(("python" ,python-wrapper)
+       ("rapidjson" ,rapidjson)))
     (home-page "https://github.com/BYVoid/OpenCC")
     (synopsis "Convert between Traditional Chinese and Simplified Chinese")
     (description "Open Chinese Convert (OpenCC) converts between Traditional
-- 
GitLab