commit:     042b314a0c227e876f3bbe09dd9e6c3f6d880760
Author:     Hans de Graaff <hans <AT> degraaff <DOT> org>
AuthorDate: Wed Mar  4 20:15:52 2015 +0000
Commit:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
CommitDate: Wed Mar  4 20:15:52 2015 +0000
URL:        
http://sources.gentoo.org/gitweb/?p=dev/graaff.git;a=commit;h=042b314a

Initial import from bug 492508. Original ebuild and support files by Jan Breuer.

Package-Manager: portage-2.2.14

 net-misc/ptpd/ChangeLog         | 11 ++++++++
 net-misc/ptpd/Manifest          |  1 +
 net-misc/ptpd/files/ptpd.conf   | 62 +++++++++++++++++++++++++++++++++++++++++
 net-misc/ptpd/files/ptpd.confd  |  4 +++
 net-misc/ptpd/files/ptpd.rc     | 58 ++++++++++++++++++++++++++++++++++++++
 net-misc/ptpd/metadata.xml      | 16 +++++++++++
 net-misc/ptpd/ptpd-2.3.0.ebuild | 53 +++++++++++++++++++++++++++++++++++
 7 files changed, 205 insertions(+)

diff --git a/net-misc/ptpd/ChangeLog b/net-misc/ptpd/ChangeLog
new file mode 100644
index 0000000..f16331a
--- /dev/null
+++ b/net-misc/ptpd/ChangeLog
@@ -0,0 +1,11 @@
+# ChangeLog for net-misc/ptpd
+# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+*ptpd-2.3.0 (04 Mar 2015)
+
+  04 Mar 2015; Hans de Graaff <[email protected]> +ptpd-2.3.0.ebuild,
+  +files/ptpd.conf, +files/ptpd.confd, +files/ptpd.rc, +metadata.xml:
+  Initial import from bug 492508. Original ebuild and support files by Jan
+  Breuer.
+

diff --git a/net-misc/ptpd/Manifest b/net-misc/ptpd/Manifest
new file mode 100644
index 0000000..cc5da5e
--- /dev/null
+++ b/net-misc/ptpd/Manifest
@@ -0,0 +1 @@
+DIST ptpd-2.3.0.tar.gz 785362 SHA256 
1a4e90496f004bfd91657ccc49209101dc25b787e540648c07c0973469f1d8f7 SHA512 
eb6614ce8bfe313dd2a3bb14adcccc0b2580d7a375ead220f44f63fa9ea91e6e1e3eacd757f517e3051ff852000813cda94f21acc5ada75e604e2b20545ddf3a
 WHIRLPOOL 
cb87ed5d7ec78a3ea57d4eac14b4d72b062c339b4063d7d9c99ffba894c3ced3746b04f10ae3b4d1dc52d908dca780427ff1273924910065a1799f3e7a33bd63

diff --git a/net-misc/ptpd/files/ptpd.conf b/net-misc/ptpd/files/ptpd.conf
new file mode 100644
index 0000000..5e90823
--- /dev/null
+++ b/net-misc/ptpd/files/ptpd.conf
@@ -0,0 +1,62 @@
+; 
==============================================================================
+; This is a recommended configuration for a PTPv2 slave
+; For a full list of options run ptpd2 -H or see the documentation and man 
pages
+; 
==============================================================================
+
+; interface has to be specified
+ptpengine:interface=
+
+; PTP domain
+ptpengine:domain=0
+
+; available presets are slaveonly, masteronly and masterslave (full IEEE 1588 
implementation)
+ptpengine:preset=slaveonly
+
+; multicast for both sync and delay requests - use hybrid for unicast delay 
requests
+ptpengine:ip_mode=multicast
+
+; when enabled, instead of sockets, libpcap is used to receive (sniff) and 
send (inject) packets.
+; on low latency hardware such as 10GE NICs this can provide results close to 
hardware-assisted PTP
+ptpengine:use_libpcap=n
+
+; go into panic mode for 10 minutes instead of resetting the clock
+ptpengine:panic_mode=y
+ptpengine:panic_mode_duration=10
+
+; uncomment this to enable outlier filters
+ptpengine:sync_outlier_filter_enable=y
+ptpengine:delay_outlier_filter_enable=y
+
+; store observed drift in a file
+clock:drift_handling=file
+
+; update online statistics every 5 seconds
+global:statistics_update_interval=5
+
+; wait 5 statistics intervals for one-way delay to stabilise
+ptpengine:calibration_delay=5
+
+; log file, event log only. if timing statistics are needed, see 
statistics_file
+global:log_file=/var/log/ptpd2.log
+; log file up to 5M
+global:log_file_max_size=5000
+; rotate logs up to 5 files
+global:log_file_max_files=5
+
+; status file providing an overview of ptpd's operation and statistics
+global:log_status=y
+
+; required if ip_mode is set to hybrid
+;ptpengine:log_delayreq_interval=0
+
+; uncomment this to log a timing log like in previous ptpd versions
+;global:statistics_file=/var/log/ptpd2.stats
+
+; on multi-core systems it is recommended to bind ptpd to a single core
+;global:cpuaffinity_cpucore=0
+
+; use DSCP 46 for expedited forwarding over ipv4 networks
+ptpengine:ip_dscp=46
+
+; always keep a new line in the end
+

diff --git a/net-misc/ptpd/files/ptpd.confd b/net-misc/ptpd/files/ptpd.confd
new file mode 100644
index 0000000..d8780f3
--- /dev/null
+++ b/net-misc/ptpd/files/ptpd.confd
@@ -0,0 +1,4 @@
+# /etc/conf.d/ptpd
+
+# Options to pass to ptpd
+PTPD_OPTS=""

diff --git a/net-misc/ptpd/files/ptpd.rc b/net-misc/ptpd/files/ptpd.rc
new file mode 100644
index 0000000..edb36a6
--- /dev/null
+++ b/net-misc/ptpd/files/ptpd.rc
@@ -0,0 +1,58 @@
+#!/sbin/runscript
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+PTPD_CONFIGFILE=${PTPD_CONFIGFILE:-/etc/${RC_SVCNAME}.conf}
+PTPD_STATEFILE_DIR=${PTPD_STATEFILE_DIR:-/var/run}
+PTPD_STATEFILE=${PTPD_STATEFILE:-${PTPD_STATEFILE_DIR}/${RC_SVCNAME}.status}
+PTPD_PIDFILE_DIR=${PTPD_PIDFILE_DIR:-/var/run}
+PTPD_PIDFILE=${PTPD_PIDFILE:-${PTPD_PIDFILE_DIR}/${RC_SVCNAME}.pid}
+
+extra_commands="checkconfig"
+extra_started_commands="reload"
+command="/usr/sbin/ptpd2"
+command_args="--global:lock_file=$PTPD_PIDFILE 
--global:status_file=$PTPD_STATEFILE -c $PTPD_CONFIGFILE $PTPD_OPTS"
+pidfile="${PTPD_PIDFILE}"
+description="Precise Time Protocol daemon"
+
+
+depend() {
+        use net dns logger
+}
+
+checkconfig() {
+       ebegin "Checking ${SVCNAME} configuration"
+        msgout="$($command -k $command_args 2>&1)"
+        RETVAL=$?
+
+       # colorize output
+       echo "$msgout" | while read ln; do
+               if [[ "$ln" == *ignored* ]]; then
+                       ewarn "$ln"
+               elif [[ "$ln" != "Configuration OK" ]]; then
+                       eerror "$ln"
+               fi
+       done
+
+       eend $RETVAL
+}
+
+start() {
+        checkconfig || return 1
+
+       ebegin "Starting ${SVCNAME}"
+       start-stop-daemon --start --exec ${command} \
+               --pidfile ${pidfile} \
+               -- ${command_args} 1>/dev/null 2>&1
+       eend $?
+}
+
+reload() {
+        checkconfig || return 1
+
+        ebegin "Reloading ${SVCNAME} configuration"
+        start-stop-daemon --signal HUP --pidfile "${pidfile}"
+        eend $?
+}
+

diff --git a/net-misc/ptpd/metadata.xml b/net-misc/ptpd/metadata.xml
new file mode 100644
index 0000000..9263ff5
--- /dev/null
+++ b/net-misc/ptpd/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version = '1.0' encoding = 'UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+  <maintainer><email>[email protected]</email></maintainer>
+  <use>
+    <flag name="statistics">
+      Enable support for realtime statistics and statistics based filtering.
+    </flag>
+    <flag name="ntp">
+      Enable control of local NTP daemon and failover to local NTP.
+    </flag>
+    <flag name="daemon">
+      Enable daemon mode in ptpd.
+    </flag>
+  </use>
+</pkgmetadata>

diff --git a/net-misc/ptpd/ptpd-2.3.0.ebuild b/net-misc/ptpd/ptpd-2.3.0.ebuild
new file mode 100644
index 0000000..9a50c69
--- /dev/null
+++ b/net-misc/ptpd/ptpd-2.3.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=5
+
+inherit autotools eutils
+
+DESCRIPTION="Precision Time Protocol daemon"
+HOMEPAGE="http://ptpd.sf.net";
+
+SRC_URI="mirror://sourceforge/ptpd/${PV}/${P}.tar.gz"
+KEYWORDS="~amd64"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="+snmp statistics debug +daemon"
+
+# Bundles dev-libs/iniparser
+COMMON_DEPEND=" snmp? ( net-analyzer/net-snmp )
+                               net-libs/libpcap"
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}"
+
+DOCS="ChangeLog README doc/*"
+
+src_prepare() {
+       eautoreconf
+}
+
+src_configure() {
+       econf \
+               $(use_enable snmp) \
+               $(use_enable statistics) \
+               $(use_enable ntp ntpdc) \
+               $(use_enable debug runtime-debug) \
+               $(use_enable daemon)
+}
+
+src_install() {
+       emake install DESTDIR="${D}" || die "install failed"
+
+       insinto /etc
+       doins "${FILESDIR}"/ptpd.conf
+
+       newinitd "${FILESDIR}"/ptpd.rc ptpd
+       newconfd "${FILESDIR}"/ptpd.confd ptpd
+}
+
+pkg_postinst() {
+       ewarn "Review /etc/ptpd.conf to setup server info."
+       ewarn "Review /etc/conf.d/ptpd to setup init.d info."
+}

Reply via email to