guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 03/10] gnu: Add omake.


From: Marius Bakke
Subject: Re: [PATCH 03/10] gnu: Add omake.
Date: Wed, 18 Jan 2017 23:00:54 +0100
User-agent: Notmuch/0.23.5 (https://notmuchmail.org) Emacs/25.1.1 (x86_64-unknown-linux-gnu)

Julien Lepiller <address@hidden> writes:

> * gnu/packages/ocaml.scm (omake): New variable.
> * gnu/packages/patches/ocaml-omake-fix-non-determinism.patch: New file.
> * gnu/local.mk (dist_patch_DATA): New patch.
> ---
>  gnu/local.mk                                       |  1 +
>  gnu/packages/ocaml.scm                             | 41 
> ++++++++++++++++++++++
>  .../patches/ocaml-omake-fix-non-determinism.patch  | 41 
> ++++++++++++++++++++++
>  3 files changed, 83 insertions(+)
>  create mode 100644 gnu/packages/patches/ocaml-omake-fix-non-determinism.patch
>
> diff --git a/gnu/local.mk b/gnu/local.mk
> index 24dcd03fd..5b919dd86 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -778,6 +778,7 @@ dist_patch_DATA =                                         
> \
>    %D%/packages/patches/ocaml-CVE-2015-8869.patch             \
>    %D%/packages/patches/ocaml-Add-a-.file-directive.patch     \
>    %D%/packages/patches/ocaml-findlib-make-install.patch      \
> +  %D%/packages/patches/ocaml-omake-fix-non-determinism.patch \
                          ^^^^^^^^^^^
                          This should start with the package name.
 
>    %D%/packages/patches/ola-readdir-r.patch                   \
>    %D%/packages/patches/openexr-missing-samples.patch         \
>    %D%/packages/patches/openjpeg-CVE-2016-5157.patch          \
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index a2297d1ab..f69f77a7b 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -1752,3 +1752,44 @@ 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 an 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 
> "ocaml-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")))))))

Indentation seems off here :-)

> +    (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:
> +
> +- Support for projects spanning several directories or directory hierarchies.
> +- Fast, reliable, automated, scriptable dependency analysis using MD5 
> digests,
> +with full support for incremental builds.
> +- 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.
> +-  Fully scriptable, includes a library that providing support for standard
> +tasks in C, C++, OCaml, and LaTeX projects, or a mixture thereof.")

Could you use @enumerate here instead?

> +    (license (list license:lgpl2.1; libmojave
> +                   license:expat; OMake scripts
> +                   license:gpl2)))); OMake itself, with an exception

Which exception? Also, is there no "or later" on these?

> diff --git a/gnu/packages/patches/ocaml-omake-fix-non-determinism.patch 
> b/gnu/packages/patches/ocaml-omake-fix-non-determinism.patch
> new file mode 100644
> index 000000000..813ce3cd7
> --- /dev/null
> +++ b/gnu/packages/patches/ocaml-omake-fix-non-determinism.patch
> @@ -0,0 +1,41 @@
> +From 2e7e254160506dc00f1beabf170512a8e932934b Mon Sep 17 00:00:00 2001
> +From: Julien Lepiller <address@hidden>
> +Date: Sat, 31 Dec 2016 15:43:38 +0100
> +Subject: [PATCH] fix build date in binary

Ooh, nice find! The rest LGTM.

> +
> +---
> + 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
> -- 
> 2.11.0

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]