diff options
Diffstat (limited to 'gnu/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch')
-rw-r--r-- | gnu/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch | 149 |
1 files changed, 0 insertions, 149 deletions
diff --git a/gnu/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch b/gnu/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch deleted file mode 100644 index 39fb7aa226..0000000000 --- a/gnu/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch +++ /dev/null @@ -1,149 +0,0 @@ -From a87c3f20e846c00e53d695497dba7038edbd12f0 Mon Sep 17 00:00:00 2001 -From: Valentin Lorentz <progval@progval.net> -Date: Thu, 13 Aug 2015 11:59:04 +0200 -Subject: [PATCH] Enable ocamldoc to build reproducible manpages - -Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=794586 -Signed-off-by: Stephane Glondu <steph@glondu.net> ---- - ocamldoc/odoc_man.ml | 15 +++++---------- - ocamldoc/odoc_misc.ml | 12 ++++++++++-- - ocamldoc/odoc_misc.mli | 7 ++++++- - 3 files changed, 21 insertions(+), 13 deletions(-) - -diff --git a/ocamldoc/odoc_man.ml b/ocamldoc/odoc_man.ml -index 615c5e172..3c85aa32a 100644 ---- a/ocamldoc/odoc_man.ml -+++ b/ocamldoc/odoc_man.ml -@@ -864,14 +864,13 @@ class man = - (** Generate the man page for the given class.*) - method generate_for_class cl = - Odoc_info.reset_type_names () ; -- let date = Unix.time () in - let file = self#file_name cl.cl_name in - try - let chanout = self#open_out file in - let b = new_buf () in - bs b (".TH \""^cl.cl_name^"\" "); - bs b !man_section ; -- bs b (" "^(Odoc_misc.string_of_date ~hour: false date)^" "); -+ bs b (" source: "^Odoc_misc.current_date^" "); - bs b "OCamldoc "; - bs b ("\""^(match !Global.title with Some t -> t | None -> "")^"\"\n"); - -@@ -923,14 +922,13 @@ class man = - (** Generate the man page for the given class type.*) - method generate_for_class_type ct = - Odoc_info.reset_type_names () ; -- let date = Unix.time () in - let file = self#file_name ct.clt_name in - try - let chanout = self#open_out file in - let b = new_buf () in - bs b (".TH \""^ct.clt_name^"\" "); - bs b !man_section ; -- bs b (" "^(Odoc_misc.string_of_date ~hour: false date)^" "); -+ bs b (" source: "^Odoc_misc.current_date^" "); - bs b "OCamldoc "; - bs b ("\""^(match !Global.title with Some t -> t | None -> "")^"\"\n"); - -@@ -1016,14 +1014,13 @@ class man = - (** Generate the man file for the given module type. - @raise Failure if an error occurs.*) - method generate_for_module_type mt = -- let date = Unix.time () in - let file = self#file_name mt.mt_name in - try - let chanout = self#open_out file in - let b = new_buf () in - bs b (".TH \""^mt.mt_name^"\" "); - bs b !man_section ; -- bs b (" "^(Odoc_misc.string_of_date ~hour: false date)^" "); -+ bs b (" source: "^Odoc_misc.current_date^" "); - bs b "OCamldoc "; - bs b ("\""^(match !Global.title with Some t -> t | None -> "")^"\"\n"); - -@@ -1099,14 +1096,13 @@ class man = - (** Generate the man file for the given module. - @raise Failure if an error occurs.*) - method generate_for_module m = -- let date = Unix.time () in - let file = self#file_name m.m_name in - try - let chanout = self#open_out file in - let b = new_buf () in - bs b (".TH \""^m.m_name^"\" "); - bs b !man_section ; -- bs b (" "^(Odoc_misc.string_of_date ~hour: false date)^" "); -+ bs b (" source: "^Odoc_misc.current_date^" "); - bs b "OCamldoc "; - bs b ("\""^(match !Global.title with Some t -> t | None -> "")^"\"\n"); - -@@ -1206,14 +1202,13 @@ class man = - | Res_const (_,f) -> f.vc_name - ) - in -- let date = Unix.time () in - let file = self#file_name name in - try - let chanout = self#open_out file in - let b = new_buf () in - bs b (".TH \""^name^"\" "); - bs b !man_section ; -- bs b (" "^(Odoc_misc.string_of_date ~hour: false date)^" "); -+ bs b (" source: "^Odoc_misc.current_date^" "); - bs b "OCamldoc "; - bs b ("\""^(match !Global.title with Some t -> t | None -> "")^"\"\n"); - bs b ".SH NAME\n"; -diff --git a/ocamldoc/odoc_misc.ml b/ocamldoc/odoc_misc.ml -index 4c74476da..456225f62 100644 ---- a/ocamldoc/odoc_misc.ml -+++ b/ocamldoc/odoc_misc.ml -@@ -223,9 +223,9 @@ let apply_opt f v_opt = - None -> None - | Some v -> Some (f v) - --let string_of_date ?(hour=true) d = -+let string_of_date ?(absolute=false) ?(hour=true) d = - let add_0 s = if String.length s < 2 then "0"^s else s in -- let t = Unix.localtime d in -+ let t = (if absolute then Unix.gmtime else Unix.localtime) d in - (string_of_int (t.Unix.tm_year + 1900))^"-"^ - (add_0 (string_of_int (t.Unix.tm_mon + 1)))^"-"^ - (add_0 (string_of_int t.Unix.tm_mday))^ -@@ -238,6 +238,14 @@ let string_of_date ?(hour=true) d = - "" - ) - -+let current_date = -+ let time = -+ try -+ float_of_string (Sys.getenv "SOURCE_DATE_EPOCH") -+ with -+ Not_found -> Unix.time () -+ in string_of_date ~absolute: true ~hour: false time -+ - - let rec text_list_concat sep l = - match l with -diff --git a/ocamldoc/odoc_misc.mli b/ocamldoc/odoc_misc.mli -index dd5a7fcb9..38ff0612b 100644 ---- a/ocamldoc/odoc_misc.mli -+++ b/ocamldoc/odoc_misc.mli -@@ -62,7 +62,12 @@ val apply_opt : ('a -> 'b) -> 'a option -> 'b option - - (** Return a string representing a date given as a number of seconds - since 1970. The hour is optionnaly displayed. *) --val string_of_date : ?hour:bool -> float -> string -+val string_of_date : ?absolute:bool -> ?hour:bool -> float -> string -+ -+(* Value returned by string_of_date for current time. -+ * Uses environment variable SOURCE_DATE_EPOCH if set; falls back to -+ * current timestamp otherwise. *) -+val current_date : string - - (** Return the first sentence (until the first dot) of a text. - Don't stop in the middle of [Code], [Verbatim], [List], [Lnum], --- -2.17.1 - |