diff options
author | Sharlatan Hellseher <sharlatanus@gmail.com> | 2021-02-13 21:18:18 +0000 |
---|---|---|
committer | Nicolas Goaziou <mail@nicolasgoaziou.fr> | 2021-03-06 14:38:15 +0100 |
commit | 0e36ea23374d432f7b74607ae39f717b1f4b2aa9 (patch) | |
tree | 87bb74ca1b9fa21568717781428ec2cf9b72cf48 /gnu/packages/tcl.scm | |
parent | 1463e9504b116ea0874a0643a6dd23c957f3e506 (diff) | |
download | guix-0e36ea23374d432f7b74607ae39f717b1f4b2aa9.tar guix-0e36ea23374d432f7b74607ae39f717b1f4b2aa9.tar.gz |
gnu: Add itcl
* gnu/pacages/tcl.scm (itcl): New variable.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Diffstat (limited to 'gnu/packages/tcl.scm')
-rw-r--r-- | gnu/packages/tcl.scm | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/gnu/packages/tcl.scm b/gnu/packages/tcl.scm index f17e138bdb..709b3dd603 100644 --- a/gnu/packages/tcl.scm +++ b/gnu/packages/tcl.scm @@ -95,6 +95,56 @@ (description "The Tcl (Tool Command Language) scripting language.") (license license:tcl/tk))) +(define-public itcl + (package + (name "itcl") + (version "4.2.0") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://sourceforge/incrtcl/%5Bincr%20Tcl_Tk%5D-4-source/itcl%20" + version "/itcl" version ".tar.gz")) + (file-name (string-append "incrtcl-" version ".tar.gz")) + (sha256 + (base32 "0w28v0zaraxcq1s9pa6cihqqwqvvwfgz275lks7w4gl7hxjxmasw")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags + (list + (string-append + "--exec-prefix=" (assoc-ref %outputs "out")) + (string-append + "--with-tclinclude=" (assoc-ref %build-inputs "tcl") "/include") + (string-append + "--with-tcl=" (assoc-ref %build-inputs "tcl") "/lib")) + #:test-target "test" + #:phases + (modify-phases %standard-phases + (add-after 'install 'cleanup-bin-and-lib + (lambda* (#:key outputs #:allow-other-keys) + ;; NOTE: (Sharlatan-20210213T204336+0000): libraries appearer in + ;; "out/lib/itcl{{version}}" and there are no binaries, some extra + ;; rename and remove spells are to be applied. + (let ((out (assoc-ref outputs "out"))) + (rmdir + (string-append out "/bin")) + (rename-file + (string-append out "/lib/itcl" ,version) (string-append out "/libtmp")) + (rename-file + (string-append out "/libtmp") (string-append out "/lib"))) + #t))))) + (native-inputs + `(("tcl" ,tcl))) + (inputs + `(("tcllib" ,tcllib))) + (home-page "http://incrtcl.sourceforge.net/") + (synopsis "Object Oriented programming (OOP) extension for Tcl") + (description + "[incr Tcl] is a widely used object-oriented system for Tcl. The name is +a play on C++, and [incr Tcl] provides a similar object model, including +multiple inheritence and public and private classes and variables.") + (license license:public-domain))) (define-public expect (package |