From: "Craig Andrews" <candrews@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/roct-thunk-interface/files/, dev-libs/roct-thunk-interface/
Date: Mon, 14 Jan 2019 20:25:47 +0000 (UTC) [thread overview]
Message-ID: <1547497532.950f935be6030e5ea62f0b922927b0013b120c90.candrews@gentoo> (raw)
commit: 950f935be6030e5ea62f0b922927b0013b120c90
Author: Craig Andrews <candrews <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 14 03:54:40 2018 +0000
Commit: Craig Andrews <candrews <AT> gentoo <DOT> org>
CommitDate: Mon Jan 14 20:25:32 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=950f935b
dev-libs/roct-thunk-interface: Radeon Open Compute Thunk Interface
Bug: https://bugs.gentoo.org/650804
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Craig Andrews <candrews <AT> gentoo.org>
dev-libs/roct-thunk-interface/Manifest | 1 +
...t-thunk-interface-2.0.0-correctly-install.patch | 288 +++++++++++++++++++++
dev-libs/roct-thunk-interface/metadata.xml | 22 ++
.../roct-thunk-interface-2.0.0.ebuild | 32 +++
4 files changed, 343 insertions(+)
diff --git a/dev-libs/roct-thunk-interface/Manifest b/dev-libs/roct-thunk-interface/Manifest
new file mode 100644
index 00000000000..5a78b9fd36a
--- /dev/null
+++ b/dev-libs/roct-thunk-interface/Manifest
@@ -0,0 +1 @@
+DIST roct-thunk-interface-2.0.0.tar.gz 1958218 BLAKE2B c1ba89cac9a18964e040e6b1e57a464216e7086c400e3360cfca6f376ac90b0b1afbb3a2a4d995581d1829ca57afe62bf6f2ac59cc103a48d384a8e52b1457d0 SHA512 7d2e35df2bec201bcc977328d7d36b921f76b57a0c54fc2332eb1faf3a722b6a3a1e3b1658e93b216ed68b965426c463a2dbf52a22af64ce1dcc9fad0f27ca9c
diff --git a/dev-libs/roct-thunk-interface/files/roct-thunk-interface-2.0.0-correctly-install.patch b/dev-libs/roct-thunk-interface/files/roct-thunk-interface-2.0.0-correctly-install.patch
new file mode 100644
index 00000000000..8248c5f4b36
--- /dev/null
+++ b/dev-libs/roct-thunk-interface/files/roct-thunk-interface-2.0.0-correctly-install.patch
@@ -0,0 +1,288 @@
+https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface/pull/25
+From c60501d7e69db24f5d880aace73662384ea90b27 Mon Sep 17 00:00:00 2001
+From: Andreas Schneider <asn@cryptomilk.org>
+Date: Fri, 7 Sep 2018 10:30:05 +0200
+Subject: [PATCH 1/7] cmake: Do not mess with CMAKE_C_FLAGS
+
+---
+ CMakeLists.txt | 11 +++--------
+ 1 file changed, 3 insertions(+), 8 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index cb2605b..8a0f362 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -59,15 +59,9 @@ set ( BUILD_VERSION_STRING "${BUILD_VERSION_MAJOR}.${BUILD_VERSION_MINOR}.${BUIL
+ #set ( CMAKE_VERBOSE_MAKEFILE on )
+
+ ## Compiler flags
+-set ( CMAKE_C_FLAGS "-fPIC -W -Wall -Wextra -Wno-unused-parameter -Wformat-security -Wswitch-default -Wundef -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wlogical-op -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wunreachable-code -std=gnu99 -fvisibility=hidden" )
++set (HSAKMT_C_FLAGS -fPIC -W -Wall -Wextra -Wno-unused-parameter -Wformat-security -Wswitch-default -Wundef -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wlogical-op -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wunreachable-code -std=gnu99 -fvisibility=hidden)
+ if ( "${CMAKE_C_COMPILER_VERSION}" STRGREATER "4.8.0")
+- set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror" )
+-endif ()
+-
+-if ( "${CMAKE_BUILD_TYPE}" STREQUAL Release )
+- set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2" )
+-else ()
+- set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g" )
++ set (HSAKMT_C_FLAGS ${HSAKMT_C_FLAGS} -Werror)
+ endif ()
+
+ set ( HSAKMT_LINKER_SCRIPT "${CMAKE_CURRENT_SOURCE_DIR}/src/libhsakmt.ver" )
+@@ -96,6 +90,7 @@ include_directories ( ${CMAKE_CURRENT_SOURCE_DIR}/src )
+
+ ## Add the library
+ add_library ( ${HSAKMT_TARGET} SHARED ${HSAKMT_SRC} )
++target_compile_options(${HSAKMT_TARGET} PRIVATE ${HSAKMT_C_FLAGS})
+
+ ## Set the VERSION and SOVERSION values
+ set_property ( TARGET ${HSAKMT_TARGET} PROPERTY VERSION "${LIB_VERSION_STRING}" )
+
+From d37b3e2e634a40192c113d9a8256f3d2aa24acfa Mon Sep 17 00:00:00 2001
+From: Andreas Schneider <asn@cryptomilk.org>
+Date: Fri, 7 Sep 2018 10:31:59 +0200
+Subject: [PATCH 2/7] cmake: Do not mess with CMAKE_SHARED_LINKER_FLAGS
+
+---
+ CMakeLists.txt | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8a0f362..a2a36cd 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -67,7 +67,7 @@ endif ()
+ set ( HSAKMT_LINKER_SCRIPT "${CMAKE_CURRENT_SOURCE_DIR}/src/libhsakmt.ver" )
+
+ ## Linker Flags
+-set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--version-script=${HSAKMT_LINKER_SCRIPT} -Wl,-soname=${HSAKMT_COMPONENT}.so.$(PROJECT_VERSION_MAJOR) -Wl,-z,nodelete -Wl,-no-undefined" )
++set (HSAKMT_LINK_FLAGS "-Wl,--version-script=${HSAKMT_LINKER_SCRIPT} -Wl,-soname=${HSAKMT_COMPONENT}.so.$(PROJECT_VERSION_MAJOR) -Wl,-z,nodelete -Wl,-no-undefined" )
+
+ ## Source files
+ set ( HSAKMT_SRC "src/debug.c"
+@@ -91,6 +91,7 @@ include_directories ( ${CMAKE_CURRENT_SOURCE_DIR}/src )
+ ## Add the library
+ add_library ( ${HSAKMT_TARGET} SHARED ${HSAKMT_SRC} )
+ target_compile_options(${HSAKMT_TARGET} PRIVATE ${HSAKMT_C_FLAGS})
++set_property(TARGET ${HSAKMT_TARGET} PROPERTY LINK_FLAGS ${HSAKMT_LINK_FLAGS})
+
+ ## Set the VERSION and SOVERSION values
+ set_property ( TARGET ${HSAKMT_TARGET} PROPERTY VERSION "${LIB_VERSION_STRING}" )
+
+From 7f9ad94a9932319930f96d49a78fa9e741cd7292 Mon Sep 17 00:00:00 2001
+From: Andreas Schneider <asn@cryptomilk.org>
+Date: Fri, 7 Sep 2018 10:41:04 +0200
+Subject: [PATCH 3/7] cmake: Use GNUInstallDirs for installtion
+
+This will allow distributions to install it correctly.
+---
+ CMakeLists.txt | 13 ++++++++-----
+ 1 file changed, 8 insertions(+), 5 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index a2a36cd..58076fa 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -111,8 +111,9 @@ endif ()
+
+ ## Define default variable and variables for the optional build target hsakmt-dev
+ set ( SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR} CACHE STRING "Location of hsakmt source code." )
+-set ( CMAKE_INSTALL_PREFIX "/opt/rocm" CACHE STRING "Default installation directory." )
+-set ( CPACK_PACKAGING_INSTALL_PREFIX "/opt/rocm" CACHE STRING "Default packaging prefix." )
++set ( HSAKMT_INSTALL_PREFIX "/opt/rocm" CACHE STRING "Default installation directory." )
++set ( HSAKMT_INSTALL_LIBDIR "hsakmt/lib" CACHE STRING "Default installation directory." )
++set ( HSAKMT_PACKAGING_INSTALL_PREFIX "/opt/rocm" CACHE STRING "Default packaging prefix." )
+ set ( CPACK_GENERATOR "DEB;RPM" CACHE STRING "Default packaging generators." )
+
+ ## Specify build, install and package targets hsakmt-dev
+@@ -121,9 +122,12 @@ configure_file ( hsakmt-dev.txt ${DEV_BUILD_DIR}/CMakeLists.txt @ONLY )
+ add_custom_target ( build-dev
+ COMMAND ${CMAKE_COMMAND}
+ -DSOURCE_DIR="${SOURCE_DIR}"
+- -DCMAKE_INSTALL_PREFIX="${CMAKE_INSTALL_PREFIX}"
++ -DCMAKE_INSTALL_PREFIX="${HSAKMT_INSTALL_PREFIX}"
++ -DCMAKE_INSTALL_LIBDIR="${HSAKMT_INSTALL_LIBDIR}"
+ -DCPACK_RPM_PACKAGE_REQUIRES="hsakmt-roct"
+- -DCPACK_PACKAGING_INSTALL_PREFIX="${CPACK_PACKAGING_INSTALL_PREFIX}"
++ -DCPACK_PACKAGING_INSTALL_PREFIX="${HSAKMT_PACKAGING_INSTALL_PREFIX}"
++ COMMAND rm -rf *.deb *.rpm *.tar.gz
++ COMMAND make package
+ WORKING_DIRECTORY ${DEV_BUILD_DIR} )
+
+ ## Custom targets for the devel package
+@@ -135,7 +139,6 @@ add_custom_target ( package-dev DEPENDS build-dev
+
+ ## Add the install directives for the runtime library.
+ install ( TARGETS ${HSAKMT_TARGET} DESTINATION ${CMAKE_INSTALL_LIBDIR} )
+-install ( FILES ${SOURCE_DIR}/LICENSE.md DESTINATION libhsakmt )
+
+ ## Add the packaging directives for the runtime library.
+ set ( CPACK_PACKAGE_NAME ${HSAKMT_PACKAGE} )
+
+From d3f841cf2c504c7af9735d27d4f4b9784754708d Mon Sep 17 00:00:00 2001
+From: Andreas Schneider <asn@cryptomilk.org>
+Date: Fri, 7 Sep 2018 11:10:52 +0200
+Subject: [PATCH 4/7] cmake: Install header files
+
+---
+ CMakeLists.txt | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 58076fa..81ec134 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -140,6 +140,14 @@ add_custom_target ( package-dev DEPENDS build-dev
+ ## Add the install directives for the runtime library.
+ install ( TARGETS ${HSAKMT_TARGET} DESTINATION ${CMAKE_INSTALL_LIBDIR} )
+
++install(FILES
++ include/hsakmt.h
++ include/hsakmttypes.h
++ DESTINATION
++ ${CMAKE_INSTALL_INCLUDEDIR}/libhsakmt
++ COMPONENT
++ ${HSAKMT_COMPONENT}-header)
++
+ ## Add the packaging directives for the runtime library.
+ set ( CPACK_PACKAGE_NAME ${HSAKMT_PACKAGE} )
+ set ( CPACK_PACKAGE_VENDOR "AMD" )
+
+From 66e43bab21ee2a8ba1eed59e6a5052eb2f0fc1b8 Mon Sep 17 00:00:00 2001
+From: Andreas Schneider <asn@cryptomilk.org>
+Date: Fri, 7 Sep 2018 10:43:26 +0200
+Subject: [PATCH 5/7] cmake: Install the pkgconfig file
+
+---
+ CMakeLists.txt | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 81ec134..5482e02 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -169,5 +169,11 @@ set ( CPACK_RPM_POST_UNINSTALL_SCRIPT_FILE "${CMAKE_CURRENT_SOURCE_DIR}/RPM/rpm_
+
+ # CPACK_PACKAGING_INSTALL_PREFIX is needed in libhsakmt.pc.in
+ configure_file ( libhsakmt.pc.in ${DEV_BUILD_DIR}/libhsakmt.pc @ONLY )
++install(FILES
++ ${DEV_BUILD_DIR}/libhsakmt.pc
++ DESTINATION
++ ${CMAKE_INSTALL_LIBDIR}/pkgconfig
++ COMPONENT
++ ${HSAKMT_COMPONENT}-pkgconfig)
+
+ include ( CPack )
+
+From 5f1ed605a484e30c51954817b6d8712ab4c6046e Mon Sep 17 00:00:00 2001
+From: Andreas Schneider <asn@cryptomilk.org>
+Date: Tue, 25 Sep 2018 18:47:57 +0200
+Subject: [PATCH 6/7] cmake: Do not strip targets in the release build
+
+Distributions want to generate debuginfo packages, do not strip them! If
+you want to do it during installation use 'make install/strip'!
+---
+ CMakeLists.txt | 5 -----
+ 1 file changed, 5 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 5482e02..f8f58cd 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -104,11 +104,6 @@ target_link_libraries ( ${HSAKMT_TARGET}
+ pthread rt numa ${PC_LIBPCI_LIBRARIES}
+ )
+
+-## If the library is a release, strip the target library
+-if ( "${CMAKE_BUILD_TYPE}" STREQUAL Release )
+- add_custom_command ( TARGET ${HSAKMT_TARGET} POST_BUILD COMMAND ${CMAKE_STRIP} ${HSAKMT_COMPONENT}.so )
+-endif ()
+-
+ ## Define default variable and variables for the optional build target hsakmt-dev
+ set ( SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR} CACHE STRING "Location of hsakmt source code." )
+ set ( HSAKMT_INSTALL_PREFIX "/opt/rocm" CACHE STRING "Default installation directory." )
+
+From 86b29b265c1a91d2bc931453e4edac66a6d9da0d Mon Sep 17 00:00:00 2001
+From: Andreas Schneider <asn@cryptomilk.org>
+Date: Tue, 25 Sep 2018 19:16:43 +0200
+Subject: [PATCH 7/7] cmake: Create cmake config file
+
+Another cmake project like hsa-runtime could just use:
+
+find_package(hsakmt REQUIRED 1.9.0)
+---
+ CMakeLists.txt | 31 ++++++++++++++++++++++++++++++-
+ hsakmt-config.cmake.in | 9 +++++++++
+ 2 files changed, 39 insertions(+), 1 deletion(-)
+ create mode 100644 hsakmt-config.cmake.in
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f8f58cd..6e5a0fe 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -30,7 +30,7 @@ set ( HSAKMT_PACKAGE "hsakmt-roct" )
+ set ( HSAKMT_COMPONENT "lib${HSAKMT}" )
+ set ( HSAKMT_TARGET "${HSAKMT}" )
+
+-project ( ${HSAKMT_TARGET} )
++project ( ${HSAKMT_TARGET} VERSION 1.9.0)
+
+ ## Set default module path if not already set
+ if ( NOT DEFINED CMAKE_MODULE_PATH )
+@@ -44,6 +44,8 @@ include ( GNUInstallDirs )
+ ## Setup the package version.
+ get_version ( "1.0.0" )
+
++# FIXME: The library version should not be tied to the project version!
++# There are rules how to bump version numbers for libraries.
+ set ( BUILD_VERSION_MAJOR ${VERSION_MAJOR} )
+ set ( BUILD_VERSION_MINOR ${VERSION_MINOR} )
+ set ( BUILD_VERSION_PATCH ${VERSION_PATCH} )
+@@ -171,4 +173,31 @@ install(FILES
+ COMPONENT
+ ${HSAKMT_COMPONENT}-pkgconfig)
+
++# Create cmake configuration files
++include(CMakePackageConfigHelpers)
++
++set(HSAKMT_LIBRARY_NAME ${CMAKE_SHARED_LIBRARY_PREFIX}${PROJECT_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX})
++
++set(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME} CACHE INTERNAL "")
++set(LIB_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR} CACHE INTERNAL "")
++
++configure_package_config_file(${PROJECT_NAME}-config.cmake.in
++ ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}-config.cmake
++ PATH_VARS
++ INCLUDE_INSTALL_DIR LIB_INSTALL_DIR
++ INSTALL_DESTINATION
++ ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME})
++
++write_basic_package_version_file(${PROJECT_NAME}-config-version.cmake
++ COMPATIBILITY
++ AnyNewerVersion)
++
++install(FILES
++ ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}-config.cmake
++ ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}-config-version.cmake
++ DESTINATION
++ ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
++ COMPONENT
++ devel)
++
+ include ( CPack )
+diff --git a/hsakmt-config.cmake.in b/hsakmt-config.cmake.in
+new file mode 100644
+index 0000000..e6bad17
+--- /dev/null
++++ b/hsakmt-config.cmake.in
+@@ -0,0 +1,9 @@
++@PACKAGE_INIT@
++
++set_and_check(HSAKMT_INCLUDE_DIR @PACKAGE_LIB_INSTALL_DIR@)
++set_and_check(HSAKMT_LIB_DIR @PACKAGE_LIB_INSTALL_DIR@)
++
++set(HSAKMT_LIBRARY @PACKAGE_LIB_INSTALL_DIR@/@HSAKMT_LIBRARY_NAME@)
++set(HSAKMT_LIBRARIES @PACKAGE_LIB_INSTALL_DIR@/@HSAKMT_LIBRARY_NAME@)
++
++mark_as_advanced(HSAKMT_LIBRARY HSAKMT_INCLUDE_DIR)
diff --git a/dev-libs/roct-thunk-interface/metadata.xml b/dev-libs/roct-thunk-interface/metadata.xml
new file mode 100644
index 00000000000..9dd431e1fbf
--- /dev/null
+++ b/dev-libs/roct-thunk-interface/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>candrews@gentoo.org</email>
+ <name>Craig Andrews</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>gentoo@holzke.net</email>
+ <name>Wilfried Holzke</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">RadeonOpenCompute/ROCT-Thunk-Interface</remote-id>
+ </upstream>
+ <longdescription lang="en">
+ Radeon Open Compute Thunk Interface
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-libs/roct-thunk-interface/roct-thunk-interface-2.0.0.ebuild b/dev-libs/roct-thunk-interface/roct-thunk-interface-2.0.0.ebuild
new file mode 100644
index 00000000000..91642b3b2f1
--- /dev/null
+++ b/dev-libs/roct-thunk-interface/roct-thunk-interface-2.0.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake-utils linux-info
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface/"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface/archive/roc-${PV}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/ROCT-Thunk-Interface-roc-${PV}"
+ KEYWORDS="~amd64"
+fi
+PATCHES=(
+ "${FILESDIR}/${P}-correctly-install.patch"
+)
+
+DESCRIPTION="Radeon Open Compute Thunk Interface"
+HOMEPAGE="https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface"
+CONFIG_CHECK="~HSA_AMD"
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+
+RDEPEND="sys-process/numactl"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ sed -e "s:get_version ( \"1.0.0\" ):get_version ( \"${PV}\" ):" -i CMakeLists.txt || die
+ cmake-utils_src_prepare
+}
next reply other threads:[~2019-01-14 20:25 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-14 20:25 Craig Andrews [this message]
-- strict thread matches above, loose matches on Subject: below --
2019-08-07 17:38 [gentoo-commits] repo/gentoo:master commit in: dev-libs/roct-thunk-interface/files/, dev-libs/roct-thunk-interface/ Craig Andrews
2021-03-24 14:57 Craig Andrews
2022-12-19 14:55 Andreas Sturmlechner
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=1547497532.950f935be6030e5ea62f0b922927b0013b120c90.candrews@gentoo \
--to=candrews@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.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