From 16fdf2f55d13ebcb16bdbb888a1c3453c47e469d Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Fri, 3 May 2019 12:47:48 +0200 Subject: gnu: javacc: Install binaries. * gnu/packages/java.scm (javacc)[arguments]: Add install-bin phase. --- gnu/packages/java.scm | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 20db3e9553..bc55c2fa39 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -2394,7 +2394,27 @@ debugging, etc.") #:test-target "test" #:phases (modify-phases %standard-phases - (replace 'install (install-jars "target"))))) + (replace 'install (install-jars "target")) + (add-after 'install 'install-bin + (lambda* (#:key outputs inputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (dir (string-append out "/share/java")) + (bin (string-append out "/bin")) + (javacc (string-append bin "/javacc"))) + (mkdir-p bin) + (with-output-to-file javacc + (lambda _ + (display + (string-append "#!/bin/sh\n" + (assoc-ref inputs "jdk") "/bin/java" + " -cp " dir "/javacc.jar" " `basename $0`" " $*")))) + (chmod javacc #o755) + ;; symlink to different names to affect the first argument and + ;; change the behavior of the jar file. + (symlink javacc (string-append bin "/jjdoc")) + (symlink javacc (string-append bin "/jjtree")) + #t)))))) + (native-inputs `(("javacc" ,javacc-4))))) -- cgit v1.2.3