mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2025-01-12 06:06:53 -05:00
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.
This commit is contained in:
parent
c590f1ae8a
commit
41e8e07919
3 changed files with 86 additions and 0 deletions
|
@ -778,6 +778,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/ocaml-CVE-2015-8869.patch \
|
%D%/packages/patches/ocaml-CVE-2015-8869.patch \
|
||||||
%D%/packages/patches/ocaml-Add-a-.file-directive.patch \
|
%D%/packages/patches/ocaml-Add-a-.file-directive.patch \
|
||||||
%D%/packages/patches/ocaml-findlib-make-install.patch \
|
%D%/packages/patches/ocaml-findlib-make-install.patch \
|
||||||
|
%D%/packages/patches/omake-fix-non-determinism.patch \
|
||||||
%D%/packages/patches/ola-readdir-r.patch \
|
%D%/packages/patches/ola-readdir-r.patch \
|
||||||
%D%/packages/patches/openexr-missing-samples.patch \
|
%D%/packages/patches/openexr-missing-samples.patch \
|
||||||
%D%/packages/patches/openjpeg-CVE-2016-5157.patch \
|
%D%/packages/patches/openjpeg-CVE-2016-5157.patch \
|
||||||
|
|
|
@ -1752,3 +1752,47 @@ (define-public ocamlify
|
||||||
compiled as a standard OCaml file. It allows embedding external resources as
|
compiled as a standard OCaml file. It allows embedding external resources as
|
||||||
OCaml code.")
|
OCaml code.")
|
||||||
(license license:lgpl2.1+))); with the OCaml static compilation exception
|
(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
|
||||||
|
|
41
gnu/packages/patches/omake-fix-non-determinism.patch
Normal file
41
gnu/packages/patches/omake-fix-non-determinism.patch
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
From 2e7e254160506dc00f1beabf170512a8e932934b Mon Sep 17 00:00:00 2001
|
||||||
|
From: Julien Lepiller <julien@lepiller.eu>
|
||||||
|
Date: Sat, 31 Dec 2016 15:43:38 +0100
|
||||||
|
Subject: [PATCH] fix build date in binary
|
||||||
|
|
||||||
|
---
|
||||||
|
src/magic/omake_gen_magic.ml | 12 ++----------
|
||||||
|
1 file changed, 2 insertions(+), 10 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/magic/omake_gen_magic.ml b/src/magic/omake_gen_magic.ml
|
||||||
|
index b2419ba..fad52f5 100644
|
||||||
|
--- a/src/magic/omake_gen_magic.ml
|
||||||
|
+++ b/src/magic/omake_gen_magic.ml
|
||||||
|
@@ -150,7 +150,7 @@ let ir_magic = "%s"
|
||||||
|
let obj_magic = "%s"
|
||||||
|
let lib_dir = "%s"
|
||||||
|
let version = "%s"
|
||||||
|
-let version_message = "OMake %s:\\n\\tbuild [%s %s %d %02d:%02d:%02d %d]\\n\\ton %s"
|
||||||
|
+let version_message = "OMake %s"
|
||||||
|
|}
|
||||||
|
default_save_interval
|
||||||
|
digest_len
|
||||||
|
@@ -160,15 +160,7 @@ let version_message = "OMake %s:\\n\\tbuild [%s %s %d %02d:%02d:%02d %d]\\n\\ton
|
||||||
|
(digest_files ".omo.magic" ".omo" omo_files)
|
||||||
|
(String.escaped libdir)
|
||||||
|
(String.escaped (shorten_version version))
|
||||||
|
- (String.escaped version)
|
||||||
|
- [|"Sun"; "Mon"; "Tue"; "Wed"; "Thu"; "Fri"; "Sat"|].(tm.tm_wday)
|
||||||
|
- [|"Jan"; "Feb"; "Mar"; "Apr"; "May"; "Jun"; "Jul"; "Aug"; "Sep"; "Oct"; "Nov"; "Dec"|].(tm.tm_mon)
|
||||||
|
- tm.tm_mday
|
||||||
|
- tm.tm_hour
|
||||||
|
- tm.tm_min
|
||||||
|
- tm.tm_sec
|
||||||
|
- (tm.tm_year + 1900)
|
||||||
|
- (String.escaped (Unix.gethostname ()));
|
||||||
|
+ (String.escaped version);
|
||||||
|
List.iter
|
||||||
|
(fun (name,value) ->
|
||||||
|
Printf.fprintf buf "let %s = %S\n" name value
|
||||||
|
--
|
||||||
|
2.11.0
|
Loading…
Reference in a new issue