X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/cf7658f7cb5de0e17f4801faa84c378a4b40033e..9cbc5fae80503add586688e2095653ef02ccb59d:/gnu/packages/code.scm diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm index 98a86b763f..ff30fbd86f 100644 --- a/gnu/packages/code.scm +++ b/gnu/packages/code.scm @@ -2,8 +2,8 @@ ;;; Copyright © 2013, 2015, 2018 Ludovic Courtès ;;; Copyright © 2015 Andreas Enge ;;; Copyright © 2015, 2018 Ricardo Wurmus -;;; Copyright © 2016, 2017 Efraim Flashner -;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice +;;; Copyright © 2016, 2017, 2019 Efraim Flashner +;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice ;;; Copyright © 2017, 2018 Clément Lassieur ;;; Copyright © 2017 Andy Wingo ;;; Copyright © 2018 Fis Trivial @@ -11,6 +11,7 @@ ;;; Copyright © 2014 Eric Bavier ;;; Copyright © 2013 Andreas Enge ;;; Copyright © 2014 Mark H Weaver +;;; Copyright © 2019 Hartmut Goebel ;;; ;;; This file is part of GNU Guix. ;;; @@ -42,7 +43,6 @@ #:use-module (gnu packages bash) #:use-module (gnu packages compression) #:use-module (gnu packages cpp) - #:use-module (gnu packages databases) #:use-module (gnu packages emacs) #:use-module (gnu packages gcc) #:use-module (gnu packages graphviz) @@ -50,6 +50,7 @@ #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) + #:use-module (gnu packages sqlite) #:use-module (gnu packages texinfo) #:use-module (gnu packages ncurses) #:use-module (gnu packages llvm) @@ -60,14 +61,14 @@ (define-public cflow (package (name "cflow") - (version "1.5") + (version "1.6") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/cflow/cflow-" version ".tar.bz2")) (sha256 (base32 - "0yq33k5ap1zpnja64n89iai4zh018ffr72wki5a6mzczd880mr3g")))) + "1mzd3yf0dfv8h2av5vsxxlhpk21nw064h91b2kgfrdz92r0pnj1l")))) (build-system gnu-build-system) ;; Needed to have cflow-mode.el installed. @@ -113,18 +114,19 @@ highlighting your own code that seemed comprehensible when you wrote it.") (define-public global ; a global variable (package (name "global") - (version "6.6.2") + (version "6.6.4") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/global/global-" version ".tar.gz")) (sha256 (base32 - "0zvi5vxwiq0dy8mq2cgs64m8harxs0fvkmsnvi0ayb0w608lgij3")))) + "1515642wsjz7x3rsgaqk4sc7n0z2znl7idsk8jz8wgy5aswqqzlq")))) (build-system gnu-build-system) (inputs `(("ncurses" ,ncurses) ("libltdl" ,libltdl) - ("sqlite" ,sqlite))) + ("sqlite" ,sqlite) + ("python-wrapper" ,python-wrapper))) (arguments `(#:configure-flags (list (string-append "--with-ncurses=" @@ -186,14 +188,15 @@ around in a large, deeply nested project.") (mkdir-p (string-append out "/share/man/man1")) (mkdir-p (string-append out - "/share/doc"))))) + "/share/doc")) + #t))) (replace 'check (lambda _ (setenv "HOME" (getcwd)) (setenv "PATH" (string-append (getcwd) ":" (getenv "PATH"))) - (zero? (system* "make" "test"))))) + (invoke "make" "test")))) #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))))) @@ -211,16 +214,16 @@ COCOMO model or user-provided parameters.") (define-public cloc (package (name "cloc") - (version "1.78") + (version "1.84") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/AlDanial/cloc/releases/download/" version - "/cloc-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/AlDanial/cloc.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 - (base32 - "1j9lwy9xf43kpv1csqdxzch6y1hnsv881ddqd357f8v58dhr4s68")))) + (base32 "14xikdwcr6pcnkk2i43zrsj88z8b3mrv0svbnbvxvarw1id83pnn")))) (build-system gnu-build-system) (inputs `(("coreutils" ,coreutils) @@ -231,8 +234,8 @@ COCOMO model or user-provided parameters.") ("perl-regexp-common" ,perl-regexp-common))) (arguments `(#:phases (modify-phases %standard-phases - (delete 'configure) - (delete 'build) + (delete 'configure) ; nothing to configure + (delete 'build) ; nothing to build (replace 'install (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out"))) @@ -304,7 +307,7 @@ tools such as @command{grep}.") (base32 "02pwd5m5vq7hbrffgm2na1dfc249z50yyr5jv73vdw15bd7ygl44")))) (build-system gnu-build-system) - (home-page "http://daniel.haxx.se/projects/trio/") + (home-page "https://daniel.haxx.se/projects/trio/") (synopsis "Portable and extendable printf and string functions") (description "Trio is a set of @code{printf} and string functions designed be used by @@ -319,18 +322,21 @@ features that are not supported by the standard @code{stdio} implementation.") (package (name "withershins") (version "0.1") - (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/cameronwhite/withershins/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "08z3lyvswx7sad10637vfpwglbcbgzzcpfihw0x8lzr74f3b70bh")))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/cameronwhite/withershins.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1cviqvbbcwljm1zx12j6511hazr3kscwrvcyifrkfi4fpy5z985m")))) (build-system cmake-build-system) (arguments `(#:out-of-source? #f + #:configure-flags + ;; XXX A (justified!) misleading-indentation error breaks the build. + (list "-DENABLE_WERROR=OFF") #:phases (modify-phases %standard-phases (add-after @@ -370,14 +376,14 @@ stack traces.") (define-public lcov (package (name "lcov") - (version "1.13") + (version "1.14") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/ltp/Coverage%20Analysis" "/LCOV-" version "/lcov-" version ".tar.gz")) (sha256 (base32 - "08wabnb0gcjqk0qc65a6cgbbmz6b8lvam3p7byh0dk42hj3jr5s4")))) + "06h7ixyznf6vz1qvksjgy5f3q2nw9akf6zx59npf0h3l32cmd68l")))) (build-system gnu-build-system) (arguments '(#:make-flags @@ -430,7 +436,6 @@ functionality such as HTML output.") '(#:build-type "RelWithDebInfo" #:configure-flags '("-DRTAGS_NO_ELISP_FILES=1" - "-DCMAKE_CXX_FLAGS=-std=c++11" "-DBUILD_TESTING=FALSE") #:tests? #f)) (native-inputs @@ -458,30 +463,24 @@ importantly we give you proper follow-symbol and find-references support.") (version "0.9.20140503") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/pagekite/Colormake/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/pagekite/Colormake.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 - (base32 - "08ldss9zd8ls6bjahvxhffpsjcysifr720yf3jz9db2mlklzmyd3")))) + (base32 "1f9v5s0viq4yc9iv6701h3pv7j21zz1ckl37lpp9hsnliiizv03p")))) (build-system trivial-build-system) (native-inputs `(("bash" ,bash) - ("gzip" ,gzip) - ("perl" ,perl) - ("tar" ,tar))) + ("perl" ,perl))) (arguments `(#:modules ((guix build utils)) #:builder (begin (use-modules (guix build utils)) - ;; bootstrap - (setenv "PATH" (string-append - (assoc-ref %build-inputs "tar") "/bin" ":" - (assoc-ref %build-inputs "gzip") "/bin")) - (invoke "tar" "xvf" (assoc-ref %build-inputs "source")) - (chdir (string-append (string-capitalize ,name) "-" ,version)) + (copy-recursively (assoc-ref %build-inputs "source") "source") + (chdir "source") (patch-shebang "colormake.pl" (list (string-append (assoc-ref %build-inputs "perl") "/bin"))) @@ -502,7 +501,7 @@ importantly we give you proper follow-symbol and find-references support.") "clmake-short" "colormake.pl") bin) #t)))) - (home-page "http://bre.klaki.net/programs/colormake/") + (home-page "https://bre.klaki.net/programs/colormake/") (synopsis "Wrapper around @command{make} to produce colored output") (description "This package provides a wrapper around @command{make} to produce colored output.") @@ -512,14 +511,15 @@ produce colored output.") (package (name "makefile2graph") (version "1.5.0") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/lindenb/" name - "/archive/v" version ".tar.gz")) - (sha256 - (base32 - "0h1vchkpmm9h6s87p5nf0ksjxcmsxpx8k62a508w428n570wcr4l")) - (file-name (string-append name "-" version ".tar.gz")))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/lindenb/makefile2graph.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1gjfk3d8qg3cla7qd2y7r9s03whlfwy83q8k76xfcnqrjjfavdgk")))) (build-system gnu-build-system) (arguments '(#:test-target "test" @@ -540,18 +540,20 @@ independent targets.") (define-public uncrustify (package (name "uncrustify") - (version "0.67") + (version "0.69.0") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/uncrustify/uncrustify/archive/" - "uncrustify-" version ".zip")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/uncrustify/uncrustify/") + (commit (string-append name "-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0n13kq0nsm35fxhdp0f275n4x0w88hdv3bdjy0hgvv42x0dx5zyp")))) + "0sqrg13kp8fwymq40976bq380bzw40g4ss7ihlbq45d0f90ifa1k")))) (build-system cmake-build-system) (native-inputs - `(("unzip" ,unzip))) + `(("unzip" ,unzip) + ("python" ,python-wrapper))) (arguments `(#:phases (modify-phases %standard-phases @@ -597,21 +599,38 @@ Objective@tie{}C, D, Java, Pawn, and Vala). Features: #:make-flags (list (string-append "prefix=" %output) "INSTALL=install" "all") + #:modules ((guix build gnu-build-system) ;; FIXME use %default-modules + (guix build utils) + (ice-9 regex)) #:phases (modify-phases %standard-phases (replace 'configure (lambda _ (chdir "build/gcc") #t)) (add-after 'install 'install-libs (lambda* (#:key outputs #:allow-other-keys) - ;; Libraries are not installed by default + ;; Libraries and includes are not installed by default (let* ((output (assoc-ref outputs "out")) + (incdir (string-append output "/include")) (libdir (string-append output "/lib"))) - (begin - (mkdir-p libdir) - (for-each (lambda (l) - (copy-file - l (string-append libdir "/" (basename l)))) - (find-files "bin" "lib*")))) + (define (make-so-link sofile strip-pattern) + (symlink + (basename sofile) + (regexp-substitute #f + (string-match strip-pattern sofile) + 'pre))) + (mkdir-p incdir) + (copy-file "../../src/astyle.h" + (string-append incdir "/astyle.h")) + (mkdir-p libdir) + (for-each (lambda (l) + (copy-file + l (string-append libdir "/" (basename l)))) + (find-files "bin" "lib*")) + (for-each + (lambda (sofile) + (make-so-link sofile "(\\.[0-9]){3}$") ;; link .so + (make-so-link sofile "(\\.[0-9]){2}$")) ;; link .so.3 + (find-files libdir "lib.*\\.so\\..*"))) #t))))) (home-page "http://astyle.sourceforge.net/") (synopsis "Source code indenter, formatter, and beautifier") @@ -623,13 +642,13 @@ the C, C++, C++/CLI, Objective‑C, C#, and Java programming languages.") (define-public indent (package (name "indent") - (version "2.2.10") + (version "2.2.12") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/indent/indent-" version ".tar.gz")) - (sha256 (base32 - "0f9655vqdvfwbxvs1gpa7py8k1z71aqh8hp73f65vazwbfz436wa")))) + (sha256 + (base32 "12xvcd16cwilzglv9h7sgh4h1qqjd1h8s48ji2dla58m4706hzg7")))) (build-system gnu-build-system) (arguments `(#:phases @@ -642,6 +661,8 @@ the C, C++, C++/CLI, Objective‑C, C#, and Java programming languages.") (substitute* "doc/Makefile.in" (("^docdir = .*$") "docdir = @docdir@\n")) #t))))) + (native-inputs + `(("texinfo" ,texinfo))) (synopsis "Code reformatter") (description "Indent is a program that makes source code easier to read by @@ -652,19 +673,6 @@ extensions over the standard utility.") (license license:gpl3+) (home-page "https://www.gnu.org/software/indent/"))) -(define-public indent-2.2.12 - (package - (inherit indent) - (version "2.2.12") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnu/indent/indent-" version - ".tar.gz")) - (sha256 - (base32 - "12xvcd16cwilzglv9h7sgh4h1qqjd1h8s48ji2dla58m4706hzg7")))) - (native-inputs `(("texinfo" ,texinfo))))) - (define-public amalgamate (let* ((commit "c91f07eea1133aa184f652b8f1398eaf03586208") (revision "0")