diff options
author | Julien Lepiller <julien@lepiller.eu> | 2016-12-30 12:40:45 +0100 |
---|---|---|
committer | Julien Lepiller <julien@lepiller.eu> | 2017-01-31 21:35:27 +0100 |
commit | 41e8e07919f844bf83e5ae3ca6cd0cbaa760e1c8 (patch) | |
tree | d51e13f9f017f946ac5fc65667915b51c17fd34b /gnu/packages/ocaml.scm | |
parent | c590f1ae8a2a9c118f3cdb58fec98be934ccb7dd (diff) | |
download | guix-41e8e07919f844bf83e5ae3ca6cd0cbaa760e1c8.tar guix-41e8e07919f844bf83e5ae3ca6cd0cbaa760e1c8.tar.gz |
gnu: Add omake.
* gnu/packages/ocaml.scm (omake): New variable.
* gnu/packages/patches/omake-fix-non-determinism.patch: New file.
* gnu/local.mk (dist_patch_DATA): New patch.
Diffstat (limited to 'gnu/packages/ocaml.scm')
-rw-r--r-- | gnu/packages/ocaml.scm | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index e0412803cc..2ba9a7e0b9 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -1752,3 +1752,47 @@ whole files into OCaml string or string list. The code generated can be compiled as a standard OCaml file. It allows embedding external resources as OCaml code.") (license license:lgpl2.1+))); with the OCaml static compilation exception + +(define-public omake + (package + (name "omake") + (version "0.10.1") + (source (origin + (method url-fetch) + (uri (string-append "http://download.camlcity.org/download/" + "omake-" version ".tar.gz")) + (sha256 + (base32 + "093ansbppms90hiqvzar2a46fj8gm9iwnf8gn38s6piyp70lrbsj")) + (patches (search-patches "omake-fix-non-determinism.patch")))) + (build-system ocaml-build-system) + (arguments + `(#:make-flags + (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) + #:tests? #f ; no test target + #:phases + (modify-phases %standard-phases + (add-before 'configure 'fix-makefile + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "mk/osconfig_unix.mk" + (("CC = cc") "CC = gcc"))))))) + (native-inputs `(("hevea" ,hevea))) + (home-page "http://projects.camlcity.org/projects/omake.html") + (synopsis "Build system designed for scalability and portability") + (description "Similar to make utilities you may have used, but it features +many additional enhancements, including: + +@enumerate +@item Support for projects spanning several directories or directory hierarchies. +@item Fast, reliable, automated, scriptable dependency analysis using MD5 digests, + with full support for incremental builds. +@item Dependency analysis takes the command lines into account — whenever the + command line used to build a target changes, the target is considered + out-of-date. +@item Fully scriptable, includes a library that providing support for standard + tasks in C, C++, OCaml, and LaTeX projects, or a mixture thereof. +@end enumerate") + (license (list license:lgpl2.1 ; libmojave + license:expat ; OMake scripts + license:gpl2)))) ; OMake itself, with ocaml linking exception + ; see LICENSE.OMake |