From: Michael Olbrich <m.olbrich@pengutronix.de>
To: Bastian Stender <bst@pengutronix.de>, ptxdist@pengutronix.de
Subject: Re: [ptxdist] [PATCH v2] ntp: update/transform configure options
Date: Mon, 26 Mar 2018 08:17:38 +0200 [thread overview]
Message-ID: <20180326061738.qdqxr34a5jcu5j32@pengutronix.de> (raw)
In-Reply-To: <20180321155947.25009-1-bst@pengutronix.de>
On Wed, Mar 21, 2018 at 04:59:47PM +0100, Bastian Stender wrote:
> Use proper ptx/endis and ptx/wwo options, checked and corrected
> configure options using configure_helper.py.
>
> Some configure options changed over time:
>
> --enable-ARCRON_MSF is actually --enable-ARCRON-MSF
>
> --enable-arlib is now --with-arlib
>
> --enable-udp-wildcard removed in 4848b7bf9 ("Lose UDP_WILDCARD_DELIVERY")
>
> --enable-MSFEES removed in ba7975983 ("[Bug 340, 342] Deprecate broken TRAK and MSF EES refclocks")
> --enable-TRAK removed in ba7975983 ("[Bug 340, 342] Deprecate broken TRAK and MSF EES refclocks")
>
> --enable-PTBACTS removed in e0da3f545 ("Remove PTB and USNO lint")
>
> Signed-off-by: Bastian Stender <bst@pengutronix.de>
> ---
> Changes since (implicit) v1:
> - use ptx/endis, ptx/wwo and ptx/ifdef where appropriate
> - revisit configure options with helper script
> - sorted options according to configure
Thanks. I've pushed it with a followup commit with some more cleanup.
Mostly removing options that where bogus or should not be configurable.
It would be great if you could test this to make sure I didn't break
anything.
Do you have any opinion on the remaining options? I think there are still
too many, but I don't know enough to make a good decision.
Michael
> ---
> rules/ntp.in | 6 -
> rules/ntp.make | 327 +++++++++++++-------------------------------------
> rules/ntp_nonparse.in | 12 --
> 3 files changed, 82 insertions(+), 263 deletions(-)
>
> diff --git a/rules/ntp.in b/rules/ntp.in
> index 9f85406ab..73120c961 100644
> --- a/rules/ntp.in
> +++ b/rules/ntp.in
> @@ -103,12 +103,6 @@ config NTP_SIMULATOR
> help
> FIXME: This item needs to be documented
>
> -config NTP_UDP_WILDCARD
> - bool
> - prompt "use UDP wildcard delivery"
> - help
> - FIXME: This item needs to be documented
> -
> config NTP_SLEW_ALWAYS
> bool
> prompt "always slew the time"
> diff --git a/rules/ntp.make b/rules/ntp.make
> index 67405c47b..efbd0fd9f 100644
> --- a/rules/ntp.make
> +++ b/rules/ntp.make
> @@ -39,255 +39,92 @@ NTP_ENV := \
> #
> # autoconf
> #
> +
> +# Note: Only if '--disable-all-clocks' is given, the additional clock driver
> +# switches makes sense (else most of the clock drivers are enabled by default)
> NTP_AUTOCONF := $(CROSS_AUTOCONF_USR) \
> - $(GLOBAL_IPV6_OPTION) \
> --bindir=/usr/sbin \
> + --disable-nls \
> --without-lineeditlibs \
> - --without-net-snmp-config \
> + --$(call ptx/endis, PTXCONF_NTP_DEBUGGING)-debugging \
> + --enable-thread-support \
> + --with-yielding-select=yes \
> + --$(call ptx/endis, PTXCONF_NTP_CLOCKCTL)-clockctl \
> --disable-linuxcaps \
> - --with-yielding-select=yes
> -
> -ifdef PTXCONF_NTP_ALL_CLOCK_DRIVERS
> -NTP_AUTOCONF += --enable-all-clocks
> -else
> -NTP_AUTOCONF += --disable-all-clocks
> -endif
> -
> -#
> -# NTP: options, we need lots of options ;-)
> -# Note: Only if '--disable-all-clocks' is given, the additional clock driver
> -# switches makes sense (else most of the clock drivers are enabled
> -# by default)
> -#
> -ifdef PTXCONF_NTP_CLOCKCTL
> -NTP_AUTOCONF += --enable-clockctl
> -endif
> -ifdef PTXCONF_NTP_DEBUGGING
> -NTP_AUTOCONF += --enable-debugging
> -endif
> -ifdef PTXCONF_NTP_DST_MINUTES
> -NTP_AUTOCONF += --enable-dst-minutes=$(PTXCONF_NTP_DST_MINUTES)
> -endif
> -ifdef PTXCONF_NTP_BANCOMM
> -NTP_AUTOCONF += --enable-BANCOMM
> -endif
> -ifdef PTXCONF_NTP_GPSVME
> -NTP_AUTOCONF += --enable-GPSVME
> -endif
> -ifdef PTXCONF_NTP_ACTS
> -NTP_AUTOCONF += --enable-ACTS
> -endif
> -ifdef PTXCONF_NTP_ARBITER
> -NTP_AUTOCONF += --enable-ARBITER
> -endif
> -ifdef PTXCONF_NTP_ARCRON_MSF
> -NTP_AUTOCONF += --enable-ARCRON_MSF
> -endif
> -ifdef PTXCONF_NTP_AS2201
> -NTP_AUTOCONF += --enable-AS2201
> -endif
> -ifdef PTXCONF_NTP_ATOM
> -NTP_AUTOCONF += --enable-ATOM
> -endif
> -ifdef PTXCONF_NTP_CHRONOLOG
> -NTP_AUTOCONF += --enable-CHRONOLOG
> -endif
> -ifdef PTXCONF_NTP_CHU
> -NTP_AUTOCONF += --enable-CHU
> -endif
> -ifdef PTXCONF_NTP_AUDIO_CHU
> -NTP_AUTOCONF += --enable-AUDIO-CHU
> -endif
> -ifdef PTXCONF_NTP_DATUM
> -NTP_AUTOCONF += --enable-DATUM
> -endif
> -ifdef PTXCONF_NTP_DUMBCLOCK
> -NTP_AUTOCONF += --enable-DUMBCLOCK
> -endif
> -ifdef PTXCONF_NTP_FG
> -NTP_AUTOCONF += --enable-FG
> -endif
> -ifdef PTXCONF_NTP_GPSD
> -NTP_AUTOCONF += --enable-GPSD
> -endif
> -ifdef PTXCONF_NTP_HEATH
> -NTP_AUTOCONF += --enable-HEATH
> -endif
> -ifdef PTXCONF_NTP_HOPFSERIAL
> -NTP_AUTOCONF += --enable-HOPFSERIAL
> -endif
> -ifdef PTXCONF_NTP_HOPFPCI
> -NTP_AUTOCONF += --enable-HOPFPCI
> -endif
> -ifdef PTXCONF_NTP_HPGPS
> -NTP_AUTOCONF += --enable-HPGPS
> -endif
> -ifdef PTXCONF_NTP_IRIG
> -NTP_AUTOCONF += --enable-IRIG
> -endif
> -ifdef PTXCONF_NTP_JJY
> -NTP_AUTOCONF += --enable-JJY
> -endif
> -ifdef PTXCONF_NTP_JUPITER
> -NTP_AUTOCONF += --enable-JUPITER
> -endif
> -ifdef PTXCONF_NTP_LEITCH
> -NTP_AUTOCONF += --enable-LEITCH
> -endif
> -ifdef PTXCONF_NTP_LOCAL_CLOCK
> -NTP_AUTOCONF += --enable-LOCAL-CLOCK
> -endif
> -ifdef PTXCONF_NTP_MSFEES
> -NTP_AUTOCONF += --enable-MSFEES
> -endif
> -ifdef PTXCONF_NTP_MX4200
> -NTP_AUTOCONF += --enable-MX4200
> -endif
> -ifdef PTXCONF_NTP_NEOCLOCK4X
> -NTP_AUTOCONF += --enable-NEOCLOCK4X
> -endif
> -ifdef PTXCONF_NTP_NMEA
> -NTP_AUTOCONF += --enable-NMEA
> -endif
> -ifdef PTXCONF_NTP_ONCORE
> -NTP_AUTOCONF += --enable-ONCORE
> -endif
> -ifdef PTXCONF_NTP_PALISADE
> -NTP_AUTOCONF += --enable-PALISADE
> -endif
> -ifdef PTXCONF_NTP_PCF
> -NTP_AUTOCONF += --enable-PCF
> -endif
> -ifdef PTXCONF_NTP_PST
> -NTP_AUTOCONF += --enable-PST
> -endif
> -ifdef PTXCONF_NTP_PTBACTS
> -NTP_AUTOCONF += --enable-PTBACTS
> -endif
> -ifdef PTXCONF_NTP_RIPENCC
> -NTP_AUTOCONF += --enable-RIPENCC
> -endif
> -ifdef PTXCONF_NTP_SEL240X
> -NTP_AUTOCONF += --enable-SEL240X
> -endif
> -ifdef PTXCONF_NTP_SHM
> -NTP_AUTOCONF += --enable-SHM
> -endif
> -ifdef PTXCONF_NTP_SPECTRACOM
> -NTP_AUTOCONF += --enable-SPECTRACOM
> -endif
> -ifdef PTXCONF_NTP_TPRO
> -NTP_AUTOCONF += --enable-TPRO
> -endif
> -ifdef PTXCONF_NTP_TRAK
> -NTP_AUTOCONF += --enable-TRAK
> -endif
> -ifdef PTXCONF_NTP_TRUETIME
> -NTP_AUTOCONF += --enable-TRUETIME
> -endif
> -ifdef PTXCONF_NTP_TSYNCPCI
> -NTP_AUTOCONF += --enable-TSYNCPCI
> -endif
> -ifdef PTXCONF_NTP_TT560
> -NTP_AUTOCONF += --enable-TT560
> -endif
> -ifdef PTXCONF_NTP_ULINK
> -NTP_AUTOCONF += --enable-ULINK
> -endif
> -ifdef PTXCONF_NTP_WWV
> -NTP_AUTOCONF += --enable-WWV
> -endif
> -ifdef PTXCONF_NTP_ZYFER
> -NTP_AUTOCONF += --enable-ZYFER
> -endif
> -ifdef PTXCONF_NTP_COMPUTIME
> -NTP_AUTOCONF += --enable-COMPUTIME
> -endif
> -ifdef PTXCONF_NTP_DCF7000
> -NTP_AUTOCONF += --enable-DCF7000
> -endif
> -ifdef PTXCONF_NTP_HOPF6021
> -NTP_AUTOCONF += --enable-HOPF6021
> -endif
> -ifdef PTXCONF_NTP_MEINBERG
> -NTP_AUTOCONF += --enable-MEINBERG
> -endif
> -ifdef PTXCONF_NTP_RAWDCF
> -NTP_AUTOCONF += --enable-RAWDCF
> -endif
> -ifdef PTXCONF_NTP_RCC8000
> -NTP_AUTOCONF += --enable-RCC8000
> -endif
> -ifdef PTXCONF_NTP_SCHMID
> -NTP_AUTOCONF += --enable-SCHMID
> -endif
> -ifdef PTXCONF_NTP_TRIMTAIP
> -NTP_AUTOCONF += --enable-TRIMTAIP
> -endif
> -ifdef PTXCONF_NTP_TRIMTSIP
> -NTP_AUTOCONF += --enable-TRIMTSIP
> -endif
> -ifdef PTXCONF_NTP_WHARTON
> -NTP_AUTOCONF += --enable-WHARTON
> -endif
> -ifdef PTXCONF_NTP_VARITEXT
> -NTP_AUTOCONF += --enable-VARITEXT
> -endif
> -ifdef PTXCONF_NTP_KMEM
> -NTP_AUTOCONF += --enable-kmem
> -endif
> -ifdef PTXCONF_NTP_ACCURATE_ADJTIME
> -NTP_AUTOCONF += --enable-accurate-adjtime
> -endif
> -ifdef PTXCONF_NTP_TICK_FORCE
> -NTP_AUTOCONF += --enable-tick=$(PTXCONF_NTP_TICK)
> -endif
> -ifdef PTXCONF_NTP_TICKADJ_FORCE
> -NTP_AUTOCONF += --enable-tickadj=$(PTXCONF_NTP_TICKADJ)
> -endif
> -ifdef PTXCONF_NTP_SIMULATOR
> -NTP_AUTOCONF += --enable-simulator
> -endif
> -ifdef PTXCONF_NTP_UDP_WILDCARD
> -NTP_AUTOCONF += --enable-udp-wildcard
> -endif
> -ifdef PTXCONF_NTP_SLEW_ALWAYS
> -NTP_AUTOCONF += --enable-slew-always
> -endif
> -ifdef PTXCONF_NTP_STEP_SLEW
> -NTP_AUTOCONF += --enable-step-slew
> -endif
> -ifdef PTXCONF_NTP_NTPDATE_STEP
> -NTP_AUTOCONF += --enable-ntpdate-step
> -endif
> -ifdef PTXCONF_NTP_HOURLY_TODR_SYNC
> -NTP_AUTOCONF += --enable-hourly-todr-sync
> -endif
> -ifdef PTXCONF_NTP_KERNEL_FLL_BUG
> -NTP_AUTOCONF += --enable-kernel-fll-bug
> -endif
> -ifdef PTXCONF_NTP_IRIG_SAWTOOTH
> -NTP_AUTOCONF += --enable-irig-sawtooth
> -endif
> -ifdef PTXCONF_NTP_NIST
> -NTP_AUTOCONF += --enable-nist
> -endif
> -ifdef PTXCONF_NTP_CRYPTO
> -NTP_AUTOCONF += \
> - --with-crypto \
> - --with-openssl-libdir=$(PTXDIST_SYSROOT_TARGET)/usr/lib \
> - --with-openssl-incdir=$(PTXDIST_SYSROOT_TARGET)/usr/include
> -else
> -NTP_AUTOCONF += --without-crypto \
> - --without-openssl-libdir \
> - --without-openssl-incdir
> -endif
> -ifdef PTXCONF_NTP_SNTP
> -NTP_AUTOCONF += --with-sntp
> -endif
> -ifdef PTXCONF_NTP_ARLIB
> -NTP_AUTOCONF += --enable-arlib
> -endif
> + --$(call ptx/wwo, PTXCONF_NTP_ARLIB)-arlib \
> + --without-net-snmp-config \
> + --$(call ptx/endis, PTXCONF_NTP_DST_MINUTES)-dst-minutes$(call ptx/ifdef, PTXCONF_NTP_DST_MINUTES, =$(PTXCONF_NTP_DST_MINUTES),) \
> + --$(call ptx/endis, PTXCONF_NTP_BANCOMM)-BANCOMM \
> + --$(call ptx/endis, PTXCONF_NTP_GPSVME)-GPSVME \
> + --$(call ptx/endis, PTXCONF_NTP_ALL_CLOCK_DRIVERS)-all-clocks \
> + --$(call ptx/endis, PTXCONF_NTP_ACTS)-ACTS \
> + --$(call ptx/endis, PTXCONF_NTP_ARBITER)-ARBITER \
> + --$(call ptx/endis, PTXCONF_NTP_ARCRON_MSF)-ARCRON-MSF \
> + --$(call ptx/endis, PTXCONF_NTP_AS2201)-AS2201 \
> + --$(call ptx/endis, PTXCONF_NTP_ATOM)-ATOM \
> + --$(call ptx/endis, PTXCONF_NTP_CHRONOLOG)-CHRONOLOG \
> + --$(call ptx/endis, PTXCONF_NTP_CHU)-CHU \
> + --$(call ptx/endis, PTXCONF_NTP_AUDIO_CHU)-AUDIO-CHU \
> + --$(call ptx/endis, PTXCONF_NTP_DATUM)-DATUM \
> + --$(call ptx/endis, PTXCONF_NTP_DUMBCLOCK)-DUMBCLOCK \
> + --$(call ptx/endis, PTXCONF_NTP_FG)-FG \
> + --$(call ptx/endis, PTXCONF_NTP_HEATH)-HEATH \
> + --$(call ptx/endis, PTXCONF_NTP_HOPFSERIAL)-HOPFSERIAL \
> + --$(call ptx/endis, PTXCONF_NTP_HOPFPCI)-HOPFPCI \
> + --$(call ptx/endis, PTXCONF_NTP_HPGPS)-HPGPS \
> + --$(call ptx/endis, PTXCONF_NTP_IRIG)-IRIG \
> + --$(call ptx/endis, PTXCONF_NTP_JJY)-JJY \
> + --$(call ptx/endis, PTXCONF_NTP_JUPITER)-JUPITER \
> + --$(call ptx/endis, PTXCONF_NTP_LEITCH)-LEITCH \
> + --$(call ptx/endis, PTXCONF_NTP_LOCAL_CLOCK)-LOCAL-CLOCK \
> + --$(call ptx/endis, PTXCONF_NTP_MX4200)-MX4200 \
> + --$(call ptx/endis, PTXCONF_NTP_NEOCLOCK4X)-NEOCLOCK4X \
> + --$(call ptx/endis, PTXCONF_NTP_NMEA)-NMEA \
> + --$(call ptx/endis, PTXCONF_NTP_GPSD)-GPSD \
> + --$(call ptx/endis, PTXCONF_NTP_ONCORE)-ONCORE \
> + --$(call ptx/endis, PTXCONF_NTP_PALISADE)-PALISADE \
> + --$(call ptx/endis, PTXCONF_NTP_PCF)-PCF \
> + --$(call ptx/endis, PTXCONF_NTP_PST)-PST \
> + --$(call ptx/endis, PTXCONF_NTP_RIPENCC)-RIPENCC \
> + --$(call ptx/endis, PTXCONF_NTP_SHM)-SHM \
> + --$(call ptx/endis, PTXCONF_NTP_SPECTRACOM)-SPECTRACOM \
> + --$(call ptx/endis, PTXCONF_NTP_TPRO)-TPRO \
> + --$(call ptx/endis, PTXCONF_NTP_TRUETIME)-TRUETIME \
> + --$(call ptx/endis, PTXCONF_NTP_TT560)-TT560 \
> + --$(call ptx/endis, PTXCONF_NTP_ULINK)-ULINK \
> + --$(call ptx/endis, PTXCONF_NTP_TSYNCPCI)-TSYNCPCI \
> + --$(call ptx/endis, PTXCONF_NTP_WWV)-WWV \
> + --$(call ptx/endis, PTXCONF_NTP_ZYFER)-ZYFER \
> + --$(call ptx/endis, PTXCONF_NTP_COMPUTIME)-COMPUTIME \
> + --$(call ptx/endis, PTXCONF_NTP_DCF7000)-DCF7000 \
> + --$(call ptx/endis, PTXCONF_NTP_HOPF6021)-HOPF6021 \
> + --$(call ptx/endis, PTXCONF_NTP_MEINBERG)-MEINBERG \
> + --$(call ptx/endis, PTXCONF_NTP_RAWDCF)-RAWDCF \
> + --$(call ptx/endis, PTXCONF_NTP_RCC8000)-RCC8000 \
> + --$(call ptx/endis, PTXCONF_NTP_SCHMID)-SCHMID \
> + --$(call ptx/endis, PTXCONF_NTP_TRIMTAIP)-TRIMTAIP \
> + --$(call ptx/endis, PTXCONF_NTP_TRIMTSIP)-TRIMTSIP \
> + --$(call ptx/endis, PTXCONF_NTP_WHARTON)-WHARTON \
> + --$(call ptx/endis, PTXCONF_NTP_VARITEXT)-VARITEXT \
> + --$(call ptx/endis, PTXCONF_NTP_SEL240X)-SEL240X \
> + --$(call ptx/wwo, PTXCONF_NTP_CRYPTO)-crypto \
> + --$(call ptx/wwo, PTXCONF_NTP_CRYPTO)-openssl-libdir$(call ptx/ifdef, PTXCONF_NTP_CRYPTO, =$(PTXDIST_SYSROOT_TARGET)/usr/lib,) \
> + --$(call ptx/wwo, PTXCONF_NTP_CRYPTO)-openssl-incdir$(call ptx/ifdef, PTXCONF_NTP_CRYPTO, =$(PTXDIST_SYSROOT_TARGET)/usr/include,) \
> + --without-rpath \
> + --$(call ptx/endis, PTXCONF_NTP_KMEM)-kmem \
> + --$(call ptx/endis, PTXCONF_NTP_ACCURATE_ADJTIME)-accurate-adjtime \
> + --$(call ptx/endis, PTXCONF_NTP_TICK_FORCE)-tick$(call ptx/ifdef, PTXCONF_NTP_TICK_FORCE, =$(PTXCONF_NTP_TICK),) \
> + --$(call ptx/endis, PTXCONF_NTP_TICKADJ_FORCE)-tickadj$(call ptx/ifdef, PTXCONF_NTP_TICKADJ_FORCE, =$(PTXCONF_NTP_TICKADJ),) \
> + --$(call ptx/endis, PTXCONF_NTP_SIMULATOR)-simulator \
> + --$(call ptx/wwo, PTXCONF_NTP_SNTP)-sntp \
> + --$(call ptx/endis, PTXCONF_NTP_SLEW_ALWAYS)-slew-always \
> + --$(call ptx/endis, PTXCONF_NTP_STEP_SLEW)-step-slew \
> + --$(call ptx/endis, PTXCONF_NTP_NTPDATE_STEP)-ntpdate-step \
> + --$(call ptx/endis, PTXCONF_NTP_HOURLY_TODR_SYNC)-hourly-todr-sync \
> + --$(call ptx/endis, PTXCONF_NTP_KERNEL_FLL_BUG)-kernel-fll-bug \
> + --$(call ptx/endis, PTXCONF_NTP_IRIG_SAWTOOTH)-irig-sawtooth \
> + --$(call ptx/endis, PTXCONF_NTP_NIST)-nist \
> + $(GLOBAL_IPV6_OPTION)
>
> # ----------------------------------------------------------------------------
> # Target-Install
> diff --git a/rules/ntp_nonparse.in b/rules/ntp_nonparse.in
> index 397b6e00a..13c38d887 100644
> --- a/rules/ntp_nonparse.in
> +++ b/rules/ntp_nonparse.in
> @@ -98,10 +98,6 @@ config NTP_LOCAL_CLOCK
> Enables the driver for the internal PC CMOS clock. This clock
> is mostly unreliable, but suitable as a fall back time source.
>
> -config NTP_MSFEES
> - bool
> - prompt "EES M201 MSF receiver"
> -
> config NTP_MX4200
> bool
> prompt "Magnavox MX4200 GPS receiver "
> @@ -130,10 +126,6 @@ config NTP_PST
> bool
> prompt "PST/Traconex 1020 WWV/WWVH receiver"
>
> -config NTP_PTBACTS
> - bool
> - prompt "PTB modem service"
> -
> config NTP_RIPENCC
> bool
> prompt "RIPENCC specific Trimble driver"
> @@ -154,10 +146,6 @@ config NTP_TPRO
> prompt "KSI/Odetics TPRO/S GPS receiver/IRIG interface [BROKEN]"
> depends on BROKEN
>
> -config NTP_TRAK
> - bool
> - prompt "TRAK 8810 GPS receiver"
> -
> config NTP_TRUETIME
> bool
> prompt "Kinemetrics/TrueTime receivers"
> --
> 2.16.1
>
>
> _______________________________________________
> ptxdist mailing list
> ptxdist@pengutronix.de
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de
next prev parent reply other threads:[~2018-03-26 6:17 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-21 15:59 Bastian Stender
2018-03-26 6:17 ` Michael Olbrich [this message]
2018-03-26 9:12 ` Bastian Stender
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=20180326061738.qdqxr34a5jcu5j32@pengutronix.de \
--to=m.olbrich@pengutronix.de \
--cc=bst@pengutronix.de \
--cc=ptxdist@pengutronix.de \
/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