[PATCH 5/5] gnu: Add java-pep-adapter.

DoneSubmitted by Hartmut Goebel.
Details
2 participants
  • Hartmut Goebel
  • Hartmut Goebel
Owner
unassigned
Severity
normal
H
H
Hartmut Goebel wrote on 23 May 10:59 +0200
bd820e2eba179af8cbc061f683681626641f7f9d.1590224092.git.h.goebel@crazy-compilers.com
* gnu/packages/pep.scm (java-pep-adapter): New variable.--- gnu/packages/pep.scm | 101 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 101 insertions(+)
Toggle diff (118 lines)diff --git a/gnu/packages/pep.scm b/gnu/packages/pep.scmindex 671ab058d9..a018acde22 100644--- a/gnu/packages/pep.scm+++ b/gnu/packages/pep.scm@@ -26,6 +26,8 @@ #:use-module (gnu packages) #:use-module (gnu packages base) #:use-module (gnu packages boost)+ #:use-module (gnu packages documentation)+ #:use-module (gnu packages java) #:use-module (gnu packages linux) #:use-module (gnu packages mail) ; for libetpan #:use-module (gnu packages nettle)@@ -246,3 +248,102 @@ adapters.") (description "The p≡p Python adapter is an adaptor interface to the p≡p (pretty Easy privacy) Engine.") (license license:gpl3)))++(define-public java-pep-adapter+ (package+ (name "java-pep-adapter")+ (version "2.0.2")+ (source+ (origin+ (method hg-fetch)+ (uri (hg-reference+ (url "https://pep.foundation/dev/repos/pEpJNIAdapter")+ (changeset "9292f1b1a76a"))) ;; r699+ (file-name (string-append name "-" version "-checkout"))+ (sha256+ (base32 "107ldpssc80bq8kndn2nqmav31gphj4lqagaiv3fddlfph4vji48"))))+ (build-system gnu-build-system)+ (outputs '("out" "doc"))+ (arguments+ `(#:test-target "test"+ #:make-flags (list "doxy-all")+ #:phases+ (modify-phases %standard-phases+ (add-before 'configure 'fix-includes+ (lambda _+ (substitute* "src/jniutils.hh"+ (("#pragma once\n" line)+ (string-append line+ "#include <mutex>\n"+ "#include <cassert>\n"+ "#include <cstring>\n")))+ #t))+ (add-before 'configure 'pin-shared-lib-path+ (lambda* (#:key outputs #:allow-other-keys)+ (substitute* "src/foundation/pEp/jniadapter/AbstractEngine.java"+ (("System.loadLibrary\\(\"pEpJNI\"\\);")+ (string-append "System.load(\""+ (assoc-ref outputs "out")+ "/lib/libpEpJNI.so" "\");")))+ #t))+ (replace 'configure+ ;; pEpJNIAdapter does not use autotools and configure,+ ;; but a local.conf. We need to tweak the values there.+ (lambda* (#:key inputs outputs #:allow-other-keys)+ (let ((out (assoc-ref outputs "out"))+ (engine (assoc-ref inputs "pep-engine"))+ (libadapter (assoc-ref inputs "libpepadapter"))+ (openjdk (assoc-ref inputs "openjdk"))+ )+ (with-output-to-file "local.conf"+ (lambda _ ;()+ (format #t "+PREFIX=~a+ENGINE_LIB_PATH=~a/lib+ENGINE_INC_PATH=~a/include+AD_LIB_PATH=~a/lib+AD_INC_PATH=~a/include+YML2_PROC=~a+JAVA_HOME=~a+"+ out engine engine libadapter libadapter+ (which "yml2proc") openjdk)))+ (substitute* "src/Makefile" ;; suppress some warnings+ (("^\\s+OLD_JAVA=") " xxx_OLD_JAVA="))+ #t)))+ (replace 'install+ (lambda* (#:key outputs #:allow-other-keys)+ (let* ((out (assoc-ref outputs "out"))+ (libout (string-append out "/lib/"))+ (javaout (string-append out "/share/java/")))+ (mkdir-p libout)+ (mkdir-p javaout)+ (copy-file "src/libpEpJNI.so"+ (string-append libout "/libpEpJNI.so"))+ (copy-file "src/pEp.jar" (string-append javaout "/pEp.jar"))+ #t)))+ (add-after 'install 'install-docs+ (lambda* (#:key outputs #:allow-other-keys)+ (let* ((out (assoc-ref outputs "doc"))+ (docout (string-append out "/share/doc/pEp-JNI-adapter"))+ (cxxout (string-append docout "/cxx"))+ (javaout (string-append docout "/java")))+ (mkdir-p cxxout)+ (mkdir-p javaout)+ (copy-recursively "doc/doxygen/cxx/html" cxxout)+ (copy-recursively "doc/doxygen/java/html" javaout)+ #t))))))+ (native-inputs+ `(("doxygen" ,doxygen)+ ("openjdk" ,openjdk9 "jdk")+ ("which" ,which)+ ("yml2" ,yml2)))+ (inputs+ `(("libpepadapter" ,libpepadapter)+ ("pep-engine" ,pep-engine)+ ("util-linux" ,util-linux))) ;; uuid.h+ (home-page "https://pep.foundation/")+ (synopsis "p≡p Python adapter")+ (description "The p≡p Python adapter is an adaptor interface to the p≡p+(pretty Easy privacy) Engine.")+ (license license:gpl3)))-- 2.21.3
H
H
Hartmut Goebel wrote on 23 May 20:41 +0200
duplicate
4d5918c4-8ec7-b0ff-b0f0-1a7653b0242b@goebel-consult.de
?