summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Kenzelmann <gentoo@k8n.de>2018-03-17 14:00:48 +0100
committerMichał Górny <mgorny@gentoo.org>2018-03-23 23:10:04 +0100
commitcd447c2a8620458f170d749eaebc5f02f05c2fbc (patch)
tree4e8a57e3d45b4f1542917824cf775c604f12fb85 /dev-libs/pigpio
parentxfce-base/thunar: Clean old up (diff)
downloadgentoo-cd447c2a8620458f170d749eaebc5f02f05c2fbc.tar.gz
gentoo-cd447c2a8620458f170d749eaebc5f02f05c2fbc.tar.bz2
gentoo-cd447c2a8620458f170d749eaebc5f02f05c2fbc.zip
dev-libs/pigpio: initial pull request (v67)
This is a new ebuild for the pigpio library ( http://abyz.me.uk/rpi/pigpio/ ) Supports systemd and openrc start files and also optional python support currently needed Makefile patches will be reported/requested upstream Closes: https://bugs.gentoo.org/646570 Closes: https://github.com/gentoo/gentoo/pull/7484
Diffstat (limited to 'dev-libs/pigpio')
-rw-r--r--dev-libs/pigpio/Manifest1
-rw-r--r--dev-libs/pigpio/files/pigpio-67-makefile.patch64
-rw-r--r--dev-libs/pigpio/files/pigpiod.confd4
-rw-r--r--dev-libs/pigpio/files/pigpiod.initd7
-rw-r--r--dev-libs/pigpio/files/pigpiod.systemd9
-rw-r--r--dev-libs/pigpio/metadata.xml12
-rw-r--r--dev-libs/pigpio/pigpio-67.ebuild40
7 files changed, 137 insertions, 0 deletions
diff --git a/dev-libs/pigpio/Manifest b/dev-libs/pigpio/Manifest
new file mode 100644
index 000000000000..ed15ca2500f3
--- /dev/null
+++ b/dev-libs/pigpio/Manifest
@@ -0,0 +1 @@
+DIST pigpio-67.tar.gz 369268 BLAKE2B a9d59369f5eed4b733e0e5c0e85013a132e55ff63a2393d79a3fb52d1fcb2513559d4dfeea84c4842d6281936b6e116bd81cd63e4542bbcffaf813ee356ee0d1 SHA512 9792f8402ee0dd204f4a975ab0513099a1fe3d398a28b766f412c08d7908e8e307de4cc92b2a2519b6484f15a043bd40008b7707486015c08bda5f97b1e7e00b
diff --git a/dev-libs/pigpio/files/pigpio-67-makefile.patch b/dev-libs/pigpio/files/pigpio-67-makefile.patch
new file mode 100644
index 000000000000..1df4475eb0ae
--- /dev/null
+++ b/dev-libs/pigpio/files/pigpio-67-makefile.patch
@@ -0,0 +1,64 @@
+--- a/Makefile 2018-03-21 19:51:11.711880972 +0100
++++ b/Makefile 2018-03-21 20:51:46.341684595 +0100
+@@ -9,6 +9,9 @@
+ STRIP = $(CROSS_PREFIX)strip
+ SHLIB = $(CC) -shared
+ STRIPLIB = $(STRIP) --strip-unneeded
++LDCONFIG = ldconfig
++PYTHON2 = $(shell type -P python2 || echo ':' 2> /dev/null)
++PYTHON3 = $(shell type -P python3 || echo ':' 2> /dev/null)
+
+ CFLAGS += -O3 -Wall -pthread
+
+@@ -23,7 +26,7 @@
+
+ LIB = $(LIB1) $(LIB2) $(LIB3)
+
+-ALL = $(LIB) x_pigpio x_pigpiod_if x_pigpiod_if2 pig2vcd pigpiod pigs
++ALL = $(LIB) pig2vcd pigpiod pigs
+
+ LL1 = -L. -lpigpio -pthread -lrt
+
+@@ -64,22 +67,21 @@
+ $(CC) -o x_pigpiod_if2 x_pigpiod_if2.o $(LL3)
+
+ pigpiod: pigpiod.o $(LIB1)
+- $(CC) -o pigpiod pigpiod.o $(LL1)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o pigpiod pigpiod.o $(LL1)
+ $(STRIP) pigpiod
+
+ pigs: pigs.o command.o
+- $(CC) -o pigs pigs.o command.o
++ $(CC) $(CFLAGS) $(LDFLAGS) -o pigs pigs.o command.o
+ $(STRIP) pigs
+
+ pig2vcd: pig2vcd.o
+- $(CC) -o pig2vcd pig2vcd.o
++ $(CC) $(CFLAGS) $(LDFLAGS) -o pig2vcd pig2vcd.o
+ $(STRIP) pig2vcd
+
+ clean:
+ rm -f *.o *.i *.s *~ $(ALL)
+
+ install: $(ALL)
+- install -m 0755 -d $(DESTDIR)/opt/pigpio/cgi
+ install -m 0755 -d $(DESTDIR)$(includedir)
+ install -m 0644 pigpio.h $(DESTDIR)$(includedir)
+ install -m 0644 pigpiod_if.h $(DESTDIR)$(includedir)
+@@ -92,13 +94,13 @@
+ install -m 0755 pig2vcd $(DESTDIR)$(bindir)
+ install -m 0755 pigpiod $(DESTDIR)$(bindir)
+ install -m 0755 pigs $(DESTDIR)$(bindir)
+- if which python2; then python2 setup.py install; fi
+- if which python3; then python3 setup.py install; fi
++ $(PYTHON2) setup.py install
++ $(PYTHON3) setup.py install
+ install -m 0755 -d $(DESTDIR)$(mandir)/man1
+ install -m 0644 *.1 $(DESTDIR)$(mandir)/man1
+ install -m 0755 -d $(DESTDIR)$(mandir)/man3
+ install -m 0644 *.3 $(DESTDIR)$(mandir)/man3
+- ldconfig
++ $(LDCONFIG)
+
+ uninstall:
+ rm -f $(DESTDIR)$(includedir)/pigpio.h
diff --git a/dev-libs/pigpio/files/pigpiod.confd b/dev-libs/pigpio/files/pigpiod.confd
new file mode 100644
index 000000000000..dbcf8a4c3efc
--- /dev/null
+++ b/dev-libs/pigpio/files/pigpiod.confd
@@ -0,0 +1,4 @@
+# Only listen on local interface by default
+# use evironment variables PIGPIO_PORT="8888" and PIGPIO_ADDR="::1" for pigs with local interface
+# PIGPIOD_OPTS="-l -p 8888"
+PIGPIOD_OPTS="-l"
diff --git a/dev-libs/pigpio/files/pigpiod.initd b/dev-libs/pigpio/files/pigpiod.initd
new file mode 100644
index 000000000000..2b3f339dbdcc
--- /dev/null
+++ b/dev-libs/pigpio/files/pigpiod.initd
@@ -0,0 +1,7 @@
+#!/sbin/openrc-run
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+pidfile="/var/run/pigpio.pid"
+command="/usr/bin/pigpiod"
+command_args="${PIGPIOD_OPTS}"
diff --git a/dev-libs/pigpio/files/pigpiod.systemd b/dev-libs/pigpio/files/pigpiod.systemd
new file mode 100644
index 000000000000..b1d28a66f826
--- /dev/null
+++ b/dev-libs/pigpio/files/pigpiod.systemd
@@ -0,0 +1,9 @@
+[Unit]
+Description=Pigpio daemon
+
+[Service]
+Type=simple
+ExecStart=/usr/bin/pigpiod
+
+[Install]
+WantedBy=multi-user.target
diff --git a/dev-libs/pigpio/metadata.xml b/dev-libs/pigpio/metadata.xml
new file mode 100644
index 000000000000..9344dda7b30f
--- /dev/null
+++ b/dev-libs/pigpio/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@k8n.de</email>
+ <name>Daniel Kenzelmann</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Gentoo Proxy Maintainers Project</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-libs/pigpio/pigpio-67.ebuild b/dev-libs/pigpio/pigpio-67.ebuild
new file mode 100644
index 000000000000..1975d0a2cf3a
--- /dev/null
+++ b/dev-libs/pigpio/pigpio-67.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python{2_7,3_{4,5,6}} )
+
+inherit distutils-r1 systemd toolchain-funcs
+
+DESCRIPTION="A library for the Raspberry which allows control of the GPIOs"
+HOMEPAGE="http://abyz.me.uk/rpi/pigpio/index.html"
+SRC_URI="https://github.com/joan2937/pigpio/archive/V${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Unlicense"
+SLOT="0"
+KEYWORDS="~arm"
+IUSE="python"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ eapply "${FILESDIR}/${P}-makefile.patch"
+ eapply_user
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" STRIP=: STRIPLIB=: SIZE=:
+ use python && distutils-r1_src_compile
+}
+
+src_install() {
+ emake DESTDIR="${D}" LDCONFIG=: PYTHON2=: PYTHON3=: libdir="$(get_libdir)" prefix="/usr" mandir="/usr/share/man" install
+ einstalldocs
+ newinitd "${FILESDIR}"/pigpiod.initd pigpiod
+ newconfd "${FILESDIR}"/pigpiod.confd pigpiod
+ systemd_newunit "${FILESDIR}"/pigpiod.systemd pigpiod.service
+ use python && distutils-r1_src_install
+}