summaryrefslogtreecommitdiff
path: root/sys-apps/kmscon
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps/kmscon')
-rw-r--r--sys-apps/kmscon/Manifest1
-rw-r--r--sys-apps/kmscon/kmscon-8_p20220214-r1.ebuild150
2 files changed, 151 insertions, 0 deletions
diff --git a/sys-apps/kmscon/Manifest b/sys-apps/kmscon/Manifest
index fd06ea48a3ce..23984af8730f 100644
--- a/sys-apps/kmscon/Manifest
+++ b/sys-apps/kmscon/Manifest
@@ -1,5 +1,6 @@
DIST kmscon-8_p20180906.tar.gz 1156350 BLAKE2B 52c024ca6e9652b468efb23d38cda34bf0c05e1e2bb4268435e17adb8858439ac6bf0e1783cfdd24a48fcb2dcf7c1cb20eee09aeb90db08c2e94224d01efeff7 SHA512 2ccdc5b30df6d96ac7a75d01d674b295bcdb0d445169716638a20c9884b090bbfe509e0aee79cb674a2d9b0eb18ea6284b9d4e2939cb5bf290cade4c1a02487a
DIST kmscon-8_p20220214.tar.gz 1158069 BLAKE2B a64b19da4bc57e4baed8d3822cbf7cca472614a30fe604a09c53f8ab3e024725abdad7286c6c183e7de3b24bd80e01c5141d6c7f10794b9101530832602dad4f SHA512 837026b3f9702fe487d63d665140ea9e37a39975161e86f78a4c989b18eabd3c3429a4a6ebc384790389042b014dbaaa8225a136290f9310b113b606e551f4c2
EBUILD kmscon-8_p20180906-r2.ebuild 2929 BLAKE2B 9fa4c899c776e7bd780b6dd40d1a8adc9880ab129a308479f60eabecd00843e389b886dbd632c4d5da4b2d5d04ba655e1af2b49d3bffabd1873b0f523fcb14e2 SHA512 ac8ca2c15773715a2b79b494fd82952f89bd805223a7b36c04a44aa1d81f5378129bde32ef970b1a8c19bcf2af75a44245b880e70dcb2dcad9b9a8ecb4e2f48d
+EBUILD kmscon-8_p20220214-r1.ebuild 3015 BLAKE2B c49d2f797ff8db10fe01affcf3a75dc03cbb233e654cfb2e898b09e065b84871cffa658f5ec81f29b53671cefd40b54b9abba79a9f61a568cbf23a21f930d388 SHA512 41dd8e5fc4de97d6e413a4830c2108a1cc0ddc20f55d0bc929164149b81707c8882584262253d2dbbc3e54dbbd9ba5e151d0d80376255ae6a93bec6b7040561a
EBUILD kmscon-8_p20220214.ebuild 2929 BLAKE2B 77b35eb82062531590fad5fba956c9e50c0818635a59f437f090282dad52d7973408a6f1f14e5ad0dda660b816adcf113afddaeee6f2314618681add1c08c019 SHA512 28a613ece6af9b05330f52cf864a036ca8fdb25b9567d993d59617cd6e7eb77bcf2aeded9caf0f8ea37b29411097ef3ee79acde6510b35368f4b8db0b8ff4681
MISC metadata.xml 665 BLAKE2B 3eda7f9e7848f5e1ee5161d8f124bd9cec1978c3bac41c3d3b90ffa1eb6300cb69a609233307731e7f71c89a30550c61f84d2690793a75f500853491bc137391 SHA512 d692f3f0cdabf80e3c5eb6c4a41efa457ab15b3e90ecadf741e829ea28a63f223e55439b4ca7f0ef15a61e8f9e77c2b9eb0952241940a939e801b97280dbda1a
diff --git a/sys-apps/kmscon/kmscon-8_p20220214-r1.ebuild b/sys-apps/kmscon/kmscon-8_p20220214-r1.ebuild
new file mode 100644
index 000000000000..21a91dd7c616
--- /dev/null
+++ b/sys-apps/kmscon/kmscon-8_p20220214-r1.ebuild
@@ -0,0 +1,150 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+COMMIT="5eed56cfc873df4d7606bc1c470e1d2bb4d42f1c"
+SRC_URI="https://github.com/Aetf/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64 ~x86"
+
+inherit autotools flag-o-matic systemd toolchain-funcs vcs-snapshot
+
+DESCRIPTION="KMS/DRM based virtual Console Emulator"
+HOMEPAGE="https://github.com/Aetf/kmscon"
+
+LICENSE="MIT LGPL-2.1 BSD-2"
+SLOT="0"
+IUSE="debug doc +drm +fbdev +gles2 +optimizations +pango pixman static-libs systemd +unicode"
+
+COMMON_DEPEND="
+ >=virtual/udev-172
+ x11-libs/libxkbcommon
+ >=dev-libs/libtsm-4.0.0:=
+ media-libs/mesa[X(+)]
+ drm? ( x11-libs/libdrm
+ >=media-libs/mesa-8.0.3[egl(+),gbm(+)] )
+ gles2? ( >=media-libs/mesa-8.0.3[gles2] )
+ systemd? ( sys-apps/systemd )
+ pango? ( x11-libs/pango dev-libs/glib:2 )
+ pixman? ( x11-libs/pixman )"
+RDEPEND="${COMMON_DEPEND}
+ x11-misc/xkeyboard-config"
+DEPEND="${COMMON_DEPEND}
+ x11-base/xorg-proto"
+BDEPEND="virtual/pkgconfig
+ doc? ( dev-util/gtk-doc )"
+
+REQUIRED_USE="gles2? ( drm )"
+
+# args - names of renderers to enable
+renderers_enable() {
+ if [[ "x${RENDER}" == "x" ]]; then
+ RENDER="$1"
+ shift
+ else
+ for i in $@; do
+ RENDER+=",${i}"
+ done
+ fi
+}
+
+# args - names of font renderer backends to enable
+fonts_enable() {
+ if [[ "x${FONTS}" == "x" ]]; then
+ FONTS="$1"
+ shift
+ else
+ for i in $@; do
+ FONTS+=",${i}"
+ done
+ fi
+}
+
+# args - names of video backends to enable
+video_enable() {
+ if [[ "x${VIDEO}" == "x" ]]; then
+ VIDEO="$1"
+ shift
+ else
+ for i in $@; do
+ VIDEO+=",${i}"
+ done
+ fi
+}
+
+src_prepare() {
+ default
+ eautoreconf
+
+ export CC_FOR_BUILD="$(tc-getBUILD_CC)"
+}
+
+src_configure() {
+ # Video backends
+
+ if use fbdev; then
+ video_enable fbdev
+ fi
+
+ if use drm; then
+ video_enable drm2d
+ fi
+
+ if use gles2; then
+ video_enable drm3d
+ fi
+
+ # Font rendering backends
+
+ if use unicode; then
+ fonts_enable unifont
+ fi
+
+ if use pango; then
+ fonts_enable pango
+ fi
+
+ # Console rendering backends
+
+ renderers_enable bbulk
+
+ if use gles2; then
+ renderers_enable gltex
+ fi
+
+ if use pixman; then
+ renderers_enable pixman
+ fi
+
+ # kmscon sets -ffast-math unconditionally
+ strip-flags
+
+ # xkbcommon not in portage
+ econf \
+ $(use_enable static-libs static) \
+ $(use_enable debug) \
+ $(use_enable optimizations) \
+ $(use_enable systemd multi-seat) \
+ --with-video=${VIDEO} \
+ --with-fonts=${FONTS} \
+ --with-renderers=${RENDER} \
+ --with-sessions=dummy,terminal
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ systemd_dounit "${S}/docs"/kmscon{,vt@}.service
+
+ insinto /usr/share/${PN}
+ doins -r fblog
+
+ find "${ED}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ grep -e "^ERASECHAR" "${EROOT}"/etc/login.defs && \
+ ewarn "It is recommended that you comment out the ERASECHAR line in" && \
+ ewarn " /etc/login.defs for proper backspace functionality at the" && \
+ ewarn " kmscon login prompt. For details see:" && \
+ ewarn "https://github.com/dvdhrm/kmscon/issues/69#issuecomment-13827797"
+}