summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-misc/ddcutil')
-rw-r--r--app-misc/ddcutil/Manifest1
-rw-r--r--app-misc/ddcutil/ddcutil-1.3.0.ebuild119
-rw-r--r--app-misc/ddcutil/files/ddcutil-1.3.0-no-werror.patch73
3 files changed, 193 insertions, 0 deletions
diff --git a/app-misc/ddcutil/Manifest b/app-misc/ddcutil/Manifest
index 6237ee274ea6..b8e49ee087d8 100644
--- a/app-misc/ddcutil/Manifest
+++ b/app-misc/ddcutil/Manifest
@@ -1 +1,2 @@
DIST ddcutil-1.2.2.tar.gz 803943 BLAKE2B 65cc5dc0d1ee85d1e2b6670f7c24508ab817c6eebdb596b5f6f70c7ff7b9257f12f70abfea2d735e23755e508d4829d4be6574ac16564d4d828e0b1153cf8afe SHA512 0329711e536cbcaee2efe6cf981a17181ab318846e9c6a82f2ceacc42691ba49c06df44a52d1f079568e9ccec588cc85d4de4adf19b6db83bebe4bb90ae29207
+DIST ddcutil-1.3.0.tar.gz 816789 BLAKE2B 1cb3b64961503416b85b792e1002ec67788f8cf7d622be1c4930808f99e16974ff57ed582d1d02a67580e3f4d92bef54b3669fd7378462bf4c98a3643d6786be SHA512 93d69958b2e1dcb66ad700712742536179383c93f2ec1f746b6a6c78adfd6daa861275208850cc807e0c16a11ea84904cb13ceef512ca76e1daa910410303d41
diff --git a/app-misc/ddcutil/ddcutil-1.3.0.ebuild b/app-misc/ddcutil/ddcutil-1.3.0.ebuild
new file mode 100644
index 000000000000..35f885477ff1
--- /dev/null
+++ b/app-misc/ddcutil/ddcutil-1.3.0.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Check for bumps & cleanup with app-misc/ddcui
+
+inherit autotools linux-info udev
+
+DESCRIPTION="Program for querying and changing monitor settings"
+HOMEPAGE="https://www.ddcutil.com/"
+SRC_URI="https://github.com/rockowitz/ddcutil/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+SLOT="0/4"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="drm usb-monitor user-permissions video_cards_nvidia X"
+REQUIRED_USE="drm? ( X )"
+
+RDEPEND="
+ dev-libs/glib:2
+ sys-apps/i2c-tools
+ virtual/udev
+ drm? ( x11-libs/libdrm )
+ usb-monitor? (
+ dev-libs/hidapi
+ virtual/libusb:1
+ sys-apps/usbutils
+ )
+ user-permissions? (
+ acct-group/i2c
+ usb-monitor? ( acct-group/video )
+ )
+ X? (
+ x11-libs/libXrandr
+ x11-libs/libX11
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+# doc? ( app-doc/doxygen[dot] )
+
+PATCHES=(
+ "${FILESDIR}"/${P}-no-werror.patch
+)
+
+pkg_pretend() {
+ # This program needs /dev/ic2-* devices to communicate with the monitor.
+ CONFIG_CHECK="~I2C_CHARDEV"
+ ERROR_I2C_CHARDEV="You must enable I2C_CHARDEV in your kernel to continue"
+ if use usb-monitor; then
+ CONFIG_CHECK+=" ~HIDRAW ~USB_HIDDEV"
+ ERROR_HIDRAW="HIDRAW is needed to support USB monitors"
+ ERROR_I2C_CHARDEV="USB_HIDDEV is needed to support USB monitors"
+ fi
+
+ # Now do the actual checks setup above
+ check_extra_config
+}
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ # FAILS: doxyfile: No such file or directory
+ # $(use_enable doc doxygen)
+ $(use_enable drm)
+ --enable-udev
+ $(use_enable usb-monitor usb)
+ --enable-lib
+ $(use_enable X x11)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ if use user-permissions; then
+ udev_dorules data/etc/udev/rules.d/45-ddcutil-i2c.rules
+ if use usb-monitor; then
+ udev_dorules data/etc/udev/rules.d/45-ddcutil-usb.rules
+ fi
+ fi
+}
+
+pkg_postinst() {
+ if use user-permissions; then
+ einfo "To allow non-root users access to the /dev/i2c-* devices, add those"
+ einfo "users to the i2c group: usermod -aG i2c user"
+ einfo "Restart the computer or reload the i2c-dev module to activate"
+ einfo "the new udev rule."
+ einfo "For more information read: http://www.ddcutil.com/i2c_permissions/"
+
+ if use usb-monitor; then
+ einfo "To allow non-root users access to USB monitors, add those users"
+ einfo "to the video group: usermod -aG video user"
+ einfo "Restart the computer, reload the hiddev and hidraw modules, or replug"
+ einfo "the monitor to activate the new udev rule."
+ einfo "For more information read: http://www.ddcutil.com/usb/"
+ fi
+
+ udev_reload
+ fi
+
+ if use video_cards_nvidia; then
+ ewarn "Please read the following webpage on proper usage with the nVidia "
+ ewarn "binary drivers, or it may not work: http://www.ddcutil.com/nvidia/"
+ fi
+}
+
+pkg_postrm() {
+ if use user-permissions; then
+ udev_reload
+ fi
+}
diff --git a/app-misc/ddcutil/files/ddcutil-1.3.0-no-werror.patch b/app-misc/ddcutil/files/ddcutil-1.3.0-no-werror.patch
new file mode 100644
index 000000000000..4df9c892c12b
--- /dev/null
+++ b/app-misc/ddcutil/files/ddcutil-1.3.0-no-werror.patch
@@ -0,0 +1,73 @@
+diff --git a/src/app_ddcutil/Makefile.am b/src/app_ddcutil/Makefile.am
+index 068e419..f21e9fd 100644
+--- a/src/app_ddcutil/Makefile.am
++++ b/src/app_ddcutil/Makefile.am
+@@ -5,7 +5,6 @@ AM_CPPFLAGS = \
+
+
+ AM_CFLAGS = -Wall
+-AM_CFLAGS += -Werror
+ # AM_CFLAGS += -Wpedantic
+
+ if ENABLE_CALLGRAPH_COND
+diff --git a/src/app_sysenv/Makefile.am b/src/app_sysenv/Makefile.am
+index a182ff9..753f187 100644
+--- a/src/app_sysenv/Makefile.am
++++ b/src/app_sysenv/Makefile.am
+@@ -12,7 +12,6 @@ endif
+
+
+ AM_CFLAGS = -Wall
+-AM_CFLAGS += -Werror
+ # AM_CFLAGS += -Wpedantic
+
+ if ENABLE_CALLGRAPH_COND
+diff --git a/src/i2c/Makefile.am b/src/i2c/Makefile.am
+index 52a4efa..5c671e1 100644
+--- a/src/i2c/Makefile.am
++++ b/src/i2c/Makefile.am
+@@ -5,7 +5,6 @@ AM_CPPFLAGS = \
+ -I$(top_srcdir)/src/public
+
+ AM_CFLAGS = -Wall
+-AM_CFLAGS += -Werror
+ # AM_CFLAGS += -Wpedantic
+
+ if ENABLE_CALLGRAPH_COND
+diff --git a/src/libmain/Makefile.am b/src/libmain/Makefile.am
+index ace200a..46cc9f4 100644
+--- a/src/libmain/Makefile.am
++++ b/src/libmain/Makefile.am
+@@ -5,7 +5,6 @@ AM_CPPFLAGS = \
+
+
+ AM_CFLAGS = -Wall
+-AM_CFLAGS += -Werror
+ # AM_CFLAGS += -Wpedantic
+
+ if ENABLE_CALLGRAPH_COND
+diff --git a/src/sample_clients/Makefile.am b/src/sample_clients/Makefile.am
+index 1593521..63d2307 100644
+--- a/src/sample_clients/Makefile.am
++++ b/src/sample_clients/Makefile.am
+@@ -7,7 +7,6 @@ AM_CPPFLAGS= \
+ -I$(top_srcdir)/src
+
+ AM_CFLAGS = -Wall -fPIC
+-# AM_CFLAGS += -Werror
+
+ check_PROGRAMS =
+ if ENABLE_SHARED_LIB_COND
+diff --git a/src/test/Makefile.am b/src/test/Makefile.am
+index c12f15c..27d2124 100644
+--- a/src/test/Makefile.am
++++ b/src/test/Makefile.am
+@@ -4,7 +4,7 @@ $(GLIB_CFLAGS) \
+ -I$(top_srcdir)/src \
+ -I$(top_srcdir)/src/public
+
+-AM_CFLAGS = -Wall -Werror
++AM_CFLAGS = -Wall
+
+ CLEANFILES = \
+ *expand