Github messages for voidlinux
 help / color / mirror / Atom feed
From: MIvanchev <MIvanchev@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] ocaml: update to 5.1.1
Date: Tue, 30 Jan 2024 17:55:02 +0100	[thread overview]
Message-ID: <20240130165502.ED9F825F1D@inbox.vuxu.org> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-48430@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 381 bytes --]

There is an updated pull request by MIvanchev against master on the void-packages repository

https://github.com/MIvanchev/void-packages ocaml
https://github.com/void-linux/void-packages/pull/48430

ocaml: update to 5.1.1
#### Testing the changes
- I tested the changes in this PR: **NO**

A patch file from https://github.com/void-linux/void-packages/pull/48430.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-ocaml-48430.patch --]
[-- Type: text/x-diff, Size: 11714 bytes --]

From 7052de80e34eb1cade16f2135352891b3763ceea Mon Sep 17 00:00:00 2001
From: Mihail Ivanchev <contact@ivanchev.net>
Date: Mon, 29 Jan 2024 22:43:20 +0100
Subject: [PATCH] ocaml: update to 5.1.1

---
 srcpkgs/ocaml-findlib/template                |  20 +-
 srcpkgs/ocaml/patches/musl-ppc.patch          |  11 -
 .../patches/ocaml-4.08.0-elfv2-ppc64.patch    | 198 ------------------
 .../ocaml/patches/ocaml-4.08.0-ppc-pie.patch  |  42 ----
 srcpkgs/ocaml/template                        |  21 +-
 srcpkgs/ocamlbuild/template                   |   6 +-
 6 files changed, 29 insertions(+), 269 deletions(-)
 delete mode 100644 srcpkgs/ocaml/patches/musl-ppc.patch
 delete mode 100644 srcpkgs/ocaml/patches/ocaml-4.08.0-elfv2-ppc64.patch
 delete mode 100644 srcpkgs/ocaml/patches/ocaml-4.08.0-ppc-pie.patch

diff --git a/srcpkgs/ocaml-findlib/template b/srcpkgs/ocaml-findlib/template
index cd10d0a4bf4b3..b1bf955df669e 100644
--- a/srcpkgs/ocaml-findlib/template
+++ b/srcpkgs/ocaml-findlib/template
@@ -1,24 +1,32 @@
 # Template file for 'ocaml-findlib'
 pkgname=ocaml-findlib
-version=1.9.3
-revision=2
+version=1.9.6
+revision=1
 build_style=configure
 configure_args="-config /etc/findlib.conf -sitelib /usr/lib/ocaml -mandir /usr/share/man"
-make_build_args="all opt"
-makedepends="ncurses-devel ocaml ocamlbuild"
+makedepends="ocaml ocamlbuild"
 short_desc="OCaml package manager"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
 homepage="http://projects.camlcity.org/projects/findlib.html"
 distfiles="http://download.camlcity.org/download/findlib-${version}.tar.gz"
-checksum=c310fcb62838d9e50f0b6d6c5ceefcbe4fe056f72496950ae7d5c6cdaae2cc41
+checksum=2df996279ae16b606db5ff5879f93dbfade0898db9f1a3e82f7f845faa2930a2
 nocross=yes
 nopie=yes
 disable_parallel_build=yes
 
+case "$XBPS_TARGET_MACHINE" in
+	# native code platforms
+	x86_64*|aarch64*|riscv64*) make_build_args="all opt";;
+	*) make_build_target="all";;
+esac
+
+
 do_install() {
 	make prefix="$DESTDIR" install
-	vbin src/findlib/ocamlfind_opt
+	if [ -f src/findlib/ocamlfind_opt ]; then
+		vbin src/findlib/ocamlfind_opt
+	fi
 	vlicense LICENSE
 
 	rm -rf ${DESTDIR}/usr/lib/ocaml/ocamlbuild
diff --git a/srcpkgs/ocaml/patches/musl-ppc.patch b/srcpkgs/ocaml/patches/musl-ppc.patch
deleted file mode 100644
index bc2c10fd43ab8..0000000000000
--- a/srcpkgs/ocaml/patches/musl-ppc.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/runtime/signals_osdep.h
-+++ b/runtime/signals_osdep.h
-@@ -309,6 +309,8 @@
- 
- #elif defined(TARGET_power) && defined(SYS_elf)
- 
-+  #include <asm/ptrace.h>
-+
-   #define DECLARE_SIGNAL_HANDLER(name) \
-     static void name(int sig, struct sigcontext * context)
- 
diff --git a/srcpkgs/ocaml/patches/ocaml-4.08.0-elfv2-ppc64.patch b/srcpkgs/ocaml/patches/ocaml-4.08.0-elfv2-ppc64.patch
deleted file mode 100644
index 65a6cea92adf4..0000000000000
--- a/srcpkgs/ocaml/patches/ocaml-4.08.0-elfv2-ppc64.patch
+++ /dev/null
@@ -1,198 +0,0 @@
---- ocaml-4.08.0/asmcomp/power/arch.ml
-+++ ocaml-4.08.0/asmcomp/power/arch.ml
-@@ -28,7 +28,7 @@ type abi = ELF32 | ELF64v1 | ELF64v2
- let abi =
-   match Config.model with
-   | "ppc" -> ELF32
--  | "ppc64" -> ELF64v1
-+  | "ppc64" -> ELF64v2
-   | "ppc64le" -> ELF64v2
-   | _ -> assert false
- 
---- ocaml-4.10.0/runtime/power.S
-+++ ocaml-4.10.0/runtime/power.S
-@@ -13,7 +13,7 @@
- /*                                                                        */
- /**************************************************************************/
- 
--#if defined(MODEL_ppc64le)
-+#if _CALL_ELF == 2
-         .abiversion 2
- #endif
- 
-@@ -52,8 +52,7 @@
- #define TRAP_PREVIOUS_OFFSET 4
- #define CALLBACK_LINK_SIZE 16
- #define CALLBACK_LINK_OFFSET 0
--#endif
--#if defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
- #define RESERVED_STACK 48
- #define PARAM_SAVE_AREA (8*8)
- #define LR_SAVE 16
-@@ -64,8 +63,7 @@
- #define TRAP_PREVIOUS_OFFSET 64
- #define CALLBACK_LINK_SIZE 32
- #define CALLBACK_LINK_OFFSET 48
--#endif
--#if defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
- #define RESERVED_STACK 32
- #define PARAM_SAVE_AREA 0
- #define LR_SAVE 16
-@@ -91,9 +89,8 @@
- #define ENDFUNCTION(name) \
-   .size name, . - name
- 
--#endif
- 
--#if defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
- #define FUNCTION(name) \
-   .section ".opd","aw"; \
-   .align 3; \
-@@ -107,9 +104,8 @@
- #define ENDFUNCTION(name) \
-   .size name, . - .L.name
- 
--#endif
- 
--#if defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
- #define FUNCTION(name) \
-   .section ".text"; \
-   .globl name; \
-@@ -151,7 +147,7 @@
- 
- #define Caml_state(var) 8*domain_field_caml_##var(28)
- 
--#if defined(MODEL_ppc64)
-+#if _CALL_ELF == 1
-         .section ".opd","aw"
- #else
-         .section ".text"
-@@ -332,14 +328,14 @@
- #if defined(MODEL_ppc)
-         mtctr   C_CALL_FUN
-         bctrl
--#elif defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
-         ld      0, 0(C_CALL_FUN)
-         mr      C_CALL_TOC, 2   /* save current TOC in a callee-save register */
-         mtctr   0
-         ld      2, 8(C_CALL_FUN)
-         bctrl
-         mr      2, C_CALL_TOC   /* restore current TOC */
--#elif defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
-         mtctr   C_CALL_FUN
-         mr      12, C_CALL_FUN
-         mr      C_CALL_TOC, 2   /* save current TOC in a callee-save register */
-@@ -515,14 +511,14 @@
- #if defined(MODEL_ppc)
-         mtctr   12
- .L105:  bctrl
--#elif defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
-         ld      0, 0(12)
-         mtctr   0
-         std     2, TOC_SAVE(1)
-         ld      2, 8(12)
- .L105:  bctrl
-         ld      2, TOC_SAVE(1)
--#elif defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
-         mtctr   12
-         std     2, TOC_SAVE(1)
- .L105:  bctrl
-@@ -641,7 +637,7 @@
-         b       .L102
- ENDFUNCTION(caml_callback3_asm)
- 
--#if defined(MODEL_ppc64)
-+#if _CALL_ELF == 1
-         .section ".opd","aw"
- #else
-         .section ".text"
---- ocaml-4.08.0/testsuite/tools/asmgen_power.S
-+++ ocaml-4.08.0/testsuite/tools/asmgen_power.S
-@@ -25,12 +25,10 @@
- #if defined(MODEL_ppc)
- #define RESERVED_STACK 16
- #define LR_SAVE_AREA 4
--#endif
--#if defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
- #define RESERVED_STACK 48
- #define LR_SAVE_AREA 16
--#endif
--#if defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
- #define RESERVED_STACK 32
- #define LR_SAVE_AREA 16
- #endif
-@@ -44,9 +42,8 @@
-   .type name, @function; \
-   .align 2; \
-   name:
--#endif
- 
--#if defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
- #define FUNCTION(name) \
-   .section ".opd","aw"; \
-   .align 3; \
-@@ -56,9 +53,8 @@
-   .text; \
-   .align 2; \
-   .L.name:
--#endif
- 
--#if defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
- #define FUNCTION(name) \
-   .section ".text"; \
-   .globl name; \
-@@ -118,11 +114,11 @@ FUNCTION(call_gen_code)
-     /* Get function pointer in CTR */
- #if defined(MODEL_ppc)
-         mtctr   3
--#elif defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
-         ld      0, 0(3)
-         mtctr   0
-         ld      2, 8(3)
--#elif defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
-         mtctr   3
-         mr      12, 3
- #else
-@@ -184,11 +180,11 @@ FUNCTION(caml_c_call)
-     /* Jump to C function (address in r28) */
- #if defined(MODEL_ppc)
-         mtctr   28
--#elif defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
-         ld      0, 0(28)
-         mtctr   0
-         ld      2, 8(28)
--#elif defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
-         mtctr   28
-         mr      12, 28
- #else
---- ocaml-4.08.0/runtime/caml/stack.h
-+++ ocaml-4.08.0/runtime/caml/stack.h
-@@ -35,10 +35,10 @@
- #if defined(MODEL_ppc)
- #define Saved_return_address(sp) *((intnat *)((sp) - 4))
- #define Callback_link(sp) ((struct caml_context *)((sp) + 16))
--#elif defined(MODEL_ppc64)
-+#elif _CALL_ELF == 1
- #define Saved_return_address(sp) *((intnat *)((sp) + 16))
- #define Callback_link(sp) ((struct caml_context *)((sp) + (48 + 32)))
--#elif defined(MODEL_ppc64le)
-+#elif _CALL_ELF == 2
- #define Saved_return_address(sp) *((intnat *)((sp) + 16))
- #define Callback_link(sp) ((struct caml_context *)((sp) + (32 + 32)))
- #else
diff --git a/srcpkgs/ocaml/patches/ocaml-4.08.0-ppc-pie.patch b/srcpkgs/ocaml/patches/ocaml-4.08.0-ppc-pie.patch
deleted file mode 100644
index a26f6a639e185..0000000000000
--- a/srcpkgs/ocaml/patches/ocaml-4.08.0-ppc-pie.patch
+++ /dev/null
@@ -1,42 +0,0 @@
---- ocaml-4.11.0/asmcomp/emitaux.ml
-+++ ocaml-4.11.0/asmcomp/emitaux.ml
-@@ -268,6 +268,7 @@
-     match rdbg with
-     | [] -> assert false
-     | d :: rest -> emit rs d rest in
-+  a.efa_align Arch.size_addr;
-   a.efa_word (List.length !frame_descriptors);
-   List.iter emit_frame !frame_descriptors;
-   Label_table.iter emit_debuginfo debuginfos;
---- ocaml-4.08.0/runtime/power.S
-+++ ocaml-4.08.0/runtime/power.S
-@@ -642,6 +642,7 @@ caml_system__code_end:
- /* Frame table */
- 
-         .section ".data"
-+        .align  wordalign
-         .globl  caml_system__frametable
-         .type   caml_system__frametable, @object
- caml_system__frametable:
---- ocaml-4.14.0/configure.ac
-+++ ocaml-4.14.0/configure.ac
-@@ -1006,7 +1006,7 @@ AS_IF([test $arch != "none" && $arch64 ],
- # e.g. Ubuntu >= 17.10 for i386, which uses the glibc dynamic loader.
- 
- AS_CASE([$arch],
--  [amd64|arm64|s390x|none],
-+  [amd64|arm64|s390x|power|none],
-     # ocamlopt generates PIC code or doesn't generate code at all
-     [],
-   [AS_CASE([$host],
---- ocaml-4.14.0/configure
-+++ ocaml-4.14.0/configure
-@@ -13886,7 +13886,7 @@
- # e.g. Ubuntu >= 17.10 for i386, which uses the glibc dynamic loader.
- 
- case $arch in #(
--  amd64|arm64|s390x|none) :
-+  amd64|arm64|s390x|power|none) :
-     # ocamlopt generates PIC code or doesn't generate code at all
-      ;; #(
-   *) :
diff --git a/srcpkgs/ocaml/template b/srcpkgs/ocaml/template
index f44b0b83941a2..db4e45cc77d1c 100644
--- a/srcpkgs/ocaml/template
+++ b/srcpkgs/ocaml/template
@@ -1,26 +1,25 @@
 # Template file for 'ocaml'
 pkgname=ocaml
-version=4.14.0
-revision=2
+version=5.1.0
+revision=1
 build_style="gnu-configure"
 configure_args="--with-pic --libdir=/usr/lib/ocaml"
-make_build_target="world.opt"
-makedepends="ncurses-devel libX11-devel"
-short_desc="Main implementation of the Caml language"
+short_desc="Main implementation of the OCaml language"
 maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="QPL-1.0, LGPL-2.1-only"
 homepage="http://ocaml.org/"
-distfiles="https://github.com/${pkgname}/${pkgname}/archive/${version}.tar.gz"
-checksum=39f44260382f28d1054c5f9d8bf4753cb7ad64027da792f7938344544da155e8
+distfiles="https://github.com/ocaml/ocaml/archive/${version}.tar.gz"
+checksum=43a3ac7aab7f8880f2bb6221317be55319b356e517622fdc28359fe943e6a450
 nocross=yes
 
-export ASPP="cc -c"
-
 case "$XBPS_TARGET_MACHINE" in
-	# also just segfaults when compiled without PIE (BSS-PLT?)
-	ppc-musl) broken="/usr/bin/ocamlc: unsupported relocation type 6";;
+	# native code platforms
+	x86_64*|aarch64*|riscv64*) make_build_target="world.opt";;
+	*) make_build_target="world";;
 esac
 
+export ASPP="cc -c"
+
 post_install() {
 	vlicense LICENSE
 }
diff --git a/srcpkgs/ocamlbuild/template b/srcpkgs/ocamlbuild/template
index 188b9b23dc030..3aa82504b3656 100644
--- a/srcpkgs/ocamlbuild/template
+++ b/srcpkgs/ocamlbuild/template
@@ -1,7 +1,7 @@
 # Template file for 'ocamlbuild'
 pkgname=ocamlbuild
 version=0.14.2
-revision=1
+revision=2
 build_style=gnu-makefile
 hostmakedepends="ocaml"
 short_desc="OCaml build tool"
@@ -13,3 +13,7 @@ checksum=62d2dab6037794c702a83ac584a7066d018cf1645370d1f3d5764c2b458791b1
 nocross=yes
 
 export CHECK_IF_PREINSTALLED=false
+
+pre_build() {
+	command -v ocamlc.opt >/dev/null || export OCAML_NATIVE=false
+}

  parent reply	other threads:[~2024-01-30 16:55 UTC|newest]

Thread overview: 134+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-29 21:43 [PR PATCH] " MIvanchev
2024-01-29 21:45 ` [PR PATCH] [Updated] " MIvanchev
2024-01-29 21:55 ` MIvanchev
2024-01-29 21:57 ` MIvanchev
2024-01-29 22:07 ` MIvanchev
2024-01-29 22:10 ` MIvanchev
2024-01-29 22:13 ` MIvanchev
2024-01-29 22:17 ` MIvanchev
2024-01-29 22:21 ` MIvanchev
2024-01-29 22:26 ` MIvanchev
2024-01-29 22:33 ` MIvanchev
2024-01-29 22:41 ` MIvanchev
2024-01-29 22:42 ` MIvanchev
2024-01-29 22:44 ` MIvanchev
2024-01-30  2:47 ` zdykstra
2024-01-30  6:44 ` icp1994
2024-01-30  8:05 ` MIvanchev
2024-01-30  8:05 ` [PR PATCH] [Closed]: " MIvanchev
2024-01-30 16:55 ` MIvanchev [this message]
2024-01-30 17:06 ` [PR PATCH] [Updated] [WIP] " MIvanchev
2024-01-30 17:16 ` MIvanchev
2024-01-30 17:36 ` MIvanchev
2024-01-30 17:48 ` MIvanchev
2024-01-30 17:55 ` MIvanchev
2024-01-30 18:07 ` MIvanchev
2024-01-30 20:24 ` MIvanchev
2024-01-30 20:25 ` MIvanchev
2024-01-30 21:34 ` MIvanchev
2024-01-30 21:54 ` MIvanchev
2024-01-31  8:27 ` MIvanchev
2024-01-31  8:41 ` MIvanchev
2024-01-31  8:54 ` MIvanchev
2024-01-31 11:37 ` MIvanchev
2024-01-31 11:53 ` MIvanchev
2024-01-31 13:25 ` MIvanchev
2024-01-31 13:38 ` MIvanchev
2024-01-31 18:32 ` MIvanchev
2024-01-31 18:38 ` MIvanchev
2024-01-31 19:05 ` MIvanchev
2024-01-31 19:12 ` MIvanchev
2024-01-31 19:13 ` MIvanchev
2024-01-31 19:21 ` MIvanchev
2024-01-31 19:30 ` MIvanchev
2024-01-31 19:41 ` MIvanchev
2024-01-31 20:19 ` MIvanchev
2024-01-31 20:38 ` MIvanchev
2024-01-31 20:49 ` MIvanchev
2024-01-31 20:55 ` MIvanchev
2024-01-31 21:05 ` MIvanchev
2024-01-31 21:46 ` MIvanchev
2024-01-31 21:50 ` MIvanchev
2024-01-31 22:03 ` MIvanchev
2024-02-01 15:58 ` MIvanchev
2024-02-01 16:12 ` MIvanchev
2024-02-01 16:32 ` MIvanchev
2024-02-01 16:39 ` MIvanchev
2024-02-01 16:48 ` MIvanchev
2024-02-01 21:11 ` MIvanchev
2024-02-01 21:25 ` MIvanchev
2024-02-01 21:38 ` MIvanchev
2024-02-02  8:54 ` MIvanchev
2024-02-02  9:00 ` MIvanchev
2024-02-02  9:15 ` MIvanchev
2024-02-02  9:26 ` MIvanchev
2024-02-02  9:47 ` MIvanchev
2024-02-02  9:51 ` MIvanchev
2024-02-02  9:56 ` MIvanchev
2024-02-02 10:29 ` MIvanchev
2024-02-02 10:51 ` MIvanchev
2024-02-02 11:14 ` MIvanchev
2024-02-02 11:28 ` MIvanchev
2024-02-02 11:46 ` MIvanchev
2024-02-02 12:00 ` MIvanchev
2024-02-02 13:05 ` MIvanchev
2024-02-02 13:34 ` MIvanchev
2024-02-02 13:41 ` MIvanchev
2024-02-02 13:53 ` MIvanchev
2024-02-02 14:09 ` MIvanchev
2024-02-02 14:20 ` MIvanchev
2024-02-02 14:32 ` MIvanchev
2024-02-02 15:18 ` MIvanchev
2024-02-02 15:18 ` MIvanchev
2024-02-02 15:19 ` MIvanchev
2024-02-02 15:19 ` MIvanchev
2024-02-02 15:20 ` MIvanchev
2024-02-02 15:41 ` MIvanchev
2024-02-02 23:21 ` MIvanchev
2024-02-02 23:33 ` MIvanchev
2024-02-03  8:35 ` MIvanchev
2024-02-03  8:52 ` MIvanchev
2024-02-03  8:59 ` MIvanchev
2024-02-03  9:50 ` MIvanchev
2024-02-03  9:56 ` MIvanchev
2024-02-03 10:20 ` MIvanchev
2024-02-03 10:24 ` MIvanchev
2024-02-03 10:38 ` MIvanchev
2024-02-04  8:41 ` MIvanchev
2024-02-04  8:42 ` MIvanchev
2024-02-04  9:20 ` MIvanchev
2024-02-04  9:22 ` MIvanchev
2024-02-04  9:30 ` MIvanchev
2024-02-04 10:20 ` MIvanchev
2024-02-04 11:46 ` MIvanchev
2024-02-04 11:51 ` MIvanchev
2024-02-04 12:07 ` MIvanchev
2024-02-04 12:32 ` MIvanchev
2024-02-04 19:28 ` MIvanchev
2024-02-04 20:21 ` MIvanchev
2024-02-04 22:06 ` MIvanchev
2024-02-05  8:41 ` MIvanchev
2024-02-05  9:20 ` MIvanchev
2024-02-05 11:44 ` MIvanchev
2024-02-05 11:45 ` MIvanchev
2024-02-05 11:46 ` MIvanchev
2024-02-05 12:54 ` MIvanchev
2024-02-05 15:48 ` MIvanchev
2024-02-05 16:47 ` MIvanchev
2024-02-05 21:02 ` MIvanchev
2024-02-05 21:55 ` MIvanchev
2024-02-05 22:00 ` MIvanchev
2024-02-05 22:20 ` MIvanchev
2024-02-05 22:21 ` MIvanchev
2024-02-06  8:32 ` MIvanchev
2024-02-06  8:34 ` MIvanchev
2024-02-24  8:27 ` MIvanchev
2024-02-24  8:34 ` MIvanchev
2024-02-24  8:35 ` MIvanchev
2024-02-24  8:48 ` MIvanchev
2024-02-24  9:24 ` MIvanchev
2024-02-24 10:11 ` MIvanchev
2024-02-24 11:10 ` MIvanchev
2024-02-24 11:37 ` MIvanchev
2024-02-24 18:06 ` MIvanchev
2024-02-25 16:48 ` [PR PATCH] [Closed]: " MIvanchev

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240130165502.ED9F825F1D@inbox.vuxu.org \
    --to=mivanchev@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).