summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch')
-rw-r--r--gnu/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch149
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
-