From owner-dev-commits-ports-all@freebsd.org Fri Sep 3 04:41:12 2021 Return-Path: Delivered-To: dev-commits-ports-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id DD6C666F00F; Fri, 3 Sep 2021 04:41:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4H14qr2sXnz3prc; Fri, 3 Sep 2021 04:41:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 20E3D26177; Fri, 3 Sep 2021 04:41:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 1834fCnA092686; Fri, 3 Sep 2021 04:41:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 1834fCvu092685; Fri, 3 Sep 2021 04:41:12 GMT (envelope-from git) Date: Fri, 3 Sep 2021 04:41:12 GMT Message-Id: <202109030441.1834fCvu092685@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Alexey Dokuchaev Subject: git: 3b2ace437838 - main - textproc/htmlc: switch away from using unsafe strings for OCaml 4.06+. MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: danfe X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3b2ace4378388235beb5a68a6ec136038f92e0b6 Auto-Submitted: auto-generated X-BeenThere: dev-commits-ports-all@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Commit messages for all branches of the ports repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 03 Sep 2021 04:41:13 -0000 The branch main has been updated by danfe: URL: https://cgit.FreeBSD.org/ports/commit/?id=3b2ace4378388235beb5a68a6ec136038f92e0b6 commit 3b2ace4378388235beb5a68a6ec136038f92e0b6 Author: Alexey Dokuchaev AuthorDate: 2021-09-03 04:39:54 +0000 Commit: Alexey Dokuchaev CommitDate: 2021-09-03 04:39:56 +0000 textproc/htmlc: switch away from using unsafe strings for OCaml 4.06+. --- textproc/htmlc/Makefile | 5 +-- textproc/htmlc/files/patch-immutable-strings | 66 ++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+), 3 deletions(-) diff --git a/textproc/htmlc/Makefile b/textproc/htmlc/Makefile index 1fb60712a09e..8f9e848a13f9 100644 --- a/textproc/htmlc/Makefile +++ b/textproc/htmlc/Makefile @@ -12,14 +12,13 @@ COMMENT= Text file generator BUILD_DEPENDS= ocamlc:lang/ocaml USES= gmake tar:tgz +HAS_CONFIGURE= yes +CONFIGURE_ARGS= --prefix ${LOCALBASE} PLIST_FILES= bin/htmlc bin/htmlc.byt share/htmlc/env PORTDOCS= LICENSE INSTALL README JoeCaml.gif rocq.gif copyright-eng.htm \ copyright-fra.htm eng.htm fra.htm index.htm -HAS_CONFIGURE= yes -CONFIGURE_ARGS= --prefix ${LOCALBASE} - OPTIONS_DEFINE= DOCS post-patch: diff --git a/textproc/htmlc/files/patch-immutable-strings b/textproc/htmlc/files/patch-immutable-strings new file mode 100644 index 000000000000..70f2ba5392b6 --- /dev/null +++ b/textproc/htmlc/files/patch-immutable-strings @@ -0,0 +1,66 @@ +--- compiler/execute.ml.orig 2009-02-19 20:28:11 UTC ++++ compiler/execute.ml +@@ -18,11 +18,11 @@ + + let htmlc_command htmlc_add_string src_name ob command_name = + let ic = Unix.open_process_in command_name in +- let ib = String.create Configuration.line_buffer_length in ++ let ib = Bytes.create Configuration.line_buffer_length in + let status = + let rec loop () = + let n = input ic ib 0 Configuration.line_buffer_length in +- if n > 0 then (htmlc_add_string ob (String.sub ib 0 n); loop ()) ++ if n > 0 then (htmlc_add_string ob (Bytes.sub_string ib 0 n); loop ()) + else raise End_of_file in + try loop () with + | End_of_file -> +--- compiler/htmlc.ml.orig 2009-08-13 14:27:53 UTC ++++ compiler/htmlc.ml +@@ -236,11 +236,11 @@ let decimal_to_hexa i = + ;; + + let hexa_char c = +- let s = String.make 3 '%' ++ let s = Bytes.make 3 '%' + and i = int_of_char c in + s.[1] <- decimal_to_hexa (i / 16); + s.[2] <- decimal_to_hexa (i mod 16); +- s ++ Bytes.to_string s + ;; + + let url_encode ob s = +--- compiler/lib_strings.ml.orig 2008-11-05 10:42:35 UTC ++++ compiler/lib_strings.ml +@@ -95,25 +95,25 @@ let center_gen c s len_in = + let len_s = String.length s in + if len_in < len_s then not_enough_room "center" len_s len_in else + let idx = (len_in - len_s) / 2 in +- let b = String.make len_in c in ++ let b = Bytes.make len_in c in + String.blit s 0 b idx len_s; +- b;; ++ Bytes.to_string b;; + let center s len_in = center_gen ' ' s len_in;; + + let flush_left_gen c s len_in = + let len_s = String.length s in + if len_in < len_s then not_enough_room "flush_left" len_s len_in else + let idx = 0 in +- let b = String.make len_in c in ++ let b = Bytes.make len_in c in + String.blit s 0 b idx len_s; +- b;; ++ Bytes.to_string b;; + let flush_left s len_in = flush_left_gen ' ' s len_in;; + + let flush_right_gen c s len_in = + let len_s = String.length s in + if len_in < len_s then not_enough_room "flush_right" len_s len_in else + let idx = len_in - len_s in +- let b = String.make len_in c in ++ let b = Bytes.make len_in c in + String.blit s 0 b idx len_s; +- b;; ++ Bytes.to_string b;; + let flush_right s len_in = flush_right_gen ' ' s len_in;;