public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Justin Lecher" <jlec@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: app-office/scribus/files/, app-office/scribus/
Date: Sun,  6 Nov 2016 08:25:58 +0000 (UTC)	[thread overview]
Message-ID: <1478420690.31e9ab607088bf9f7ec7308f2e601d6b933372e0.jlec@gentoo> (raw)

commit:     31e9ab607088bf9f7ec7308f2e601d6b933372e0
Author:     Andreas Sturmlechner <andreas.sturmlechner <AT> gmail <DOT> com>
AuthorDate: Thu Oct 27 01:31:50 2016 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Sun Nov  6 08:24:50 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=31e9ab60

app-office/scribus: Fix build w/ Qt-5.7.0 and C++11

Use upstream's WANT_CPP11
Drop duplicate boost DEPEND.
Add missing || die's
Add subslot operators on boost and libpng
Require >=boost-1.62 for C++11 per dracwyrm+Soap's advice

Package-Manager: portage-2.3.0

Signed-off-by: Justin Lecher <jlec <AT> gentoo.org>

 .../scribus/files/scribus-1.5.2-cmake-qt57.patch   |  31 +++
 .../scribus/files/scribus-1.5.2-cxx-build.patch    |  24 +++
 .../scribus/files/scribus-1.5.2-gcc6-warn.patch    |  87 ++++++++
 .../scribus/files/scribus-1.5.2-qt57-build.patch   |  21 ++
 app-office/scribus/scribus-1.5.2-r2.ebuild         | 218 +++++++++++++++++++++
 5 files changed, 381 insertions(+)

diff --git a/app-office/scribus/files/scribus-1.5.2-cmake-qt57.patch b/app-office/scribus/files/scribus-1.5.2-cmake-qt57.patch
new file mode 100644
index 00000000..214fab4
--- /dev/null
+++ b/app-office/scribus/files/scribus-1.5.2-cmake-qt57.patch
@@ -0,0 +1,31 @@
+commit 413c8c8a0ded5aa4b0f8d85dbc335082e809f3b2
+Author: Craig Bradney <mrb@scribus.info>
+Date:   Thu Jun 16 20:01:34 2016 +0000
+
+    Add better support for C++11/Qt 5.7.0. CMAKE minimum bumped to 3.2
+    
+    git-svn-id: svn://scribus.net/trunk/Scribus@21377 11d20701-8431-0410-a711-e3c959e3b870
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index bc1ec57..9e92a38 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -3,8 +3,9 @@
+ 
+ #Set our CMake minimum version
+ #Require 2.8.9 for Qt5
++#Require 3.1.0 for Qt 5.7 C++ 11 easy support
+ #Require 3.2.0 for add_custom_target with byproducts
+-CMAKE_MINIMUM_REQUIRED(VERSION 2.8.9 FATAL_ERROR)
++CMAKE_MINIMUM_REQUIRED(VERSION 3.2.0 FATAL_ERROR)
+ 
+ #Pretty colors
+ SET(CMAKE_COLOR_MAKEFILE ON)
+@@ -382,6 +383,7 @@ ADD_DEFINITIONS("-DLIBDIR=\\\"${CMAKE_INSTALL_PREFIX}/${LIBDIR}\\\"")
+ #C++11 Support
+ IF(WANT_CPP11)
+ 	MESSAGE(STATUS "Enabling C++11 compiler features")
++	set(CMAKE_CXX_STANDARD 11)
+ 	ADD_DEFINITIONS("-std=c++11")
+ ENDIF(WANT_CPP11)
+ 

diff --git a/app-office/scribus/files/scribus-1.5.2-cxx-build.patch b/app-office/scribus/files/scribus-1.5.2-cxx-build.patch
new file mode 100644
index 00000000..da8d50d
--- /dev/null
+++ b/app-office/scribus/files/scribus-1.5.2-cxx-build.patch
@@ -0,0 +1,24 @@
+commit 1a9bdbc7ab793b15e93f1ab29ce06dd69c061f58
+Author: Jean Ghali <jghali@libertysurf.fr>
+Date:   Sat Jun 18 12:49:45 2016 +0000
+
+    fix build issue when not compiling with c++11 : std::isinf is c++11 only
+    
+    git-svn-id: svn://scribus.net/trunk/Scribus@21382 11d20701-8431-0410-a711-e3c959e3b870
+
+diff --git a/scribus/third_party/fparser/fpoptimizer.cc b/scribus/third_party/fparser/fpoptimizer.cc
+index 673e1b6..0c1bad5 100644
+--- a/scribus/third_party/fparser/fpoptimizer.cc
++++ b/scribus/third_party/fparser/fpoptimizer.cc
+@@ -7296,7 +7296,11 @@ namespace FPoptimizer_CodeTree
+                             //if(imm >= 0.0)
+                             {
+                                 double new_base_immed = std::pow(base_immed, imm);
++#if __cplusplus < 201103L
++								if(isinf(new_base_immed) || new_base_immed == 0.0)
++#else
+ 								if(std::isinf(new_base_immed) || new_base_immed == 0.0)
++#endif
+                                 {
+                                     // It produced an infinity. Do not change.
+                                     break;

diff --git a/app-office/scribus/files/scribus-1.5.2-gcc6-warn.patch b/app-office/scribus/files/scribus-1.5.2-gcc6-warn.patch
new file mode 100644
index 00000000..224ebe4
--- /dev/null
+++ b/app-office/scribus/files/scribus-1.5.2-gcc6-warn.patch
@@ -0,0 +1,87 @@
+commit bb3066704e987210c324ec7f3bfb2c8153d9710e
+Author: Jean Ghali <jghali@libertysurf.fr>
+Date:   Sat Aug 20 12:18:31 2016 +0000
+
+    fix a few gcc 6 warnings related to auto_ptr deprecation in c++11 by replacing it with QScopedPointer
+    
+    git-svn-id: svn://scribus.net/trunk/Scribus@21430 11d20701-8431-0410-a711-e3c959e3b870
+
+diff --git a/scribus/sclistboxpixmap.h b/scribus/sclistboxpixmap.h
+index 044d45a..a067b79 100644
+--- a/scribus/sclistboxpixmap.h
++++ b/scribus/sclistboxpixmap.h
+@@ -13,6 +13,7 @@ for which a new license (GPL+exception) is in place.
+ #include <QDebug>
+ #include <QPainter>
+ #include <QPixmap>
++#include <QScopedPointer>
+ #include <QVariant>
+ 
+ #include "scguardedptr.h"
+@@ -30,19 +31,19 @@ public:
+ 	virtual QSize sizeHint (const QStyleOptionViewItem & option, const QModelIndex & index ) const;
+ 	virtual void paint(QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index ) const;
+ protected:
+-	static std::auto_ptr<QPixmap> pmap;
++	static QScopedPointer<QPixmap> pmap;
+ 	// The drawPixmap function must not modify pixmap size
+ 	virtual void redraw(const QVariant&) const = 0;
+ };
+ 
+ template<unsigned int pixWidth, unsigned int pixHeight> 
+-std::auto_ptr<QPixmap> ScListBoxPixmap<pixWidth, pixHeight>::pmap;
++QScopedPointer<QPixmap> ScListBoxPixmap<pixWidth, pixHeight>::pmap;
+ 
+ 
+ template<unsigned int pixWidth, unsigned int pixHeight>
+ ScListBoxPixmap<pixWidth, pixHeight>::ScListBoxPixmap(void) : QAbstractItemDelegate()
+ {
+-	if (!pmap.get())
++	if (pmap.isNull())
+ 	{
+ 		pmap.reset( new QPixmap(pixWidth, pixHeight) );
+ 	}
+diff --git a/scribus/ui/colorlistbox.cpp b/scribus/ui/colorlistbox.cpp
+index 9f3897b..99f280f 100644
+--- a/scribus/ui/colorlistbox.cpp
++++ b/scribus/ui/colorlistbox.cpp
+@@ -83,7 +83,7 @@ public:
+ 
+ void ColorSmallItemDelegate::redraw(const QVariant& data) const
+ {
+-	QPixmap* pPixmap = ScListBoxPixmap<15,15>::pmap.get();
++	QPixmap* pPixmap = ScListBoxPixmap<15,15>::pmap.data();
+ 	pPixmap->fill(Qt::transparent);
+ 	if (data.canConvert<ColorPixmapValue>())
+ 	{
+@@ -101,7 +101,7 @@ void ColorSmallItemDelegate::redraw(const QVariant& data) const
+ 
+ void ColorWideItemDelegate::redraw(const QVariant& data) const
+ {
+-	QPixmap* pPixmap = ScListBoxPixmap<30,15>::pmap.get();
++	QPixmap* pPixmap = ScListBoxPixmap<30,15>::pmap.data();
+ 	pPixmap->fill(Qt::transparent);
+ 	if (data.canConvert<ColorPixmapValue>())
+ 	{
+@@ -134,7 +134,7 @@ void ColorFancyItemDelegate::redraw(const QVariant& data) const
+ 		iconsInitialized = true;
+ 	}
+ 
+-	QPixmap* pPixmap = ScListBoxPixmap<60,15>::pmap.get();
++	QPixmap* pPixmap = ScListBoxPixmap<60,15>::pmap.data();
+ 	pPixmap->fill(Qt::transparent);
+ 
+ 	if (data.canConvert<ColorPixmapValue>())
+diff --git a/scribus/ui/propertiespalette_utils.cpp b/scribus/ui/propertiespalette_utils.cpp
+index f76743c..cadbb11 100644
+--- a/scribus/ui/propertiespalette_utils.cpp
++++ b/scribus/ui/propertiespalette_utils.cpp
+@@ -66,7 +66,7 @@ void LineFormatItemDelegate::redraw(const QVariant& data) const
+ 	QColor tmpf;
+ 	pmap->fill(Qt::white);
+ 	QPainter p;
+-	p.begin(pmap.get());
++	p.begin(pmap.data());
+ 	for (int its = item.m_Line.size()-1; its > -1; its--)
+ 	{
+ 		const ScColor& col = item.m_doc->PageColors[item.m_Line[its].Color];

diff --git a/app-office/scribus/files/scribus-1.5.2-qt57-build.patch b/app-office/scribus/files/scribus-1.5.2-qt57-build.patch
new file mode 100644
index 00000000..0584c29
--- /dev/null
+++ b/app-office/scribus/files/scribus-1.5.2-qt57-build.patch
@@ -0,0 +1,21 @@
+commit ddb5688ae4f4ff40ba1204a413fcf15279b35f2b
+Author: Franz Schmid <Franz.Schmid@altmuehlnet.de>
+Date:   Sat Jun 18 09:14:21 2016 +0000
+
+    Compile Fix for compiling with Qt-5.7
+    
+    git-svn-id: svn://scribus.net/trunk/Scribus@21381 11d20701-8431-0410-a711-e3c959e3b870
+
+diff --git a/scribus/third_party/fparser/fpoptimizer.cc b/scribus/third_party/fparser/fpoptimizer.cc
+index ae8c0f6..673e1b6 100644
+--- a/scribus/third_party/fparser/fpoptimizer.cc
++++ b/scribus/third_party/fparser/fpoptimizer.cc
+@@ -7296,7 +7296,7 @@ namespace FPoptimizer_CodeTree
+                             //if(imm >= 0.0)
+                             {
+                                 double new_base_immed = std::pow(base_immed, imm);
+-                                if(isinf(new_base_immed) || new_base_immed == 0.0)
++								if(std::isinf(new_base_immed) || new_base_immed == 0.0)
+                                 {
+                                     // It produced an infinity. Do not change.
+                                     break;

diff --git a/app-office/scribus/scribus-1.5.2-r2.ebuild b/app-office/scribus/scribus-1.5.2-r2.ebuild
new file mode 100644
index 00000000..ec8714e
--- /dev/null
+++ b/app-office/scribus/scribus-1.5.2-r2.ebuild
@@ -0,0 +1,218 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+CMAKE_MIN_VERSION="3.2"
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="tk?"
+CMAKE_MAKEFILE_GENERATOR=ninja
+
+inherit cmake-utils fdo-mime flag-o-matic multilib python-single-r1
+
+DESCRIPTION="Desktop publishing (DTP) and layout program"
+HOMEPAGE="http://www.scribus.net/"
+SRC_URI="mirror://sourceforge/project/${PN}/${PN}-devel/${PV}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+boost debug examples graphicsmagick hunspell +minimal osg +pdf scripts templates tk"
+
+#a=$((ls resources/translations/scribus.*ts | sed -e 's:\.: :g' | awk '{print $2}'; ls resources/loremipsum/*xml | sed -e 's:\.: :g' -e 's:loremipsum\/: :g'| awk '{print $2}'; ls resources/dicts/hyph*dic | sed -e 's:\.: :g' -e 's:hyph_: :g' | awk '{print $2}'; ls resources/dicts/README_*txt | sed -e 's:_hyph::g' -e 's:\.: :g' -e 's:README_: :g' | awk '{print $2}') | sort | uniq); echo $a
+IUSE_LINGUAS=" af ar bg br ca ca_ES cs cs_CZ cy cy_GB da da_DK de de@1901 de_CH de_DE el en_AU en_GB en_US eo es es_ES et eu fi fi_FI fr gl he hr hu hu_HU ia id id_ID is is_IS it ja ko ku la lt lt_LT nb_NO nl nn_NO pl pl_PL pt pt_BR pt_PT ro ro_RO ru ru_RU sa sk sk_SK sl sl_SI sq sr sv sv_SE th_TH tr uk uk_UA zh_CN zh_TW"
+IUSE+=" ${IUSE_LINGUAS// / linguas_}"
+
+REQUIRED_USE="
+	${PYTHON_REQUIRED_USE}
+	tk? ( scripts )"
+
+# osg
+# couple of third_party libs bundled
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	app-text/libmspub
+	app-text/poppler:=
+	dev-libs/hyphen
+	dev-libs/librevenge
+	dev-libs/libxml2
+	dev-qt/qtcore:5
+	dev-qt/qtgui:5
+	dev-qt/qtnetwork:5
+	dev-qt/qtopengl:5
+	dev-qt/qtprintsupport:5
+	dev-qt/qtquickcontrols:5
+	dev-qt/qtwidgets:5
+	dev-qt/qtxml:5
+	media-libs/fontconfig
+	media-libs/freetype:2
+	media-libs/lcms:2
+	media-libs/libcdr
+	media-libs/libpagemaker
+	media-libs/libpng:0=
+	media-libs/libvisio
+	media-libs/tiff:0
+	net-print/cups
+	sys-libs/zlib[minizip]
+	virtual/jpeg:0=
+	>=x11-libs/cairo-1.10.0[X,svg]
+	boost? ( >=dev-libs/boost-1.62:= )
+	hunspell? ( app-text/hunspell )
+	graphicsmagick? ( media-gfx/graphicsmagick )
+	osg? ( dev-games/openscenegraph )
+	pdf? ( app-text/podofo:0= )
+	scripts? ( dev-python/pillow[tk?,${PYTHON_USEDEP}] )
+	tk? ( dev-python/pillow[tk?,${PYTHON_USEDEP}] )
+"
+RDEPEND="${COMMON_DEPEND}
+	app-text/ghostscript-gpl"
+DEPEND="${COMMON_DEPEND}
+	dev-qt/linguist-tools:5
+	virtual/pkgconfig"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-1.5.0-docdir.patch
+	"${FILESDIR}"/${P}-fpic.patch
+	"${FILESDIR}"/${P}-cmake-qt57.patch
+	"${FILESDIR}"/${P}-qt57-build.patch
+	"${FILESDIR}"/${P}-cxx-build.patch
+	"${FILESDIR}"/${P}-gcc6-warn.patch
+)
+
+src_prepare() {
+	rm -r codegen/cheetah || die
+	cat > cmake/modules/FindZLIB.cmake <<- EOF || die
+	find_package(PkgConfig)
+	pkg_check_modules(ZLIB minizip zlib)
+	SET( ZLIB_LIBRARY \${ZLIB_LIBRARIES} )
+	SET( ZLIB_INCLUDE_DIR \${ZLIB_INCLUDE_DIRS} )
+	MARK_AS_ADVANCED( ZLIB_LIBRARY ZLIB_INCLUDE_DIR )
+	EOF
+
+	sed \
+		-e "/^\s*unzip\.[ch]/d" \
+		-e "/^\s*ioapi\.[ch]/d" \
+		-i scribus/CMakeLists.txt Scribus.pro || die
+	rm scribus/ioapi.[ch] || die
+
+	sed \
+		-e 's:\(${CMAKE_INSTALL_PREFIX}\):./\1:g' \
+		-i resources/templates/CMakeLists.txt || die
+
+	cmake-utils_src_prepare
+}
+
+src_configure() {
+	local _lang lang langs
+	for lang in ${IUSE_LINGUAS}; do
+		_lang=$(translate_lang ${lang})
+		if use linguas_${lang} || [[ ${lang} == "en" ]]; then
+			# From the CMakeLists.txt
+			# "#Bit of a hack, preprocess all the filenames to generate our language string, needed for -DWANT_GUI_LANG=en_GB;de_DE , etc"
+			langs+=";${_lang}"
+		else
+			# Don't install localized documentation
+			sed -e "/${_lang}/d" -i doc/CMakeLists.txt || die
+			safe_delete \
+				./resources/dicts/README_${_lang}.txt \
+				./resources/dicts/README_hyph_${_lang}.txt \
+				./resources/dicts/hyph_${_lang}.dic \
+				./resources/loremipsum/${_lang}.xml
+		fi
+		sed -e "/en_EN/d" -i doc/CMakeLists.txt || die
+		safe_delete \
+			./resources/dicts/README_en_EN.txt \
+			./resources/dicts/README_hyph_en_EN.txt \
+			./resources/dicts/hyph_en_EN.dic \
+			./resources/loremipsum/en_EN.xml
+	done
+
+	local mycmakeargs=(
+		-DHAVE_PYTHON=ON
+		-DPYTHON_INCLUDE_PATH="$(python_get_includedir)"
+		-DPYTHON_LIBRARY="$(python_get_library_path)"
+		-DWANT_DISTROBUILD=ON
+		-DDOCDIR="${EPREFIX%/}/usr/share/doc/${PF}/"
+		-DWANT_GUI_LANG="${langs#;};en"
+		-DWANT_CPP11=ON
+		-DWITH_PODOFO="$(usex pdf)"
+		-DWITH_BOOST="$(usex boost)"
+		-DWANT_GRAPHICSMAGICK="$(usex graphicsmagick)"
+		-DWANT_NOOSG="$(usex !osg)"
+		-DWANT_DEBUG="$(usex debug)"
+		-DWANT_NOHEADERINSTALL="$(usex minimal)"
+		-DWANT_HUNSPELL="$(usex hunspell)"
+		-DWANT_NOEXAMPLES="$(usex !examples)"
+		-DWANT_NOTEMPLATES="$(usex !templates)"
+		)
+	cmake-utils_src_configure
+}
+
+src_install() {
+	cmake-utils_src_install
+
+	local lang _lang
+	# en_EN can be deleted always
+	for lang in ${IUSE_LINGUAS}; do
+		if ! use linguas_${lang}; then
+			_lang=$(translate_lang)
+			safe_delete "${ED%/}"/usr/share/man/${_lang}
+		fi
+	done
+
+	if ! use scripts; then
+		rm "${ED%/}"/usr/share/scribus/scripts/*.py || die
+	elif ! use tk; then
+		rm "${ED%/}"/usr/share/scribus/scripts/{FontSample,CalendarWizard}.py || die
+	fi
+
+	use scripts && \
+		python_fix_shebang "${ED%/}"/usr/share/scribus/scripts && \
+		python_optimize "${ED%/}"/usr/share/scribus/scripts
+
+	mv "${ED%/}"/usr/share/doc/${PF}/{en,html} || die
+	ln -sf html "${ED%/}"/usr/share/doc/${PF}/en || die
+	cat >> "${T}"/COPYING <<- EOF || die
+	${PN} is licensed under the "${LICENSE}".
+	Please visit https://www.gnu.org/licenses/gpl-2.0.html for the complete license text.
+	EOF
+	dodoc "${T}"/COPYING
+	docompress -x /usr/share/doc/${PF}/en /usr/share/doc/${PF}/{AUTHORS,TRANSLATION,LINKS,COPYING}
+	doicon resources/iconsets/*/scribus.png
+	domenu scribus.desktop
+}
+
+pkg_postinst() {
+	fdo-mime_desktop_database_update
+	fdo-mime_mime_database_update
+}
+
+pkg_postrm() {
+	fdo-mime_desktop_database_update
+	fdo-mime_mime_database_update
+}
+
+safe_delete () {
+	local x
+	for x in ${@}; do
+		if [[ -d "${x}" ]]; then
+			ebegin "Deleting ${x} recursively"
+			rm -r "${x}" || die
+			eend $?
+		elif [[ -f "${x}" ]]; then
+			ebegin "Deleting ${x}"
+			rm "${x}" || die
+			eend $?
+		else
+			ewarn "${x} not found"
+		fi
+	done
+}
+
+translate_lang() {
+	_lang=${1}
+	[[ ${1} == "ru_RU" ]] && _lang+=_0
+	[[ ${1} == "de@1901" ]] && _lang=de_1901
+	echo ${_lang}
+}


             reply	other threads:[~2016-11-06  8:26 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-06  8:25 Justin Lecher [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-09-05 18:59 [gentoo-commits] repo/gentoo:master commit in: app-office/scribus/files/, app-office/scribus/ Andreas Sturmlechner
2025-09-03 16:15 Andreas Sturmlechner
2025-07-08 16:03 Andreas Sturmlechner
2025-03-07 13:16 Andreas Sturmlechner
2024-11-03 20:36 Andreas Sturmlechner
2024-06-03 17:36 Miroslav Šulc
2024-05-22  7:39 Miroslav Šulc
2024-05-14 17:25 Andreas Sturmlechner
2024-03-04 22:18 Andreas Sturmlechner
2024-01-14 10:24 Miroslav Šulc
2024-01-14  9:38 Miroslav Šulc
2024-01-01  9:30 Miroslav Šulc
2023-03-17  6:52 Miroslav Šulc
2023-02-06 10:36 Andreas Sturmlechner
2022-03-27  6:05 Miroslav Šulc
2022-02-10 19:38 Miroslav Šulc
2021-10-09 19:38 Sam James
2021-05-30 10:45 Miroslav Šulc
2021-03-07  1:30 Andreas Sturmlechner
2020-07-18  8:41 Andreas Sturmlechner
2020-05-30  9:31 Andreas Sturmlechner
2020-04-07  7:49 Andreas Sturmlechner
2019-12-29 11:54 Andreas Sturmlechner
2019-11-08 20:13 Andreas Sturmlechner
2019-10-01 23:43 Andreas Sturmlechner
2019-08-16  8:52 Miroslav Šulc
2019-06-23 16:44 Miroslav Šulc
2018-06-20 16:31 Andreas Sturmlechner
2018-05-10 15:55 Andreas Sturmlechner
2018-03-13 22:50 Andreas Sturmlechner
2018-01-09 13:46 Andreas Sturmlechner
2017-12-20 21:34 Justin Lecher
2016-10-23 20:25 Justin Lecher
2016-09-27 18:50 Michael Weber
2015-10-19 12:06 Justin Lecher
2015-10-16 13:04 Justin Lecher

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=1478420690.31e9ab607088bf9f7ec7308f2e601d6b933372e0.jlec@gentoo \
    --to=jlec@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