diff options
Diffstat (limited to 'meta-openembedded/meta-networking/recipes-daemons/ptpd')
4 files changed, 110 insertions, 0 deletions
diff --git a/meta-openembedded/meta-networking/recipes-daemons/ptpd/ptpd/ptpd-use-pkgconfig.patch b/meta-openembedded/meta-networking/recipes-daemons/ptpd/ptpd/ptpd-use-pkgconfig.patch new file mode 100644 index 000000000..e4578dda7 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-daemons/ptpd/ptpd/ptpd-use-pkgconfig.patch @@ -0,0 +1,35 @@ +From 4c850b92a1cf8cfa19677c66bcde2edfab1a4490 Mon Sep 17 00:00:00 2001 +From: Joe MacDonald <joe_macdonald@mentor.com> +Date: Tue, 24 Feb 2015 23:02:14 -0500 +Subject: [PATCH] ptpd: use pkgconfig + +Yocto uses pkg-config for libpcap, rather than pcap-config, so use that +instead as the source for libs and cflags. + +Upstream-status: Inappropriate [ embedded specific ] + +Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com> +--- + configure.ac | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index dc9541f..288f547 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -112,10 +112,10 @@ case "$try_pcap" in + yes) + case "$PATH_PCAP_CONFIG" in + /*) +- PCAP_LIBS=`$PATH_PCAP_CONFIG --libs` ++ PCAP_LIBS=`$PATH_PCAP_CONFIG --libs libpcap` + AC_SUBST([PCAP_LIBS]) + # Separate CPPFLAGS and CFLAGS +- foo=`$PATH_PCAP_CONFIG --cflags` ++ foo=`$PATH_PCAP_CONFIG --cflags libpcap` + PCAP_CPPFLAGS= + PCAP_CFLAGS= + for i in $foo; do +-- +1.9.1 + diff --git a/meta-openembedded/meta-networking/recipes-daemons/ptpd/ptpd/ptpd.conf b/meta-openembedded/meta-networking/recipes-daemons/ptpd/ptpd/ptpd.conf new file mode 100644 index 000000000..ddd571036 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-daemons/ptpd/ptpd/ptpd.conf @@ -0,0 +1,7 @@ +# +# PTPD Configuration +# +# See man ptpd2 for arguments. +# +# Example arguments +PTPDARGS="-d 1 -i eth0" diff --git a/meta-openembedded/meta-networking/recipes-daemons/ptpd/ptpd/ptpd.service b/meta-openembedded/meta-networking/recipes-daemons/ptpd/ptpd/ptpd.service new file mode 100644 index 000000000..f84799eb5 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-daemons/ptpd/ptpd/ptpd.service @@ -0,0 +1,10 @@ +[Unit] +Description=ptpd time precision daemon + +[Service] +Type=forking +EnvironmentFile=-@SYSCONFDIR@/default/ptpd +ExecStart=@BINDIR@/ptpd2 $PTPDARGS + +[Install] +WantedBy=multi-user.target diff --git a/meta-openembedded/meta-networking/recipes-daemons/ptpd/ptpd_2.3.1.bb b/meta-openembedded/meta-networking/recipes-daemons/ptpd/ptpd_2.3.1.bb new file mode 100644 index 000000000..e13619320 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-daemons/ptpd/ptpd_2.3.1.bb @@ -0,0 +1,58 @@ +SUMMARY = "The PTP daemon (PTPd)" +DESCRIPTION = "The PTP daemon (PTPd) implements the Precision Time protocol (PTP) as \ +defined by the relevant IEEE 1588 standard. PTP Version 1 implements IEEE-1588-2002, \ +and PTP Version 2 implements IEEE-1588-2008. PTP was developed to provide very precise \ +time coordination of LAN connected computers." +HOMEPAGE = "http://sourceforge.net/projects/ptpd" +SECTION = "net" +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://README;md5=0733e1b3788ab2ebbc63bf33a020da1d" + +DEPENDS = "libpcap" + +inherit autotools pkgconfig systemd + +# return something like '1.2.3' or '1.2.3/rc1' +# +def get_sub(d): + parts = d.getVar('PV').split('-') + try: + return parts[0] + '/' + parts[1] + except: + return parts[0] + +SRC_URI = "http://downloads.sourceforge.net/project/ptpd/ptpd/${@get_sub(d)}/ptpd-${PV}.tar.gz \ + file://ptpd-use-pkgconfig.patch \ + file://ptpd.service \ + file://ptpd.conf \ +" + +SRC_URI[md5sum] = "253bab7ab51d969616ea811be1f132f3" +SRC_URI[sha256sum] = "0dbf54dd2c178bd9fe62481d2c37513ee36636d8bf137cfdad96891490cdbf93" + +S = "${WORKDIR}/ptpd-${PV}" + +EXTRA_OEMAKE = "" + +EXTRA_OECONF += "--disable-snmp --with-pcap-config=pkg-config" + +do_install() { + install -d ${D}${bindir} ${D}${mandir}/man8 + install -m 0755 ${B}/src/ptpd2 ${D}${bindir} + install -m 0644 ${B}/src/ptpd2.8 ${D}${mandir}/man8 + + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/ptpd.service ${D}${systemd_unitdir}/system + + sed -i -e 's#@SYSCONFDIR@#${sysconfdir}#g' ${D}${systemd_unitdir}/system/ptpd.service + sed -i -e 's#@BINDIR@#${bindir}#g' ${D}${systemd_unitdir}/system/ptpd.service + + install -d ${D}${sysconfdir}/default/ + install -m 0644 ${WORKDIR}/ptpd.conf ${D}${sysconfdir}/default/ptpd + fi +} + +SYSTEMD_PACKAGES = "${PN}" +SYSTEMD_SERVICE_${PN} = "ptpd.service" +SYSTEMD_AUTO_ENABLE = "disable" |